changeset 179:434846aef389

SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
author gongo@gendarme.cr.ie.u-ryukyu.ac.jp
date Fri, 19 Dec 2008 14:21:29 +0900
parents 5d1b82945b0d
children 5cde66c926b4
files TaskManager/Test/test_render/ChangeLog TaskManager/Test/test_render/Makefile.def TaskManager/Test/test_render/main.cpp
diffstat 3 files changed, 22 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/TaskManager/Test/test_render/ChangeLog	Tue Dec 16 17:45:28 2008 +0900
+++ b/TaskManager/Test/test_render/ChangeLog	Fri Dec 19 14:21:29 2008 +0900
@@ -1,3 +1,22 @@
+2008-12-19  Wataru MIYAGUNI  <gongo@cr.ie.u-ryukyu.ac.jp>
+
+	* main.cpp (init): fix
+	bpp (BitsPerPixel) の値がデフォルトで 0 になっていた。
+	今のレンダリング方式では 32 がデフォルトなので、間違ってた。
+	今まで気づかなかったのは
+
+	1. SDL_SetVideoMode に bpp = 0 で渡される
+	2. SDL が開発・実行環境に合わせて bpp を設定
+	3. 今までそれが 32 になってた
+
+	しかし、ゲーム班の環境では bpp = 16 になってしまったため、
+	その次の bitmap の allocate の時に 
+	screen->pitch*height = 16*width*height となり、
+	DrawSpan では 32 のつもりで書き込んでいたため領域外への
+	メモリ書き込み->エラー
+
+	ゲーム班ありがとう
+	
 2008-12-16  Wataru MIYAGUNI  <gongo@cr.ie.u-ryukyu.ac.jp>
 
 	* SceneGraph.cpp (makeTapestry): add
--- a/TaskManager/Test/test_render/Makefile.def	Tue Dec 16 17:45:28 2008 +0900
+++ b/TaskManager/Test/test_render/Makefile.def	Fri Dec 19 14:21:29 2008 +0900
@@ -3,10 +3,10 @@
 # include/library path
 # ex: macosx
 #CERIUM = /Users/gongo/Source/Concurrency/Game_project/Cerium
-#CERIUM = /Users/gongo/Source/hg/Cerium
+CERIUM = /Users/gongo/Source/hg/Cerium
 
 # ex: linux/ps3
-CERIUM = /home/gongo/Cerium
+#CERIUM = /home/gongo/Cerium
 #CERIUM = /Users/tkaito/hg/Game/Cerium
 
 #CERIUM = ../../..
--- a/TaskManager/Test/test_render/main.cpp	Tue Dec 16 17:45:28 2008 +0900
+++ b/TaskManager/Test/test_render/main.cpp	Fri Dec 19 14:21:29 2008 +0900
@@ -27,7 +27,7 @@
 int
 init(int argc, char *argv[])
 {
-    int bpp    = 0;
+    int bpp    = 32;
     int width  = 640;
     int height = 480;
     int spenum = 1;