Coder Social home page Coder Social logo

Comments (3)

unframework avatar unframework commented on August 16, 2024

Hi Oliver, this function computes the multiplier for each pixel of the light probe half-cube (well, of each side of the half-cube). The pixels near corners/edges of the cube are weighted less than center pixels in the resulting average. In other words, this is mapping cube pixels onto a sphere before combining them into a final sum. Actual mathematics here are very much approximated, I actually did not test this for physical precision or anything - the aim of the whole project is to be a quick convincing hack instead of a full mathematically correct solution. Hope this helps!

from react-three-lightmap.

OliverXH avatar OliverXH commented on August 16, 2024

@unframework
Thank you for your answer
I drew the following figure based on the source code and your answer, which is very useful for me to understand how it works:
img

This also makes me understand the following program:

const area = probePixelAreaLookup[py * probeTargetSize + px];

r += area * probeData[i];
g += area * probeData[i + 1];
b += area * probeData[i + 2];

from react-three-lightmap.

unframework avatar unframework commented on August 16, 2024

Yep that describes it nicely, thanks for the diagram!

from react-three-lightmap.

Related Issues (6)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.