Added SetSpriteCanvasRenderPriority function

This commit is contained in:
n00b87
2025-09-19 22:04:43 -05:00
parent 15e8426f99
commit 8120a1fd96
35 changed files with 2489 additions and 1985 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -643,6 +643,12 @@ case FN_GetSpriteCanvasBilinearFilter: //Number Function
case FN_GetSpriteCanvasPhysics: //Number Function
rc_push_num(rc_getSpriteCanvasPhysics( GETSPRITECANVASPHYSICS_C_NUM ));
break;
case FN_SetSpriteCanvasRenderPriority: //Number Function
rc_push_num(rc_setSpriteCanvasRenderPriority( SETSPRITECANVASRENDERPRIORITY_C_NUM, SETSPRITECANVASRENDERPRIORITY_PRIORITY, SETSPRITECANVASRENDERPRIORITY_ORDER ));
break;
case FN_GetSpriteCanvasRenderPriority: //Sub Procedure
rc_getSpriteCanvasRenderPriority( GETSPRITECANVASRENDERPRIORITY_C_NUM, &GETSPRITECANVASRENDERPRIORITY_PRIORITY, &GETSPRITECANVASRENDERPRIORITY_ORDER );
break;
case FN_Circle: //Sub Procedure
rc_drawCircle( CIRCLE_X, CIRCLE_Y, CIRCLE_RADIUS );
break;

View File

