feat(rendering): add DLSS support #366
Draft
yuecideng wants to merge 22 commits into
Draft
Conversation
Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Claude <noreply@anthropic.com>
Add optional fields for sun, direction, spot, rect, and mesh light types. Change default intensity to 30.0 and default radius to 10.0. All new fields have defaults — existing point-light code works unchanged. Co-Authored-By: Claude <noreply@anthropic.com>
Add set_direction, set_spot_angle, set_rect_wh, set_mesh, and enable_shadow methods with runtime type validation. Update reset() to apply only properties relevant to the light type. Guard set_local_pose for direction-type lights (no position). Co-Authored-By: Claude <noreply@anthropic.com>
Adds a length-1 broadcast branch so that (1,) tensors for inner/outer spot angles and width/height are applied to all targeted env_ids. Co-Authored-By: Claude <noreply@anthropic.com>
Add _LIGHT_TYPE_MAP mapping string type names to dexsim LightType enum. Add validation warnings for mesh (no path) and rect (zero dimensions). Unknown light types now log the list of supported types. Co-Authored-By: Claude <noreply@anthropic.com>
Cover creation, type validation, broadcasting, from_dict, and backward compatibility for point lights. Also fix logger.warning() -> logger.log_warning() in sim_manager.py and light.py (logger.warning() did not exist). Co-Authored-By: Claude <noreply@anthropic.com>
logger.log_error raises RuntimeError, not ValueError. Co-Authored-By: Claude <noreply@anthropic.com>
…ce/EmbodiChain into feat/light-type-expansion
Add DlssCfg @configclass with full DLSS 3.5 parameter set (Ray Reconstruction, Super Resolution, quality presets, resolution scaling, exposure compensation). Wire DLSS config into SimulationManager._convert_sim_config with validation warnings for incompatible configurations and automatic window-to-target resolution alignment. References: dexsim developer_docs/dlss/README_DLSS.md Co-Authored-By: Claude <noreply@anthropic.com>
- Change DLSSCfg.dlss_enabled default from True to False - Change RenderCfg.dlss default from None to field(default_factory=DLSSCfg) - Simplify SimulationManager._convert_sim_config to read dlss directly Co-Authored-By: Claude <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR adds NVIDIA DLSS 3.5 (Ray Reconstruction + Super Resolution) support to EmbodiChain's simulation rendering layer.
Changes
DlssCfg@configclassinembodichain/lab/sim/cfg.pywith all 9 DLSS fields matching the dexsim C++DLSSConfigstruct:dlss_enabled,rayreconstruction_enabled,upscale_enabled,dlss_quality,render_width,render_height,target_width,target_height,exposure_compensationRenderCfg.dlss— new optional fielddlss: DlssCfg | None = NoneSimulationManager._convert_sim_config— wires DLSS config toworld_config.dlss_configwith validation warnings for incompatible configurations (non-OfflineRT renderer, headless mode) and automatic window-to-target resolution alignmentReferences
dexsim/developer_docs/dlss/README_DLSS.mddexsim/examples/python/hello_world_dlss.pyType of change
Checklist
black .command to format the code base.