Welcome, Guest. Please login or register. Did you miss your activation email?

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - BaneTrapper

Pages: 1 ... 5 6 [7] 8 9 ... 15
91
SFML projects / Re: SFML Light System - Let There Be Light
« on: March 22, 2014, 07:53:25 pm »
EDIT:: Fixed the errors by doing:
Going true posts and getting "lightAttenuationShader.frag" that doesn't make errors,
There is still a issue of light not being rendered when the light is "left of hull", everything works fine but the light when it is left of the hull, the hull is not rendered at all...

EDIT::Ignore Fixed, use for code if want its working, but the light Point 2 is broken.
Thank you, including openGL fixed that error.
But i am getting very bad visuals and console errors with "what i think is the user updated latest example code"

"Console screenshot"
http://postimg.org/image/u8z3icnlb/

Any ideas why there is an "openGL" failure, my gpu drivers up to date and same issue.
Also why the "Point light" gives error ("Cannot create texture invalid size(50, 0)"), i tried messing up with the code and i cannot make it work.
Code: [Select]
int main(int argc, char* args[])
{
sf::VideoMode vidMode;
vidMode.width = 800;
vidMode.height = 600;
vidMode.bitsPerPixel = 32;
assert(vidMode.isValid());

sf::RenderWindow win;
win.create(vidMode, "Let there be Light - Demo");

sf::View view;
sf::Vector2u windowSize(win.getSize());
view.setSize(sf::Vector2f(static_cast<float>(windowSize.x), static_cast<float>(windowSize.y)));
view.setCenter(view.getSize() / 2.0f);

// ---------------------- Background Image ---------------------

sf::Texture backgroundImage;

assert(backgroundImage.loadFromFile("data/background.png"));

// Tiling background
backgroundImage.setRepeated(true);

sf::Sprite backgroundSprite(backgroundImage);
backgroundSprite.setTextureRect(sf::IntRect(0, 0, vidMode.width * 2, vidMode.height * 2));
backgroundSprite.setPosition(-400.0f, -400.0f);
std::cout<<"Hello:"<<std::endl;
// --------------------- Light System Setup ---------------------

ltbl::LightSystem ls(AABB(Vec2f(0.0f, 0.0f), Vec2f(static_cast<float>(vidMode.width), static_cast<float>(vidMode.height))), &win, "data/lightFin.png", "data/shaders/lightAttenuationShader.frag");

// Create a light
ltbl::Light_Point* testLight = new ltbl::Light_Point();
testLight->m_intensity = 2.0f;
testLight->m_center = Vec2f(200.0f, 200.0f);
testLight->m_radius = 600.0f;
testLight->m_size = 15.0f;
testLight->m_spreadAngle = ltbl::pifTimes2;
testLight->m_softSpreadAngle = 0.0f;
testLight->CalculateAABB();

testLight->m_bleed = 0.4f;
testLight->m_linearizeFactor = 0.2f;

ls.AddLight(testLight);

testLight->SetAlwaysUpdate(true);

std::cout<<"Create a light BEFORE:"<<std::endl;
// Create a light
ltbl::Light_Point* testLight2 = new ltbl::Light_Point();
testLight2->m_center = Vec2f(200.0f, 200.0f);
testLight2->m_radius = 50.0f;
testLight2->m_size = 30.0f;
testLight2->m_color.r = 0.5f;
testLight2->m_intensity = 1.5f;
testLight2->m_spreadAngle = ltbl::pifTimes2;
testLight2->m_softSpreadAngle = 0.0f;
testLight2->CalculateAABB();

ls.AddLight(testLight2);

testLight2->SetAlwaysUpdate(false);

std::cout<<"Create a emissive light BEFORE:"<<std::endl;
// Create an emissive light
ltbl::EmissiveLight* emissiveLight = new ltbl::EmissiveLight();

sf::Texture text;

if(!text.loadFromFile("data/emissive.png"))
abort();

emissiveLight->SetTexture(&text);

emissiveLight->SetRotation(45.0f);

emissiveLight->m_intensity = 1.3f;

ls.AddEmissiveLight(emissiveLight);

emissiveLight->SetCenter(Vec2f(500.0f, 500.0f));

std::cout<<"Create a hull BEFORE:"<<std::endl;
// Create a hull by loading it from a file
ltbl::ConvexHull* testHull = new ltbl::ConvexHull();

if(!testHull->LoadShape("data/testShape.txt"))
abort();

// Pre-calculate certain aspects
testHull->CalculateNormals();
testHull->CalculateAABB();

testHull->SetWorldCenter(Vec2f(300.0f, 300.0f));

testHull->m_renderLightOverHull = true;

ls.AddConvexHull(testHull);

// ------------------------- Game Loop --------------------------

sf::Event eventStructure;

bool quit = false;

ls.m_useBloom = true;

while(!quit)
{
while(win.pollEvent(eventStructure))
if(eventStructure.type == sf::Event::Closed)
{
quit = true;
break;
}

if(sf::Keyboard::isKeyPressed(sf::Keyboard::A))
view.move(sf::Vector2f(-1.0f, 0.0f));
else if(sf::Keyboard::isKeyPressed(sf::Keyboard::D))
view.move(sf::Vector2f(1.0f, 0.0f));

if(sf::Keyboard::isKeyPressed(sf::Keyboard::W))
view.move(sf::Vector2f(0.0f, -1.0f));
else if(sf::Keyboard::isKeyPressed(sf::Keyboard::S))
view.move(sf::Vector2f(0.0f, 1.0f));

sf::Vector2i mousePos = sf::Mouse::getPosition(win);
//testLight2->IncCenter(ltbl::Vec2f(0.1f, 0.0f));
// Update light
testLight->SetCenter(Vec2f(static_cast<float>(mousePos.x), static_cast<float>(vidMode.height) - static_cast<float>(mousePos.y)));

win.clear();

win.setView(view);
ls.SetView(view);

// Draw the background
win.draw(backgroundSprite);

// Calculate the lights
ls.RenderLights();

// Draw the lights
ls.RenderLightTexture();

//ls.DebugRender();

win.display();
}

win.close();
}

