Mercurial > hg > Members > kono > Cerium
changeset 1028:3191cae6f7a2
spe/CreatePolygonFromSceneGraph not done.
author | tkaito@henri |
---|---|
date | Mon, 08 Nov 2010 19:01:25 +0900 |
parents | 11dee6cf7116 |
children | 22d7263cec2d |
files | Renderer/Engine/spe/Makefile Renderer/Engine/viewer.cc |
diffstat | 2 files changed, 6 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/Renderer/Engine/spe/Makefile Tue Nov 09 18:14:58 2010 +0900 +++ b/Renderer/Engine/spe/Makefile Mon Nov 08 19:01:25 2010 +0900 @@ -6,6 +6,7 @@ SRCS_TMP = $(wildcard *.cc) SRCS_EXCLUDE = CreatePolygonFromSceneGraph.cc #CreatePolygon.cc +#SRCS_EXCLUDE = CreatePolygon.cc SRCS = $(filter-out $(SRCS_EXCLUDE),$(SRCS_TMP)) OBJS = $(SRCS:.cc=.o)
--- a/Renderer/Engine/viewer.cc Tue Nov 09 18:14:58 2010 +0900 +++ b/Renderer/Engine/viewer.cc Mon Nov 08 19:01:25 2010 +0900 @@ -662,7 +662,7 @@ } void -create_pp_task(SceneGraphPtr sg, TaskManager *manager, int spe_num, HTaskPtr task_next) +create_pp_task(SceneGraphPtr sg, TaskManager *manager, int spe_num, HTaskPtr task_next, SceneGraphRootPtr sgroot) { /* @@ -670,9 +670,6 @@ * PolygonPack の TrianglePack (空) を送る。pp->info.size の計算もここで。 * */ - //int spe_num = 6; - - PolygonPackPtr pp = (PolygonPackPtr)manager->allocate(sizeof(PolygonPack)); int sg_num = sg_drawable_num(sg); int sg_division = sg_num / spe_num; @@ -690,12 +687,11 @@ sg_division+residue,4,6,1); pptask[spe_num] = 0; - //int count= 0; int k = 0; while (sg) { if (sg->flag_drawable) { - if(count < spe_num * sg_division) { + if(k < spe_num * sg_division) { k %= spe_num-1; } else { k = spe_num; @@ -713,7 +709,6 @@ pptask[k]->set_param(2,(memaddr)sg->texture_info.t_h); pptask[k]->set_param(3,(memaddr)sg->texture_info.scale_max); - //pptask[k]->set_outData(0, &pp->tri[pp->info.size++], sizeof(TrianglePack)); } if (sg->children != NULL) { sg = sg->children; @@ -742,9 +737,9 @@ task_array[k]->spawn(); if (sgroot->gtask_array != NULL) { HTaskPtr game_task_array = sgroot->gtask_array->get_task_array(); - task_create_pp->wait_for(game_task_array); + task_array[k]->wait_for(game_task_array); } - task_next->wait_for(task_create_pp); + task_next->wait_for(task_array[k]); } } @@ -756,7 +751,7 @@ SceneGraphPtr sg = sgroot->getDrawSceneGraph(); - create_pp_task(sg, manager, spe_num, task_next); + create_pp_task(sg, manager, spe_num, task_next, sgroot); #if SPE_CREATE_POLYGON_CHECK check_matrix(matrix_info,sg);