Archive for the ‘C++’ Category

h1

Laser Ingvar

July 7, 2009

Some friends put together a rapid prototyping contest, mainly for people who used to go to my old school. Due to time limits I had not the chance to do something decent but anyway I finished a Project.

I give you LASER INGVAR.
http://files.getdropbox.com/u/815606/Laser%20Ingvar.rar

Ps. It’s really bad.

h1

Long time no post.

March 26, 2009

Ok. Here is a update on whats been happening in the world of schnacken.

Leveldata can now be changed and reloaded during runtime. Thomas have supplied me with new meshs, materials and textures. I have a created a BooleanCollisionTrigger, that can be set to react on collision from certain materials. I have also decided to add a AI pong Level to the game to try some of the logic of saving and loading data between levels since they are recreated/destroy on entry/exits.

The next plan once the trigger is working is to set up a level where the sound can be turned on or off. I also need to implement doors, that can be opened or closed, used to move between levels in the game.

h1

Physics physics physics.

February 24, 2009

I got collision feedback working the way it should. When two objects collide they get notified of each other, the function they end up in will tell them of the other objects, what current shape of that objects physical body that intersected with what shape of their physical body. All shapes does contain material data. So i will know if it’s just a sensor, metal, sword or chicken feather that collided with bone, mud, grass, ground, metal, skull, brain or ham.

This allow me to give the proper feedback and reaction from the objects, limiting me to doing jumps when the feet touch the ground, putting some tiny stars over the head of a character if the head collides with anything at high speed. See if the weapon collides with a shield or body. And the possibility to apply damage or particle effects suitable.

The material system will need to be added. It will contain more information for stuff like particles etc. Giving me the possibility to instantly feedback particle and other data as default and specify on specific events.

This system could be increased to handle bombs, since it’s just one big sensor with the bomb or explosion tag.

Interesting things could come out of this and so far it feels like a sensible stable system.

h1

Retro Terrain Engine.

February 4, 2009

I started working on a retro terrain engine a while back, just before I got aproached by Thomas about Schnacken.

The Game itself would take influences from how the terrain worked in games like transport tycooon, populos, Sim City 2000 etc. I made some small trials to reach the current stage it’s in. Here are some images of the process.







h1

Voils: Basic idea.

January 29, 2009

Voils are just a made up short form for Volumetric Tiles. In theory it should work as a Voxel (Volumentric Pixel), it should be a 3D block blended with surrounding blocks. The diffrent blocks with textures should blend in with each other, kind of traditional tile transition but in full 3d.

This will require some work to align edge vertexes, working with clear defined sides and pieces of meshs, as well as aligning uv and normal between objects. The easiest aproach at the start level, is to add all of them to the same vertex buffer, building one giantmesh per materialtype, thus only preforming one render call per material type.

This allows more customizeability, a aproach to dynamic levels as well as easier tools to work with.

h1

Bouncing Schnacken.

January 28, 2009

Got the physics up and running for real now as well as fix up some issues thee guy doing the art (Thomas) mentioned. He found out that changing the player mesh (changing file name in the xml) would crash the game due to the fact that the animation names where hard coded. That got fixed up and now that can be changed without that much work, the next xml extension/change will handle different physic body data of the player. Currently the ball the player is suposed to throw get the same material as the physical body of schnacken. This wouldn’t be a problem if the ball didn’t need to be very light and bouncy. The fun part is that the player bounce actually looks quite good when jumping from a high point. It should be a quite trival fix up in xml, might even go so far as to create material templates for the physics that you just set, like flesh, rubber, stone, metal etc.

Fun to make progress I hope it’ll keep up.

h1

The Jetpack Ninja?!?

January 23, 2009

Like I said in my previous post, moving around and colliding with the world works nice. Tried to add a temporary jump function for debug purposes, but forgot to add a check if they player is touching ground, so instead we got  jet pack function. Simulating the actual jump just by adding a upward force works great, and the rest of the movement keep it all platformy in the feeling. you can change direction at any point in the air.

