annotate gSprite.cc @ 126:030394675d8e

succes compile
author e085768
date Thu, 30 Jun 2011 21:48:38 +0900
parents c62fec1dd2f8
children d9e3137e70a0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
1 //SgoexCerium.ccより
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
2 #include "matrix_calc.h"
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
3 #include "TaskManager.h"
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
4 #include "SceneGraph.h"
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
5 #include "Application.h"
119
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
6 #include <iostream>
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
7
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
8 #include <stdio.h>
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
9 #include <stdlib.h>
91
cb6c6de125dc halfway
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 90
diff changeset
10 #include "libps2.h"
cb6c6de125dc halfway
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 90
diff changeset
11 #include "ps2util.h"
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
12 #include "gSprite.h"
90
8edae89a3877 compile on Mac OS X
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 88
diff changeset
13 #include <stdbool.h>
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
14
122
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
15 #define DEFOBJ 100
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
16 #define SPRITE_COL 0x4f
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
17 #define SCREEN_HALF_W 320
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
18 #define SCREEN_HALF_H 240
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
19
122
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
20 static SpriteTable sptable[DEFOBJ];
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
21 static ps2utilSprite sp[DEFOBJ]; // 表示スプライト用スタック
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
22 static unsigned int sp_counter;
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
23 static bool flag_spriteInited = false; // スプライトロードフラグ
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
24
115
31dd5c07f7c1 class OBJECT:SceanGraph
e085768
parents: 100
diff changeset
25 //static TEXTURE *sprite_tex;
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
26
122
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
27 extern Viewer *droot;
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
28
122
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
29 /*static*/ SceneGraphPtr root;
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
30
122
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
31 static float my_scale = 5;
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
32
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
33
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
34 //SgoexCerium.ccより
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
35 void
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
36 flip()
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
37 {
122
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
38 CameraPtr camera = droot->sgroot->getCamera();
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
39
119
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
40 droot->sgroot->flip();
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
41 droot->sgroot->lightCalc();
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
42
122
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
43 root = droot->createSceneGraph();
119
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
44 //root->xyz[0] = screen_w/2;
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
45 //root->xyz[1] = screen_h/2;;
122
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
46 root->xyz[0] = 0;
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
47 root->xyz[1] = 0;
124
e085768
parents: 122
diff changeset
48 root->xyz[2] = 0;
e085768
parents: 122
diff changeset
49 //root->xyz[2] = 30.0f;
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
50
119
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
51 /*親の回転、座標から、子の回転、座標を算出*/
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
52 get_matrix(root->matrix, root->angle, root->xyz, camera->matrix);
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
53 /*法線用の行列。Cameraの行列を抜いている(Cameraのコンストラクタで、単位行列にしている)*/
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
54 get_matrix(root->real_matrix, root->angle, root->xyz, camera->real_matrix);
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
55 //出力して、次のものを出力するための準備
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
56 droot->setSceneData(root);
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
57 }
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
58
124
e085768
parents: 122
diff changeset
59 // rootのポインターを返す
e085768
parents: 122
diff changeset
60 SceneGraphPtr getRootPtr( void )
e085768
parents: 122
diff changeset
61 {
e085768
parents: 122
diff changeset
62 return root;
e085768
parents: 122
diff changeset
63 }
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
64
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
65 /*void
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
66 gSprite_DefSprite(int number, int tx, int ty, int tw, int th)
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
67 {
96
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
68 sptable[number].tx = tx;
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
69 sptable[number].ty = ty;
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
70 sptable[number].tw = tw;
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
71 sptable[number].th = th;
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
72 }*/
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
73
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
74 void
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
75 gSprite_DefSprite(int number, const char *name, float w, float h, int color)//, OBJECT *obj)
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
76 {
122
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
77 SpriteTable *m = &sptable[number];
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
78 m->w = w;
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
79 m->h = h;
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
80 m->color = (color & 32);
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
81 m->mx = w / 2; //画像の中心を座標としたいらしい。
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
82 m->my = h / 2;
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
83 m->tex_w = power_of_two(m->w);
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
84 m->tex_h = power_of_two(m->h);
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
85 m->texture = (int *)name;
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
86 }
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
87
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
88 /*void
119
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
89 gSprite_PutSprite(int number, int x, int y)
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
90 {
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
91 ps2utilSprite *p = &sp[sp_counter];
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
92
119
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
93 ps2util_sprite_Set_basicAttribute(
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
94 p,
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
95 (unsigned short)x, (unsigned short)y,
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
96 (unsigned short)sptable[number].tw*2, (unsigned short)sptable[number].th*2,
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
97 (unsigned short)sptable[number].tx, (unsigned short)sptable[number].ty,
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
98 (unsigned short)sptable[number].tw, (unsigned short)sptable[number].th,
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
99 SPRITE_PRIO_FOREGROUND);
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
100
119
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
101 ps2util_sprite_Request(p);
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
102 sp_counter++;
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
103 }*/
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
104
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
105
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
106 //void gSprite_PutSprite(int number, short x, short y, int zorder)
124
e085768
parents: 122
diff changeset
107 void gSprite_PutSprite(int number, int x, int y, int z)
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
108 {
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
109 SpriteTable *m = &sptable[number];
118
b6dc70f6aa7e chenge OBJECT->transfer
e085768
parents: 116
diff changeset
110
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
111 char *name = (char *) m->texture;
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
112 if (!name) {
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
113 printf("PutSprite %d unknown\n",number);
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
114 return;
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
115 }
119
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
116
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
117 SceneGraphPtr object = droot->createSceneGraph(name);
119
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
118
124
e085768
parents: 122
diff changeset
119 // ズレ直し?
122
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
120 /*
124
e085768
parents: 122
diff changeset
121 object->c_xyz[0] = m->mx;
e085768
parents: 122
diff changeset
122 object->c_xyz[1] = m->my;
e085768
parents: 122
diff changeset
123
119
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
124 object->xyz[0] -= object->c_xyz[0]*my_scale;
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
125 object->xyz[1] -= object->c_xyz[1]*my_scale;
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
126 object->xyz[2] -= object->c_xyz[2];
124
e085768
parents: 122
diff changeset
127
119
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
128 object->xyz[0] += x+m->mx;
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
129 object->xyz[1] += y+m->my;
122
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
130
124
e085768
parents: 122
diff changeset
131 // object->xyz[2] += zorder * 0.01;
e085768
parents: 122
diff changeset
132 */
e085768
parents: 122
diff changeset
133
122
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
134 object->xyz[0] = x;
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
135 object->xyz[1] = y;
124
e085768
parents: 122
diff changeset
136 object->xyz[2] = z;
e085768
parents: 122
diff changeset
137
122
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
138 root->addChild(object);
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
139
118
b6dc70f6aa7e chenge OBJECT->transfer
e085768
parents: 116
diff changeset
140 float scale[] = {my_scale,my_scale,1};
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
141 //float c_xyz[] = {0,0,0};
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
142 //scale_matrix(object->matrix, scale, c_xyz);
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
143
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
144 /*親の回転、座標から、子の回転、座標を算出*/
118
b6dc70f6aa7e chenge OBJECT->transfer
e085768
parents: 116
diff changeset
145 get_matrix_scale(object->matrix, object->angle, object->xyz, scale, root->matrix);
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
146
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
147 /*法線用の行列。Cameraの行列を抜いている(Cameraのコンストラクタで、単位行列にしている)*/
119
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
148 get_matrix(object->real_matrix, object->angle, object->xyz, root->real_matrix);
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
149
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
150 }
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
151
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
152
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
153 /*void
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
154 gSprite_PutSpriteEx(int number, int x, int y, float w, float h)
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
155 {
115
31dd5c07f7c1 class OBJECT:SceanGraph
e085768
parents: 100
diff changeset
156 ps2utilSprite *p = &sp[sp_counter];
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
157
115
31dd5c07f7c1 class OBJECT:SceanGraph
e085768
parents: 100
diff changeset
158 ps2util_sprite_Set_basicAttribute(
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
159 p,
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
160 (unsigned short)x, (unsigned short)y,
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
161 (unsigned short)sptable[number].tw*w, (unsigned short)sptable[number].th*h,
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
162 (unsigned short)sptable[number].tx, (unsigned short)sptable[number].ty,
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
163 (unsigned short)sptable[number].tw, (unsigned short)sptable[number].th,
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
164 SPRITE_PRIO_FOREGROUND);
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
165
115
31dd5c07f7c1 class OBJECT:SceanGraph
e085768
parents: 100
diff changeset
166 ps2util_sprite_Request(p);
31dd5c07f7c1 class OBJECT:SceanGraph
e085768
parents: 100
diff changeset
167 sp_counter++;
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
168 }
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
169 */
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
170
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
171 void
124
e085768
parents: 122
diff changeset
172 gSprite_PutSpriteEx(int number, int x, int y, int z, float scalex, float scaley, float angle)
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
173 {
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
174 if (1) {
124
e085768
parents: 122
diff changeset
175 gSprite_PutSprite(number, x, y, z);
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
176 return;
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
177 }
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
178
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
179 SpriteTable *m = &sptable[number];
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
180 char *name = (char *) m->texture;
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
181 if (!name) {
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
182 printf("PutSpriteEx %d unknown\n",number);
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
183 return;
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
184 }
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
185 SceneGraphPtr object = droot->createSceneGraph(name);
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
186 root->addChild(object);
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
187
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
188 float scale[] = {my_scale*scalex*4,my_scale*scaley*4,1};
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
189
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
190 /*親の回転、座標から、子の回転、座標を算出*/
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
191 object->xyz[0] = x - object->c_xyz[0] * my_scale - m->w*my_scale;
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
192 object->xyz[1] = y - object->c_xyz[1] * my_scale - m->h*my_scale;
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
193 object->xyz[2] = number * 0.01;
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
194 //object->c_xyz[0] = m->mx;
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
195 //object->c_xyz[1] = m->my;
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
196 object->angle[3] = angle * (3.1415926*2/4096);
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
197 get_matrix(object->matrix, object->angle, object->xyz, root->matrix);
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
198 float c_xyz[] = {0,0,0};
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
199 scale_matrix(object->matrix, scale, c_xyz);
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
200 /*法線用の行列。Cameraの行列を抜いている(Cameraのコンストラクタで、単位行列にしている)*/
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
201 // get_matrix(object->real_matrix, object->angle, object->xyz, root->real_matrix);
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
202 }
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
203
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
204
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
205
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
206
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
207
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
208 //ここいらはどうやら、スプライトを取得する部分。
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
209 /*
119
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
210 static void
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
211 gSprite_Init_Png(const char *texname)
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
212 {
96
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
213 if (!(sprite_tex = read_png_file(texname))) {
119
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
214 fprintf(stderr,
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
215 "cannot creat texture - init_png().\n");
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
216 fflush(stderr);
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
217 exit(EXIT_FAILURE);
96
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
218 }
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
219
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
220
96
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
221 if (ps2util_tex_Set(sprite_tex) == -1) {
119
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
222 fprintf(stderr,
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
223 "cannot set texture - init_png().\n");
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
224 fflush(stderr);
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
225 exit(EXIT_FAILURE);
96
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
226 }
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
227
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
228
119
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
229 }
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
230 */
95
b0249b856488 change_ps2util
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 91
diff changeset
231
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
232 /*
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
233 static void
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
234 gSprite_Create()
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
235 {
96
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
236 int i;
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
237
96
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
238 for (i=0; i<DEFOBJ; i++) {
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
239 if (ps2util_sprite_Create(&sp[i], sprite_tex) == -1) {
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
240 fprintf(stderr,
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
241 "cannot create sprite No.%d - create_sprite()\n", i);
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
242 fflush(stderr);
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
243 exit(EXIT_FAILURE);
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
244 }
96
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
245 ps2util_sprite_Unuse_alpha(&sp[i]);
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
246 }
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
247
96
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
248 flag_spriteInited = false;
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
249
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
250 }
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
251 */
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
252
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
253
95
b0249b856488 change_ps2util
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 91
diff changeset
254 void
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
255 gSprite_Init()
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
256 {
119
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
257 droot->createFromXMLfile("xml_file/title.xml");
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
258
122
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
259 droot->createFromXMLfile("xml_file/select.xml");
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
260 droot->createFromXMLfile("xml_file/sp_meter.xml");
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
261 droot->createFromXMLfile("xml_file/r_arrow.xml");
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
262 droot->createFromXMLfile("xml_file/l_arrow.xml");
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
263 droot->createFromXMLfile("xml_file/km.xml");
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
264 droot->createFromXMLfile("xml_file/rap.xml");
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
265 droot->createFromXMLfile("xml_file/1p.xml");
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
266 droot->createFromXMLfile("xml_file/2p.xml");
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
267 droot->createFromXMLfile("xml_file/select_car_1.xml");
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
268 droot->createFromXMLfile("xml_file/select_car_2.xml");
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
269 droot->createFromXMLfile("xml_file/select_car_3.xml");
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
270 droot->createFromXMLfile("xml_file/select_corse_1.xml");
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
271 droot->createFromXMLfile("xml_file/select_corse_2.xml");
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
272
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
273
96
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
274 ps2util_graphic_Init();
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
275 //gSprite_Init_Png("img/main2.png");
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
276 //gSprite_Create(); // スプライト生成
118
b6dc70f6aa7e chenge OBJECT->transfer
e085768
parents: 116
diff changeset
277
119
f2e2460b4011 draw_title
e085768
parents: 118
diff changeset
278 // testCoeler
122
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
279 int tc = 1;
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
280
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
281 gSprite_DefSprite( TITLE, "title", 512, 666, tc); // タイトル
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
282 gSprite_DefSprite( SELECT, "select", 33, 33, tc); // 選択マーク
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
283 gSprite_DefSprite( SP_METER, "sp_meter", 106, 34, tc); // スピードメーター
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
284 gSprite_DefSprite( R_ARROW, "r_arrow", 18, 20, tc); // 右矢印
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
285 gSprite_DefSprite( L_ARROW, "l_arrow", 17, 20, tc); // 左矢印
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
286 gSprite_DefSprite( KM, "km", 55, 26, tc); // km/h
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
287 gSprite_DefSprite( RAP, "rap", 39, 26, tc); // Rap
126
030394675d8e succes compile
e085768
parents: 125
diff changeset
288 gSprite_DefSprite( PLAYER_1, "1P", 53, 46, tc); // 1p
030394675d8e succes compile
e085768
parents: 125
diff changeset
289 gSprite_DefSprite( PLAYER_2, "2P", 53, 46, tc); // 2P
122
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
290 gSprite_DefSprite( SELECT_CAR_1, "select_car_1", 165, 140, tc); // 選択画面の車
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
291 gSprite_DefSprite( SELECT_CAR_2, "select_car_2", 165, 140, tc);
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
292 gSprite_DefSprite( SELECT_CAR_3, "select_car_3", 165, 140, tc);
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
293 gSprite_DefSprite( SELECT_CORSE_1, "select_corse_1", 148, 114, tc); // 選択画面のコース
96
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
294 // 本当は (82, 272,...)です。二つ目のコース絵がないので
122
5219bf3d5e71 title_draw
e085768
parents: 119
diff changeset
295 gSprite_DefSprite( SELECT_CORSE_2, "select_corse_2", 148, 114 ,tc);
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
296
95
b0249b856488 change_ps2util
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 91
diff changeset
297 }
90
8edae89a3877 compile on Mac OS X
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 88
diff changeset
298
95
b0249b856488 change_ps2util
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 91
diff changeset
299
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
300 static void
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
301 gSprite_Clear()
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
302 {
96
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
303 int i;
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
304
96
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
305 for (i=0; i<DEFOBJ; i++) {
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
306 sprite_disappear(&sp[i].attribute);
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
307 }
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
308 sp_counter = 0;
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
309 }
95
b0249b856488 change_ps2util
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 91
diff changeset
310
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
311
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
312
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
313 void
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
314 gSprite_Draw_Reset()
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
315 {
96
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
316 if (flag_spriteInited == true) {
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
317 gSprite_Clear();
0b65ca27f113 compile on Mac OS X 2
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 95
diff changeset
318 }
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
319 }
95
b0249b856488 change_ps2util
Atuto SHIROMA <e095729@ie.u-ryukyu.ac.jp>
parents: 91
diff changeset
320
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
321
116
ed702e49cc6c conpile
e085768
parents: 115
diff changeset
322
0
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
323 void
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
324 gSprite_PutSprite_Pause()
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
325 {
0fae5658fb0b Initial revision
gongo
parents:
diff changeset
326 }