92
SFML projects / Re: SFML Light System - Let There Be Light
« on: March 21, 2014, 02:50:00 pm »
Can someone who actually can find stuff here i bean true all the 21 pages and downloaded bunch of files cannot get to compile and build it for win7 Visual studio 2010-11.
I just want to get this thing running on my system, no luck yet.
Please some guidance.


I downloaded from first post "Let there be light" added to my project and i get following errors:
I got no idea how to get it to build with Cmake, its prompting errors as well.
Code: [Select]
1>------ Build started: Project: Test, Configuration: Debug Win32 ------
1>Light_Point.obj : error LNK2019: unresolved external symbol __imp__glBegin@4 referenced in function "public: void __thiscall std::_Wrap_alloc<class std::allocator<char> >::construct<char *,char * &>(char * *,char * &)" (??$construct@PADAAPAD@?$_Wrap_alloc@V?$allocator@D@std@@@std@@QAEXPAPADAAPAD@Z)
1>ShadowFin.obj : error LNK2001: unresolved external symbol __imp__glBegin@4
1>AABB.obj : error LNK2001: unresolved external symbol __imp__glBegin@4
1>ConvexHull.obj : error LNK2001: unresolved external symbol __imp__glBegin@4
1>EmissiveLight.obj : error LNK2001: unresolved external symbol __imp__glBegin@4
1>LightSystem.obj : error LNK2001: unresolved external symbol __imp__glBegin@4
1>Light_Point.obj : error LNK2019: unresolved external symbol __imp__glEnd@0 referenced in function "public: void __thiscall std::_Wrap_alloc<class std::allocator<char> >::construct<char *,char * &>(char * *,char * &)" (??$construct@PADAAPAD@?$_Wrap_alloc@V?$allocator@D@std@@@std@@QAEXPAPADAAPAD@Z)
1>ShadowFin.obj : error LNK2001: unresolved external symbol __imp__glEnd@0
1>AABB.obj : error LNK2001: unresolved external symbol __imp__glEnd@0
1>ConvexHull.obj : error LNK2001: unresolved external symbol __imp__glEnd@0
1>EmissiveLight.obj : error LNK2001: unresolved external symbol __imp__glEnd@0
1>LightSystem.obj : error LNK2001: unresolved external symbol __imp__glEnd@0
1>Light_Point.obj : error LNK2019: unresolved external symbol __imp__glVertex2f@8 referenced in function "public: void __thiscall std::_Wrap_alloc<class std::allocator<char> >::destroy<char *>(char * *)" (??$destroy@PAD@?$_Wrap_alloc@V?$allocator@D@std@@@std@@QAEXPAPAD@Z)
1>ShadowFin.obj : error LNK2001: unresolved external symbol __imp__glVertex2f@8
1>AABB.obj : error LNK2001: unresolved external symbol __imp__glVertex2f@8
1>ConvexHull.obj : error LNK2001: unresolved external symbol __imp__glVertex2f@8
1>EmissiveLight.obj : error LNK2001: unresolved external symbol __imp__glVertex2f@8
1>LightSystem.obj : error LNK2001: unresolved external symbol __imp__glVertex2f@8
1>Color3f.obj : error LNK2019: unresolved external symbol __imp__glColor3f@12 referenced in function "public: void __thiscall Color3f::GL_Set(void)" (?GL_Set@Color3f@@QAEXXZ)
1>EmissiveLight.obj : error LNK2001: unresolved external symbol __imp__glColor3f@12
1>QuadTree.obj : error LNK2001: unresolved external symbol __imp__glColor3f@12
1>ConvexHull.obj : error LNK2019: unresolved external symbol __imp__glTranslatef@12 referenced in function "public: void __thiscall ltbl::ConvexHull::DebugDraw(void)" (?DebugDraw@ConvexHull@ltbl@@QAEXXZ)
1>EmissiveLight.obj : error LNK2001: unresolved external symbol __imp__glTranslatef@12
1>LightSystem.obj : error LNK2001: unresolved external symbol __imp__glTranslatef@12
1>ConvexHull.obj : error LNK2019: unresolved external symbol __imp__glVertex3f@12 referenced in function "public: void __thiscall ltbl::ConvexHull::RenderHull(float)" (?RenderHull@ConvexHull@ltbl@@QAEXM@Z)
1>LightSystem.obj : error LNK2001: unresolved external symbol __imp__glVertex3f@12
1>EmissiveLight.obj : error LNK2019: unresolved external symbol __imp__glColor4f@16 referenced in function "public: void __thiscall ltbl::EmissiveLight::Render(void)" (?Render@EmissiveLight@ltbl@@QAEXXZ)
1>LightSystem.obj : error LNK2001: unresolved external symbol __imp__glColor4f@16
1>ShadowFin.obj : error LNK2001: unresolved external symbol __imp__glColor4f@16
1>EmissiveLight.obj : error LNK2019: unresolved external symbol __imp__glPopMatrix@0 referenced in function "public: void __thiscall ltbl::EmissiveLight::Render(void)" (?Render@EmissiveLight@ltbl@@QAEXXZ)
1>EmissiveLight.obj : error LNK2019: unresolved external symbol __imp__glPushMatrix@0 referenced in function "public: void __thiscall ltbl::EmissiveLight::Render(void)" (?Render@EmissiveLight@ltbl@@QAEXXZ)
1>EmissiveLight.obj : error LNK2019: unresolved external symbol __imp__glRotatef@16 referenced in function "public: void __thiscall ltbl::EmissiveLight::Render(void)" (?Render@EmissiveLight@ltbl@@QAEXXZ)
1>EmissiveLight.obj : error LNK2019: unresolved external symbol __imp__glTexCoord2i@8 referenced in function "public: void __thiscall ltbl::EmissiveLight::Render(void)" (?Render@EmissiveLight@ltbl@@QAEXXZ)
1>LightSystem.obj : error LNK2001: unresolved external symbol __imp__glTexCoord2i@8
1>ShadowFin.obj : error LNK2001: unresolved external symbol __imp__glTexCoord2i@8
1>Light.obj : error LNK2019: unresolved external symbol __imp__glEnable@4 referenced in function "public: void __thiscall ltbl::Light::SetAlwaysUpdate(bool)" (?SetAlwaysUpdate@Light@ltbl@@QAEX_N@Z)
1>LightSystem.obj : error LNK2001: unresolved external symbol __imp__glEnable@4
1>Light.obj : error LNK2019: unresolved external symbol __imp__glLoadIdentity@0 referenced in function "private: void __thiscall ltbl::Light::SwitchStaticTexture(void)" (?SwitchStaticTexture@Light@ltbl@@AAEXXZ)
1>LightSystem.obj : error LNK2001: unresolved external symbol __imp__glLoadIdentity@0
1>Light.obj : error LNK2019: unresolved external symbol __imp__glMatrixMode@4 referenced in function "private: void __thiscall ltbl::Light::SwitchStaticTexture(void)" (?SwitchStaticTexture@Light@ltbl@@AAEXXZ)
1>LightSystem.obj : error LNK2001: unresolved external symbol __imp__glMatrixMode@4
1>Light.obj : error LNK2019: unresolved external symbol __imp__glOrtho@48 referenced in function "private: void __thiscall ltbl::Light::SwitchStaticTexture(void)" (?SwitchStaticTexture@Light@ltbl@@AAEXXZ)
1>LightSystem.obj : error LNK2001: unresolved external symbol __imp__glOrtho@48
1>Light.obj : error LNK2019: unresolved external symbol __imp__glViewport@16 referenced in function "private: void __thiscall ltbl::Light::SwitchStaticTexture(void)" (?SwitchStaticTexture@Light@ltbl@@AAEXXZ)
1>LightSystem.obj : error LNK2001: unresolved external symbol __imp__glViewport@16
1>LightSystem.obj : error LNK2019: unresolved external symbol __imp__glBlendFunc@8 referenced in function "private: void __thiscall ltbl::LightSystem::ClearLightTexture(class sf::RenderTexture &)" (?ClearLightTexture@LightSystem@ltbl@@AAEXAAVRenderTexture@sf@@@Z)
1>ShadowFin.obj : error LNK2001: unresolved external symbol __imp__glBlendFunc@8
1>LightSystem.obj : error LNK2019: unresolved external symbol __imp__glColor4b@16 referenced in function "public: void __thiscall ltbl::LightSystem::RenderLights(void)" (?RenderLights@LightSystem@ltbl@@QAEXXZ)
1>LightSystem.obj : error LNK2019: unresolved external symbol __imp__glDisable@4 referenced in function "private: void __thiscall ltbl::LightSystem::MaskShadow(class ltbl::Light *,class ltbl::ConvexHull *,bool,float)" (?MaskShadow@LightSystem@ltbl@@AAEXPAVLight@2@PAVConvexHull@2@_NM@Z)
1>C:\C++\Projects\Test\Debug\Test.exe : fatal error LNK1120: 19 unresolved externals
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========


