ps2sdk  1.1
A collection of Open Source libraries used for developing applications on Sony's PlayStation 2® (PS2).
vux.c
Go to the documentation of this file.
1 /*
2 # _____ ___ ____ ___ ____
3 # ____| | ____| | | |____|
4 # | ___| |____ ___| ____| | \ PS2DEV Open Source Project.
5 #-----------------------------------------------------------------------
6 # (c) 2009 Lion
7 # Licenced under Academic Free License version 2.0
8 # Review ps2sdk README & LICENSE files for further details.
9 */
10 
11 #include <libvux.h>
12 
13 #include "vux.h"
14 
15 
16 
17 
18 
19 
20 
22  {1.0f, 0.0f, 0.0f, 0.0f},
23  {0.0f, 1.0f, 0.0f, 0.0f},
24  {0.0f, 0.0f, 1.0f, 0.0f},
25  {0.0f, 0.0f, 0.0f, 1.0f}
26  }};
27 
29  {1.0f, 0.0f, 0.0f, 0.0f},
30  {0.0f, 1.0f, 0.0f, 0.0f},
31  {0.0f, 0.0f, 1.0f, 0.0f},
32  {0.0f, 0.0f, 0.0f, 1.0f}
33  }};
34 
36  {1.0f, 0.0f, 0.0f, 0.0f},
37  {0.0f, 1.0f, 0.0f, 0.0f},
38  {0.0f, 0.0f, 1.0f, 0.0f},
39  {0.0f, 0.0f, 0.0f, 1.0f}
40  }};
41 
43  {1.0f, 0.0f, 0.0f, 0.0f},
44  {0.0f, 1.0f, 0.0f, 0.0f},
45  {0.0f, 0.0f, 1.0f, 0.0f},
46  {0.0f, 0.0f, 0.0f, 1.0f}
47  }};
48 
49 
50 
51 
52 
53 float vu_projection = 500.0f;
54 int vu_projection_type = 0; //0=vu_projection , 1=VuPrjectionMatrix
55 unsigned short vu_offset_x = 2048;
56 unsigned short vu_offset_y = 2048;
57 VU_FCVECTOR vu_light_ambient = {0.2f, 0.2f, 0.2f, 1.0f};
58 float vu_fog_near = 25000.0f;
59 float vu_fog_far = 45000.0f;
60 float vu_near_plane_w = 300.0f;
61 float vu_near_plane_h = 300.0f;
62 
63 
64 
65 
66 
67 
68 
69 
70 void VuInit(void)
71 {
72 
73 
74 }
75 
76 
77 
78 void VuSetGeometryXYOffset(unsigned short x, unsigned short y)
79 {
80 
81  vu_offset_x = x;
82  vu_offset_y = y;
83 }
84 
85 
86 
87 
88 void VuSetProjection(float z)
89 {
90 
91  vu_projection = z;
93 }
94 
95 
96 
97 
99 {
100  VuPrjectionMatrix = *projection;
101 
102  vu_projection_type = 1; // use projection matrix
103 }
104 
105 
106 
107 
108 void VuSetProjectionType(unsigned int type)
109 {
110  vu_projection_type = type;
111 }
112 
113 
114 
115 
117 {
118 
119  VuWorldMatrix = *world;
120 }
121 
122 
123 
124 
126 {
127 
128  VuViewMatrix = *view;
129 }
130 
131 
132 
133 
134 
136 {
137 
138  VuLocalScreenMatrix = *m;
139 }
140 
141 
142 
143 
144 void VuSetProjectionNearPlaneWH(unsigned int w, unsigned int h)
145 {
146 
147  vu_near_plane_w = w;
148  vu_near_plane_h = h;
149 }
150 
151 
152 
153 
154 void VuSetAmbientLight(float r, float g, float b)
155 {
156 
157  vu_light_ambient.r = r;
158  vu_light_ambient.g = g;
159  vu_light_ambient.b = b;
160  vu_light_ambient.a = 1.0f;
161 }
s32 x
Definition: libmouse.c:34
s32 y
Definition: libmouse.c:34
float a
Definition: libvux.h:92
float g
Definition: libvux.h:90
float b
Definition: libvux.h:91
float r
Definition: libvux.h:89
VU_MATRIX VuLocalScreenMatrix
Definition: vux.c:42
VU_FCVECTOR vu_light_ambient
Definition: vux.c:57
float vu_fog_far
Definition: vux.c:59
void VuSetGeometryXYOffset(unsigned short x, unsigned short y)
Definition: vux.c:78
void VuSetProjectionNearPlaneWH(unsigned int w, unsigned int h)
Definition: vux.c:144
void VuSetWorldMatrix(VU_MATRIX *world)
Definition: vux.c:116
void VuSetProjectionMatrix(VU_MATRIX *projection)
Definition: vux.c:98
void VuSetViewMatrix(VU_MATRIX *view)
Definition: vux.c:125
unsigned short vu_offset_x
Definition: vux.c:55
float vu_fog_near
Definition: vux.c:58
VU_MATRIX VuWorldMatrix
Definition: vux.c:21
unsigned short vu_offset_y
Definition: vux.c:56
void VuSetProjection(float z)
Definition: vux.c:88
void VuSetProjectionType(unsigned int type)
Definition: vux.c:108
VU_MATRIX VuViewMatrix
Definition: vux.c:28
float vu_near_plane_h
Definition: vux.c:61
int vu_projection_type
Definition: vux.c:54
void VuSetAmbientLight(float r, float g, float b)
Definition: vux.c:154
float vu_projection
Definition: vux.c:53
VU_MATRIX VuPrjectionMatrix
Definition: vux.c:35
float vu_near_plane_w
Definition: vux.c:60
void VuSetLocalScreenMatrix(VU_MATRIX *m)
Definition: vux.c:135
void VuInit(void)
Definition: vux.c:70