Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411425 Posts in 69363 Topics- by 58416 Members - Latest Member: JamesAGreen

April 19, 2024, 08:43:50 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsArkamedus ( Interactive Demo )
Pages: [1]
Print
Author Topic: Arkamedus ( Interactive Demo )  (Read 1825 times)
arkamedus
Level 0
**



View Profile WWW
« on: November 23, 2014, 07:39:01 PM »




  ( PLAY THE TECH DEMO ONLINE @ OAKSTEADARTS.COM )

" an adventure begins with the first door found unlocked "

PEN
BROWSER BASED ! PUZZLE ! STORY ! ADVENTURE ! EDITABLE

! ABOUT !
i was working on a 2.5d game in game maker and it wasn't quite shaping up to what I had imagined.
i am now building project Arkamedus, a fully hand written javascript ( no frameworks! ), in-browser 2.5d adventure game.





 ( more videos + screenshots + info at my tumblr )


? WHY JAVASCRIPT ?
need the newest version? just refresh the page, BOOM, done!
browsers are too underrated, we've been perfecting them for like 20 years and no one's noticed!

i work on this game daily, so *hopefully* daily updates!
« Last Edit: April 11, 2015, 12:37:06 PM by oakstead » Logged

arkamedus
Level 0
**



View Profile WWW
« Reply #1 on: November 24, 2014, 05:26:25 PM »



just implemented placing items into the world, it's a lot of fun!
scaling is a bit off for the entities, but that should be an easy fix.
Logged

crusty
Level 2
**



View Profile WWW
« Reply #2 on: November 24, 2014, 05:44:09 PM »

what's in the groblins' pot?
Logged

Caravan: devlog | website
arkamedus
Level 0
**



View Profile WWW
« Reply #3 on: November 24, 2014, 05:55:52 PM »



what's in the groblins' pot?

the goblin, king mowser, has a diet primarily consisting of toadstool.. yuck!
« Last Edit: December 17, 2014, 07:03:18 PM by oakstead » Logged

arkamedus
Level 0
**



View Profile WWW
« Reply #4 on: November 25, 2014, 07:25:51 PM »



repopulating the entity selection list, still need a way to pick entities back up.. soon!

i'll be visiting family over the holiday, updates to resume when I return.
Logged

arkamedus
Level 0
**



View Profile WWW
« Reply #5 on: December 14, 2014, 11:24:10 AM »

spent nearly 18 hours fixing the texture rendering.





i solved my affine texture mapping problem by writing a custom triangle/texture tessellation system.

( Video of tessellation here @ my Tumblr )
Logged

Pezomi
Level 0
***


swag swag swag


View Profile WWW
« Reply #6 on: December 14, 2014, 11:43:15 AM »

I'm really liking the look of it! I'll be following your progress!  Coffee
Logged

Polygonzo
Level 0
***


Hide your wings in a ghost tower


View Profile WWW
« Reply #7 on: December 14, 2014, 12:45:48 PM »

I like the character designs! So is the idea a 3D environment made of 2D planes like a pop-up book? Looks neat.
Logged
arkamedus
Level 0
**



View Profile WWW
« Reply #8 on: December 15, 2014, 01:23:50 PM »

I'm really liking the look of it! I'll be following your progress!  Coffee

thanks! i'm trying to keep up with development on this project!

I like the character designs! So is the idea a 3D environment made of 2D planes like a pop-up book? Looks neat.

a popup book is a good way to describe the aesthetic. originally, i was using 3d planes to render sprites and stuff, but now since i'm using javascript, that isn't really practical.
now, all images are just rendered to the screen with basic scaling operations applied to them.

this does look a bit odd when rotating the camera, as all the sprites are facing the camera, but overall, i kind of like the effect.  Embarrassed

as for updates:
implemented shadows yesterday, along with some optimizations





to keep the memory overhead low, and to reduce the allocation of new memory, i completely refactored my texture transformation function



