summaryrefslogtreecommitdiff
path: root/3dc/win95/LTCHUNK.HPP
diff options
context:
space:
mode:
authorSteven Fuller <relnev@icculus.org>2001-07-01 00:55:22 +0000
committerPatryk Obara <dreamer.tan@gmail.com>2019-08-20 02:09:04 +0200
commit2186d5f3f95cd74a070a490d899291648d58667a (patch)
tree55241a1afa3e1a22e0b6593a8dead0b703800f44 /3dc/win95/LTCHUNK.HPP
parent218ca90543758a20ac326e444ca0643174ca7384 (diff)
Initial revision
Diffstat (limited to '3dc/win95/LTCHUNK.HPP')
-rw-r--r--3dc/win95/LTCHUNK.HPP273
1 files changed, 0 insertions, 273 deletions
diff --git a/3dc/win95/LTCHUNK.HPP b/3dc/win95/LTCHUNK.HPP
deleted file mode 100644
index 2ed6b78..0000000
--- a/3dc/win95/LTCHUNK.HPP
+++ /dev/null
@@ -1,273 +0,0 @@
-#ifndef _ltchunk_hpp
-#define _ltchunk_hpp 1
-
-#include "chunk.hpp"
-#include "chnktype.hpp"
-
-#if InterfaceEngine
-#include "strachnk.hpp"
-#endif
-
-#define LOFlag_On 0x00000001
-#define LOFlag_ShadowData 0x00000002
-#define LOFlag_Changed 0x00000004
-#define LOFlag_Calc_Data 0x00000008
-#define LOFlag_Runtime 0x00000010
-#define LOFlag_Invisible 0x00000020
-#define LOFlag_NoPreLight 0x00000040
-
-class Environment_Data_Chunk;
-
-class Light_Data
-{
-public:
-
- int light_number;
- ChunkVectorInt location;
- ChunkMatrix orientation;
-
- int brightness;
- int spread;
- int range;
-
- int colour;
-
- int engine_light_flags;
- int local_light_flags;
-
- int pad1;
- int pad2;
-
-};
-
-
-#define PlacedLightType_Standard 0
-#define PlacedLightType_Strobe 1
-#define PlacedLightType_Flicker 2
-
-#define PlacedLightOnOff_Standard 0
-#define PlacedLightOnOff_Fade 1
-#define PlacedLightOnOff_Flicker 2
-
-#define PlacedLightFlag_On 0x00000001
-#define PlacedLightFlag_SwapColourBright 0x00000002
-#define PlacedLightFlag_NoSpecular 0x00000004
-class Placed_Object_Light_Data
-{
-public:
-
- int brightness;
- int spread;
- int range;
-
- int up_colour;
- int down_colour;
-
- int engine_light_flags;
- int local_light_flags;
-
- int fade_up_time;
- int fade_down_time;
- int up_time;
- int down_time;
- int start_time;
-
- int light_type;
- int on_off_type;
- int flags;
-
-
-};
-
-class Light_Set_Chunk : public Chunk_With_Children
-{
-public:
-
- // for user
-
- Light_Set_Chunk (Chunk_With_Children * parent, char * light_set_name);
- Light_Set_Chunk (Chunk_With_Children * const parent,const char *, size_t const);
-
-private:
-
- friend class Environment_Data_Chunk;
-
-
-
-};
-
-
-class Light_Set_Header_Chunk : public Chunk
-{
-public:
-
- Light_Set_Header_Chunk (Light_Set_Chunk * parent, char l_set_name[8]);
- Light_Set_Header_Chunk (Chunk_With_Children * parent, const char *, size_t const);
- char light_set_name[8];
-
- int pad;
-
- size_t size_chunk()
- {
- return (chunk_size = 12 + 8 + 4);
- }
-
- void fill_data_block ( char * data_start);
-
-private:
-
- friend class Light_Set_Chunk;
-
-
-
-};
-
-
-class Light_Chunk : public Chunk
-{
-public:
-
- Light_Chunk (Light_Set_Chunk * parent, Light_Data & new_light)
- : Chunk (parent, "STDLIGHT"), light (new_light) {}
-
- Light_Chunk (Chunk_With_Children * parent, const char *, size_t const);
-
- Light_Data light;
-
- BOOL light_added_to_module;
-
- size_t size_chunk()
- {
- return (chunk_size = 12 + 9 * 4 + 3 * 4 + 9 * 4);
- }
-
- void fill_data_block ( char * data_start);
-
-#if InterfaceEngine
- AVP_Strategy_Chunk* GetStrategyChunk();
- AVP_Strategy_Chunk* CreateStrategyChunk();
-#endif
-
-private:
-
- friend class Light_Set_Chunk;
-
-
-
-};
-
-//should be a child of an object_chunk
-class Placed_Object_Light_Chunk : public Chunk
-{
-public :
- Placed_Object_Light_Chunk (Chunk_With_Children * parent, Placed_Object_Light_Data & new_light)
- : Chunk (parent, "PLOBJLIT"), light (new_light),num_extra_data(0),extra_data(0) {}
-
- Placed_Object_Light_Chunk (Chunk_With_Children * parent, const char *, size_t const);
-
- ~Placed_Object_Light_Chunk();
-
- Placed_Object_Light_Data light;
- int* extra_data;
- int num_extra_data;
-
- size_t size_chunk()
- {
- return (chunk_size = 12 +sizeof(Placed_Object_Light_Data) +4 +4*num_extra_data);
- }
-
- void fill_data_block ( char * data_start);
-
-};
-
-
-class Shape_Vertex_Intensities_Chunk : public Chunk
-{
-public:
-
- Shape_Vertex_Intensities_Chunk(Chunk_With_Children *, char *, int, int *);
- Shape_Vertex_Intensities_Chunk(Chunk_With_Children *, const char *, size_t const);
- ~Shape_Vertex_Intensities_Chunk();
-
- char light_set_name[8];
-
- int pad;
-
- int num_vertices;
-
- int * intensity_array;
-
- size_t size_chunk()
- {
- return (chunk_size = 12 + 8 + 4 + 4 + 4 * num_vertices);
- }
-
- void fill_data_block ( char * data_start);
-
-private:
-
- friend class Object_Chunk;
-
-
-
-};
-
-class Lighting_Ambience_Chunk : public Chunk
-{
-public:
-
- Lighting_Ambience_Chunk (Light_Set_Chunk * parent, int _ambience)
- : Chunk (parent, "AMBIENCE"), ambience (_ambience)
- {}
- Lighting_Ambience_Chunk (Chunk_With_Children * parent, const char * data, size_t const /*size*/)
- : Chunk (parent, "AMBIENCE"), ambience (*((int *)data))
- {}
- int ambience;
-
- size_t size_chunk()
- {
- return (chunk_size = 12 + 4);
- }
-
- void fill_data_block ( char * data_start);
-
-private:
-
- friend class Light_Set_Chunk;
-
-
-
-};
-
-#define PSXLightMode 0
-//details of how light data should be altered for different platforms.
-//currently just playstation
-class Light_Scale_Chunk : public Chunk
-{
-public :
- Light_Scale_Chunk(Light_Set_Chunk * parent,int mode);
- Light_Scale_Chunk(Chunk_With_Children* parent,const char* data,size_t);
-
- void fill_data_block ( char * data_start);
- size_t size_chunk()
- {
- return (chunk_size = 12 + 44);
- }
-
- int LightMode;
- float prelight_multiply;
- int prelight_multiply_above;
- int prelight_add;
-
- float runtime_multiply;
- int runtime_multiply_above;
- int runtime_add;
-
-
- int ApplyPrelightScale(int l);
- int ApplyRuntimeScale(int l);
-
- int spare1,spare2,spare3,spare4;
-};
-
-#endif \ No newline at end of file