Discuss Scratch

smoothman755
Scratcher
14 posts

BSP (Binary Space Partitioning)

Hello I am fairly well-learned in the knowledge of raycasting and 3D Projection but I have wondered this since I joined scratch: Why has no one even thought of Binary Space Partitioning 3D? Scratch may not be fast enough for BSP but no one has even opened a discussion about it and it is a interesting method of 3D, used in spectacular games such as Doom, Marathon, and Hexen. I just want to discuss stuff about it and why it isn't being discussed even among people who pride themselves upon knowing lots about 3D methods.
smoothman755
Scratcher
14 posts

BSP (Binary Space Partitioning)

RPGPRO wrote:

Hello fellow scratcher. I am also curious about the binary space partitioning topic not being added. It is possible to do in scratch. There are some easier 3D layering methods, though. Such as creating multiple layers that are raycasted as one layer. This would probably cause lag though depending on the ammount of layers but it would result in an ammense ammount of detail. I say that you give it a shot.
I agree. I have a little knowledge in 3D projection and a lot in raycasting but I have not quite learned a good way to use BSP yet.
StartingDangerXtm
Scratcher
9 posts

BSP (Binary Space Partitioning)

I think we could use some sort of color code ,meaning it will use raycasting,but with a variable for height ,so depending on the color the ray touches , the height will be determined .
smoothman755
Scratcher
14 posts

BSP (Binary Space Partitioning)

StartingDangerXtm wrote:

I think we could use some sort of color code ,meaning it will use raycasting,but with a variable for height ,so depending on the color the ray touches , the height will be determined .
We are not talking about raycasting, even though your idea is a good one, we are talking about a complex setup and sorting algorithm for projection 3D
StartingDangerXtm
Scratcher
9 posts

BSP (Binary Space Partitioning)

smoothman755 wrote:

StartingDangerXtm wrote:

I think we could use some sort of color code ,meaning it will use raycasting,but with a variable for height ,so depending on the color the ray touches , the height will be determined .
We are not talking about raycasting, even though your idea is a good one, we are talking about a complex setup and sorting algorithm for projection 3D
I know where not talking about raycasting, I'm just saying we could use raycasting to present binary space partitioning,for example do a raycaster, and use colors for different sectors. and each sector has a color that corresponds to that sector, and a height number that comes from each sector. so when it touches a certain sector, it will render that part of the sector.
hankhenz
Scratcher
2 posts

BSP (Binary Space Partitioning)

I'm not sure if Scratch could produce BSP, but I'm definitely interested. If BSP on Scratch is possible, it would be revolutionary.
StartingDangerXtm
Scratcher
9 posts

BSP (Binary Space Partitioning)

Hey guys, Im back! and I think I sort of did it! it of course has some flaws, but here it is!
https://scratch.mit.edu/projects/114928733
smoothman755
Scratcher
14 posts

BSP (Binary Space Partitioning)

StartingDangerXtm wrote:

Hey guys, Im back! and I think I sort of did it! it of course has some flaws, but here it is!
https://scratch.mit.edu/projects/114928733
it is not shared
StartingDangerXtm
Scratcher
9 posts

BSP (Binary Space Partitioning)

smoothman755 wrote:

StartingDangerXtm wrote:

Hey guys, Im back! and I think I sort of did it! it of course has some flaws, but here it is!
https://scratch.mit.edu/projects/114928733
it is not shared
woops, sorry, its shared now
smoothman755
Scratcher
14 posts

BSP (Binary Space Partitioning)

StartingDangerXtm wrote:

smoothman755 wrote:

StartingDangerXtm wrote:

I think we could use some sort of color code ,meaning it will use raycasting,but with a variable for height ,so depending on the color the ray touches , the height will be determined .
We are not talking about raycasting, even though your idea is a good one, we are talking about a complex setup and sorting algorithm for projection 3D
I know where not talking about raycasting, I'm just saying we could use raycasting to present binary space partitioning,for example do a raycaster, and use colors for different sectors. and each sector has a color that corresponds to that sector, and a height number that comes from each sector. so when it touches a certain sector, it will render that part of the sector.
Ok I see what you mean by looking at your project, but that is not BSP (although what you did is a way of getting heights) BSP involves vector walls, Binary Trees, and 3D.
StartingDangerXtm
Scratcher
9 posts

BSP (Binary Space Partitioning)

smoothman755 wrote:

StartingDangerXtm wrote:

smoothman755 wrote:

StartingDangerXtm wrote:

I think we could use some sort of color code ,meaning it will use raycasting,but with a variable for height ,so depending on the color the ray touches , the height will be determined .
We are not talking about raycasting, even though your idea is a good one, we are talking about a complex setup and sorting algorithm for projection 3D
I know where not talking about raycasting, I'm just saying we could use raycasting to present binary space partitioning,for example do a raycaster, and use colors for different sectors. and each sector has a color that corresponds to that sector, and a height number that comes from each sector. so when it touches a certain sector, it will render that part of the sector.
Ok I see what you mean by looking at your project, but that is not BSP (although what you did is a way of getting heights) BSP involves vector walls, Binary Trees, and 3D.
I know its not real BSP, but its a place to start. BSP would require lots of variables and lists and would be very complex

Last edited by StartingDangerXtm (June 27, 2016 20:36:37)

Fredbear87ps3
Scratcher
2 posts

BSP (Binary Space Partitioning)

This isn't technically full BSP, but it's the closest I've gotten to it. It works fairly well, though.
https://scratch.mit.edu/projects/132324045/
smoothman755
Scratcher
14 posts

BSP (Binary Space Partitioning)

Fredbear87ps3 wrote:

This isn't technically full BSP, but it's the closest I've gotten to it. It works fairly well, though.
https://scratch.mit.edu/projects/132324045/
I don't understand, how is that BSP?
Fredbear87ps3
Scratcher
2 posts

BSP (Binary Space Partitioning)

smoothman755 wrote:

Fredbear87ps3 wrote:

This isn't technically full BSP, but it's the closest I've gotten to it. It works fairly well, though.
https://scratch.mit.edu/projects/132324045/
I don't understand, how is that BSP?
The variable acts as a substitute for a full BSP tree, and thus uses the variable count to shift the wall
and once again, this isn't techincally full BSP
redfire512
Scratcher
500+ posts

BSP (Binary Space Partitioning)

bump
redfire512
Scratcher
500+ posts

BSP (Binary Space Partitioning)

redfire512 wrote:

bump
I have now revived this topic.
CasualDoggo
Scratcher
1 post

BSP (Binary Space Partitioning)

I have also revived this topic
robowiko123
Scratcher
51 posts

BSP (Binary Space Partitioning)

I will try creating something like that.
pugermann
Scratcher
0 posts

BSP (Binary Space Partitioning)

it's easy, just include a list of all x/z coordinates of each “wall” and also height. build a program to determin if the wall piece is in your viewrange and its distance and then draw it accordingly.
MadKamel
Scratcher
1 post

BSP (Binary Space Partitioning)

Vadik1 has done it! I haven't tested it myself, but it's at the point where you can actually import your own maps!

Powered by DjangoBB