You can help CodeWalrus stay online by donating here. | New CodeWalrus | Old (dark mode) | Old (light) | Discord server

First person 2d platformer

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

0
b/PC, Mac & Vintage Computers publicado por u/guicrith June 13, 2015, 02:49:48 AM
The project has just been started and I cant find any good tutorials on how to rotate and move the camera for 3d rendering.(I still need a camera for projecting 2d to 1d)
I only know math up to geometry no trig.(aside for sin,cos,tan)

This is likely the biggest challenge the project will face.(the project should only take 2 months after this)

Picture of what I am trying to do.(I know my writing sucks and no I am not in kindergarten)
https://drive.google.com/file/d/0B5HuG10h5HbnMHlNR2FxUWNkRkk/view?usp=sharing
The squares underneath the view port are the block the character is standing on.
Inicia sesión o crea una cuenta para dejar un comentario
u/Unicorn June 13, 2015, 03:35:36 AM
I probably won't be able to help, but it would be nice to know what language this is in?
u/guicrith June 13, 2015, 03:56:20 AM
Javascript
u/Snektron June 13, 2015, 10:30:44 AM
Have you considered Three.js? It's a 3D library based on WebGL and really easy to use. Maybe you could make the game so it just looks from one side. Also how do you plan to rotate the camera? (i mean how would you look to the other side). Also do you know Vectors? They're REALLY handy in games. If not i suggest you look up on them ;)
u/Dream of Omnimaga June 13, 2015, 10:48:00 AM
Since it's 3D, shouldn't the title say 3D instead of 2D?
u/ben_g June 13, 2015, 12:09:37 PM
Quote from: guicrith on June 13, 2015, 02:49:48 AM
The project has just been started and I cant find any good tutorials on how to rotate and move the camera for 3d rendering.(I still need a camera for projecting 2d to 1d)
I only know math up to geometry no trig.(aside for sin,cos,tan)

...
Maybe you should look into raycasting. Simple raycasting algorithms use a 2D world (usually a tilemap) as input, and their output is basically a line (so 1d) of which the thickness depends on the depth of the scene at that point. The only thing you'd still need to do then is rotate everything 90° to make the world vertical instead of horizontal (to get a platformer) and maybe remove the code that handles the depth if you want real 1d instead of the 3d illusion.
u/p4nix June 13, 2015, 04:07:32 PM
I once had the idea of making this too (if we mean the similar), inspired by
Last Edit: June 13, 2015, 05:25:13 PM by p4nix
u/p4nix June 13, 2015, 04:39:54 PM
So if you want to use vertical raycasting, here's a good tutorial on it: http://lodev.org/cgtutor/raycasting.html
u/Unicorn June 13, 2015, 07:39:55 PM
p4nix, please do not double post. There is a modify button after all. ;)
u/Dream of Omnimaga June 15, 2015, 01:26:10 PM
That Mario looks cool p4nix. :D If I was to make an actual 2D FPS I would probably just do it like this:



And if it was gonna be 3D I would probably either do it like the above but with extra perspective
Start a Discussion

b/PC, Mac & Vintage Computers

Computer programming discussion and project showcase

132
Topics
Explore Board
Website statistics


MyCalcs | Ticalc.org | Cemetech | Omnimaga | TI-Basic Developer | MaxCoderz | TI-Story | Casiocalc.org | Casiopeia | The Museum of HP Calculators | HPCalc.org | CnCalc.org | Music 2000 Community | TI Education | Casio Education | HP Calcs | NumWorks | SwissMicros | Sharp Calculators
Powered by EzPortal