refined the 3d cursor a bit. pretty happy with it. the thickness will be user adjustable. it also shows through terrain, but slightly dimmer where it's obscured

also showing "mouse pointer mode" where you can mouse over anywhere on screen to interact with blocks, and you mouselook with the right mouse button

thinking of keeping this as a toggleable mouse mode. thoughts?

edit: broke my thread :( previous posts are here https://mastodon.gamedev.place/@eniko/115345413827332419

#EniBlockGame #GameDev #IndieDev #ProcGen

fun fact: in order to draw the cursor as translucent i had to use the stencil buffer, because the boxes that make up the "lines" overlap at the corners, so without the stencil buffer it'd be more opaque at the corners

#EniBlockGame #GameDev #IndieDev

testing customizable thickness/opacity for the 3d cursor. think being able to set this to whatever you want will be nice for accessibility

#EniBlockGame #GameDev #IndieDev

oooohhhh what if i made it jiggly??

#EniBlockGame #GameDev #IndieDev

added an outline to the 3d cursor so it's always visible

#EniBlockGame #GameDev #IndieDev

i can now overlay a block breaking decal on blocks, and it works on blocks with shell texturing and even nominally on objects like ferns and flowers

i draw the block's faces again using the stencil buffer, then draw the breaking decal with depth read/write off, masking using the stencil buffer

the way it works for ferns/flowers is i just draw all faces of the breaking pattern block, and any pixels outside the object model are masked

#EniBlockGame #GameDev #IndieDev #ProcGen #PixelArt

major milestone in block game development: the first actual gameplay! you can go around and hold the left mouse button on blocks in order to break em :D

#EniBlockGame #GameDev #IndieDev #ProcGen #PixelArt

just discovered that the shell textures on leaf blocks do a really cute thing when they surround another block :3

#EniBlockGame #GameDev #IndieDev

changed the way block breaking work. 3d cursor now changes to encompass the whole block and the breaking decal is shown on all faces

i'll probably change the cursor to full block vs face (or no cursor at all) depending on what your currently held item is later but for now this works

#EniBlockGame #GameDev #IndieDev

not 100% sure what to do about hidden corners. should they show through other geometry with xray vision or just not be drawn?

#EniBlockGame

show hidden corners with xray vision
19.3%
don't show hidden corners
30.1%
make an option, but show by default
21%
make an option, but don't show by default
29.5%
Poll ended at .

time to turn in for the night but i managed to get some item icon rendering going

#EniBlockGame #GameDev #IndieDev

current status: agonizing about what to do for font rendering. do i wanna do truetype fonts, or use pixel art fonts

does my old truetype font implementation even still work at all?

edit: nope my truetype implementation is gone so if i wanna go with something i already have i guess it's pixel fonts

edit2: ok i can feel the life draining out of me just researching font systems so for now i'll just go with what i have and works: pixel fonts

#EniBlockGame

decided to go with a very 16-bit feeling aesthetic for block game's GUI. took a while to set up the shader for the background color gradient but it's totally worth it with the dither and crunchy pixels. and it can go diagonal, horizontal, or vertical!

oh and yes, you can customize the gradient colors :3

#EniBlockGame #GameDev #IndieDev #PixelArt

Oh did I mention the GUI image atlas is loaded via json so, aside from the background gradient which is a shader, I guess that means the GUI is skinnable?

took all dang day but i have my custom font ready now. it's a tweak of the font i made for MidBoss to make it look a bit more like a system font, so i'm calling it sysboss

comes in regular and bold

#EniBlockGame #GameDev #IndieDev #PixelArt

Reminder: if you have questions about block game you may want to check the site at https://enikofox.com/blockgame because I probably answered your question in the FAQ on there
Block Game | Ultima/TES meets Minecraft

Ultima/Elder Scrolls meets Minecraft voxel sandbox game with building and crafting.

implemented auto GUI scaling, in a way where i can easily mix low res pixel and high resolution image elements

pictured are 640x360 and 960x540 (resized with nearest neighbor to 1080p in post) as well as 1080p

the GUI will be designed to scale cleanly with crisp pixels into 720/1080p and beyond (4k/8k)

#EniBlockGame #GameDev #IndieDev

@eniko I’m sorry for the probably very remedial question on a very old post, but how does the scaling… work? I could imagine designing for a low base resolution and then rendering to a target resolution chosen to maintain aspect ratio and be an integer multiple of the base to minimize blurriness? Is that the thing?