Showing posts with label 3d engine. Show all posts
Showing posts with label 3d engine. Show all posts

Monday, July 4, 2011

New project: Short tales of a tall man

This is a screenshot of a graphics test I just did... I'm considering using a heavily modified version of my GFPS engine for this new game; "Shorts tales of a tall man"... well... that's not the title of the new project, but I am hoping to make a series of games based around the "slender man mythos" (quite interesting stuff, look it up)... This screenshot was just of me raising the resolutions for entity displays and wall testures... it seems to still run fine. The game itself WILL NOT be a first-person-shooter... It will remain first person, but be more like a first person adventure mixed with a visual novel... No guns will be in the game.

The graphics here are also no representation of the game in its final state.... I'm going to be trying to add 3d model loading to the 3d engine so rooms will be decorated with furnature, outside there will be trees and so on... The basis of the engine will be still tile based, but with some additions to make it seem less "boxes and sprites"... Mouse looking will probably be switchable so the mouse can also be used to interact with the world.

This was just a quick concept sketch of "the slender man" I did... I'm still not sure what look I'm going for yet though... My girlfriend is going to also be contributing to the project in a design and probably story context, so hopefully this will make it more interesting that what I'd probably do by myself...

I've just decided on starting the project today, so it will be quite a while to any of the games are finished... engine rewrites will probably take a while... but there should be updates soon.

Wednesday, March 16, 2011

rewrote renderer

I rewrote the rendering library last night and now the engine uses polygon clipping, the FOV is corrected and now it is possible to look up and down using the mouse... (yes; I folded on my thoughts of mouse aim in flash games... *sigh* ).

I imagine that I might be reusing the rendering library I made a few more times... maybe the map engine too... just for quick projects though... the actual rendering library I made is fed vector points, it then clips them and renders them onscreen... pretty simple but useful to have lying around.

An interesting thing about the new renderer is that it no longer colours the tiles darker using colour transformations... it renders a second texture that holds a transparent shading map... the effect is alot more nice and pretty fancy... It gives more atmosphere than vertex shading... It sort of looks like a volumetric fogging effect at times.

Well... the project is getting closer to being finished... even though the rewrite of the renderer from scratch only took a day; it was quite an effort... I had to resync up alot of the other functions...

Hopefully I'll get around to writing a few tutorials on all this later on... and release the source code at some point.... it could be a good learning tool for others.

Tuesday, March 15, 2011

Back to coding

Unfortunately my notebook (which I have written many horrible things about) was just getting too slow for what I needed... probably because of the amount of stuff I had on there...

Anywho; I purchased a new notebook which has been very helpful... no more annoying slowdowns while coding or waiting for my computer to unfreeze... So I've went back to my coding...

The first project I have to finish is my GFPS engine (which I SHOULD of finished AGES ago!)...
Now the game has 4 weapons... a new monster (more soon), it's faster and I have written a level editor for it to make level creation faster and to use the potential of the engine even more.
The image of the editor is quite small, but this is what it looks like anywho... I coded it in c++ using the openGL & SDL libraries... The key commands are pretty silly, but since it's just for me to use so far, it's not important for others to find it easy right now. Tile selection is at the top of the screen, item selection is at the bottom... Thankfully the editor makes stair cases and platforms easier to craft.

"So WHY isn't it released yet?" you may ask... Well apart from the lack of time I've had for it until recently; I need to rewrite the renderer... when I originally wrote the basis of the engine (in one night), it was in AS2 and I wasn't think about height differences... just speed. One of the speed tricks was to avoid polygon clipping (too much complicated maths with floating point numbers really slows down AS2)... so I adjusted the FOV and clipping plane... which is now showing dead space on the screen where nothing is being rendered.. and distorting the perspective... making platforms confusing and rooms look smaller than they are... So a better rendering library is going to be coded... This shouldn't really cause too much slowdown thanks to AS3.

Well, that's some of what I've been up to...
Back to coding, university work, painting and reading for me.

If you have any questions, advice, need help on your own projects or wish to work with me; feel free to leave a comment or Email me at "kalisme (at) hotmail (dot) com".
No spam please...

Saturday, September 18, 2010

