| 465 | dmGraphics::HUniformBuffer m_UBO; |
| 466 | |
| 467 | void Initialize(EngineCtx* engine) override |
| 468 | { |
| 469 | /* |
| 470 | // GLSL code: |
| 471 | struct LightColor |
| 472 | { |
| 473 | vec3 color; |
| 474 | float intensity; |
| 475 | }; |
| 476 | struct Light |
| 477 | { |
| 478 | vec3 position; |
| 479 | LightColor light_color; |
| 480 | }; |
| 481 | uniform LightData |
| 482 | { |
| 483 | Light lights[4]; |
| 484 | float light_count; |
| 485 | }; |
| 486 | */ |
| 487 | dmGraphics::ShaderResourceMember light_color_members[2]; |
| 488 | |
| 489 | // m_Color |
| 490 | light_color_members[0].m_Name = (char*)"color"; |
| 491 | light_color_members[0].m_NameHash = dmHashString64("color"); |
| 492 | light_color_members[0].m_Type.m_ShaderType = dmGraphics::ShaderDesc::SHADER_TYPE_VEC3; |
| 493 | light_color_members[0].m_Type.m_UseTypeIndex = 0; |
| 494 | light_color_members[0].m_ElementCount = 1; |
| 495 | light_color_members[0].m_Offset = 0; |
| 496 | |
| 497 | // m_Intensity |
| 498 | light_color_members[1].m_Name = (char*)"intensity"; |
| 499 | light_color_members[1].m_NameHash = dmHashString64("intensity"); |
| 500 | light_color_members[1].m_Type.m_ShaderType = dmGraphics::ShaderDesc::SHADER_TYPE_FLOAT; |
| 501 | light_color_members[1].m_Type.m_UseTypeIndex = 0; |
| 502 | light_color_members[1].m_ElementCount = 1; |
| 503 | light_color_members[1].m_Offset = 0; |
| 504 | |
| 505 | dmGraphics::ShaderResourceMember light_members[2]; |
| 506 | |
| 507 | // m_Position |
| 508 | light_members[0].m_Name = (char*)"position"; |
| 509 | light_members[0].m_NameHash = dmHashString64("position"); |
| 510 | light_members[0].m_Type.m_ShaderType = dmGraphics::ShaderDesc::SHADER_TYPE_VEC3; |
| 511 | light_members[0].m_Type.m_UseTypeIndex = 0; |
| 512 | light_members[0].m_ElementCount = 1; |
| 513 | light_members[0].m_Offset = 0; |
| 514 | |
| 515 | // m_Color (type index) |
| 516 | light_members[1].m_Name = (char*)"light_color"; |
| 517 | light_members[1].m_NameHash = dmHashString64("light_color"); |
| 518 | light_members[1].m_Type.m_TypeIndex = 2; |
| 519 | light_members[1].m_Type.m_UseTypeIndex = 1; |
| 520 | light_members[1].m_ElementCount = 1; |
| 521 | light_members[1].m_Offset = 0; |
| 522 | |
| 523 | dmGraphics::ShaderResourceMember light_data_members[2]; |
| 524 |
nothing calls this directly
no test coverage detected