UndergroundScene Forums  

Welcome to the UndergroundScene Forums forums.

You are currently viewing our boards as a guest which gives you limited access to view most discussions and access our other features. By joining our free community you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content and access many other special features. Registration is fast, simple and absolutely free so please, join our community today!


Go Back   UndergroundScene Forums > SPECIAL AREAS > Information Technology
Register FAQ Site Areas Gig Guides Members Calendar Arcade Mark Forums Read

Reply
 
LinkBack Thread Tools Display Modes
Old 26th May 2005, 01:44 AM   #1 (permalink)
humndislocation
Hardcore is serious guys
 
humndislocation's Avatar
 
Join Date: Mar 2003
Location: Dundee
Posts: 5,996
Band: Blasphemous Necrorapist
humndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond repute
Geeks! Post your coding projects!

Looking at the gonzo thread inspired me to start this topic. I know there are a few coders on here, and it'd be interesting to see what you're all up to.


Binaries
Source code

This is the last project I worked on. It was mainly written on the train to work at my last job. Last August, when there wasn't much for the game designers to do in Dundee, I was shipped off to the Edinburgh office, and had to take the train every day. I bought myself a laptop, and started coding to keep myself from going insane. This is the result.

It's not much to look at, but I think it's quite nice from a technical standpoint. It's a demo of embedded python scripting in a simple 2D game engine, using boost :: python to translate the C++ classes into the python scripting language. I tried to make the app as data driven as possible. It also features a quake like console, which allows variables to be read from config files on disk, and changed at run-time, eliminating the need for a recompile. It's commented throughout with doxygen comments, which allows doxygen to generate documentation for the source code (documentation provided with the source code distribution)

The 2D game engine part didn't really get finished, because VIS went down the tubes, giving me enough free time to work on something better, but the scripting part of it is quite well formed.

Most of the code is going to be reused in the project I'm working on now, which will be a simple 3D terrain engine.
humndislocation is online now  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 26th May 2005, 02:44 AM   #2 (permalink)
RealR
Senior Member
 
RealR's Avatar
 
Join Date: May 2004
Location: Dundee
Posts: 4,140
Band: They are make believe
RealR is a name known to allRealR is a name known to allRealR is a name known to allRealR is a name known to allRealR is a name known to allRealR is a name known to allRealR is a name known to allRealR is a name known to allRealR is a name known to allRealR is a name known to allRealR is a name known to all
My last work, excluding Gonzo was just an Open GL demo that sucked, as i suck... and leave everything to 2/3 days beforehand. Anyway:

For my coursework I had to make a random terrain generator so here it is:

DOWNLOAD

Screenies




Description of how it works

The program created is a three dimensional terrain randomly generated via the mid-point displacement. It was created using the OpenGL API in C using an old program that created a textured cube.

Mid point displacement is a technique that generates a terrain by creating squares and from that making smaller squares, slightly varying the y value (height) and then creating smaller, further varied, squares from them. This creates a fairly realistic looking terrain.

If the final square has been generated {
See if the height is various sizes and set the land type accordingly
Display the square
}
Otherwise {
Find the midpoint of each side and the centre
Calculate a mildly randomised y point
From here you have 4 squares made from one
Call this function again for each of 4 new squares
}
When plenty recursions are called the result can be very effective and produce attractive 3D terrain. Each recursion produces improved results as the distance between variations is less, thus looking more realistic.

There are a few further features integrated into this. Various “heights” have different textures to represent snow, grass, sand and a stoned sea bottom. To represent water for the sea a large square is created and positioned at a “sea level.” This is then given transparency using blending of its textures with the stone below creating a rather attractive water bed.

The camera is free to move around the world in the x, y and z planes, as well as rotating. This gives the user freedom to explore the terrain, and if the terrain is generated outside of the map the user can move to see it.

Last edited by RealR : 26th May 2005 at 02:47 AM.
RealR is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 26th May 2005, 02:45 AM   #3 (permalink)
RealR
Senior Member
 
RealR's Avatar
 
