First demo release! - Journal of dcosborn - GameDev.net

First demo release!

Published December 16, 2007
Advertisement


Download: [zip | tar.bz2 | tar.gz] (23 MB)

The demo requires OpenAL. If you don't have it already, you can grab it here.

To play with the options, open up the "conf" file in a text editor. If you have a faster machine, you might try reducing vid.shadow.down and enabling vid.shadow.blur.

Please post any comments, especially with regard to what you thought was good and what was lacking. I'm also interested to hear what kind of performance you get. I get 20-25 fps on a Geforce 6600. If you get errors or crashes, send me the log file, or post the last few lines.

Current issues:
  • No scene partitioning!
  • Skinning is entirely on CPU, without SIMD
  • Lots of glGet calls
  • No object collision detection
  • Insufficient toolset == slow content development
  • Lack of interface
0 likes 13 comments

Comments

Tape_Worm
It switches to fullscreen mode and there's a delay of about 3 or 4 seconds then I get a "Deserialization Error" message box.

Specs:
Windows Vista
4 GB
Core 2 Duo
ATI Radeon HD 3870
December 16, 2007 09:18 PM
dbaumgart
Dude, that's freakin' awesome. Sure it's a bit unpolished, but where it's going looks really, really good.

And those pants are sweet -- Laura wants a pair (and she says the demo looks awesome too).

My FPS was 19-21 at most times, would cut in half during transitions. And actually I was running Steam, DrPython, Trillian, Firefox, and Cave Story in the background, now that I think about it. I should give it a shot with everything else closed.

System:
Intel p4 2.8 ghz, 2gb ram
NVidea Geforce 7600 GS
Windows 2000

Keep it up man!
December 16, 2007 10:02 PM
dbaumgart
Without running a million things, I get like 25 fps. And I noticed you had sound -- cool! Still looks great, and I couldn't even find a way to get outside of the world and fall into the void. Ok, done spamming your journal.
December 16, 2007 10:09 PM
dcosborn
Tape_Worm: Thanks for trying it out! That deserialization error suggests the problem is an invalid string-to-number conversion, probably happening during resource loading since it happens a few seconds in. Perhaps something is preventing it from working under Vista. I guess the program didn't create a log file? Without a log file, I can't determine where the error is happening.

dbaumgart: Thanks for the encouraging words! I guess you know why it cuts in half during transitions: its rendering everything twice. I was hoping for some higher framerates under a Geforce 7 or 8, but I think I'm pretty sure there's some synchronization issues in the rendering pipeline, so its no surprise. Btw, Cave Story is a great game.

Laura: All you would need to make those pants is some tartan cloth. They're a lot like pyjama pants really. [grin]

