Size: a a a

2021 April 08

KR

Kai Ren in rust_offtopic
То, что так баунды хреново протекают на все тайп-параметры, как правило, говорит о том, что где-то их накидали щедро, но явно не к месту.
источник

p

polunin.ai in rust_offtopic
источник

SP

Stanislav Popov in rust_offtopic
мда это пиздец
источник

p

polunin.ai in rust_offtopic
крч есть список шейдеров 1,2,3,4,5
источник

p

polunin.ai in rust_offtopic
и у каждого из них общие буферы
источник

p

polunin.ai in rust_offtopic
у 1 и 2 два буфера допустим
источник

p

polunin.ai in rust_offtopic
у второго и четвертого три буфера общих
источник

V

Vetro in rust_offtopic
pub struct LightningV2CommandFactory {
   divide_factory: DivideWorkgroupsCommandFactory,
   trace_rays_factory: TraceRaysToLightCommandFactory,
   lights_factory: LightsDiffuseCommandFactory,
   trace_mirrors_factory: ReflectFromMirrorsCommandFactory,
   copy_factory: CopyFromBufferToImageCommandFactory,
   make_gi_rays_factory: MakeGiRaysCommandFactory,
   lights_gi_factory: LightsGiCommandFactory,
   intersections_set: Mutable<usize, OneBufferSet<Arc<DeviceLocalBuffer<[LightRay]>>>>,
   reflects_intersections_set:
       Mutable<usize, OneBufferSet<Arc<DeviceLocalBuffer<[IntersectionUniform]>>>>,
   image_buffer_set: Mutable<usize, OneBufferSet<Arc<DeviceLocalBuffer<[[u32; 4]]>>>>,
   gi_intersections_set:
       Mutable<usize, OneBufferSet<Arc<DeviceLocalBuffer<[IntersectionUniform]>>>>,
   gi_thetas_set: Mutable<usize, OneBufferSet<Arc<DeviceLocalBuffer<[f32]>>>>,
   workgroups: OnceCell<[OneBufferSet<Arc<DeviceLocalBuffer<[DispatchIndirectCommand]>>>; 3]>,
   samples_per_bounce: u32,
}
источник

V

Vetro in rust_offtopic
пиздос
источник

p

polunin.ai in rust_offtopic
получается такой вот граф буферов
источник

p

polunin.ai in rust_offtopic
и я не могу нормально декомпозировать это чтобы прописать им овнершипы
источник

p

polunin.ai in rust_offtopic
и разнести по структуркам
источник

p

polunin.ai in rust_offtopic
наплевал и в одну структурку все сгрузил
источник

p

polunin.ai in rust_offtopic
я еще удивляюсь как оно умудряется работать
источник

p

polunin.ai in rust_offtopic
что-то типо такого
источник

p

polunin.ai in rust_offtopic
кружки это шейдеры а квадратики это буферы
источник

KR

Kai Ren in rust_offtopic
Я не очень шарю что такое “шейдер”, но подразумеваю, что это в данном контексте можно принимать как “такое-то вычисление” над буферами, так?
Они выполняются последовательно? Порядок важен?
источник

p

polunin.ai in rust_offtopic
последовательно
порядок важен
источник

p

polunin.ai in rust_offtopic
некоторые могут исполнятся паралельно но тогда начинается такой лютый пиздец с синхронизациями что лучше сделать последовательно
источник

DS

Doge Shibu in rust_offtopic
Используй тайп алисы же
источник