@@ -13,30 +13,74 @@ namespace SA2ObjectDefinitions.Level_Effects
13
13
class WildCanyon : LevelDefinition
14
14
{
15
15
NJS_OBJECT model1 ;
16
+ NJS_OBJECT model2 ;
17
+ NJS_OBJECT model3 ;
18
+ NJS_OBJECT model4 ;
16
19
Mesh [ ] mesh1 ;
20
+ Mesh [ ] mesh2 ;
21
+ Mesh [ ] mesh3 ;
22
+ Mesh [ ] mesh4 ;
17
23
Vector3 Skybox_Scale ;
18
24
Texture [ ] texs1 ;
25
+ Texture [ ] texs2 ;
26
+ Texture [ ] texs3 ;
27
+ NJS_TEXLIST skyboxtls ;
28
+ NJS_TEXLIST tunneltls ;
29
+ NJS_TEXLIST lighttls ;
19
30
20
31
public override void Init ( IniLevelData data , byte act , byte timeofday )
21
32
{
22
33
model1 = ObjectHelper . LoadModel ( "stg16_WildCanyon/models/Skybox.sa2mdl" ) ;
23
34
mesh1 = ObjectHelper . GetMeshes ( model1 ) ;
35
+ skyboxtls = NJS_TEXLIST . Load ( "stg16_WildCanyon/tls/Skybox.satex" ) ;
36
+ model2 = ObjectHelper . LoadModel ( "stg16_WildCanyon/models/WindTunnel1.sa2mdl" ) ;
37
+ mesh2 = ObjectHelper . GetMeshes ( model2 ) ;
38
+ tunneltls = NJS_TEXLIST . Load ( "stg16_WildCanyon/tls/WindTunnel.satex" ) ;
39
+ model3 = ObjectHelper . LoadModel ( "stg16_WildCanyon/models/WindTunnel2.sa2mdl" ) ;
40
+ mesh3 = ObjectHelper . GetMeshes ( model3 ) ;
41
+ model4 = ObjectHelper . LoadModel ( "stg16_WildCanyon/models/LightPillar.sa2mdl" ) ;
42
+ mesh4 = ObjectHelper . GetMeshes ( model4 ) ;
43
+ lighttls = NJS_TEXLIST . Load ( "stg16_WildCanyon/tls/LightPillar.satex" ) ;
24
44
Skybox_Scale . X = 1.0f ;
25
45
Skybox_Scale . Y = 1.0f ;
26
46
Skybox_Scale . Z = 1.0f ;
27
47
}
28
48
29
49
public override void Render ( Device dev , EditorCamera cam )
30
50
{
31
- texs1 = ObjectHelper . GetTextures ( "bgtex16" ) ;
51
+ texs1 = ObjectHelper . GetTextures ( "landtx16" , skyboxtls , dev ) ;
32
52
List < RenderInfo > result1 = new List < RenderInfo > ( ) ;
33
53
MatrixStack transform = new MatrixStack ( ) ;
54
+ // Skybox
34
55
transform . Push ( ) ;
35
- transform . NJTranslate ( cam . Position . X , cam . Position . Y , cam . Position . Z ) ;
56
+ // transform.NJTranslate(cam.Position.X, cam.Position.Y, cam.Position.Z);
36
57
transform . NJScale ( Skybox_Scale ) ;
37
58
result1 . AddRange ( model1 . DrawModelTree ( dev . GetRenderState < FillMode > ( RenderState . FillMode ) , transform , texs1 , mesh1 , EditorOptions . IgnoreMaterialColors , EditorOptions . OverrideLighting ) ) ;
38
59
transform . Pop ( ) ;
39
60
RenderInfo . Draw ( result1 , dev , cam ) ;
40
61
}
62
+ public override void RenderLate ( Device dev , EditorCamera cam )
63
+ {
64
+ texs2 = ObjectHelper . GetTextures ( "stg16_wind" , tunneltls , dev ) ;
65
+ texs3 = ObjectHelper . GetTextures ( "bgtex16" , lighttls , dev ) ;
66
+ List < RenderInfo > result1 = new List < RenderInfo > ( ) ;
67
+ MatrixStack transform = new MatrixStack ( ) ;
68
+ // Wind Tunnel 1
69
+ transform . Push ( ) ;
70
+ transform . NJTranslate ( 200.0f , 250.0f , - 4.0f ) ;
71
+ result1 . AddRange ( model2 . DrawModelTree ( dev . GetRenderState < FillMode > ( RenderState . FillMode ) , transform , texs2 , mesh2 , EditorOptions . IgnoreMaterialColors , EditorOptions . OverrideLighting ) ) ;
72
+ transform . Pop ( ) ;
73
+ // Wind Tunnel 2
74
+ transform . Push ( ) ;
75
+ transform . NJTranslate ( 200.0f , 902.02002f , - 4.0f ) ;
76
+ result1 . AddRange ( model3 . DrawModelTree ( dev . GetRenderState < FillMode > ( RenderState . FillMode ) , transform , texs2 , mesh3 , EditorOptions . IgnoreMaterialColors , EditorOptions . OverrideLighting ) ) ;
77
+ transform . Pop ( ) ;
78
+ // Light Pillar
79
+ transform . Push ( ) ;
80
+ transform . NJTranslate ( 220.0f , 320.0f , - 30.0f ) ;
81
+ result1 . AddRange ( model4 . DrawModelTree ( dev . GetRenderState < FillMode > ( RenderState . FillMode ) , transform , texs3 , mesh4 , EditorOptions . IgnoreMaterialColors , EditorOptions . OverrideLighting ) ) ;
82
+ transform . Pop ( ) ;
83
+ RenderInfo . Draw ( result1 , dev , cam ) ;
84
+ }
41
85
}
42
86
}
0 commit comments