Win 7 32bit, Visual studio 11 the .exe works fine but i cannot get to compile into my project

93
SFML projects / The Wanderer - Lost in time
« on: March 03, 2014, 12:00:28 am »
"The project has stopped development"

"Hello World" BaneTrapper Here.
I'm self learned c++ programer with near three years of experience, my hobby is to make games along side that, i am dedicated, and persistent therefore i decided to start a team project because i did not have enough time to make each part of the game myself, currently i am just working on this project The Wanderer - Lost in time, which info you can find bellow  ;)

Acts In making:
Act 0:Demonstration
Act I: Seize the power!

Current team:
Developers: 2
Musicians: 2
Pixel Artists: 3
Story Writer: 1

Recruiting positions for:
NOTE: This project is hobby based, its focus is not to provide revenue, rather to be a learning experience along side joyful time.
-: Looking for environment builder, use tools made by us to create environment.(Make maps, take this off my hands so i can focus more on mechanics :) )

-: Looking for Pixel artist who is willing to make sprites for characters, and equipment pieces(Animations for walking, attack swing, attack bow, Cast magic, Dying/Death).

-: Also looking for developers who are willing to take a specific mechanic, and focus on it(Inventory(make items, control inventory GUI, make crafting / crafting recipes) or Menus(State machine is made, although we have some menus which are mid way done they need finishing as implementing what happends when button is pressed), and simmilar)