I looked for a way to actually get good feed back when touching the ground, being used from PhysX that there are different types of classes for everything, I totaly missed the obvious solution. Each shape has a isSensor value, by turning that true I get the effect i want. Thank you Flink for telling me.

Time to get to work and get this friday done with, so there is only weekend to focus on.

The next step is to temporarly add a bmp reader to the levelparsing. At the moment only a “if currentPixel != 0″ add block at pixel.position since there isn’t any detailed block types. just blocks or not.

h1

unresolved external symbol

January 19, 2009

I usally don’t get error that trouble me, linker errors in c++ is a common thing that I usualy know how to handle. But this time a had my share of pain. It seemed like one of my libs had snucked in as a debug version, as some may know, debug and release doesn’t mix well under release mode. Since i am using quite a lot of libs, finding the problem took some while, but I finaly did it. I had built the lib for Box2D only in debug not released and used the same lib in both areas. Thats certainly something new that I will remember. It took a fair bit of time out of my planed project, but now the release version is at least up and running.

That will give me the possibility to send a playable version to other people ones the time arrives.

h1

Controllable player.

January 19, 2009

Just fixed up one of the high priority features in Schnacken. The player can now be moved and gravity is still working while  we move. If we stand still for a while, moving will activate the object again so it will move (didn’t happen at first). Oh and the player is colliding with the world so I should be able to get a few good collision  events out of that. So thats one feature off the list, only 4-5 remaining for my planed Pre-Alpha for March. Who knows it might be early. ;)

h1

Tell’us: A story about Earth

January 15, 2009

Back in School (www.sofe.se) me and my friends decided to do a project together. We worked with a name that could seem futuristic, yet not overhyped and weird, we also wanted Earth to be the focus. For those who doesn’t know (I can’t understand how?) Tellus is one of Earths many names. Tell’us is thus a play on word, and to be even more obvious, the under title makes sure none miss what the game is about.

Time Era: This is a game slightly into the future, not star trek, not star wars or anything like that, probably at most a couple of hundreds or max a 1000 years from now. It is a story about a ordinary woman who got entwined in the very fate of Earth itself.

Historical/political background: Humanity haven’t united in a big happy family, but resources are better planed, better shared and distributed, sure there is always political agendas and strive for power, but over all there are very few wars and the borders between countries are different from what we are accustomed too. Artificially grown meat, plants, fabrics remove the need for large farms, even though some still prefer the natural taste and feel of things, the price of natural products are a lot higher and limited to special events or privileged people. More people have gathered in large cities as large areas have been set to wild reserves or natural protected areas where building or exploiting the land is limited or forbidden after previous ecological disasters.

Who we are playing: Our heroine is part of a repair team who are mainly responsible to maintain and support automatic facilities all over the globe like power stations, communication hubs, deep space telemetry, mining and automated production facilities.

The hero in our story

What we are doing: It’s a ordinary job with slightly different work hours and places and it contains the use of ordinary everyday skills like welding, patching of cables, fixing electronic equipment, computer operations and simple  Exo* assisted tasks like heavy lifts, climbing and jumping.

Where we will start our story: Our story starts in the HQ, where our heroine is going to a basic physical and item check, to make sure everything is up to specs. This is basically a part for the player to learn the moves in the game, climbing, running, rolling, pulling themselves up ledges, activating buttons and basic combat.

Where do we go from here: Ones the the basic tutorial is done, the player is guided towards the briefing room, where the current objective is set out. Apparently, a large rockslide has disabled one of the major communication centres in (name), the team is to go there, assess the damage, call in necessary replacement parts and get everything up and running again.

And this is here the real story starts.

*Exo stands for Exoskeleton, a simple metallic framework connected along the users body to flexible but tough parts of the users clothes. Its common amongst young kids to exaggerate the strength of the Exo a lot. While it can assist the user with lifting or moving objects up to a 100 kg, the real strength of the Exo is to remove the strain from the user with the help of lockable joints and weight balancing.

Follow

Get every new post delivered to your Inbox.