Btw, I just noticed that the vertical UI borders are a bit messed up (not repeating properly). That will need to be fixed tomorrow.
December 16, 2007 11:00 PM
Tape_Worm
Here's your log:
Quote: 20:18:27:
execution initiated on 12/16/07 at 20:18:27
this is PAGE 0.0: Portable Adventure Game Engine
built on 12/16/07 at 16:08:10
system information
host is ********** (perhaps you might want to leave this out of your logs? Some people like privacy.)
platform is Windows Vista 6.0.6000
machine is Intel(R) Core(TM)2 Duo CPU E6750 @ 2.66GHz
reading configuration
aud.volume = 0.00
clip.format = theora
clip.framerate = 30.00
clip.name = clip-%i
clip.size = 320,240
dbg.draw.bounds = false
dbg.draw.collision = false
dbg.draw.fps = true
dbg.draw.skeleton = false
dbg.draw.track = false
install.path = .
log.con.enable = false
log.con.spawn = false
log.file.append = false
log.file.enable = true
log.file.format = text
log.file.name = log
log.stats = true
log.sync = true
log.time = true
log.verbose = true
res.filter = .svn
res.source = data
shot.format = png
shot.name = shot-%i
shot.size = 1600,1200
vid.bump = true
vid.composite = true
vid.composite.down = 0
vid.depth = 24
vid.glow = true
vid.outline = true
vid.refresh = 85
vid.res = 1024,768
vid.shader = true
vid.shadow = true
vid.shadow.blur = false
vid.shadow.down = 2
vid.shadow.filter = true
vid.shadow.type = variance
vid.tex.down = 0
vid.tex.mipmap = true
vid.tune.auto = true
vid.tune.profile = NVIDIA Corporation GeForce 6600/AGP/SSE/3DNOW! 2.1.1
vid.vbo = true
wnd.full = true
wnd.max = true
wnd.pos = 160,120
wnd.size = 640,480
initializing resources
indexing source: data
character/male-1/
character/male-1/body.mat
character/male-1/body.mesh
character/male-1/body-diffuse.png
character/male-1/head.mat
character/male-1/head.mesh
character/male-1/head-diffuse.png
character/male-1/male.char
character/male-1/male.gait
character/male-1/male.model
character/male-1/male.skel
character/male-1/pants.mat
character/male-1/pants.mesh
character/male-1/pants-diffuse.png
character/male-1/walk.anim
font/default.ttf
font/Vera.ttf
font/VeraBd.ttf
font/VeraBI.ttf
font/VeraIt.ttf
font/VeraSe.ttf
font/VeraSeBd.ttf
music/tourdion.ogg
object/barrel-1/
object/barrel-1/barrel.mat
object/barrel-1/barrel.mesh
object/barrel-1/barrel.model
object/barrel-1/barrel.obj
object/barrel-1/barrel-diffuse.png
plant/loopix/
plant/loopix/fern-1.mat
plant/loopix/fern-1.mesh
plant/loopix/fern-1.model
plant/loopix/fern-1.obj
plant/loopix/fern-1-diffuse.png
plant/loopix/fern-2.mat
plant/loopix/fern-2.mesh
plant/loopix/fern-2.model
plant/loopix/fern-2.obj
plant/loopix/fern-2-diffuse.png
plant/loopix/fern-3.mat
plant/loopix/fern-3.mesh
plant/loopix/fern-3.model
plant/loopix/fern-3.obj
plant/loopix/fern-3-diffuse.png
plant/loopix/flower-2.mat
plant/loopix/flower-2.mesh
plant/loopix/flower-2.model
plant/loopix/flower-2.obj
plant/loopix/flower-2-diffuse.png
plant/loopix/flower-3.mat
plant/loopix/flower-3.mesh
plant/loopix/flower-3.model
plant/loopix/flower-3.obj
plant/loopix/flower-3-diffuse.png
plant/loopix/grass-1.mat
plant/loopix/grass-1.mesh
plant/loopix/grass-1.model
plant/loopix/grass-1.obj
plant/loopix/grass-1-diffuse.png
plant/loopix/pinetree-1.mat
plant/loopix/pinetree-1.mesh
plant/loopix/pinetree-1.model
plant/loopix/pinetree-1.obj
plant/loopix/pinetree-1-diffuse.png
plant/loopix/pinetree-2.mat
plant/loopix/pinetree-2.mesh
plant/loopix/pinetree-2.model
plant/loopix/pinetree-2.obj
plant/loopix/pinetree-2-diffuse.png
plant/loopix/shrub-1.mat
plant/loopix/shrub-15.mat
plant/loopix/shrub-15.mesh
plant/loopix/shrub-15.model
plant/loopix/shrub-15.obj
plant/loopix/shrub-15-diffuse.png
plant/loopix/shrub-16.mat
plant/loopix/shrub-16.mesh
plant/loopix/shrub-16.model
plant/loopix/shrub-16.obj
plant/loopix/shrub-16-diffuse.png
plant/loopix/shrub-17.mat
plant/loopix/shrub-17.mesh
plant/loopix/shrub-17.model
plant/loopix/shrub-17.obj
plant/loopix/shrub-17-diffuse.png
plant/loopix/shrub-17-high.mesh
plant/loopix/shrub-17-high.model
plant/loopix/shrub-17-high.obj
plant/loopix/shrub-18.mat
plant/loopix/shrub-18.mesh
plant/loopix/shrub-18.model
plant/loopix/shrub-18.obj
plant/loopix/shrub-18-diffuse.png
plant/loopix/shrub-18-high.mesh
plant/loopix/shrub-18-high.model
plant/loopix/shrub-18-high.obj
plant/loopix/shrub-19.mat
plant/loopix/shrub-19.mesh
plant/loopix/shrub-19.model
plant/loopix/shrub-19.obj
plant/loopix/shrub-19-diffuse.png
plant/loopix/shrub-19-high.mesh
plant/loopix/shrub-19-high.model
plant/loopix/shrub-19-high.obj
plant/loopix/shrub-1-diffuse.png
plant/loopix/shrub-1-high.mesh
plant/loopix/shrub-1-high.model
plant/loopix/shrub-1-high.obj
plant/loopix/shrub-2.mat
plant/loopix/shrub-2.mesh
plant/loopix/shrub-2.model
plant/loopix/shrub-2.obj
plant/loopix/shrub-2-diffuse.png
plant/loopix/shrub-3.mat
plant/loopix/shrub-3.mesh
plant/loopix/shrub-3.model
plant/loopix/shrub-3.obj
plant/loopix/shrub-3-diffuse.png
plant/loopix/shrub-4.mat
plant/loopix/shrub-4.mesh
plant/loopix/shrub-4.model
plant/loopix/shrub-4.obj
plant/loopix/shrub-4-diffuse.png
plant/loopix/shrub-9.mat
plant/loopix/shrub-9.mesh
plant/loopix/shrub-9.model
plant/loopix/shrub-9.obj
plant/loopix/shrub-9-diffuse.png
plant/loopix/tree-1.mat
plant/loopix/tree-1.mesh
plant/loopix/tree-1.model
plant/loopix/tree-1.obj
plant/loopix/tree-1-diffuse.png
plant/loopix/tree-2.mat
plant/loopix/tree-2.mesh
plant/loopix/tree-2.model
plant/loopix/tree-2.obj
plant/loopix/tree-2-diffuse.png
plant/loopix/tree-3.mat
plant/loopix/tree-3.mesh
plant/loopix/tree-3.model
plant/loopix/tree-3.obj
plant/loopix/tree-3-diffuse.png
plant/loopix/tree-4.mat
plant/loopix/tree-4.mesh
plant/loopix/tree-4.model
plant/loopix/tree-4.obj
plant/loopix/tree-4-diffuse.png
plant/loopix/tree-5.mat
December 17, 2007 02:37 AM
Balaam
This looks great - reminds me of Ultima :D
December 17, 2007 03:20 AM
dcosborn
Tape_Worm: Okay, so it appears there was a real bug in the deserialization code. I think that I fixed it, and you can download the new page.exe if you like. I'll update the archives with the new executable as well.

