
-----------------------------------
Wolf_Destiny
Tue Dec 05, 2006 8:35 pm

3D Game Engine (Work in Progress)
-----------------------------------
As some of you may know, and most of you may not, I've been working on a 3D engine for about a month now. Eventually it's going to be a game, all I really have left is to add rooms, and some asthetic features (Like a UI).

Current Build - Alpha 01

The included file has a very basic, easy on the CPU terrain map and basic character cube. No texture mapping in this one, although I could post that as well if people are interested. (It's MUCH slower with textures)

"a" and "d" rotate the red "character cube" left and right. (independant of camera)
Space Bar centers the camera behind the character cube.
Left and Right Arrow Keys rotate the camera and character cube simultaniously.
Up and Down Arrow Keys move character in direction they are facing. (Even if i isn't the same as the camera)
"+" and "-" are zoom in and out respectively.

Questions, and comments are welcome, and I'd appreciate feedback on how people think it's going so far. And if people would like, I could write a short "how to" on making custom models and walkable fields since the engine doesn't use standard formats.

~Wolf_Destiny
aka. Steven Lyon

P.S. Yes I do know I should make an actual character instead of a cube.
P.P.S. My Avatar was rendered with that engine

-----------------------------------
xHoly-Divinity
Sat Dec 09, 2006 12:05 pm


-----------------------------------
Niceee, I like it. I'm thinking that the rotation/movement should be a bit faster... I like the space bar feature. I duno how it would apply to this game ur making, but I would add a vertical rotation feature as well. 

P.s. Nice work, I've really no idea how to make a 3D engine, I wouldn't mind checkin out ur source code if u have it available :wink:

-----------------------------------
Silent Avenger
Sat Dec 09, 2006 5:12 pm


-----------------------------------
I must agree with xHoly-Divinity. Very nice, good work!

-----------------------------------
uberwalla
Sun Dec 10, 2006 12:41 am


-----------------------------------
just curious on how u made it so that it looks more full screen. (the part where u double click the title bar and the window melds into the screen :P.

sweet deal. would love to see your source for the screen melding its very intermeresting :D

-----------------------------------
[Gandalf]
Sun Dec 10, 2006 12:43 am


-----------------------------------
just curious on how u made it so that it looks more full screen. (the part where u double click the title bar and the window melds into the screen :P.
Do that to any window, doesn't have to be Turing, same thing will happen.  I guess there's a slight difference between a window's dimensions being maxx/maxy and it being fully maximized.  This isn't any Turing programming, it's simply part of Windows.

-----------------------------------
uberwalla
Mon Dec 11, 2006 4:06 pm


-----------------------------------
o i guess it is :P when i clicked it for his it just looked totally different lol. :P it litterally had no border i thought it was full screen (except for the bar at top  8-)

-----------------------------------
Wolf_Destiny
Mon Dec 11, 2006 5:58 pm


-----------------------------------
@ Everyone:
Thanks for all the positive feedback, I really appreciate it.
@xHoly-Divinity:
I've been working on acceleration for movement and rotation. So far I've done Forward and Backward, but I haven't worked on it since Friday. The acceleration is fairly easy to implement and right now it increases speed as follows:
if the up arrow isn't being pressed
reset speed to base value (1)
else
exponentially raise speed -> speed += speed/10
move polygons (speed * normal) units backwards
move character (speed * normal) units forwards
end if
@Silent Avenger
Thanks!
@uberwalla
The source is quite simple, as View.Set ("nobuttonbar,graphics:max;max,position:center;center")
View.Set ("title:")

begin
    put "Double Click the Title Bar to continue." ..
    var x, y, btn : int
    for a : 1 .. 2
        loop
            mousewhere (x, y, btn)
            if btn = 1 then
                put "." ..
                loop
                    mousewhere (x, y, btn)
                    exit when btn = 0
                end loop
                exit
            end if
        end loop
    end for
    cls
end
(The begin and end keep x,y, and btn from becoming global variables. With begin and end, the program ignores that they've ever existed.)
@
Thanks for explaining that before I had a chance to reply.

-----------------------------------
uberwalla
Mon Dec 11, 2006 8:27 pm


-----------------------------------
o cool :P thx man
