Skip to content

Add instancing of SpotLight3D nodes #134

@JezSonic

Description

@JezSonic

Summary

.e3d file parser should be capable of instancing SpotLight3D nodes for visual lighting

Full description

.e3d file parser should be capable of instancing SpotLight3D nodes for visual lighting.

While instancing it should also set:

Also, shadows and distance fade should be enabled

Also, some basic code for instancing those nodes with some of those properties being set already is on dev/spotlight3d-instancing branch.

Light proiector textures

I've found some texturing code in opengl33renderer.cpp

	WriteLog("Loading common gfx data...");
	m_glaretexture = Fetch_Texture("fx/lightglare");
	m_suntexture = Fetch_Texture("fx/sun");
	m_moontexture = Fetch_Texture("fx/moon");
	m_smoketexture = Fetch_Texture("fx/smoke");
    m_headlightstexture = Fetch_Texture("fx/headlights:st");
	WriteLog("...gfx data pre-loading done");

This has been also fund in DynObj.h

    AirCoupler m_headlamp11; // oswietlenie czolowe - przod
    AirCoupler m_headlamp12;
    AirCoupler m_headlamp13;
    AirCoupler m_headlamp21; // oswietlenie czolowe - tyl
    AirCoupler m_headlamp22;
    AirCoupler m_headlamp23;
    AirCoupler m_headsignal12;
    AirCoupler m_headsignal13;
    AirCoupler m_headsignal22;
    AirCoupler m_headsignal23;

DynObj.cpp:

    m_headlamp11.Init( "headlamp11", mdModel ); // górne
    m_headlamp12.Init( "headlamp12", mdModel ); // prawe
    m_headlamp13.Init( "headlamp13", mdModel ); // lewe
    m_headlamp21.Init( "headlamp21", mdModel );
    m_headlamp22.Init( "headlamp22", mdModel );
    m_headlamp23.Init( "headlamp23", mdModel );
    m_headsignal12.Init( "headsignal12", mdModel );
    m_headsignal13.Init( "headsignal13", mdModel );
    m_headsignal22.Init( "headsignal22", mdModel );
    m_headsignal23.Init( "headsignal23", mdModel );

So, it does seem like numbering is done like this
First number indicates the cabin 1 - Cabin A; 2 - Cabin B.
Second number indicates location: 1 - Headlight; 2 - Right; 3 - Left

It also applies to all the nodes named fspot<number> or whateverelse

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request
No fields configured for Feature.

Projects

Status

In Progress

Relationships

None yet

Development

No branches or pull requests

Issue actions