Screenshot of Ping.net

Discussion about everything. New games, 3d math, development tips...
Post Reply
powerpop
Posts: 171
Joined: Thu Jan 08, 2004 1:39 am
Location: san francisco

Screenshot of Ping.net

Post by powerpop »

Hurrah! I have my first app in IRR running! It is an XML format for loading a scene, based on the notion of building blocks. Right now I borrowed a 3DS model of a rock (from the lens flare demo) - once i convert my building block sets they each will be 512 cubed and snap together nicely.

Here is the screenshot:
Image

And here is the 3DML file description for it. Later the Create tag will be greatly expanded to enable modifying textures and adding mini-scripts to each object. The number before each block name in the map levels refers to how to rotate the object - that is not working yet but is my next thing to do. I will describe it later - its a sort of shorthand for flipping blocks quickly.

Code: Select all

<spot>
<head>
  <title name="ping"/>
  <dimensions rows="6" columns="6" levels="4"/>
  <blocks>
  	<block name="cube" file="media/stone1.3DS"/>
  </blocks>
</head>
<body>
  <create tag="cu" block="cube"/>
  <maps>
    <level>
    00cu 00cu 00cu 00cu 00cu 00cu
    00cu 00cu 00cu 00cu 00cu 00cu
    00cu 00cu 00cu 00cu 00cu 00cu
    00cu 00cu 00cu 00cu 00cu 00cu
    00cu 00cu 00cu 00cu 00cu 00cu
    00cu 00cu 00cu 00cu 00cu 00cu
    </level>
    <level>
    .... .... .... .... .... ....
    10cu .... .... .... .... ....
    .... 00cu 01cu 02cu 03cu ....
    .... .... .... .... .... ....
    .... .... .... .... .... ....
    .... .... .... .... .... ....
    </level>
    <level>
    .... .... .... .... .... ....
    20cu .... .... .... .... ....
    .... .. .... .... .... ....
    .... .... .... 00cu 00cu ....
    .... .... .... .... .... ....
    .... .... .... .... .... ....
    </level>
    <level>
    .... .... .... .... .... ....
    30cu .... .... .... .... ....
    .... .... .... .... .... ....
    .... .... .... .... 00cu ....
    .... .... .... .... .... ....
    .... .... .... .... .... ....
    </level>
  </maps>
</body>
</spot>

My next steps are:

- make the block rotations work so you can easily orient blocks to snap correctly

- convert my building block sets (at least the first 100 or so)

- enable blocksets in addition to individual blocks to be loaded

- make a ground (a plane to start but terrain soon after)

- add the player character

the framerate even with only 25 objects is Slowwwwww - i think i am using a debug IRR DLL so that should help once i get a release version - but if anyone has ideas on how to structure my scene which will one day contain hundreds of block objects so it works faster let me know - in my old application we wrote a culling algorithm based on the grid map that only fed blocks within a visible radius to the renderer - we also put a BSP inside each block to make it a wee bit faster.

once i get the above into the codebase i will make a release ...

hopefully i can also put in the lens flare stuff and add a better skybox image!
powerpop
Posts: 171
Joined: Thu Jan 08, 2004 1:39 am
Location: san francisco

Post by powerpop »

a second screenshot - this time using a cube block shape - you can see how the 512 grid size enables these blocks to stitch together seamlessly - in this way users can build their own levels without a modeling program - and i will build in a visual editor to make this even easier

only problem i am having is in converting my models - i have used milkshape to export them as .3ds but i still cant apply a texture to them within irrlicht :(

if anyone has the time please download my .3ds file and see if you can tell what i am doing wrong with the material

http://www.ping.net/snapshots/full.3ds

Image
powerpop
Posts: 171
Joined: Thu Jan 08, 2004 1:39 am
Location: san francisco

Post by powerpop »

yet another screen shot - now i have rotations working (the rocks are oriented different ways) - and i added a water block - i also added a beautiful skybox!

the skyboxes can be found at: http://www.kk3d.de/

for my app i am going to work on a skydome which will work better ...

Image
keless
Posts: 805
Joined: Mon Dec 15, 2003 10:37 pm
Location: Los Angeles, California, USA

Post by keless »

looks cool.


how exactly does one make a game out of this? I understand you're allowing them to generate a level based on XML file input. have you done anything for game logic/scripting?
a screen cap is worth 0x100000 DWORDS
powerpop
Posts: 171
Joined: Thu Jan 08, 2004 1:39 am
Location: san francisco

Post by powerpop »

yes, in flatland we had an ACTION tag that can be added to any block (via the CREATE tag) - actions responded to events like mouse, collision, etc - we had different xml tags for things you could trigger with an action - things like REPLACE or ORBIT - actions could also include simkin scripts for more detailed behavior

i am going to be looking at these behaviors more closely and possibly trying something a little more advanced with this new effort - i think the behaviors before were too low level so for the builders i am going after there needs to be higher order structures for locks/keys, weapons, etc

basically look at blocks as little nuggets of behavior that can be scripted to follow higher level interaction interfaces (like does it respond to the player, does it respond to weapons, does it respond to physics)
powerpop
Posts: 171
Joined: Thu Jan 08, 2004 1:39 am
Location: san francisco

Post by powerpop »

another screenshot - this one has a player character thanks to Boogle - and you can find the runtime at:

http://www.ping.net/snashots/ping1.zip

Image
Post Reply