Good point about the hostname/username in the log file. I've added a configuration option (log.host) for disabling that, and its disabled by default.

Balaam: I've never played Ultima (sad, I know), but I suspect that's a good thing. Thanks!
December 17, 2007 09:05 AM
Tape_Worm
What's the minimum shader version for this? I can't get it to run on my work computer either, claims it failed while trying to compile a shader.

Specs:
P4 2.6 GHz
2 GB
ATI Radeon X700 (Shader model 2).
Windows XP

Log:
Quote: cache missing vertex buffer from character/male-1/head.mesh:112:dynamic_draw
caching vertex buffer from character/male-1/head.mesh:112:dynamic_draw
cache missing skin from character/male-1/pants.mesh:021403d4
cache missing mesh from character/male-1/pants.mesh
loading mesh from character/male-1/pants.mesh
caching mesh from character/male-1/pants.mesh
caching skin from character/male-1/pants.mesh:021403d4
cache missing vertex buffer from character/male-1/pants.mesh:114:dynamic_draw
caching vertex buffer from character/male-1/pants.mesh:114:dynamic_draw
cache missing material from scene/village/inn/beam.mat
loading material from scene/village/inn/beam.mat
caching material from scene/village/inn/beam.mat
cache missing program from shader/glsl/render-shadow-none.fs:shader/glsl/render-shadow-none.vs:shader/glsl/render.fs:shader/glsl/render.vs:shader/glsl/sample-diffuse.fs:shader/glsl/sample-mask.fs
cache missing shader from shader/glsl/render-shadow-none.fs
loading shader from shader/glsl/render-shadow-none.fs
caching shader from shader/glsl/render-shadow-none.fs
cache missing shader from shader/glsl/render-shadow-none.vs
loading shader from shader/glsl/render-shadow-none.vs
caching shader from shader/glsl/render-shadow-none.vs
cache missing shader from shader/glsl/render.fs
loading shader from shader/glsl/render.fs
caching shader from shader/glsl/render.fs
clearing cache
12:16:47:
error: failed to compile shader
12:16:56:
exiting with status 39
December 17, 2007 01:21 PM
dcosborn
Sorry you're having so much trouble Tape_Worm. The problem is likely that you have an ATI card, and I've only tested on an nVidia card. You can disable the shader by opening up the "conf" file in notepad and changing "vid.shader" to "false". TBH, I don't know what the minimum shader version is. In the future, I want to use multiple fallback shaders and select one on initialization, which should solve this problem. But for now, your only hope is to disable the shader manually.
December 17, 2007 02:23 PM
Tape_Worm
I got the shader compile error here at home as well. Same place in the log. So it's likely not a shader version issue (this card is SM 4). Disabling the shaders worked though.

It ran at about 70-75 FPS. I particularly liked the transitions between camera angles. I can only expect everything else looks much more fancy with shaders enabled.
December 17, 2007 03:24 PM
dcosborn
Good to hear it worked under Vista! That framerate sounds reasonable, considering you weren't getting any outlines or shadows. I'm planning to implement fixed-function outlines, using backface wireframes.
December 17, 2007 10:07 PM
MustEatYemen
Gave it a tried, worked well on my
Win XP 3.4ghz Intel 4
1GB ram
Nvidia 8600GT

Dual monitor environment (left monitor was 0,0)

Avg framerate was around 12-14FPS

I was busy debugging some stuff, so various development tools were open at the time, Eclipse/Thunderbird/Putty/Wireshark/Filezilla/Sun WTK etc.
December 21, 2007 05:21 PM
dcosborn
Thanks for testing, Yemen. Its slow now, but I have some optimizations in the works.

As a status update, I haven't written much new code over the holidays, but I have been slowly fixing some bugs when I get time. The shaders now work with ATI cards, but I haven't got around to updating the downloads. I think I will leave that until demo release #2. I've also fixed a few bugs related to the Linux version.
December 27, 2007 03:14 PM
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Profile
Author
Advertisement

Latest Entries

Advertisement