ID:2621328
 
Applies to:DM Language
Status: Open

Issue hasn't been assigned a status value.
Hi.
It would be interesting to support raycasting, it works exactly in the way the byond works with maps and icons and it is just a calculation, but it is something that affects the way of showing the graph, so it would have to be implemented at the moment that the dream seeker draws on the screen, it would be interesting to have a flag to enable it.
Doing this in the DM language would make the server process things related to drawing, it would be interesting to do that on the client when drawing
I'm not really sure what you're saying.

Shadowcasting is something I've brought up before, but it turns out to be super difficult to solve with a shader.
Hello, it wouldn't be shadowcasting but raycasting, it's a calculation that takes 2D maps and creates 3D, like games like Doom, wolfstain and DukeNuke 3d. In raycasting, I was interested in creating a game with this style of art, but I wanted to do these calculations in rendering(shading) and not on the server.
If I were to make a map like this: https://lodev.org/cgtutor/images/wolfmapedit.jpg
The image would exit after applying the calculation like this:
https://lodev.org/cgtutor/images/wolf3d.jpg.
It only takes one calculation to do this. And the way to work is exactly the way we already work in the byond
Doom and DukeNukem 3D are *not* raycasters at all. Wolfenstein 3D is a ray caster but the other two are not.
Doom and Duke 3D uses a BSP algorithm to speed up polygonal and billboard rendering.

This is a primitive example of what you are asking for:

http://www.byond.com/games/Ter13/DawnCasterInfestation

The source code is available, and I did convert the same tutorial that you linked to DM with some modifications to make it play nice with DM's quirks.

It's already more or less possible, but really when you get down to it, "Do BYOND 3D" is something that has been suggested hundreds of times and is never going to happen.

The best we're ever going to get is 4x4 matrix support to allow 3D easier native perspective orientation of quads.

Building this into BYOND would make a lot of other things the engine does not play nice with each other. At best it'll be a shitty implementation of something you'd be able to implement better in another engine, at worst it'll be yet another time-suck for BYOND's sole developer that nobody will actually use because it's boxed in by an existing implementation that was never designed to handle such a rendering mode.
In response to Ter13
In this case it would not be interesting to be able to support customizable hlsl, to be able to allow things like dynamic reflection, dynamic shadow and of course, raycasting, it would be an implementation to give multiple possibilities and we could create multiple libraries with that, it would be something very healthy for the engine byond

Login to reply.