Join Date: May 2004
Location: Dundee
Posts: 4,140
Band: They are make believe
RealR is a name known to allRealR is a name known to allRealR is a name known to allRealR is a name known to allRealR is a name known to allRealR is a name known to allRealR is a name known to allRealR is a name known to allRealR is a name known to allRealR is a name known to allRealR is a name known to all
Quote:
Originally Posted by humndislocation
...It's a demo of embedded python scripting in a simple 2D game engine,...
whats python like? i've never used it before
RealR is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 26th May 2005, 08:34 AM   #4 (permalink)
: : Scott : :
Senior Member
 
Join Date: Mar 2003
Location: Dundee
Posts: 7,138
: : Scott : : has a reputation beyond repute: : Scott : : has a reputation beyond repute: : Scott : : has a reputation beyond repute: : Scott : : has a reputation beyond repute: : Scott : : has a reputation beyond repute: : Scott : : has a reputation beyond repute: : Scott : : has a reputation beyond repute: : Scott : : has a reputation beyond repute: : Scott : : has a reputation beyond repute: : Scott : : has a reputation beyond repute: : Scott : : has a reputation beyond repute
This is my terrain thing, it's not great but I had to rush it because I had to go see the arcade fire. Took a couple of days. EDIT BTW IT USES FAULT GENERATION AND SMOOTHING GUYZ


This is my attempt at creating instruments and synthesising things with CSound, it's fucking awful : D

This is the soundscape that is supposed to represent electron orbit +some other things; Soundscape

This my .sco and .orc;

Score File

Orchestra File

The CSound stuff was just an elective module though.

I'd post my D3D/DSound effort, but it's not fun. It basically just shows that I can use D3D and DSound.

Since the code sucks I'll post some rubbish screens.


PRETTY COLOURS



DIG MY LEET STENCIL BUFFER





MORE ASSORTED SHIT


Last edited by : : Scott : : : 26th May 2005 at 08:52 AM.
: : Scott : : is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 26th May 2005, 08:51 AM   #5 (permalink)
kj
gimp
 
kj's Avatar
 
Join Date: Aug 2001
Location: Scotland
Posts: 14,138
Band: A band of merry men
kj has disabled reputation
My current project is web based. I'm working on a php PDF gallery for scientific posters from various conferences for my employer. Using php's PDF libraries and other 3rd party libraries to create pdf thumbnails etc along with a SQL backend.

Also finishing off a CD full of educational games made in flash / actionscript.
kj is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 26th May 2005, 09:08 AM   #6 (permalink)
^_mincher_^
Senior Member
 
^_mincher_^'s Avatar
 
Join Date: May 2004
Location: Corstorphine/Dundee
Posts: 1,574
^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light
Im not coding anything at the moment, focusing entirely on modeling as i enjoy it more and am better at it. Anyways heres a sneak peek at the NEW player character for Hider Seeker by TEAM: Gonzo. Far superior to the old one imo.




A Spaceship i did about a month ago for a contest in which i came joint 3rd. Hope to texture and animate it one day soon.MORE IMAGES HERE.



Also a still from a CG generated animation of a hob ignition I did. I'll render the vid at some point.


Last edited by ^_mincher_^ : 26th May 2005 at 12:10 PM.
^_mincher_^ is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 26th May 2005, 02:06 PM   #7 (permalink)
chrono
Senior Member
 
chrono's Avatar
 
Join Date: Jan 2005
Location: Dundee
Posts: 1,149
chrono is just really nicechrono is just really nicechrono is just really nicechrono is just really nicechrono is just really nicechrono is just really nicechrono is just really nicechrono is just really nicechrono is just really nicechrono is just really nicechrono is just really nice
I made a game of pong once using BASIC on the Spectrum.







It didn't work though.
chrono is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 26th May 2005, 03:12 PM   #8 (permalink)
humndislocation
Hardcore is serious guys
 
humndislocation's Avatar
 
Join Date: Mar 2003
Location: Dundee
Posts: 5,996
Band: Blasphemous Necrorapist
humndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond repute
I have to say, I'm glad I started this thread now, some really cool stuff has been posted.