Added height differences in FPS engine

Recently I have been talking about a simple 3d engine
that I have been placing together to use in flash games
(mainly first person shooters).
I have just added floor and ceiling height differences to
the engine and it seems to be working quite fine...
 As you can see; the
engine is still running
off a 2d grid based
engine similar to
wolfenstein3d, but now
that it has height
differences it's a bit
more interesting.

Currently the textures
haven't been fitted
properly to the
extrusions, but that
won't be much of a
hassle at all to fix.

My biggest problem will probably be rewriting the enemy AI and collision
code, but that's okay since (as you would of seen if you played the tech demo),
I already needed to update that. The enemies should be able to detect if a floor
tile is too high to walk onto (creating a wall) or if it is too low (creating a drop).
They should be able to walk up stair cases and so on as well...

I'd love to be working on this more, but unfortunately I'm WAY behind at Uni...
Luckily though, my break is in 4 weeks, so if I'm a good li'l art student and get
a passing grade, I'll be able to finish this very soon when I get my break.

Feel free to leave any comments or suggestions.

Wednesday, September 1, 2010

Early first person shooter test (in progress)

(demo at bottom of post)
Currently being coded in AS3; my second attempt at a AS3
game (first being the "Never Ending Shooty-thing" practice game).
I really should of finished this game ages ago... it's really not a
complicated game to make, and the goal was quite straight forwards...

Just before I switched over to AS3 I started coding what I was
calling the "RIIC" engine (Raccoon Crisis II) in AS2..
As you can see; the engine
didn't include wall textures.
This was because I didn't
know how to do this at
the time and I believed it
would of ran too slow.
This engine worked by
turning 2d vector based
maps into 3d projected
walls... It all ran quite
fast until I added in wall
collision detection and
tried to make modest
sized maps for the game.
I ended up rewriting the
collision code many times
in an attempt to make it run faster, but I came to the conclusion that AS2 just
wasn't fast enough (well, when running on my crappy notebook).

After coming to this conclusion I decided to code an engine closer to the
old-school wolfenstien 3d styled raycasters... I still used vectors to create
the walls, but it was closer to Ultima underworlds block based maps (but
alot more simple). Once making a map viewer with textures (yup... I did
some research), I came to the conclusion that it was too slow... sure; it
would of ran fine on a faster computer, but I don't want to make casual flash
games that require "good" computers... I want it to work on more peoples
computers... so I decided to bite the bullet and learn AS3.

Luckily for me; AS3 wasn't such a jump... infact I found it more logical and
alot nicer to work with than AS2... it reminded me of C++ in alot of ways.
I taught myself the basics over 5 days (yes; the NEST game)... then went
straight to work on converting the last engine I was working on in AS2 to
AS3.

The basis of the engine
were written on the first
day... but because of
University and sickness;
I fell behind in my
programming and only
recently got back to the
project. Currently it has
one kind of monster, a
default weapon, operatable
doors and stereo sound.

Alot really needs to be
added, but these are very
small things that won't take much time... well... the graphics will actually... I've set
up an annoying process for myself (yes; silly me).

I'm hoping to have a playable demo ready very soon (more playable than the one
I'm adding at the bottom of this blog entry) which will have more map tile textures,
life, a life bar (so yes; a way to die!), coloured keys for coloured doors and an exit
for the level.

In the Final version I want at least 2 more monster types, two more kinds of gun and
a lot of levels... Maybe a survival mode like Raccoon Crisis and highscore tables.

You're probably wondering why this is so primitive compared to alot of other 3d
flash engines out currently... Well that's simple:
1. I wasn't aware how much faster AS3 is than AS2 when I started coding this.

2. I wanted to make something that runs fast on most computers... the problem with
alot of these newer engines is that you require alot to get them running... sure; the
tech demos seem fast, but when adding in the further complications of a games logic
(collision detection, multiple animated objects, physics, particles and so on), you
might notice a bit of a slowdown... but if you have a cheap notebook like me;
A MASSIVE SLOWDOWN! So I wanted to just make something most people
can play.

Well, hopefully this will be done soon so I can move onto bigger and better things...
I hope you enjoy the tech demo:
...demo removed...