-: Looking for special effect creator, whatever you can make we need :). From Bird cheeps, to bush shaking, to swords clashing SE, up to spell explosion, spell tornado sound.
Whatever you can do i want it ;)

20-Sep-2015



We are designing a new world, in it characters, and areas with detailed story to experience.
My goal is to make the world dynamic, meaning your actions have impact on a world, and i am not talking about choice A or B such as, A will cause This, B will cause That. What i am talking about is a world that you can interact with everything, burning buildings, killing inhabitants of town, steal... everything has a effect. The world is alive(Meaning if you kill a towns farmer, there will be somebody who will replace him, the town needs a farmer...) and you are free to do anything anytime(Of course your actions have consequence, but if nobody saw you do it, you didn't do it...). My plan for story is for it to flow as you play, even if you engage in it or not, the clock ticks and world goes on.

Game play:
You will be in control of a single rpg character that is on his quest to unite the land under his banner. On his way he will encounter numerous characters that will require help, a interactive environment, a world to explore, and few ways to deal with certain issues. For his quest is tough, the hero will require help of some sort, companions, conquering land for his own, commanding towns, and leading his own army, All to unite the land under his banner! the quest worthy of a king, or a fool... It is yet to be told!

Quests:
No spoilers.

Official youtube: "BaneTrapper Dev" https://www.youtube.com/channel/UC8r76BkWbj9nRJL-kfSwfxA
You can find update videos there, i will try to be more regular. As in one update video each week or two.

What is to be expected in alpha:Single character control, Items that affect player (Consumables, Equipment), Environment to explore, Characters with story to tell, Quests and puzzles.

Update 5 20:Sep:2015:
I have started streaming the development, you can catch up here :

I stream Saturdays and Sundays when i wake up. If i am not working i will also stream during work days.
Added AI, currently it gets action from town what is required to do.(Harvesting and crafting). Unit will go out, harvest, and return resources.
It will also craft when town orders it as a action when it has resources to do so.
Also equipment is now dynamic, equipping a item piece has its own sprite that shows in game.
Some spell effects have been added, and updated.

94
Graphics / Re: [Beginner] Help with random-colored Circles
« on: February 23, 2014, 11:56:08 pm »
srand(time(NULL));
Circle.setFillColor(sf::Color(rand() % 255, rand() % 255, rand() % 255));
 

Haha, no sorry :) First of all, this method would only generate random numbers from 0 to 254, not 255.
Moreover, every number generated would be the same for every color, using this method. And if you use the time as seed, the seed will only change every second, so if two different balls collide with the wall within a second, they will have the same color.
Every call to rand() will give you different result.
Seed is the starting point of the algorithm that is used to produce the number.

