Came up with a cursed workaround to avoid light leaking when baking lightmaps in #b3d, but it multiplies render time by 2x 😩
Hillsguy
@hillsguy.bsky.social
hi hemlo i struggle with developing videogames my games: https://samael-kethill.itch.io
Released my proof of concept BC1 encoder for channel packed textures on github! I hope that bc7enc and icbc developers will consider paying more attention to channel packed textures in the future. 🙂
GitHub - rmn20/dxt_cpt: BC1 encoder for channel packed textures
BC1 encoder for channel packed textures. Contribute to rmn20/dxt_cpt development by creating an account on GitHub.
github.com
Downloaded 763 1k ARM textures from polyhaven and tested b7enc and my encoder (with 4x4 principal axis) using SSIM, RMSE and LPIPS I used L5 bc7enc mode as L18 is too slow and L5 seems to be closer to my encoder under the hood So my encoder seems to score better only on LPIPS...
Found another heuristic for improving visual quality of BC1 textures with channel packing. The idea is to calculate principal axis using pixels from the adjacent blocks. This essentially blurs hue and can reduce detail of channels parallel to PA, but this also reduces artifacts on block boundaries.
Experimenting with S3TC/BC1/DXT1 compression. The idea is to intentionally leak channel data into each other to reduce blockiness and get at least some data instead of averaged out 4x4 blocks.
raytraced reference vs normal map + bent normals and ao for self-shadowing + separate bent normals and ao texture for light bounce 🤔
Came up with a cursed workaround for baking bent normals purely in Blender 3D using the raycast shader node. Bent normals are usually used for self-shadowing and reflection occlusion. 1. Regular normal map 2. Normal map + raytraced shadows 3. Normal map + bent normal map #b3d
Found a nice way to visualize and debug directional lighting data Again, raytraced reference vs per-channel RGB AHD lightmap
Ray-traced reference vs spherical harmonics (L0+L1) 1024x lightmap vs per-channel AHD (dominant direction) irradz 1024x lightmap I can barely see any difference...
Trying to approximate flashlight in M3G (~OpenGL ES 1.1) 1. Disable all scene lights, enable omni light at player position 2. Render the scene 3. Render flat 2D flashlight mask 4. Disable flashlight omni light, enable other scene lights 5. Render the scene again using additive blending 6. Voila?
Spent my whole January working on a new MascotCapsule v3 implementation in pure MIDP 2.0 Now you can run games previously exclusive to Sony Ericsson phones on any powerful enough J2ME cellphone or easily add MCv3 support to your J2ME emulator without worrying about OpenGL/ES support
So, it turns out, to achieve good looking caustics in Blender with Cycles you need to disable "filter gloss" option and NOT use "cast/receive shadow caustics" options
Silent Hill 4 uses interesting volumetric light / light glare approximation. Instead of drawing sprites at each light source, full-screen subdivided plane with procedural vertex colors is rendered and blended with game frame. #gamedev
Does anyone know how Climax Studios implemented shadow maps on PS2 and PSP in Silent Hill: Origins and Shattered Memories?
Got bizarre dream bazaar to work with portmaster Not quite butter smooth, but it works
Was wondering why vertex lighting looks ugly in linear RGB compared to sRGB Turns out it's due to interpolation in linear color space. Interpolating sqrt(col) fixes the issue I also tried sqrt(1/col) but it looks wrong on smooth normals I wonder if this can be applied to lightmaps too