Quote:
Originally Posted by Develion
whats python like? i've never used it before
It's a very nice language, very powerful, and easy to pick up too. Its library has support for sockets, various network protocols, accessing zip files, etc.

It's truely object oriented with real support for classes, which is why I chose it over Lua. Lua is nice, but if you want to write object oriented code, you've got to kind of hack it in yourself, which is not ideal. Plus boost :: python provides really good integration with C++. Boost :: python is awesome, it lets you access your C++ classes, and call their methods from python. With a small bit of glue code, you can even derive from your C++ classes in python, and call the methods derived in python polymorphically from C++. I know it's nerdy, but that just gives me a full-on robo-chubby.

I even used it to write the build script for the OidEngine project.

It's such a nice language, that if I had to write a program quickly that didn't have to run natively, I'd probably write it in python. (either that or java)
humndislocation is online now  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 26th May 2005, 03:20 PM   #9 (permalink)
^_mincher_^
Senior Member
 
^_mincher_^'s Avatar
 
Join Date: May 2004
Location: Corstorphine/Dundee
Posts: 1,574
^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light
Quote:
Originally Posted by humndislocation
It's truely object oriented with real support for classes...

Orbject Oriented Languages are the mutts nuts! For some reason my brain can work in this manner really well when programming. I just understand the flow a lot better. It's also cool as the macro-languages(is that even a term? ) that power a lot of todays big games work around an OOP structure which means i have a good idea of what is going on.

Edit: By Macro-Languages i mean things like UnrealScript for the Unreal engine etc.

Last edited by ^_mincher_^ : 26th May 2005 at 03:22 PM.
^_mincher_^ is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 26th May 2005, 03:23 PM   #10 (permalink)
humndislocation
Hardcore is serious guys
 
humndislocation's Avatar
 
Join Date: Mar 2003
Location: Dundee
Posts: 5,996
Band: Blasphemous Necrorapist
humndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond repute
Quote:
Originally Posted by chrono
I made a game of pong once using BASIC on the Spectrum.

It didn't work though.

I tried to write a game in BASIC on the spectrum when I was 8. I got as far as

10 THIS IS A GAME ABOUT BOXING

I wasn't a very good programmer at the time.

To be fair, I was able to make it play music in basic. Where, music is defined as random chords....
humndislocation is online now  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 26th May 2005, 03:25 PM   #11 (permalink)
^_mincher_^
Senior Member
 
^_mincher_^'s Avatar
 
Join Date: May 2004
Location: Corstorphine/Dundee
Posts: 1,574
^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light^_mincher_^ is a glorious beacon of light
haha...that takes me back....

If you ever speak to grimble_grumble in the future, ask him about his text adventure game he made in QBasic.
^_mincher_^ is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 26th May 2005, 03:42 PM   #12 (permalink)
humndislocation
Hardcore is serious guys
 
humndislocation's Avatar
 
Join Date: Mar 2003
Location: Dundee
Posts: 5,996
Band: Blasphemous Necrorapist
humndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond reputehumndislocation has a reputation beyond repute
Quote:
Originally Posted by ^_mincher_^
Orbject Oriented Languages are the mutts nuts! For some reason my brain can work in this manner really well when programming. I just understand the flow a lot better. It's also cool as the macro-languages(is that even a term? ) that power a lot of todays big games work around an OOP structure which means i have a good idea of what is going on.

Edit: By Macro-Languages i mean things like UnrealScript for the Unreal engine etc.
Ahh right, I know what you mean. Mostly they're referred to as scripting languages, when referring to games.

Yeah I'm a huge fan of object oriented programming myself. I hate having to code in procedural languages. The lack of constructors and destructors especially, gets on my nerves. I really like to use constructs like smart pointers, that use the constructors and destructors to perform safe cleanup. Or for example, something I'm going to use in my next project, a scoped lock for a vertex buffer that unlocks the vertex buffer when the lock object goes out of scope. You just can't do that in a procedural language.

I especially like the idea of combining objected oriented programming in the scripting language, to integrate well with the object oriented code of the game engine