If you want to be fancy you can just create your own pallet of colors and random from those, that will provide you with nice choice of colors and to the user "random" color each time.

From "Laurent"s post the "HSV" , googling "HSV components to define your colors." gave a great result/answet to the post.

95
SFML projects / Re: Countdown-Alert release
« on: February 17, 2014, 02:30:10 pm »
Not to sound grumpy, but i had no clue whats the project about on glimpsing your post.
Went on to download to see if it is a fellow game dev and i end up finding i am missing OpenAL32.dll witch is ok.
On deeper reading i figured out its a clock application ^^ suggesting to "point it out" what your project is.
Also writing to report i cannot run the application. Win 7 32bit user.

96
Graphics / Re: sf::text size and 'highlighting'.
« on: January 17, 2014, 11:18:41 pm »
Hello.
I did not finish my post but i will attempt to help.
Solution 1:
Change color?
Solution 2:
Draw a rectangle with sf::Color(255,255,255,x) where x represents the amount you want to highlight
Will highlight a square around text tho, but it is fast to highlight whole button and be lazy  :P.

My code bellow does not work... sorry & i cant remember how i did that text centering also i cant find it in old project  :P

IMO you are doing many draw calls to highlight the text like that witch is not necessary.

97
Graphics / Re: OpenGL error report in console window
« on: January 13, 2014, 08:58:05 pm »
The one for Windows 8.0 doesn't work? Are there such huge changes since then?
I believe the one for win8 is the one that has 1.1 OpenGL witch will produce error.
I was looking it up and the error that he experienced is no longer visible in +1.1 versions or to say it better it is caused with 1.1- versions.

98
Graphics / Re: sf::text size and 'highlighting'.
« on: January 13, 2014, 08:39:32 pm »
By the way, use [code=cpp] code tags, not [code] or [tt]. Also you, BaneTrapper ;)
The shiny armor knight!!! i didn't know that.

99
Graphics / Re: OpenGL error report in console window
« on: January 13, 2014, 07:41:12 pm »
Please do a test and tell us what is displayed.
Code: [Select]
sf::ContextSettings settings = Window.getSettings();
std::cout << settings.majorVersion << "." << settings.minorVersion << std::endl;
You may be upgrading old drivers, you need new drivers.