also did some engine stress testing (2,100 entities with shadows disabled, running at ~55fps)

« Last Edit: December 17, 2014, 07:08:32 PM by oakstead » Logged

arkamedus
Level 0
**



View Profile WWW
« Reply #9 on: December 16, 2014, 02:51:46 PM »

had some issues with improper scaling today and it turned out that my vector normalization function was incorrect. i was dividing each of the scalars by the maximum distance of the scalars, instead of the total distance of the vector. headache is finally going away now.





original (incorrect)
Code:
function vecNormalize(a){
var nmax = Math.max(a[0],a[1],a[2]);
return [ (a[0])/nmax,(a[1])/nmax,(a[2])/nmax ];
}

updated (correct)
Code:
function vecNormalize(a){
var nmax = vecDist( a, [0,0,0]);
return [ (a[0])/nmax,(a[1])/nmax,(a[2])/nmax ];
}
Logged

arkamedus
Level 0
**



View Profile WWW
« Reply #10 on: December 17, 2014, 02:15:38 PM »

added rotational inertia to the camera, and updated the camera code to use a spherical coordinate system in addition to cartesian.

setting the camera position / rotation is now as simple at setting a "look at point"/"direction vector" and applying some simple vertex rotation functions.

where a = vector [x, y, z] && b = rotation in degrees
Code:
function vecRotX(a, b){
    b*=(Math.PI/180); // convert to radians
return [a[0], (a[1]*Math.cos(b) - a[2]*Math.sin(b)), (a[1]*Math.sin(b) + a[2]*Math.cos(b)) ];   
}

function vecRotY(a, b){
    b*=(Math.PI/180); // convert to radians
return [(a[0]*Math.cos(b) + a[2]*Math.sin(b)), a[1], ((-a[0]*Math.sin(b)) + a[2]*Math.cos(b)) ];   
}

function vecRotZ(a, b){
    b*=(Math.PI/180); // convert to radians
return [(a[0]*Math.cos(b) - a[1]*Math.sin(b)), (a[0]*Math.sin(b) + a[1]*Math.cos(b)), a[2] ];   
}

Logged

arkamedus
Level 0
**



View Profile WWW
« Reply #11 on: December 24, 2014, 11:32:15 AM »



i think 750 textured triangles is the upper limit of what the engine can handle. given that this is all running on the CPU and using no built-in hardware acceleration, i’m quite pleased with this result.

as you can see in the second image, without applying textures, the engine is still only using a fourth of the allocated frame time, which leads me to believe that performance could be increased further, however i’ll probably reserve this untextured mode as a option for lower end computers (though of course, not keeping the triangles red!)

also, since these ground plane textures are merely aesthetic (shadows, leaves, variations in ground textures, cobblestones, dirt patches), they can be disabled entirely, for those who don’t need the graphic fidelity, or those who find it hits on their performance.

i would like to extend to you all the opportunity to test the engine for yourselves, no download required. there’s little to no content at the moment, but i hope this gives you a feel for my project;

  ( PLAY THE DEMO ONLINE @ OAKSTEADARTS.COM )

hope you all are having a great holiday!
Logged

crusty
Level 2
**



View Profile WWW
« Reply #12 on: December 24, 2014, 03:53:49 PM »

I waddled around a little bit.  It looks great.  What's the game going to be about?
Logged

Caravan: devlog | website
arkamedus
Level 0
**



View Profile WWW
« Reply #13 on: December 24, 2014, 09:13:50 PM »

I waddled around a little bit.  It looks great.  What's the game going to be about?

ehehe, i really love their waddling!

the game is mostly going to be a basic exploration sandbox with an optional questline. essentially, you are put into a small world that you can interact and change to your liking.
much of the game is about building relationships with the other characters, who will assist you in certain puzzles, or areas of exploration you wouldn't be able to pass on your own.
Logged

Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic