It’s saying that it can’t find the variable called m_Surface, which should be available inside any of the Game::Blabla functions. Does the tutorial compile and run ok before you started modifying it for the assignment? If so, can you post all your changes?
are you sure you are fully linked and included?
Nice game man! I agree with wakka though that there should be some dimensional difficulty. I’m jealous of your skill ;-)
It does help if i change m_Surface to m_Screen, but I find this quite weird since the tutorial states that it should be m_surface
Here’s my new demo! Available for licencing.
OK… Thanks, Stainless. I found some tutorials. I’ll be looking through those. :-)
Box2d tutorials show how to do your own renderers.
It’s really easy.
Just look at those.
I’ve seen that page, but I am not sure how to use Box2D with OpenGL in C++. All the tutorials on the internet show Box2D used in collaboration with Cocos2D, which is, if I’m right, a full game engine. I don’t want to use Cocos2D. I want to implement Box2D and write my own collisions in C++. How would I do that?
Just have a look here and decide if you are going to use any of the engines
Thanks, Stainless… I found this tool that can auto trace polygons and save a lot of time: PhysicsEditor. The only thing I don’t understand is what format to save it to in order to use it in OpenGL. It has several formats, .plist, .xml, .flash, etc. Some of them are Box2D formats. And I know Box2D can be used with OpenGL. Just not sure which format to use. Please tell me. Thank you.
You either write an app that allows you to create the polygons by hand, or you look online for a tool you can download.
The Torque 2D engine uses this technique, maybe you can grab a free version of that and use the editor to create the polygons.
OK… I think this is the more ideal method as it uses the concept of bounding box and gives the accuracy close to pixel perfect collisions. Thank you for your suggestion. I have one doubt, though… How would I go about creating collision polygons for my sprites? Please clarify this for me.
the problem is gun games in general. for the most part their mindless, the gun does all the work. makes it too easy to kill. you need a weapon that forces players to kill in some way other than shooting. build a game where you can destroy the opponents gun instead of killing them. forcing them to get another gun by whatever means
Come on, guys! Please help! :-(
Maybe you would not prefer pixel perfect detection, in the end, there are easier methods. Try the bounding box collision detection first and see if it’s enough.
bool Box::Overlaps(Box another)
if (bottom > another.top && top < another.bottom) //i.e. if the boxes overlap vertically
if (right > another.left && left < another.right)
return true; //and the boxes overlap horizontally too
If you have near rectangular sprites like humans, cars, tiles, it’s usually easy to specify the box left,top,bottom, right sides so they feel pixel perfect upon overlap detection.
Or use polygon collision.
It takes a lot of work to create the collision polygons, you have to write an app to edit your sprite sequences and create a collision polygon for each frame, but you can make it as complex as you want.
I have in the past created collision polygons for individual body parts so I could do location based reactions.
Yes, that sounds about right. I have heard of people having their xbox live accounts suspended for three months because of the voice comms. I never hear any of that because I always mute everyone.
I’ve thought about it a bit more. I would probably have different game modes. At the moment COD has modes like team death match and blitz. I would have modes that allowed the arseholes to run around like ants and modes for people who want a more strategic game.
The problem with genetics is evolution. At the moment if you plotted IQ against number of children, you would find a peak around the 75 IQ level. There are whole towns in the UK whose main income comes from the government in the form of child support. Need more money, have another kid.
Luckily I will be dead before it becomes a major problem.
Pixel perfect is expensive, so limit when you do it. Do bounding box collision detection first. If that passes, then start pixel perfect detection of the 2 sprites.
loop over all the pixels of one sprite.
is the texture there not transparent?
If so, calculate the screen position (or world position) of the center of that pixel. Taking into account position, rotation, scale.
using that screen position, find the corresponding pixel in the 2nd sprite. If its within the bounds of that sprite, then get the texture pixel. If its not transparent, you have a hit!
Do it simply as above. Create a test scene with oddly shaped sprites spinning or that you can move around. Have them change colors when collision is detected.
once you get that working, then think of ways to optimize things. Exit your loops on the first hit found. Limit the math in the loops to simple adding and multplying by precalculating delta vales for the pixel to next pixel location calculation. You want what’s inside the nested loop to be as quick as possible.
If everybody were intelligent, we wouldn’t still be living in a class based society where 1% of the richest people own 65x as much as the poorest half of the world. It’s genetics man. Can’t fight the gene. Just be thankful you have the good traits and it’s not you running out getting shot every time and scratching your head :)
If you ok with MMO games, I’d recommend PlanetSide 2. Find a couple mates, form a platoon, and have a crazy good time. I didn’t think the net code was bad, it seemed pretty fair. Tanks, vtols, infantry, max units, and so many great battles (if you have the right crew of course!). I use to chill with a few mates and we commanded legions. It was really something to organize 30 tanks, a dozen aerial fighters, guarding waypoints, assaulting fortresses. Good times, intelligent people.
I would think you would want zones of players that are beginners up to experts so people play others close to their level, but I suppose then friends couldn’t play on each other’s team. Another thing I would do, would be leave bodies for quite a while, so it’s obvious if someone is lurking and shooting people coming out of an exit. I’d also leave alternatives and make it very hard to hide completely without being seen.
Myself, I played Doom for a few hours and kind of got tired of it and that was pretty much it for me and shooters.
It’s gotten pretty bad. I was just talking to my cousin the other day and she was getting sexually harassed by 6 of the 8 players in her DotA match. And just yesterday, a guy at EA who I follow on Twitter almost shut down his account because he was getting a stream of abuse from a bunch of morons who were pissed off about something or other. COD players seem to be the worst of the bunch - there have been multiple stories on the gaming press sites about them going on insane rants or bombarding people with threats and flames because someone said something they didn’t like.
I don’t think games make people go on shooting sprees or anything like that, but I have to think that games like COD, that are basically about shooting people in the head as many times as you can, are going to bring out the worst in certain people. If you have a pre-existing tendency to be an idiot asshole, it will feed that. And there’s usually no consequences for bad behavior.
Thanks a lot, guys! All of you… Thank you very much! I haven’t got a perfect solution and the animation is very crude. I am still trying to figure it out for myself and fine tune it. Nevertheless, I really appreciate all your help and inputs. If I have any further problems, I shall definitely ask. Thank you. :-)
Working on some music and sound design for two new short films!
Getting out of town for a while sounds nice, but it’s not practical. When you go away you spend more, a lot more, and the wife works.
I despise blender, it’s the user interface. I use max when I have to or tools like Anim8or for quick jobs.
Maybe writing a useful tool might be an option. I find texturing a nightmare. Maybe a tool to help with that.