100
Graphics / Re: sf::text size and 'highlighting'.
« on: January 13, 2014, 07:25:29 pm »
I had issue with correcting text to a position, the issue was with the font.

To try:
Try with already known good font "arial.ttf" and see if it works as intended, when it does switch font to desired font.
Position the font rectangle correctly.
sf::Text txt;
sf::RectangleShape rec;
rec.setPosition(txt.getPosition().x + txt.getGlobalBounds().left + txt.getGlobalBounds().width / 2 - rec.getSize().x,
txt.getPosition().y + txt.getGlobalBounds().top + txt.getGlobalBounds().height / 2 - rec.getSize().y);
 

101
Graphics / Re: OpenGL application lag
« on: January 13, 2014, 07:14:04 pm »
I have a question.. Whith VSYNC the framerate is set to 60? I can change it?
You can change it if your setup supports different frame rates.

102
Graphics / Re: OpenGL application lag
« on: January 09, 2014, 08:06:01 pm »
What is your os?
I can send you application for you to test i believe i had 32bit one somewhere.

103
Quote
I have VertexArray holding mapSize of 50x50 that type is sf::PrimitiveType::Quads the size is 10,000

Break your world into chunks, lets say 400x400 blocks. Each chunk/block will get one vertex array. Then you can simply draw only the chunks that are in a visible area of the current view.  ;)

Quote
Unit VertexArray is holding ~50 units that type is sf::PrimitiveType::Quads and their position is at start pretty predictable but it gets chaotic as time passes because they move randomly so i have no idea how to achieve culling on them.

For only 50 units? That is only 200 vertices. A single 3D model can easily have more than this. It is not worth implementing culling for such a small vertex array. Just keep drawing the entire array until performance becomes an issue.
ID separate units intro objects that hold those 400x400 as well so i keep collision and other interactions up to speed.
I counted of making main map 500x500size and the separation to 400x400 seams a great idea  ;D thx!
The most units i had on screen with auto movement logic was 20,000-25,000 depends on my pc so id max it to 10k because i want to implement more complex AI for them.

That being said i do not want to loop logic for all units but maybe 2-3 regions around my player.
so one region is 400x400. I do not how to efficiently manage units intro these regions, i am thinking of having a sf::Vector<Unit*> that is in this vector when unit leaves the region it gets removed from leaving region and gets added to entering region that is the best idea i have at top of my head right now.

I was thinking and looking for some hard solution when just separating like you suggested sound so easy and perfect...
Simple is best

104
Hello ::).
I have VertexArray holding mapSize of 50x50 that type is sf::PrimitiveType::Quads the size is 10,000
At one moment i draw 26x20 how do i implement culling on VertexArray?
I will adjust the storage as required to achieve good performance.

Unit VertexArray is holding ~50 units that type is sf::PrimitiveType::Quads and their position is at start pretty predictable but it gets chaotic as time passes because they move randomly so i have no idea how to achieve culling on them.
And The sizes of units and map can scale its not set that is why i want culling to allow me to go big.
Suggestions on sfml culling pls.

105
Graphics / Re: two questions: "collision-stop-detect" and "random move"
« on: January 08, 2014, 10:16:52 pm »
For me i hold everything in one vector.
To tell this simplest as possible:
I have a class that is supposed to hold data for unit for example
Code: [Select]
//The base that each unit i want to move, display needs to have
class UnitBase
{
public:
int VectorPosition;
bool inUse;
//Other unit related position, position sprite etc
};

//Class holder
Class EntityManager
{
public:
void AddEntity(UnitBase &unit);
void RemoveEntity(UnitBase &unit);
void MoveEntity(UnitBase &unit);
std::vector<Entity> UnitList;
};
void EntityManager::AddEntity(UnitBase &unit)
{
if(unit.inUse)
    return false;//Unit alredy exists, send error
else
//Create unit
}
void EntityManager::MoveEntity(BaseUnit &unit)
{
vertex[unit.VertexPosition].setPosition//...
}
//The remove is following same logic
The poent is to be leak free, so if in some case i somehow try to create unit two times it wont actually duplicate it and make it draw 2 sprites.
Its really base and as simple as i could explain, i strongly suggest for you to experiment that is the most fun thing to do  ;D.

Pages: 1 ... 5 6 [7] 8 9 ... 15
anything