MCPcopy Create free account
hub / github.com/FlaxEngine/FlaxEngine / Init

Method Init

Source/Engine/Renderer/HistogramPass.cpp:78–98  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

76}
77
78bool HistogramPass::Init()
79{
80 _isSupported = GPUDevice::Instance->Limits.HasCompute;
81 if (!_isSupported)
82 return false;
83
84 // Create buffer for histogram
85 _histogramBuffer = GPUDevice::Instance->CreateBuffer(TEXT("Histogram"));
86 if (_histogramBuffer->Init(GPUBufferDescription::Buffer(HISTOGRAM_SIZE * sizeof(uint32), GPUBufferFlags::Structured | GPUBufferFlags::ShaderResource | GPUBufferFlags::UnorderedAccess, PixelFormat::R32_UInt, nullptr, sizeof(uint32))))
87 return true;
88
89 // Load shaders
90 _shader = Content::LoadAsyncInternal<Shader>(TEXT("Shaders/Histogram"));
91 if (_shader == nullptr)
92 return true;
93#if COMPILE_WITH_DEV_ENV
94 _shader.Get()->OnReloading.Bind<HistogramPass, &HistogramPass::OnShaderReloading>(this);
95#endif
96
97 return false;
98}
99
100void HistogramPass::Dispose()
101{

Callers

nothing calls this directly

Calls 3

BufferClass · 0.50
CreateBufferMethod · 0.45
GetMethod · 0.45

Tested by

no test coverage detected