annotate Renderer/Engine/Light.cc @ 639:70c5c2d2eb24

fix
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Thu, 19 Nov 2009 18:45:24 +0900
parents 5c5cd31b9d43
children d0b8860c17f8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
597
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
1 #include <math.h>
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
2 #include "SceneGraphRoot.h"
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
3 #include "Light.h"
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
4 #include "sys.h"
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
5 #include "Scheduler.h"
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
6 #include "show_time.h"
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
7 #include "TaskManager.h"
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
8
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
9 static void
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
10 light_move(SceneGraphPtr node, int screen_w, int screen_h)
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
11 {
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
12
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
13 }
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
14
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
15 static void
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
16 light_collision(SceneGraphPtr node, int screen_w, int screen_h,
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
17 SceneGraphPtr tree)
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
18 {
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
19 }
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
20
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
21 /**
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
22 * @param w Width of screen
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
23 * @param h Height of screen
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
24 */
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
25 Light::Light(float w, float h)
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
26 {
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
27 name = (char*)"Light";
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
28
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
29 // Screen の真ん中を初期値とする
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
30 xyz[0] = w/2.0f;
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
31 xyz[1] = h/2.0f;
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
32 xyz[2] = 0;
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
33 xyz[3] = 1.0f;
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
34
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
35 this->set_move_collision(light_move, light_collision);
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
36 }
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
37
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
38 Light::~Light(void)
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
39 {
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
40
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
41 }
5c5cd31b9d43 add Light Object
yutaka@henri.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
42