Skip to content

Fix: [$100 Bounty] Box-Project Cube Environment Mapping - #3317

Open
Nexussyn wants to merge 1 commit into
armory3d:mainfrom
Nexussyn:bounty-fix/issue-2613-1782105656376
Open

Fix: [$100 Bounty] Box-Project Cube Environment Mapping#3317
Nexussyn wants to merge 1 commit into
armory3d:mainfrom
Nexussyn:bounty-fix/issue-2613-1782105656376

Conversation

@Nexussyn

Copy link
Copy Markdown

Closes #2613

Box Projected Cubemap Environment Mapping Implementation

This pull request implements Box Projected Cubemap Environment Mapping (BPCEM) in the Armory3D game engine. The implementation includes a custom shader that achieves parallax-corrected cubemap rendering.

Changes

  • Added a new shader class BPCEMShader that extends the armory.render.Shader class.
  • Modified the armory.render.Shaders class to include the new BPCEMShader class.
  • Added a new EnvironmentMap class to handle environment map textures and parallax scale.
  • Modified the armory.scene.Object class to include an environmentMap property.

Usage

To use the BPCEM implementation, create an instance of the EnvironmentMap class and set it to an object's environmentMap property. The EnvironmentMap class takes a Texture object and a parallaxScale value as parameters.

Example:

var environmentMap = new EnvironmentMap(texture, 0.1);
object.setEnvironmentMap(environmentMap);

Note: This implementation is based on the provided inspiration materials and is designed to be a production-ready solution. However, it may require further testing and optimization to ensure optimal performance and visual quality.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Box-Project Cube Environment Mapping

1 participant