@@ -1060,6 +1060,8 @@ int rc_canvasOpen(int w, int h, int vx, int vy, int vw, int vh, int mode, int ca
canvas.spriteCanvasProperties.blend_mode = irr::video::EBO_ADD;
canvas.spriteCanvasProperties.anti_alias = irr::video::EAAM_OFF;
canvas.spriteCanvasProperties.bilinear_filter = false;
canvas.spriteCanvasProperties.priority = RC_SPRITE_PRIORITY_NONE;
canvas.spriteCanvasProperties.order = RC_SPRITE_ORDER_ASCENDING;
}
switch(mode)
@@ -1246,6 +1248,26 @@ int rc_getSpriteCanvasBilinearFilter(int canvas_id)
return (int)rc_canvas[canvas_id].spriteCanvasProperties.bilinear_filter;
}
int rc_setSpriteCanvasRenderPriority( int canvas_id, int priority, int order )
{
if(canvas_id <= 0 || canvas_id >= rc_canvas.size())
return 0;
rc_canvas[canvas_id].spriteCanvasProperties.priority = priority;
rc_canvas[canvas_id].spriteCanvasProperties.order = order;
return 1;
}
void rc_getSpriteCanvasRenderPriority( int canvas_id, double* priority, double* order )
{
if(canvas_id <= 0 || canvas_id >= rc_canvas.size())
return;
*priority = (double)rc_canvas[canvas_id].spriteCanvasProperties.priority;
*order = (double)rc_canvas[canvas_id].spriteCanvasProperties.order;
}
void rc_setCanvasVisible(int canvas_id, bool flag)
{

View File

@@ -330,6 +330,8 @@ struct rc_spriteCanvasProperties
irr::video::E_BLEND_OPERATION blend_mode; // = irr::video::EBO_ADD;
bool bilinear_filter; // = false;
irr::video::E_ANTI_ALIASING_MODE anti_alias; // = irr::video::EAAM_OFF;
int priority;
int order;
};
#define RC_CANVAS_TYPE_2D 0
@@ -339,6 +341,15 @@ struct rc_spriteCanvasProperties
#define RC_PROJECTION_TYPE_ORTHOGRAPHIC 0
#define RC_PROJECTION_TYPE_PERSPECTIVE 1
#define RC_SPRITE_PRIORITY_NONE 0
#define RC_SPRITE_PRIORITY_LEAST_X 1
#define RC_SPRITE_PRIORITY_GREATEST_X 2
#define RC_SPRITE_PRIORITY_LEAST_Y 3
#define RC_SPRITE_PRIORITY_GREATEST_Y 4
#define RC_SPRITE_ORDER_ASCENDING 0
#define RC_SPRITE_ORDER_DESCENDING 1
struct rc_canvas_obj
{
irr::video::ITexture* texture;

View File

@@ -1675,9 +1675,258 @@ void drawSprites(int canvas_id)
int offset_x = rc_canvas[canvas_id].offset.X;
int offset_y = rc_canvas[canvas_id].offset.Y;
for(int spr_index = 0; spr_index < rc_canvas[canvas_id].sprite_id.size(); spr_index++)
irr::core::array<irr::s32> sorted_sprites(rc_canvas[canvas_id].sprite_id.size());
sorted_sprites.clear();
for(int spr_index = 0; spr_index < rc_canvas[canvas_id].sprite_id.size(); spr_index++)
{
sorted_sprites.push_back(rc_canvas[canvas_id].sprite_id[spr_index]);
}
switch(rc_canvas[canvas_id].spriteCanvasProperties.priority)
{
case RC_SPRITE_PRIORITY_NONE:
{
}
break;
case RC_SPRITE_PRIORITY_LEAST_X:
{
if(rc_canvas[canvas_id].spriteCanvasProperties.order == RC_SPRITE_ORDER_ASCENDING)
{
for(int a = 0; a < sorted_sprites.size(); a++)
{
for(int b = (a + 1); b < sorted_sprites.size(); b++)
{
int a_index = sorted_sprites[a];
int b_index = sorted_sprites[b];
int a_off_x = rc_sprite[a_index].physics.offset_x;
a_off_x += rc_sprite[a_index].physics.user_offset_x;
int a_x = rc_sprite[a_index].physics.body->GetPosition().x - a_off_x;
int b_off_x = rc_sprite[b_index].physics.offset_x;
b_off_x += rc_sprite[b_index].physics.user_offset_x;
int b_x = rc_sprite[b_index].physics.body->GetPosition().x - b_off_x;
if(b_x < a_x)
{
sorted_sprites[a] = b_index;
sorted_sprites[b] = a_index;
}
}
}
}
else
{
for(int a = 0; a < sorted_sprites.size(); a++)
{
for(int b = (a + 1); b < sorted_sprites.size(); b++)
{
int a_index = sorted_sprites[a];
int b_index = sorted_sprites[b];
int a_off_x = rc_sprite[a_index].physics.offset_x;
a_off_x += rc_sprite[a_index].physics.user_offset_x;
int a_x = rc_sprite[a_index].physics.body->GetPosition().x - a_off_x;
int b_off_x = rc_sprite[b_index].physics.offset_x;
b_off_x += rc_sprite[b_index].physics.user_offset_x;
int b_x = rc_sprite[b_index].physics.body->GetPosition().x - b_off_x;
if(b_x > a_x)
{
sorted_sprites[a] = b_index;
sorted_sprites[b] = a_index;
}
}
}
}
}
break;
case RC_SPRITE_PRIORITY_GREATEST_X:
{
if(rc_canvas[canvas_id].spriteCanvasProperties.order == RC_SPRITE_ORDER_ASCENDING)
{
for(int a = 0; a < sorted_sprites.size(); a++)
{
for(int b = (a + 1); b < sorted_sprites.size(); b++)
{
int a_index = sorted_sprites[a];
int b_index = sorted_sprites[b];
int a_off_x = rc_sprite[a_index].physics.offset_x;
a_off_x += rc_sprite[a_index].physics.user_offset_x;
int a_x = rc_sprite[a_index].physics.body->GetPosition().x - a_off_x;
int b_off_x = rc_sprite[b_index].physics.offset_x;
b_off_x += rc_sprite[b_index].physics.user_offset_x;
int b_x = rc_sprite[b_index].physics.body->GetPosition().x - b_off_x;
a_x += (rc_sprite[a_index].frame_size.Width * rc_sprite[a_index].scale.X);
b_x += (rc_sprite[b_index].frame_size.Width * rc_sprite[b_index].scale.X);
if(b_x < a_x)
{
sorted_sprites[a] = b_index;
sorted_sprites[b] = a_index;
}
}
}
}
else
{
for(int a = 0; a < sorted_sprites.size(); a++)
{
for(int b = (a + 1); b < sorted_sprites.size(); b++)
{
int a_index = sorted_sprites[a];
int b_index = sorted_sprites[b];
int a_off_x = rc_sprite[a_index].physics.offset_x;
a_off_x += rc_sprite[a_index].physics.user_offset_x;
int a_x = rc_sprite[a_index].physics.body->GetPosition().x - a_off_x;
int b_off_x = rc_sprite[b_index].physics.offset_x;
b_off_x += rc_sprite[b_index].physics.user_offset_x;
int b_x = rc_sprite[b_index].physics.body->GetPosition().x - b_off_x;
a_x += (rc_sprite[a_index].frame_size.Width * rc_sprite[a_index].scale.X);
b_x += (rc_sprite[b_index].frame_size.Width * rc_sprite[b_index].scale.X);
if(b_x > a_x)
{
sorted_sprites[a] = b_index;
sorted_sprites[b] = a_index;
}
}
}
}
}
break;
case RC_SPRITE_PRIORITY_LEAST_Y:
{
if(rc_canvas[canvas_id].spriteCanvasProperties.order == RC_SPRITE_ORDER_ASCENDING)
{
for(int a = 0; a < sorted_sprites.size(); a++)
{
for(int b = (a + 1); b < sorted_sprites.size(); b++)
{
int a_index = sorted_sprites[a];
int b_index = sorted_sprites[b];
int a_off_y = rc_sprite[a_index].physics.offset_y;
a_off_y += rc_sprite[a_index].physics.user_offset_y;
int a_y = rc_sprite[a_index].physics.body->GetPosition().y - a_off_y;
int b_off_y = rc_sprite[b_index].physics.offset_y;
b_off_y += rc_sprite[b_index].physics.user_offset_y;
int b_y = rc_sprite[b_index].physics.body->GetPosition().y - b_off_y;
if(b_y < a_y)
{
sorted_sprites[a] = b_index;
sorted_sprites[b] = a_index;
}
}
}
}
else
{
for(int a = 0; a < sorted_sprites.size(); a++)
{
for(int b = (a + 1); b < sorted_sprites.size(); b++)
{
int a_index = sorted_sprites[a];
int b_index = sorted_sprites[b];
int a_off_y = rc_sprite[a_index].physics.offset_y;
a_off_y += rc_sprite[a_index].physics.user_offset_y;
int a_y = rc_sprite[a_index].physics.body->GetPosition().y - a_off_y;
int b_off_y = rc_sprite[b_index].physics.offset_y;
b_off_y += rc_sprite[b_index].physics.user_offset_y;
int b_y = rc_sprite[b_index].physics.body->GetPosition().y - b_off_y;
if(b_y > a_y)
{
sorted_sprites[a] = b_index;
sorted_sprites[b] = a_index;
}
}
}
}
}
break;
case RC_SPRITE_PRIORITY_GREATEST_Y:
{
if(rc_canvas[canvas_id].spriteCanvasProperties.order == RC_SPRITE_ORDER_ASCENDING)
{
for(int a = 0; a < sorted_sprites.size(); a++)
{
for(int b = (a + 1); b < sorted_sprites.size(); b++)
{
int a_index = sorted_sprites[a];
int b_index = sorted_sprites[b];
int a_off_y = rc_sprite[a_index].physics.offset_y;
a_off_y += rc_sprite[a_index].physics.user_offset_y;
int a_y = rc_sprite[a_index].physics.body->GetPosition().y - a_off_y;
int b_off_y = rc_sprite[b_index].physics.offset_y;
b_off_y += rc_sprite[b_index].physics.user_offset_y;
int b_y = rc_sprite[b_index].physics.body->GetPosition().y - b_off_y;
a_y += (rc_sprite[a_index].frame_size.Height * rc_sprite[a_index].scale.Y);
b_y += (rc_sprite[b_index].frame_size.Height * rc_sprite[b_index].scale.Y);
if(b_y < a_y)
{
sorted_sprites[a] = b_index;
sorted_sprites[b] = a_index;
}
}
}
}
else
{
for(int a = 0; a < sorted_sprites.size(); a++)
{
for(int b = (a + 1); b < sorted_sprites.size(); b++)
{
int a_index = sorted_sprites[a];
int b_index = sorted_sprites[b];
int a_off_y = rc_sprite[a_index].physics.offset_y;
a_off_y += rc_sprite[a_index].physics.user_offset_y;
int a_y = rc_sprite[a_index].physics.body->GetPosition().y - a_off_y;
int b_off_y = rc_sprite[b_index].physics.offset_y;
b_off_y += rc_sprite[b_index].physics.user_offset_y;
int b_y = rc_sprite[b_index].physics.body->GetPosition().y - b_off_y;
a_y += (rc_sprite[a_index].frame_size.Height * rc_sprite[a_index].scale.Y);
b_y += (rc_sprite[b_index].frame_size.Height * rc_sprite[b_index].scale.Y);
if(b_y > a_y)
{
sorted_sprites[a] = b_index;
sorted_sprites[b] = a_index;
}
}
}
}
}
break;
}
for(int spr_index = 0; spr_index < sorted_sprites.size(); spr_index++)
{
int spr_id = rc_canvas[canvas_id].sprite_id[spr_index];
int spr_id = sorted_sprites[spr_index];
rc_sprite2D_obj* sprite = &rc_sprite[spr_id];
//std::cout << "debug info: " << canvas_id << " --> " << spr_index << " id = " << sprite->id << " anim_size = " << sprite->animation.size() << std::endl; continue;
//if(!sprite->visible)

View File

@@ -1,5 +1,5 @@
# depslib dependency file v1.0
1756622892 source:/home/n00b/Projects/RCBASIC4/rcbasic_runtime/main.cpp
1756697836 source:/home/n00b/Projects/RCBASIC4/rcbasic_runtime/main.cpp
"rc_os_defines.h"
<emscripten.h>
<sys/param.h>
@@ -33,10 +33,10 @@
<irrtheora.h>
"rc_func130_cases.h"
1756622892 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_os_defines.h
1756697837 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_os_defines.h
<TargetConditionals.h>
1754605794 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_defines.h
1758301650 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_defines.h
1748042868 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_stdlib.h
"rc_os_defines.h"
@@ -1248,7 +1248,7 @@
1734372058 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/RealisticWater.h
<irrlicht.h>
1754344132 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_gfx.h
1758334476 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_gfx.h
"SDL.h"
<SDL2/SDL.h>
<irrlicht.h>
@@ -1272,7 +1272,7 @@
"rc_joints.h"
<irrtheora.h>
1752028340 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_gfx_core.h
1758303818 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_gfx_core.h
"SDL.h"
"btBulletDynamicsCommon.h"
"BulletSoftBody/btSoftRigidDynamicsWorld.h"
@@ -2277,7 +2277,7 @@
"rc_gfx_core.h"
<irrtheora.h>
1754605794 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_func130_cases.h
1758301650 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_func130_cases.h
1724469097 source:/home/n00b/Projects/irrBullet/src/irrBullet.cpp
"irrBullet.h"
@@ -2288,7 +2288,7 @@
"btBulletCollisionCommon.h"
"irrBulletBoxShape.h"
1756629408 source:/home/n00b/Projects/irrBullet/src/irrBulletBvhTriangleMeshShape.cpp
1756630993 source:/home/n00b/Projects/irrBullet/src/irrBulletBvhTriangleMeshShape.cpp
<btBulletDynamicsCommon.h>
<btBulletCollisionCommon.h>
"irrBulletBvhTriangleMeshShape.h"
@@ -2444,7 +2444,7 @@
<btBulletCollisionCommon.h>
"irrBulletSphereShape.h"
1756629131 source:/home/n00b/Projects/irrBullet/src/irrBulletTriangleMeshShape.cpp
1756658396 source:/home/n00b/Projects/irrBullet/src/irrBulletTriangleMeshShape.cpp
<ITerrainSceneNode.h>
<IMesh.h>
<IMeshBuffer.h>
@@ -2499,7 +2499,7 @@
<SDL.h>
<SDL2/SDL.h>
1752028340 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_spritelib.h
1758334384 /home/n00b/Projects/RCBASIC4/rcbasic_runtime/rc_spritelib.h
"SDL.h"
<SDL2/SDL.h>
"rc_sprite2D.h"

View File

@@ -2,184 +2,39 @@
<CodeBlocks_layout_file>
<FileVersion major="1" minor="0" />
<ActiveTarget name="Debug" />
<File name="rc_joints.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="310" topLine="0" />
</Cursor>
</File>
<File name="rc_constraint.h" open="0" top="0" tabpos="15" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="8391" topLine="231" />
</Cursor>
</File>
<File name="rc_gfx_core.h" open="1" top="1" tabpos="29" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="21089" topLine="721" />
</Cursor>
</File>
<File name="rc_actor_physics.h" open="0" top="0" tabpos="8" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
</Cursor>
</File>
<File name="rc_os_defines.h" open="1" top="0" tabpos="26" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="91" topLine="0" />
</Cursor>
</File>
<File name="rc_windowclose.h" open="0" top="0" tabpos="5" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="23822" topLine="643" />
</Cursor>
</File>
<File name="rc_test.h" open="0" top="0" tabpos="12" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="115" topLine="0" />
</Cursor>
</File>
<File name="rc_sprite_physics.h" open="0" top="0" tabpos="38" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="16031" topLine="523" />
</Cursor>
</File>
<File name="rc_tilelib.h" open="0" top="0" tabpos="7" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="6694" topLine="319" />
</Cursor>
</File>
<File name="rc_net.h" open="0" top="0" tabpos="13" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="3769" topLine="186" />
</Cursor>
</File>
<File name="rc_video.h" open="0" top="0" tabpos="21" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="169" topLine="6" />
</Cursor>
</File>
<File name="rc_physics3D_base.h" open="0" top="0" tabpos="9" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="3283" topLine="66" />
</Cursor>
</File>
<File name="gui_freetype_font.h" open="0" top="0" tabpos="23" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="183" topLine="0" />
</Cursor>
</File>
<File name="rc_steam.h" open="0" top="0" tabpos="11" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="854" topLine="0" />
</Cursor>
</File>
<File name="rc_stdlib.h" open="1" top="0" tabpos="25" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="rc_stdlib.h" open="1" top="0" tabpos="7" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="1212" topLine="51" />
</Cursor>
</File>
<File name="camera.h" open="0" top="0" tabpos="8" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="4758" topLine="241" />
</Cursor>
</File>
<File name="../../irrBullet/src/irrBullet.cpp" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="7" />
</Cursor>
</File>
<File name="ProjectiveTextures.h" open="0" top="0" tabpos="34" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="110" topLine="0" />
</Cursor>
</File>
<File name="main.cpp" open="1" top="0" tabpos="24" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="130086" topLine="4447" />
</Cursor>
</File>
<File name="rc_steam_lib.h" open="0" top="0" tabpos="12" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="1942" topLine="71" />
</Cursor>
</File>
<File name="rc_base_actor.h" open="1" top="0" tabpos="28" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="37687" topLine="1366" />
</Cursor>
</File>
<File name="rc_actor_material.h" open="1" top="0" tabpos="21" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="751" topLine="1310" />
</Cursor>
</File>
<File name="rc_geometry.h" open="0" top="0" tabpos="20" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="20919" topLine="652" />
</Cursor>
</File>
<File name="rc_font.h" open="0" top="0" tabpos="5" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="rc_net.h" open="0" top="0" tabpos="13" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
<Cursor1 position="3769" topLine="186" />
</Cursor>
</File>
<File name="rc_gfx3D.h" open="0" top="0" tabpos="14" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="rc_fx_shaders.h" open="1" top="0" tabpos="2" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="565" topLine="0" />
<Cursor1 position="178" topLine="769" />
</Cursor>
</File>
<File name="rc_media.h" open="0" top="0" tabpos="17" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="main.cpp" open="1" top="0" tabpos="6" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="72119" topLine="1937" />
<Cursor1 position="132313" topLine="4388" />
</Cursor>
</File>
<File name="../../irrBullet/src/irrBulletRigidBody.cpp" open="0" top="0" tabpos="11" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="gui_freetype_font.h" open="0" top="0" tabpos="23" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="2248" topLine="493" />
<Cursor1 position="183" topLine="0" />
</Cursor>
</File>
<File name="../../irrBullet/src/irrBulletGhostObject.cpp" open="0" top="0" tabpos="13" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="CShader.cpp" open="1" top="0" tabpos="5" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="1861" topLine="27" />
</Cursor>
</File>
<File name="../../irrBullet/src/irrBulletCollisionObject.cpp" open="0" top="0" tabpos="8" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="322" topLine="4" />
</Cursor>
</File>
<File name="rc_audio.h" open="0" top="0" tabpos="18" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="6531" topLine="311" />
</Cursor>
</File>
<File name="../../irrBullet/src/irrBulletCollisionCallBackInformation.cpp" open="0" top="0" tabpos="12" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="1253" topLine="0" />
</Cursor>
</File>
<File name="../../irrBullet/src/irrBulletWorld.cpp" open="0" top="0" tabpos="9" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="18445" topLine="18" />
</Cursor>
</File>
<File name="rc_gfx.h" open="1" top="0" tabpos="27" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="6941" topLine="234" />
</Cursor>
</File>
<File name="ProjectiveTextures.cpp" open="0" top="0" tabpos="9" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="348" topLine="166" />
</Cursor>
</File>
<File name="rc_sprite2D.h" open="0" top="0" tabpos="3" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="558" topLine="13" />
</Cursor>
</File>
<File name="rc_scene.h" open="0" top="0" tabpos="30" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="1298" topLine="28" />
<Cursor1 position="1032" topLine="31" />
</Cursor>
</File>
<File name="../../irrBullet/src/irrBulletSoftBody.cpp" open="0" top="0" tabpos="14" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
@@ -187,49 +42,14 @@
<Cursor1 position="885" topLine="2" />
</Cursor>
</File>
<File name="rc_matrix.h" open="0" top="0" tabpos="12" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="rc_windowclose.h" open="1" top="0" tabpos="16" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="34977" topLine="1288" />
<Cursor1 position="22534" topLine="595" />
</Cursor>
</File>
<File name="rc_tilemap.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="../../irrBullet/include/irrBulletTriangleMeshShape.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="243" topLine="26" />
</Cursor>
</File>
<File name="rc_mesh.h" open="0" top="0" tabpos="16" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="1830" topLine="71" />
</Cursor>
</File>
<File name="rc_defines.h" open="0" top="0" tabpos="11" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="190390" topLine="2847" />
</Cursor>
</File>
<File name="rc_particles.h" open="0" top="0" tabpos="11" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="6262" topLine="615" />
</Cursor>
</File>
<File name="rc_actor_animation.h" open="0" top="0" tabpos="9" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="9592" topLine="289" />
</Cursor>
</File>
<File name="gui_freetype_font.cpp" open="0" top="0" tabpos="24" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="792" topLine="0" />
</Cursor>
</File>
<File name="rc_spritelib.h" open="0" top="0" tabpos="2" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="47918" topLine="1604" />
</Cursor>
</File>
<File name="rc_fx_shaders.h" open="1" top="0" tabpos="20" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="178" topLine="769" />
<Cursor1 position="366" topLine="0" />
</Cursor>
</File>
<File name="rc_steam.cpp" open="0" top="0" tabpos="10" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
@@ -237,24 +57,14 @@
<Cursor1 position="1410" topLine="0" />
</Cursor>
</File>
<File name="CShader.h" open="1" top="0" tabpos="22" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="../../irrBullet/include/irrBulletBvhTriangleMeshShape.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="1204" topLine="34" />
<Cursor1 position="1301" topLine="20" />
</Cursor>
</File>
<File name="rc_fx_materials.h" open="1" top="0" tabpos="19" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="../../irrBullet/src/irrBulletRigidBody.cpp" open="0" top="0" tabpos="11" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="921" topLine="589" />
</Cursor>
</File>
<File name="CShader.cpp" open="1" top="0" tabpos="23" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="1032" topLine="31" />
</Cursor>
</File>
<File name="rc_func130_cases.h" open="0" top="0" tabpos="13" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="84330" topLine="2045" />
<Cursor1 position="2248" topLine="493" />
</Cursor>
</File>
<File name="../../irrBullet/src/irrBulletcommon.cpp" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
@@ -262,4 +72,217 @@
<Cursor1 position="924" topLine="6" />
</Cursor>
</File>
<File name="rc_defines.h" open="0" top="0" tabpos="11" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="190390" topLine="2847" />
</Cursor>
</File>
<File name="rc_steam.h" open="0" top="0" tabpos="11" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="854" topLine="0" />
</Cursor>
</File>
<File name="../../irrBullet/src/irrBulletTriangleMeshShape.cpp" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="5626" topLine="48" />
</Cursor>
</File>
<File name="rc_physics3D_base.h" open="0" top="0" tabpos="9" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="3283" topLine="66" />
</Cursor>
</File>
<File name="rc_sprite_physics.h" open="0" top="0" tabpos="38" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="16031" topLine="523" />
</Cursor>
</File>
<File name="ProjectiveTextures.cpp" open="0" top="0" tabpos="9" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="348" topLine="166" />
</Cursor>
</File>
<File name="../../irrBullet/src/irrBulletGhostObject.cpp" open="0" top="0" tabpos="13" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="1861" topLine="27" />
</Cursor>
</File>
<File name="rc_test.h" open="0" top="0" tabpos="12" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="115" topLine="0" />
</Cursor>
</File>
<File name="rc_actor_physics.h" open="1" top="0" tabpos="12" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
</Cursor>
</File>
<File name="rc_func130_cases.h" open="1" top="0" tabpos="15" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="21748" topLine="603" />
</Cursor>
</File>
<File name="rc_sprite2D.h" open="1" top="0" tabpos="14" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="558" topLine="2" />
</Cursor>
</File>
<File name="rc_os_defines.h" open="1" top="0" tabpos="8" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="93" topLine="0" />
</Cursor>
</File>
<File name="rc_scene.h" open="0" top="0" tabpos="30" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="1298" topLine="28" />
</Cursor>
</File>
<File name="rc_fx_materials.h" open="1" top="0" tabpos="1" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="921" topLine="589" />
</Cursor>
</File>
<File name="CShader.h" open="1" top="0" tabpos="4" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="1204" topLine="34" />
</Cursor>
</File>
<File name="rc_gfx.h" open="1" top="0" tabpos="9" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="26850" topLine="2890" />
</Cursor>
</File>
<File name="rc_mesh.h" open="0" top="0" tabpos="16" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="1830" topLine="71" />
</Cursor>
</File>
<File name="gui_freetype_font.cpp" open="0" top="0" tabpos="24" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="792" topLine="0" />
</Cursor>
</File>
<File name="rc_tilelib.h" open="1" top="1" tabpos="17" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="10085" topLine="360" />
</Cursor>
</File>
<File name="ProjectiveTextures.h" open="0" top="0" tabpos="34" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="110" topLine="0" />
</Cursor>
</File>
<File name="rc_actor_material.h" open="1" top="0" tabpos="3" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="751" topLine="1310" />
</Cursor>
</File>
<File name="rc_font.h" open="0" top="0" tabpos="5" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
</Cursor>
</File>
<File name="rc_steam_lib.h" open="0" top="0" tabpos="12" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="1942" topLine="71" />
</Cursor>
</File>
<File name="rc_base_actor.h" open="1" top="0" tabpos="10" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="4146" topLine="113" />
</Cursor>
</File>
<File name="rc_joints.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="310" topLine="0" />
</Cursor>
</File>
<File name="rc_particles.h" open="0" top="0" tabpos="11" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="6262" topLine="615" />
</Cursor>
</File>
<File name="rc_media.h" open="0" top="0" tabpos="17" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="72119" topLine="1937" />
</Cursor>
</File>
<File name="../../irrBullet/src/irrBullet.cpp" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="7" />
</Cursor>
</File>
<File name="../../irrBullet/src/irrBulletBvhTriangleMeshShape.cpp" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="680" topLine="19" />
</Cursor>
</File>
<File name="rc_audio.h" open="0" top="0" tabpos="18" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="6531" topLine="311" />
</Cursor>
</File>
<File name="../../irrBullet/src/irrBulletCollisionObject.cpp" open="0" top="0" tabpos="8" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="322" topLine="4" />
</Cursor>
</File>
<File name="rc_actor_animation.h" open="0" top="0" tabpos="9" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="9592" topLine="289" />
</Cursor>
</File>
<File name="rc_constraint.h" open="0" top="0" tabpos="15" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="8391" topLine="231" />
</Cursor>
</File>
<File name="rc_gfx_core.h" open="1" top="0" tabpos="11" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="22929" topLine="623" />
</Cursor>
<Folding>
<Collapse line="104" />
</Folding>
</File>
<File name="../../irrBullet/src/irrBulletWorld.cpp" open="0" top="0" tabpos="9" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="18445" topLine="18" />
</Cursor>
</File>
<File name="rc_spritelib.h" open="1" top="0" tabpos="13" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="50910" topLine="1663" />
</Cursor>
</File>
<File name="rc_matrix.h" open="0" top="0" tabpos="12" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="34977" topLine="1288" />
</Cursor>
</File>
<File name="rc_gfx3D.h" open="0" top="0" tabpos="14" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="565" topLine="0" />
</Cursor>
</File>
<File name="camera.h" open="0" top="0" tabpos="8" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="4758" topLine="241" />
</Cursor>
</File>
<File name="../../irrBullet/src/irrBulletCollisionCallBackInformation.cpp" open="0" top="0" tabpos="12" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="1253" topLine="0" />
</Cursor>
</File>
<File name="rc_video.h" open="0" top="0" tabpos="21" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="169" topLine="6" />
</Cursor>
</File>
<File name="rc_tilemap.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="243" topLine="26" />
</Cursor>
</File>
</CodeBlocks_layout_file>