comparison Renderer/Engine/viewer.cc @ 1026:55f3c5976959

create_pp_task fix.
author tkaito
date Tue, 09 Nov 2010 18:14:28 +0900
parents 360f8eba78f1
children 3191cae6f7a2
comparison
equal deleted inserted replaced
1020:360f8eba78f1 1026:55f3c5976959
688 688
689 task_array[spe_num] = manager->create_task_array(CreatePolygonFromSceneGraph, 689 task_array[spe_num] = manager->create_task_array(CreatePolygonFromSceneGraph,
690 sg_division+residue,4,6,1); 690 sg_division+residue,4,6,1);
691 pptask[spe_num] = 0; 691 pptask[spe_num] = 0;
692 692
693 int count= 0; 693 //int count= 0;
694 int k = 0; 694 int k = 0;
695 695
696 while (sg) { 696 while (sg) {
697 if (sg->flag_drawable) { 697 if (sg->flag_drawable) {
698 if(count < spe_num * sg_division) { 698 if(count < spe_num * sg_division) {
711 pptask[k]->set_param(0,(memaddr)sg->size); 711 pptask[k]->set_param(0,(memaddr)sg->size);
712 pptask[k]->set_param(1,(memaddr)sg->texture_info.t_w); 712 pptask[k]->set_param(1,(memaddr)sg->texture_info.t_w);
713 pptask[k]->set_param(2,(memaddr)sg->texture_info.t_h); 713 pptask[k]->set_param(2,(memaddr)sg->texture_info.t_h);
714 pptask[k]->set_param(3,(memaddr)sg->texture_info.scale_max); 714 pptask[k]->set_param(3,(memaddr)sg->texture_info.scale_max);
715 715
716 pptask[k]->set_outData(0, &pp->tri[pp->info.size++], sizeof(TrianglePack)); 716 //pptask[k]->set_outData(0, &pp->tri[pp->info.size++], sizeof(TrianglePack));
717 } 717 }
718 if (sg->children != NULL) { 718 if (sg->children != NULL) {
719 sg = sg->children; 719 sg = sg->children;
720 } else if (sg->brother != NULL) { 720 } else if (sg->brother != NULL) {
721 sg = sg->brother; 721 sg = sg->brother;
732 sg = sg->parent; 732 sg = sg->parent;
733 } 733 }
734 } 734 }
735 } 735 }
736 } 736 }
737 count++; 737 k++;
738 } 738 }
739 739 for (int k = 0; k < spe_num; k++) {
740 task_array[k]->spawn_task_array(pptask[k]->next());
741 task_array[k]->set_cpu(SPE_ANY);
742 task_array[k]->spawn();
743 if (sgroot->gtask_array != NULL) {
744 HTaskPtr game_task_array = sgroot->gtask_array->get_task_array();
745 task_create_pp->wait_for(game_task_array);
746 }
747 task_next->wait_for(task_create_pp);
748 }
740 } 749 }
741 750
742 void 751 void
743 Viewer::common_rendering(HTaskPtr task_next, SceneGraphRoot *sgroot) 752 Viewer::common_rendering(HTaskPtr task_next, SceneGraphRoot *sgroot)
744 { 753 {