Integrating Box2D Help Forum
by rennie moffat · in iTorque 2D · 02/23/2011 (9:52 am) · 20 replies
Hi there,
I am attempting to integrate Box2D into iTGB and would like to have this thread dedicated to any questions that may arise.
My first problem is with this installation.
Where is the "Solution Explorer"?
Where are the game Properties?
Basically this whole section I can not find the relavant items.
Thanks for any help.
Ren
I am attempting to integrate Box2D into iTGB and would like to have this thread dedicated to any questions that may arise.
My first problem is with this installation.
Quote:
Solution Explorer in Visual Studio and select “Add → Existing Project...”. Browse to the directory
engine/lib/Box2D/Build/VC8 and there select Box2D.vcproj (do not confuse with Box2D.sln). Next open the Properties of the project TGBGame.
• Select Configuration Properties/C/C++/General in the tree-view to the left. In the Additional Include Directories property add the directory ../../lib/Box2D/Include.
• Select Configuration Properties/Linker/General and add the directory ../../lib/Box2D/Library to the Additional Library Directories property.
• Select Configuration Properties/Linker/Input and add box2d.lib to the Additional Dependencies property.7
Where is the "Solution Explorer"?
Where are the game Properties?
Basically this whole section I can not find the relavant items.
Thanks for any help.
Ren
About the author
My thanks to Garage Games and the Garage Games Community combined with owned determination I got one game up, Temple Racer and I am looking to build more interesting, fun games for the mass market of the iOS app store.
#2
Thanks.
02/23/2011 (2:50 pm)
Thanks Michael, I have only had a chance to briefly look at this, but Visual Studio is a Application I must get? Not sure, reading up tonight. Thanks.
#3
02/23/2011 (3:25 pm)
You must have it for compiling on Windows. Box2D requires source code and project changes. On Windows, that means Visual Studio. On OS X, that requires Xcode.
#4
Cheers.
02/23/2011 (4:33 pm)
Oh, great. Are the info, files etc all interchangeable (Windows to Mac)? A quick look says no. Sorry for not replying with more research done but I am done for the day.Cheers.
#5
02/23/2011 (5:28 pm)
Xcode and Visual Studio are worlds apart. Make that galaxies. If you have a tutorial based on Visual Studio, it is almost worthless for Xcode. You will have to use insight and docs to make the transition from Visual Studio to Xcode. Development and platform experience play a huge factor here.
#6
so this is not going to be easy.
Questions:
How much, if you could, would you say Box2D in percentage, would enhance a games performance?
And, any plans to integrate Box2D into iTGB? Seems like it would be sooooo worthwhile.
02/23/2011 (6:41 pm)
Hmmm. so this is not going to be easy.
Questions:
How much, if you could, would you say Box2D in percentage, would enhance a games performance?
And, any plans to integrate Box2D into iTGB? Seems like it would be sooooo worthwhile.
#7
02/23/2011 (6:49 pm)
Box2D wouldn't just enhance performance, but would also let you do more with physics. There are no built-in functions in the editor to make use of it, but that could be solved with behaviours/components. It's somewhat more advanced work, though.
#8
02/23/2011 (6:57 pm)
Well the studies of the language seemed easy enough, plus the integration into the iTGB editor, seemed like a dream come true. I understand, my hope was anyway that it would of course enhance any game using physics but how would/could it affect overall game play even with out physics? If I understand you properly.
#9
02/23/2011 (7:06 pm)
Box2D is all about physics, so I dunno what you mean. It supports more things than the mere gravitational pull/bounce/clamp system in TGB.
#10
I have to just leave it at this: Box2D kicks ass. It's more optimized than iTorque 2D's stock physics and offers far more features. The caveat is that it would take an experienced developer with C++, Xcode, and platform knowledge to integrate the solution smoothly.
02/23/2011 (7:10 pm)
Quote:How much, if you could, would you say Box2D in percentage, would enhance a games performance?I've never run a side by side comparison with analyzers, but after some hands on time with T2D R&D I can vouch for Box2D's performance over T2D's. I was thoroughly impressed.
Quote:And, any plans to integrate Box2D into iTGB? Seems like it would be sooooo worthwhile.Plans? Yes. Time frame or details, not yet.
Quote:but how would/could it affect overall game play even with out physics?I honestly do not know how to explain this to you rennie. It's not a slight, but I fear your comprehension of game development hinders me from posting anything short of a five page explanation on how Box2D improves your game's performance and interaction. I would be using terms like solver, pair management, and joints (very loaded) to explain how the SDK helps, which are obviously not self-explanatory. We are talking programming, game engine architecture and hardcore physics calculations/resolutions.
I have to just leave it at this: Box2D kicks ass. It's more optimized than iTorque 2D's stock physics and offers far more features. The caveat is that it would take an experienced developer with C++, Xcode, and platform knowledge to integrate the solution smoothly.
#11
Time to IMPLEMEEEEEENNNNNT please.
It would help me a ton. The game I have now, I think is quite good, tho does drag too much. and I will need to improve performance. It only uses very simple physics and the actual physics, when played on the computer, in my case is perfect, but if there is a more efficient way, I think it should be a priority especially seeing the success of such titles as Angry Birds and the like.
02/23/2011 (7:26 pm)
Well I am sold. Time to IMPLEMEEEEEENNNNNT please.
It would help me a ton. The game I have now, I think is quite good, tho does drag too much. and I will need to improve performance. It only uses very simple physics and the actual physics, when played on the computer, in my case is perfect, but if there is a more efficient way, I think it should be a priority especially seeing the success of such titles as Angry Birds and the like.
#12
Worst case scenario, you wait for GarageGames to provide a solution or a kind community member creates a resource for iTorque 2D.
02/23/2011 (7:37 pm)
OK. Here is my advice: find a more experienced programmer. Start by searching for a kind soul who likes a challenge and would help just for the sake of helping or trying something new. If you can't find that person, start looking for very cheap-to-free labor. Someone who will work for rev share or some ridiculously low price like $100 to implement. After that, you are looking at professional contractor rates which could be kind of harsh.Worst case scenario, you wait for GarageGames to provide a solution or a kind community member creates a resource for iTorque 2D.
#13
The thing is, beyond looking for a more experienced programmer I do not know what the deal would be, as I think the game, is programmed quite simply. I only have two onUpdate calls. but the trick, I think is the number of objects I have. There are 50-70 of them.
02/23/2011 (7:46 pm)
Hmm. Well I am submitting the game/demo, this week to some publishers. If the interest is there, I will take it from there. Is it ok to post on the boards here for a programmer?The thing is, beyond looking for a more experienced programmer I do not know what the deal would be, as I think the game, is programmed quite simply. I only have two onUpdate calls. but the trick, I think is the number of objects I have. There are 50-70 of them.
#14
You have something going for you that a lot of people posting in that forum do not: a shipped title. Despite your inexperience, you have shipped a game. That's persistence, a good work ethic and good ol' fashioned stubbornness. It shows that you started a project and finished it, which other developers can appreciate. If you offer rev share, you have an example of a project you finished which could meet that potential. There are a lot of underlying details to work out, which I can't help with.
It sounds like it's possible a more experienced developer can resolve your performance issues without ever implementing Box2D. If I was not currently employed it's something I would tackle myself for the sake of revenue share. When I was unemployed, I was only entertaining offers of revenue share from people I knew personally or have shipped a game. Optimizing an iTorque 2D game is extremely simple to me, so long as I fully understood the project. That is where you will face a challenge if you contract another programmer. Be prepared to have a lot of meetings and be available as much as possible to answer the other programmer's questions.
02/23/2011 (7:56 pm)
Feel free to post in our jobs section in the forums. It's where people scout for talent and request help. It's not guaranteed, but there is no better place to find help for your project.You have something going for you that a lot of people posting in that forum do not: a shipped title. Despite your inexperience, you have shipped a game. That's persistence, a good work ethic and good ol' fashioned stubbornness. It shows that you started a project and finished it, which other developers can appreciate. If you offer rev share, you have an example of a project you finished which could meet that potential. There are a lot of underlying details to work out, which I can't help with.
It sounds like it's possible a more experienced developer can resolve your performance issues without ever implementing Box2D. If I was not currently employed it's something I would tackle myself for the sake of revenue share. When I was unemployed, I was only entertaining offers of revenue share from people I knew personally or have shipped a game. Optimizing an iTorque 2D game is extremely simple to me, so long as I fully understood the project. That is where you will face a challenge if you contract another programmer. Be prepared to have a lot of meetings and be available as much as possible to answer the other programmer's questions.
#15
02/23/2011 (7:57 pm)
Back on topic, this could be the thread that kick-starts an iTorque 2D Box2D implementation. I know several developers who have already accomplished this, so maybe we can attract them to this thread.
#16
As for the developers of this game. this next week or two will see where I stand.
Thanks.
02/23/2011 (8:42 pm)
That would be amazing Michael. I would love to have Box2d implemented in iTGB and if this thread plays any role I would be happy to be part of it. As for the developers of this game. this next week or two will see where I stand.
Thanks.
#17
Maybe you could give me a quick tip, but as it stands now, in my demo, I have say, 50 objects. All usePhysics = "1"; , 48 actually use physics send, and or receive. About 45 of those objects are not sprites but scene objects that send physics, receive collisions and are immovable.
I have two objects which move, each with a behavior which uses enableupdatcallback(). The updates simply check for globals and their status'. If true, do this. Done. If false ignore etc.
I know without seeing the code it is very difficult to measure a better way to program it, but what tips, if any would you have to run a more efficient program? I know I am still very low in overall knowledabilty but I think my program is quite efficient.
Or is this a, need to see the code to give any type of answer question?
:?
02/23/2011 (10:39 pm)
@Michael,Maybe you could give me a quick tip, but as it stands now, in my demo, I have say, 50 objects. All usePhysics = "1"; , 48 actually use physics send, and or receive. About 45 of those objects are not sprites but scene objects that send physics, receive collisions and are immovable.
I have two objects which move, each with a behavior which uses enableupdatcallback(). The updates simply check for globals and their status'. If true, do this. Done. If false ignore etc.
I know without seeing the code it is very difficult to measure a better way to program it, but what tips, if any would you have to run a more efficient program? I know I am still very low in overall knowledabilty but I think my program is quite efficient.
Or is this a, need to see the code to give any type of answer question?
:?
#18
Sorry fir the ramble but I just want this whole Box2D thing workable in iTGB. If anyone who reads this has gotten Box2D working on your Mac/iTGB, please contact me via here or renniemoffat@gmail.com . This is a huge facet of iGaming. Let's enrich the community.
Cheers,
Ren
02/24/2011 (2:47 am)
Just put that out there as a general thought. If something beyond generally, placing objects in editor etc adding behaviors would answer everything but I would imagine ot is much deeper than that because the fact is I think that the game itself contains these little objects, not all of them but after a while I guess it all comes down to how you write your scrits, informing objects to do things and in my case code the scripts.Sorry fir the ramble but I just want this whole Box2D thing workable in iTGB. If anyone who reads this has gotten Box2D working on your Mac/iTGB, please contact me via here or renniemoffat@gmail.com . This is a huge facet of iGaming. Let's enrich the community.
Cheers,
Ren
#19
I haven't bought a Visual Studio since maybe 2000 or 2003. :P Could anyone explain if that would be a capable enough version for integrating t2d/box2d? Or if the free/cheap version of Studio would be good enough? This info would save me a day of researching Visual Studio and just starting in blind.
Thanks!
04/10/2011 (9:29 pm)
New to T2D, old hat at C++.I haven't bought a Visual Studio since maybe 2000 or 2003. :P Could anyone explain if that would be a capable enough version for integrating t2d/box2d? Or if the free/cheap version of Studio would be good enough? This info would save me a day of researching Visual Studio and just starting in blind.
Thanks!
#20
04/11/2011 (10:42 am)
Since the success of the Express version of 2005 Microsoft has kept it for every version since then. It's free and will fill your needs. There are things in it that are limited, but nothing that will impede you.
Employee Michael Perry
ZombieShortbus