Karoshi MSX Community
06 de Julio de 2021, 04:55:51 am *
Bienvenido(a), Visitante. Por favor, ingresa o regístrate.

Ingresar con nombre de usuario, contraseña y duración de la sesión
Noticias:
 
   Inicio   Ayuda Buscar Ingresar Registrarse  
Páginas: [1]
  Imprimir  
Autor Tema: Raycasting on msx(2)...  (Leído 5081 veces)
0 Usuarios y 1 Visitante están viendo este tema.
ARTRAG
Visitante
« : 11 de Agosto de 2009, 10:41:32 am »

https://sites.google.com/site/testmsx/msx2-doom/D%7BSCC%7D.BIN?attredirects=0

PS Rename the BIN to ROM to use drag&drop in emulators
space to start, arrow keys to walk

PPS
If you want to do real a walk in the maze use a TR (it goes in R800 mode by itself), or be very
very patient (unless your msx2 goes at 20MHz)

Code is here
http://www.msx.org/forumtopic10139.html
« Última modificación: 11 de Agosto de 2009, 10:43:28 am por AR » En línea
pitpan
Karoshi Forum's Guru
*******
Mensajes: 1812


« Respuesta #1 : 11 de Agosto de 2009, 12:05:04 pm »

I've been following the topic at MRC and your demo rules! Of course, changing all from floating point to fixed point will boost the perfomance. Good job, Arturo!
En línea
ARTRAG
Visitante
« Respuesta #2 : 11 de Agosto de 2009, 04:48:25 pm »

eheheh
try to edit in bluemsx the speed of the R800 (it can go up to 20MHz) to have a feel of what it could be...
 Cheesy
En línea
Jon_Cortazar
Administrator
Karoshi Forum's God
********
Mensajes: 2777



WWW Email
« Respuesta #3 : 14 de Agosto de 2009, 07:19:57 am »

Neat approach and with high resolution! Shocked. I am working on a background project trying to bring raycasting to MSX(1), but my designs are low res compared to yours. Still your demo is slow, but it works, and it is a cool strating point. Respect! Magical Stones
En línea

Jon Cortázar Abraido (aka El Viejo Archivero)
RELEVO Videogames
[Dioniso: La cafeína está haciendo su trabajo; yo espero hacer el mío.]
[pitpan: Me sigue pareciendo más productivo jugar al SNAIL MAZE que seguir esta discusión.]
burguera
Visitante
« Respuesta #4 : 14 de Agosto de 2009, 05:20:56 pm »

Siempre había pensado que en un juego así la limitación sería el VDP, no la CPU.

Por cierto... según me ha parecido leer, el mapa se almacena como una cuadrícula y lo que se hace es muestrear sobre la cuadrícula para detectar una colisión con un obstáculo y así obtener la distancia. Es así, ¿no?

Igual digo una tontería, pero... ¿no se podría representar el escenario como un conjunto de líneas rectas (almacenando las coordenadas mundo de sus extremos) y, en lugar de muestrear, calcular analíticamente las coordenadas de la intersección entre el "rayo" que sale del jugador y la línea recta más cercana? Así sólo haría falta un muestreo angular.
En línea
SEPPASEPPA
Karoshi Newbie
*
Mensajes: 24


Email
« Respuesta #5 : 15 de Agosto de 2009, 12:57:57 pm »

Siempre había pensado que en un juego así la limitación sería el VDP, no la CPU.
According to AR, the real limitation IS the CPU speed, during the demo the VDP is pratically idle.
Even improving calculation speed the VDP rendering could be easily optimized.
The real hard part is to improve the CPU part of the work, not the VDP one.
En línea
ARTRAG
Visitante
« Respuesta #6 : 16 de Agosto de 2009, 12:47:27 am »

Mrspock

I'm not an expert of the subject
but i think that the problem becomes than
1) how many intersections have I to compute? One for each line composing the map (!!) only to discover i do not need all of them except one
2) How to distinguish valid intersection ? and what is the "visible" intersection to be rendered?

En línea
ARTRAG
Visitante
« Respuesta #7 : 16 de Agosto de 2009, 12:49:03 am »

about z80 and vdp compare there roms

http://sites.google.com/site/testmsx/msx2-doom

rename the bin to rom and run in a TR
En línea
NapalM
Karoshi Newbie
*
Mensajes: 23


« Respuesta #8 : 16 de Agosto de 2009, 01:20:24 am »

I see that the rom "work" in a MSX2, then you use a z80 code.
If this software only work "well" in a TR, you should use a R800 commands for speed up the software Tongue
En línea
Páginas: [1]
  Imprimir  
 
Ir a:  

Impulsado por MySQL Impulsado por PHP Powered by SMF 1.1.21 | SMF © 2013, Simple Machines XHTML 1.0 válido! CSS válido!