Richard Boegli's CnC_Generals_Zero_Hour Fork
WIP
This is documentation of Richard Boegil's Zero Hour Fork
Loading...
Searching...
No Matches
polyinfo.cpp
Go to the documentation of this file.
1
/*
2
** Command & Conquer Generals Zero Hour(tm)
3
** Copyright 2025 Electronic Arts Inc.
4
**
5
** This program is free software: you can redistribute it and/or modify
6
** it under the terms of the GNU General Public License as published by
7
** the Free Software Foundation, either version 3 of the License, or
8
** (at your option) any later version.
9
**
10
** This program is distributed in the hope that it will be useful,
11
** but WITHOUT ANY WARRANTY; without even the implied warranty of
12
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
** GNU General Public License for more details.
14
**
15
** You should have received a copy of the GNU General Public License
16
** along with this program. If not, see <http://www.gnu.org/licenses/>.
17
*/
18
19
/***********************************************************************************************
20
*** C O N F I D E N T I A L --- W E S T W O O D S T U D I O S ***
21
***********************************************************************************************
22
* *
23
* Project Name : WW3D *
24
* *
25
* $Archive:: /Commando/Code/ww3d2/polyinfo.cpp $*
26
* *
27
* Original Author:: Greg Hjelstrom *
28
* *
29
* $Author:: Greg_h $*
30
* *
31
* $Modtime:: 2/07/01 12:50p $*
32
* *
33
* $Revision:: 3 $*
34
* *
35
*---------------------------------------------------------------------------------------------*
36
* Functions: *
37
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
38
39
40
#include "
polyinfo.h
"
41
#include "
texture.h
"
42
#include "
vertmaterial.h
"
43
#include "
shader.h
"
44
45
void
PolygonInfoClass::Set_Texture
(
TextureClass
*texture)
46
{
47
if
(texture)
48
texture->
Add_Ref
();
49
if
(
Texture
)
50
Texture
->Release_Ref();
51
Texture
= texture;
52
}
53
void
PolygonInfoClass::Set_Vertex_Material
(
VertexMaterialClass
*vertexMaterial)
54
{
55
if
(vertexMaterial)
56
vertexMaterial->
Add_Ref
();
57
if
(
VertexMaterial
)
58
VertexMaterial
->Release_Ref();
59
60
VertexMaterial
= vertexMaterial;
61
}
62
63
void
PolygonInfoClass::Set_Shader
(
ShaderClass
*shader)
64
{
65
if
(
Shader
)
66
delete
Shader
;
67
68
// todo : update for refcounted shaders
69
Shader
=
W3DNEW
ShaderClass
(* shader);
70
}
71
72
73
PolygonInfoClass::~PolygonInfoClass
()
74
{
75
if
(
Texture
)
76
Texture
->Release_Ref();
77
if
(
VertexMaterial
)
78
VertexMaterial
->Release_Ref();
79
80
// todo : update for refcounted shaders
81
if
(
Shader
)
82
delete
Shader
;
83
}
84
85
W3DNEW
#define W3DNEW
Definition
always.h:109
PolygonInfoClass::Set_Shader
void Set_Shader(ShaderClass *shader)
Definition
polyinfo.cpp:63
PolygonInfoClass::Set_Vertex_Material
void Set_Vertex_Material(VertexMaterialClass *vertexMaterial)
Definition
polyinfo.cpp:53
PolygonInfoClass::Set_Texture
void Set_Texture(TextureClass *texture)
Definition
polyinfo.cpp:45
PolygonInfoClass::Texture
TextureClass * Texture
Definition
polyinfo.h:88
PolygonInfoClass::~PolygonInfoClass
~PolygonInfoClass()
Definition
polyinfo.cpp:73
PolygonInfoClass::VertexMaterial
VertexMaterialClass * VertexMaterial
Definition
polyinfo.h:89
PolygonInfoClass::Shader
ShaderClass * Shader
Definition
polyinfo.h:90
RefCountClass::Add_Ref
void Add_Ref(void) const
Definition
refcount.cpp:171
ShaderClass
Definition
shader.h:88
TextureClass
Definition
texture.h:271
VertexMaterialClass
Definition
vertmaterial.h:73
polyinfo.h
shader.h
texture.h
vertmaterial.h
Code
Libraries
Source
WWVegas
WW3D2
polyinfo.cpp
Generated by
1.13.2