CSP fps engine v8 demo

Community Forums/Showcase/CSP fps engine v8 demo

jfk EO-11110(Posted 2007) [#1]
New Demo and a new website with lots of screenshots and demo downloads.
Hope you like it. Please write comments and bug reports in this thread.

Thanks to everybody who helped me with this.



CSP Game Engine



(There are some quotes of some of you guys on the pages, hope you don't mind. I can remove yours if you want.)

BTW: the framerate may be pretty low on older systems. That's more a level design issue than a engine speed issue.


Warpy(Posted 2007) [#2]
Outrageously slow on my intel integrated graphics.


t3K|Mac(Posted 2007) [#3]
i like your style of you new webpage.. nice. now downloading the new demo...


clownhunter(Posted 2007) [#4]
Looks awesome, like all your other demos. Downloading now as well. =D


kragoth74(Posted 2007) [#5]
Very nice !! Keep up the good work... ;-)


Blitzblaster(Posted 2007) [#6]
the new engine looks good, but the sound isn`t good for this level ;) The grass looks fine. Nice work!


Grey Alien(Posted 2007) [#7]
"enthousiasts" is spelled wrong on the website.

Anywa this looks cool, what's it made in and has anyone made any games with it yet?


Snader(Posted 2007) [#8]
Loaded the demo... it says: HIT SPACE TO CONTINUE. I hit space... nothing... I wait.. hit space again... nothing. Then after a couple of minutes suddenly: a new screen, saying to HIT SPACE TO CONTINUE. Same wainting after this... hitting CTRL-ALT-DELETE and exiting the process.

sorry...


Xzider(Posted 2007) [#9]
Pretty cool, I played the CSP old demos while back, like this one.


jfk EO-11110(Posted 2007) [#10]
Snader, on a C64 or what?

I have a slow machine, and what you call "a couple of minutes" takes 5 seconds here. So I think what you say is not true (aka stop telling rubbish).

Anyway, thanks for testing everybody. Grey, thanks for the enthousi... thingie. Enthousiasts usually don't know how to spell the word.

A few people started projects with the engine, but I think if you once realize the huge lot of map design work that is required, most projects never go beyond a demo phase.

I really appreciate your help when you test this demo, I hope it works on most machines. It's rather complex now.

For those with a slow 3D card I may upload a quick hack in the next days, using fog to reach a high framerate. (You can already activate the "Low detail" mode in the Screen Settings utility, but this will affect only the grass density)


degac(Posted 2007) [#11]
Nice work!


IKG(Posted 2007) [#12]
Outrageously slow on my intel integrated graphics.


What isn't with integrated graphics? Buy a real card :P


Warpy(Posted 2007) [#13]
well... quake 3 runs alright, and some fairly new games...

I await with great anticipation your suggestions for fitting a new graphics card inside this laptop.


jfk EO-11110(Posted 2007) [#14]
You are comparing me to ID Soft, that's really nice.


Nathaniel(Posted 2007) [#15]
@jfk
Dowloading...
I've enjoyed playing your previous demos and this one looks like it's the best! Congradulations on finishing it.

@Warpy
It's possible... If your laptop model has a upgraded version with a *REAL* graphics card :P , you can buy one off Ebay someone took out (of their laptop). I easily took my laptop apart and took out the graphics card. (And yes it still runs.)


Nebula(Posted 2007) [#16]
U should more lights in it. Lighting drastically increases the reality level. You can even reach big budget quality levels with using the build in hardware lights. Use wide light setups ect. Shine lights ontop of the less realistic area's of the game(Edges textures ect.. There can never be enough lighting. The same principle applies to dark scene's. Use less light.
Overdo the lighting. There can never be enough of it.
Even if you can barely see thru the lights and have to move around it. The fotorealistic effect will more then make up for it. Do not focus on the antialliasing. Shine on top of it. Use distance with lights. Far nearby lighting.


Snader(Posted 2007) [#17]
Snader, on a C64 or what?
P4 2,8Ghz, ATI RADEON 9800, not the newest machine these days.


Naughty Alien(Posted 2007) [#18]
..working fine here except some textures in pool and floor inside building missing...

P4 2.4Gigz, 1Gig RAM, nVidia 7600GT, 256 MB Vram, WinXP Pro


jfk EO-11110(Posted 2007) [#19]
Textures missing? darn! How many of them? Does this happen on other machines too? Probably a dds path pachter problem. You know the problem is meshes often have a full path stored, so they will find the original texture on the developers machine (assume the original is located in an other folder than the game), but can't find it on a users machine since the texture is missing in the game folder (Blitz is trying to load it from the mesh's folder if the full path doesn't work). Next timeI really should test it on an other machine first. Thanks for testing.

Snader, so what is it, several minutes, or how many seconds exactly? As I said, on my 1.6 GHz cpu it takes 5 seconds. This is by the way the time the engine requires to initialize. I know some commercial game engines that are taking in fact "several minutes" to load, but mine definitely doesn't.

Consider I was working 4 years on it, hundreds, probably thousands of hours. Selfjustifying nitpicking isn't exactly the thing a solid community basement is made of. Fair and realistic critism is welcome, but your arguments ain't valid. It sounds more like something personal.

When it comes to negative critism, exaggeration (or however that is spelled) is like slander. A serious thing.


_33(Posted 2007) [#20]
Things that I had to change to make it playable for me:
W A S D = movements
C = crouch wasn't possible, so I set left ctrl
jump = spacebar
walk / run = left ctrl

mouse movement = not smooth, rough plays better

Without those settings, I consider an FPS unplayable/unbearable.

Also, the mouse Z (scroll wheel) should help choosing weapon

Cheers.


Sledge(Posted 2007) [#21]
-I picked up the sniper rifle first and was stuck in sniper view until I got hold of another weapon -- gave me a chuckle, imagining the guy with the rifle permanently held to his face, but it needs fixing. [EDIT: Just had another play and it switches you into that view if the other gun(s) run out of bullets too.]

-I also had the odd pauses after pressing space at the start -- a couple of seconds at most, but it's kinda confusing and unprofessional.

-I could saunter though one of the sets of fencing with the lions-head motif (round the back, near chopper) -- just a map issue, really. Also noticed that missing floor texture.

-'Congratulatons'

-It's tough to comment on the gameplay because I'm on an Intel chipset too and the framerate exaggerates any problems. It's fairly clear, though, that enemies (well, the human ones at least) need to react to being shot and the AI really isn't a lot of fun to combat. The soldiers just seem to skitter around before stopping at brief random intervals to pop off a shot, the end result being that you get bored of tracking their movement (and here's where the framerate raises its head, because gawd it's next to impossible to shoot the buggers while they're moving horizontally across the screen on my machine). The heavier weapons alleviate the problem but it shouldn't really exist at all -- I bet the guy guarding the sniper rifle running several 'lengths' of the shed at full tilt before defending himself looks kinda farcical even on the beefiest rig.

I hope that's not too negative -- I'm always impressed with the scope of what you achieve with CSP and enjoy checking out each new demo. I would quite like to see a demo constructed from a set of smaller, interlinked sections at some point, mind, just so the required specs are lower; And is it only me who finds it odd that you don't demo the actual tool(s)?


Rob Farley(Posted 2007) [#22]
Giant ants at the end!?

Anyway... quite good fun although had a hard time finding the ladder at first, wasn't obvious to me.

Liked the logging onto computers.

Thought the 100s of gun flavours a little too traditional fps, would have preferred to have just a regular gun and sniper rifle, and wish the sniper rifle was better.

Anyway... its a great start. Keep up the good work!

oh... and thought the voice acting was crap... sorry! ;)


jfk EO-11110(Posted 2007) [#23]
Thanks for the comments.

To Sledge: I agree, the 5 seconds pause in the initialisation may be confusing, I'll probably add some kind of info like "initializing, stand by...". Other than that, I cannot skip the engine initialisation :) And BTW I AM unprofessional, like most people here, so this is no surprise.

The sniper thing - I can't confress what you say. If you pick it up, it won't be autoselected, like other guns. You have to explicitely hit "7" or if you got more than only the sniper gun, you can press the middle mousebutton to cycle trough all guns.

If you however want to get rid of the sniper scope view, you can always hit "h" to hide the current gun. Thought this is obvious since listed in the main help.

Yes, if you run out of ammo and the next gun is the sniper, it will switch to this mode. I was assuming the player want to continue shooting no matter what. If you want to skip this gun, click the MMB to select the next one.

While this scope mode probably is not very fps-conventional, just like many other things in the project, I'd also mention that "fps-convention" is a very subjective term. For some people it means counterstrike etc. like. Other people would rather reference NOLF, Hitman or splinter Cell, they are very "unconventional" as well.

I agree, the "AI" is really very simple, almost inexistent. This is especially obvious if you play with the god cheat or so, and track their movement repeatedly. If you are in non-god mode, and if the framerate is high enough then it may be a little diffrent. The ants scene is a good example: although simple attack routines are used (as you described), there will be 3 ants who are simultanously attacking you from all sides and you need to keep your focus on all the energy clouds they shoot at you. But i repeat, the AI surely is something that needs work. Due the current debatte to completely forbid socalled "Killer Games" in germany (they're crazy, of course), I am thinking about to add alternative features instead, like a dialog system with some kind of AI. So it could be used for non-shooter games.

It still sounds to me as if you compare this to commercial engines. Not sure if this is a good thing, maybe yes.

Noless I would still like to compare this to other playable "fps" engine demos or games written in Blitz3D and if it's in the top ten then it's ok for me, since there are more than 10 thousand Blitz3D users AFAIK.

I hope I'll be able to make a new map soon, one that renders faster. I have plans for releasing the tools, but I first need to add some features, eg. a good trial expiration. Probably I'll even release them unlimited. Depends on a new license model.

To ><)))š>

Thanks. I also wish there was a better sniper rifle. Although, I like a simple remington 700 with a simple scope, and no hitech (other than maybe a seperate range finder), I would like to add wind and whether to affect the bullet, as well as to use real bullet speed and parabellum curves etc.

But this would be more a real sniper sim, like the ww2 one that was released some time ago. Nice idea tho.

Sorry for the ladder thing. Thought it shouldn't be too easy to get into the building.

It's not so easy to find a good voice. I think Rob's is pretty cool (eg: "is that all you got?"), after all it's an amateur project, so for me this is ok. Tho, I agree, "you shouldn't play with the big boys" is only funny when spoken by a woman (as it was in prev. demos). we kind of missed this detail.

Thanks for your comments.


Nathaniel(Posted 2007) [#24]
I've played it now...

The only thing I didn't like was I didn't have a weapon at the beginning. I couldn't find anything except the minigun. (Of course I didn't finish the level.) Excellent job though, I love the shadows and grass.


jfk EO-11110(Posted 2007) [#25]
Thanks. Good to see somebody is actually mentioning the grass. The first guns are in the little house near the level start. You need to pick up a key in front of the door in order to open it. Use one of the "coincedencly" present "personal stealth shield projector" items, then enter the room and pick up everything.


Xzider(Posted 2007) [#26]
One of the best grass I have seen in a blitz game.


Nathaniel(Posted 2007) [#27]
Oh, okay. I figured out how to pick things up and open doors after I got in the enemy camp :)


Xzider(Posted 2007) [#28]
The only way to get in the big building where the main stuff is I found is the non-collisioned gate, only 1 side you can walk through.


Panno(Posted 2007) [#29]
hmm not bad work jfk

some textures missing (springbrunnenumrandung)
dont like the doors action why not open always to the other side ??
shoot a running enemy is 99% an impossible mission

but the grass looks cool

cu ;)

gtx


puki(Posted 2007) [#30]
I'll swap the grass code for my day/night cycle:

http://putstuff.putfile.com/85004/670493


*(Posted 2007) [#31]
looking good, its a true 'What Blitz can do' engine :)


puki(Posted 2007) [#32]
I think he should hand the grass code over though else he'll end up turning into "fredborg" - he can keep the rest though, so it's not like we are asking much - it's just a piece of grass code - it's not like we are asking for one of his legs.


Gabriel(Posted 2007) [#33]
The only way to get in the big building where the main stuff is I found is the non-collisioned gate, only 1 side you can walk through.

No, there's a ladder around the far side from the side you start. It's just behind level with the back of the house, and partially hidden by some foliage.


Grass is very impressive. I only hope my grass looks half as good when I've actually put together a whole level with it.


jfk EO-11110(Posted 2007) [#34]
Thanks for all the comments. Need a break these days. I think I get blind from staring at the screen too long time and probably from drilling holes in the ceil without protection glasses...

Yes the ladder. The Lionhead fence that has no collision is a map design mistake. Also, sorry for the missing textures. As I mentioned before this is a common problem of blitz, since it will try to load it from the full path (if it's stored in the mesh) when it can't find the texture in the meshes folder. Tho, some may consider this a feature, it's often the reason for missing texures in releases. The best way to prevent this is: open your meshes in notepad, check out if there are any full paths, if so go to that directory and rename it temporarily, then test the game again and see if there are missing textures.

I have fixed this and will upload it tomorrow or so.


Actualy the grass engine was released years ago (see my grass demo in the archives). The thing that makes it looking good (imho) is A) the underlying texture will disguise the grass quads bottom seam pretty much, and B) the adaption of the lightmapping (as described on the page) that is looking higly plastic when you're in motion. This would look rather impressive in a rain forest, probably with volumetric or pseudovolumetric light ray meshes. Although, you need to fight lots of Z-Sorting issues when there's so much alpha in the scene. The mystery of manual Z-sorting is your only friend here.

For those who are purchasing a licese these days, note I am currently updating the publisher distribution to version 8, so you'll get version 7 now and version 8 in the next weeks.

Good to see it's working on most machines. I used BMP "cutscenes" for max compatibility. DirectShow can "play" them, although MoviePlaying doesn't seem to return zero when it reached the "end" of the "movie", so I had to work around this detail, btw.

Thanks everybody!


Aeronux(Posted 2007) [#35]
Chris:
(please don't take any of this offensively!)

Where's your server located? Downloading is horribly slow here in Michigan (~65KB/s vs. usual ~240KB/s).

I have a slow machine, and what you call "a couple of minutes" takes 5 seconds here. So I think what you say is not true (aka stop telling rubbish).
? How do you know he's lying? Your machine is likely to be different, and therefore, not the same. I've found many differences between comparable systems already, and I'm only on week 3 of programming with BlitzMax.

i like your style of you new webpage.. nice. now downloading the new demo...
Could definately improve on the website. The header graphics are all extremely dark, even with my monitor set to GRAPHICS mode (which is blindingly bright...). I can read what the buttons say, but its all way too dark. As well, you should think about making new corner images for your tables.

On it being slow... I'd say it's slow. It took 15 seconds to load on my "god comp" with a e6600 oc'd to 3ghz and a x1950. And, is it supposed to lag for 5 seconds after you hit space to continue?

Some suggestions:
-blend on-screen text in a way that you can read it easily but see through it
-speed up crouching times (i don't think i've ever seen a game where you crouch that slowly)
-should be standing after jump IMO
-I assume somewhere there's support for changing keys ( i didn't really look ), but if not, WASD is essential.
-I noticed you repeat the walking sound at the same frequency for both walking and running
-You should get hurt falling
-Even if it IS a demo, there should be some sort of real-time instruction for new players.


Dustin(Posted 2007) [#36]
I'm sure you've probably answered this a million times before, but here comes a million and one. :)

Would you consider selling/licensing the source? You seem to have a very clean and solid framework with some nice features (like the water) but other elements are currently not ready for primetime (the AI for example). I've watched the engine improve with each version but as it is it seems impossible to make a playable game. What are the possibilities of packaging it up and selling the framework (like Grey Alien has done with his framework for BlitzMax)?


clownhunter(Posted 2007) [#37]
nmv


puki(Posted 2007) [#38]
I don't see the code for sale.


GfK(Posted 2007) [#39]
I don't see the code for sale.
Because it isn't?

Stop being a tit. This 'weirdo' charade (assuming that's what it is) is wearing a little thin now.


puki(Posted 2007) [#40]
"Clown Hunter" posted that it was for sale in response to "Dustin's" post - he then edited his post.


jfk EO-11110(Posted 2007) [#41]
I'd really had to invest a lot of time in making the code readable, structured and clean. Time I rather use to add features. I'd say, if you really have the skills to mod my engine (eg. by injecting real AI), then you're better of writing your own thing from scratch, seriously.

You may also have a look at the pledit source, a light version of my editor that I released for Project Plasma(rip). It contains the most important features. That said, it's no rocket scence, I'm only cooking with water there.

There will always be some features one may add to a game engine, of course and at some point it's only a question of the project size. I think it's possible to make little fun games with this engine, although of course it cannot competite with the market leaders. I wish I had Minter, Braben or Molineux in my team, tell them to "finish the AI ASAP", but the reality look a bit diffrent.

I do however have plans to add certain features to the NPC AI. My problem is, there's a zillion of things I need to add and I can't do it all simultanously. You see, people even tell me to make the website brighter, where I only had the time to quickly "sweat out" the pages between two cups of coffee.

I've uploaded a new version, that should fix the missing textures and the collision issue. So now you HAVE to use the ladder.

cheers


andy_mc(Posted 2007) [#42]
Are you planning on having universal resolution support, so for instance, I would be able to select 1680 x 1050 to get the best quality from my monitor.


jfk EO-11110(Posted 2007) [#43]
Yeah, the screen settings utility may be kind of "suboptimal".

Note you may open csp_config.cfg with notepad and enter any resolution. Although, Not sure how this is gonna look in 16:9.


Kalisme(Posted 2007) [#44]
I'm not sure if this is an old topic or not, I just wanted to say I was really impressed by this demo. I think the last CSP engine I looked at before this was like 6 or something... the AI has been improved heaps, (well, it looks like it has... has it?) And it's great to see the plantlife and animated water textures... I've only recently started programming in the last week, but you've definatley inspired me. Great stuff.


Starwar(Posted 2007) [#45]
I love the graphics. Very well!
But I canīt shoot.
Maybe you should improve the sea-rose, the fish and the well


kfprimm(Posted 2007) [#46]

But I can't shoot.


You have to find the gun.


IKG(Posted 2007) [#47]
Yeah it does kinda lag, and I'm playing it with an ATI x800 PCI Express.


jfk EO-11110(Posted 2007) [#48]
thanks. Itīs slow because the level is designed badly, not with a low camera range in mind. And thereīs also too much grass, thatīs costy. At least itīs running on this ultracheapo integrated shared-64MB card, even with only 0.5 frames/s or so.

The AI is still the same, but the waypoint interpolation was smoothed.

Get the first gun this way: thereīs a key on the floor in front of the door of the little house. Grab it with the RMB. then Grab the stealth box on the barrel to become invisible. Now open the door, grab the pistol on the table and shoot the guard before you become visible again, Then you may also pick up the rifle etc. Then search for a ladder...

It was a nice, creative phase for me. I often got them between the art breaks :)


John J.(Posted 2007) [#49]
BTW: the framerate may be pretty low on older systems. That's more a level design issue than a engine speed issue.

It's also slow on newer systems - my GeForce 7800 GT (which can run almost any modern game at 60 - 150 FPS) runs this demo at ~20-25 FPS. Hopefully it's just some sort of driver incompatibility.


jfk EO-11110(Posted 2007) [#50]
Itīs a stress test level. And it isnt designed for outdoor levels, therefor it doesnīt use LOD like other games with outdoor scenery. And yes itīs not the fastest engine out there, especially compared to "modern games", guess you mean AAA releases.
If you want to measure the speed it gains with an average level design then try the previous demo Number 7.


John J.(Posted 2007) [#51]
Well even with no LOD or occlusion whatsoever a 7800 could easily render that entire level at over 20 FPS I think; it looks like to me that you may simply have a bottleneck somewhere which is slowing down my 7800 - my guess would be a batch count or vertex upload bottleneck.

I've tried your earlier demos, and they are very well done, and run quite fast (even on old video cards). It seems since the addition of your vegetation system, everything has slowed down a lot more than it should. Now on a old video card like a GeForce 2, the slowdown is probably normal, but when the same demo runs on a video card with extremely fast vertex/pixel processing capabilities, the same slowdown occurs (and of course is not good for someone who is used to their video card's high speed).

Since Blitz3D doesn't support vertex shaders (of course), grass animation means that every vertex of the grass has to be re-uploaded to the video card each frame, and I'm guessing that this may be the main cause of the poor performance. Newer video cards are so fast that this creates a bottleneck and slows everything else down, meaning 99% of the time you're uploading vertex data to the video card, and 1% of the time you're video card is actually rendering something.

So I would try disabling grass animations (just to see if it helps), and if you're not already, grouping grass into batches of several thousand polygons - drawing each grass quad as a single entity (even if you use CopyEntity) will absolutely slow down everything no matter how fast your computer is.


Developing a fast vegetation rendering system takes a lot of time and effort, so I guess it really depends how much time you want to spend on it. In your case, like you said it's not really an outdoor engine, so it's not that important.

P.S. But if you ever want to use C++ to develop a game with advanced vegetation rendering, I would recommend Ogre (free) + my vegetation system add-on (free) [image | video]. :D


jfk EO-11110(Posted 2007) [#52]
So you say itīs running ok on older cards, but not satisfying on new hardware? Hey, this is a feature.

"grouping grass into batches of several thousand polygons"

This is where z-sorting problems arise. Since I donīt use Vertex Animation, as you thought, I have to say IF you have to alpha-sort the vertices of all "groups" (and you have to) then you will not only spend time in uploading vertices (as you said), but also in z-sorting (see Beakers sorting code).

The idea behind my grass engine is to use the grass on some patches only. This is still looking good, but wonīt become a stresstest as seen in the demo.

Really interesting showcase you got there. Tho a game is more than vegetation. The higher the polycount, the slower Linepicks will be. And in games you sometimes need them.
Grass may be unpickable, unlike trees etc.


John J.(Posted 2007) [#53]
This is where z-sorting problems arise. Since I donīt use Vertex Animation, as you thought, I have to say IF you have to alpha-sort the vertices of all "groups" (and you have to) then you will not only spend time in uploading vertices (as you said), but also in z-sorting (see Beakers sorting code).

That's true. Z-sorting can be optimized somewhat, but you're correct that it still requires a higher upload bandwidth if grasses are grouped. Although there may be a way to do z-sorting in a vertex shader, but I haven't really looked into that.

The idea behind my grass engine is to use the grass on some patches only. This is still looking good, but wonīt become a stresstest as seen in the demo.

You're right - in this case, your system is probably just perfect.

So you say itīs running ok on older cards, but not satisfying on new hardware? Hey, this is a feature.

Yeah, if you're going to be displaying patches of grass on relatively old video cards, your technique is probably just right.

Really interesting showcase you got there. Tho a game is more than vegetation.

I know, I'm just developing my game engine one step at a time, it I just decided to start with the vegetation this time :). Unfortunately the vegetation stage is taking longer than I expected, since I released it under zlib and I'm trying add as many requested features as possible :D (and of course fixing any reported bugs).

The higher the polycount, the slower Linepicks will be.

That's true in Blitz3D, but since Ogre doesn't include it's own collision system, I'm free to choose my own (Ageia PhysX, in this case), which gives me full control. For example, I could use a lower polycount for linepicks than what you actually see on the screen, and I could disable picking on tree leaves/grass/etc., and I could disable picking on distant trees if necessary, etc., etc.

Basically, Blitz3D has it's limitations, and you're going to run into a few snags if you like creating somewhat technologically advanced game engines like me (in which case you should consider moving to C++). However, considering how old it is, Blitz3D is still amazingly versatile :)


jfk EO-11110(Posted 2007) [#54]
I have to say I hate C. I was coding in C for some time, but everything seemed to be "complicatized" to me, so I was totally happy when Blitz3D came out. I guess the sooner or later there will be a new Basic Product that supports those features B3D lacks of, like seamless shadow, physics and shaders integration.
Probably Iīm going to try C# the sooner or later, as some People said the whole setup is easier.


John J.(Posted 2007) [#55]
I was coding in C for some time, but everything seemed to be "complicatized" to me

Pure C code is not a very nice language to use at all. C++ has many more features that make things a lot easier, and I'm not just referring to OOP. Once you get used to it, C++ can be just about as easy as BASIC - the main problem is that it takes so long to "master" it.

Probably Iīm going to try C# the sooner or later, as some People said the whole setup is easier.

You should definitely try it - not only is it free (the express edition), but it's much improved over C++. The only reason I don't use it is because C++ is faster (although I hear C# can be as fast or faster than C++ in some areas, due to JIT compiling).

But unless you're planning on designing a complex GUI, I'd probably choose BlitzMax over C# for speed and cross platform compatibility.