Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- SpotLight::SpotLight()
- {
- this->m_spotLightData = new fb::SpotLightEntityData();
- memset(this->m_spotLightData, 0, sizeof(fb::SpotLightEntityData));
- this->m_localLightData = this->m_spotLightData;
- this->m_spotLightEntity = (fb::SpotLightEntity*)calloc(1, 0x100);
- memset(this->m_spotLightEntity, 0, sizeof(fb::SpotLightEntity));
- this->m_localLightEntity = this->m_spotLightEntity;
- this->m_localLightData->m_color = fb::Vec3(1,1,1);
- this->m_localLightData->m_enlightenColorScale = fb::Vec3(1,1,1);
- this->m_localLightData->m_particleColorScale = fb::Vec3(1,1,1);
- this->m_localLightData->m_radius = 10;
- this->m_localLightData->m_intensity = 1;
- this->m_localLightData->m_attenuationOffset = 1;
- this->m_localLightData->m_enlightenColorMode = fb::EnlightenColorMode::EnlightenColorMode_Multiply;
- this->m_localLightData->m_visible = 1;
- this->m_localLightData->m_directLightEnable = 1;
- this->m_localLightData->m_specularEnable = 1;
- this->m_localLightData->m_enlightenEnable = 1;
- this->m_spotLightData->m_shape = fb::SpotLightShape::SpotLightShape_Cone;
- this->m_spotLightData->m_coneInnerAngle = 10;
- this->m_spotLightData->m_coneOuterAngle = 120;
- this->m_spotLightData->m_frustrumFov = 40;
- this->m_spotLightData->m_frustrumAspect = 1;
- this->m_spotLightData->m_orthoWidth = 5;
- this->m_spotLightData->m_orthoHeight = 5;
- this->m_spotLightData->m_nearPlane = 0;
- this->m_spotLightData->m_castShadows = fb::QualityScalableEnabled::QualityScalableEnabled_Medium;
- this->m_spotLightData->m_shadowRadius = 18;
- this->m_spotLightData->m_shadowCullDistance = 35;
- this->m_spotLightData->m_frustrumAsCone = fb::QualityScalableEnabled::QualityScalableEnabled_Disabled;
- this->m_spotLightData->m_frustrumAsConeIntensityScale = 1;
- this->m_spotLightData->m_castShadowsMinLevel = fb::QualityLevel::QualityLevel_Low;
- this->m_spotLightData->m_frustrumAsConeAngle = 1;
- this->m_spotLightData->m_castShadowsEnable = 1;
- *(INT64*)this->m_spotLightData = OFFSET_VFTABLE_SPOTLIGHTENTITYDATA;
- *(INT64*)this->m_spotLightEntity = OFFSET_VFTABLE_SPOTLIGHTENTITY;
- #ifndef HAVANA
- *(float*)&this->m_spotLightEntity->Pad0D0[0] = 1;
- this->m_spotLightEntity->Pad0D0[4] = 1;
- *(UINT16*)&this->m_spotLightEntity->Pad0D0[8] = 0xFFFF;
- this->m_spotLightEntity->Pad0D0[10] = 1;
- this->m_spotLightEntity->Pad0D0[13] = 1;
- #else
- *(DWORD*)&this->m_localLightEntity->Pad018[0x4] = 0xFFFFFFFF;
- *(float*)&this->m_spotLightEntity->Pad0D0[0] = 1;
- *(float*)&this->m_spotLightEntity->Pad0D0[4] = 1;
- this->m_spotLightEntity->Pad0D0[8] = 1;
- *(UINT16*)&this->m_spotLightEntity->Pad0D0[0xC] = 0xFFFF;
- this->m_spotLightEntity->Pad0D0[0xE] = 1;
- this->m_spotLightEntity->Pad0E0[0x1] = 1;
- this->m_spotLightEntity->m_shadowIntensity = &this->m_spotLightData->m_shadowIntensity;
- #endif
- //this->m_spotLightData->ID = rand();
- spotLightIndex++;
- this->m_spotLightEntity->m_color = &this->m_spotLightData->m_color;
- this->m_spotLightEntity->m_enlightenColorScale = &this->m_spotLightData->m_enlightenColorScale;
- this->m_spotLightEntity->m_intensity = &this->m_spotLightData->m_intensity;
- this->m_spotLightEntity->m_particleColorScale = &this->m_spotLightData->m_particleColorScale;
- this->m_spotLightEntity->m_radius = &this->m_spotLightData->m_radius;
- this->m_spotLightEntity->m_localLightEntityData = this->m_spotLightData;
- this->m_spotLightEntity->m_visible = &this->m_spotLightData->m_visible;
- fb::GameRenderer* gameRenderer = *(fb::GameRenderer**)(OFFSET_GAMERENDERER);
- this->m_spotLightData->m_transform = *(fb::LinearTransform*)&gameRenderer->m_pRenderView->m_Transform;
- this->m_spotLightEntity->m_transform = this->m_spotLightData->m_transform;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement