Tags: axmolengine/axmol
Tags
Fix touch event button mapping on PC and compile shaders with explici… …t size
Update D3D11 sampler binding to use axslcc-compiled slots - Bump axslcc dependency to 3.99.1 - Remove runtime sampler slot compaction in D3D11 RenderContext; compaction is now done at compile time by axslcc 3.99.1 - Use samplerInfo.binding directly instead of local compactSlot counter - Add D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT bounds checking - Update axslc-spec.h comments: binding is backend-visible slot, preset_index is stable logical id independent of remapping - Update hlsl-spec.md to document that physical sampler registers are assigned by axslcc, not hardcoded
Allow PR authors to trigger /clang-format comment command
Add OpenXR-backed VR scene composition and XR controller input (#3220) - Added optional OpenXR support behind `AX_ENABLE_OPENXR`, gated by `AX_ENABLE_VR` and disabled by default. - Added the Khronos OpenXR-SDK dependency (`release-1.1.60`) to the 1kiss dependency profile and third-party CMake integration. - Introduced `OpenXRDriver`, a long-lived runtime backend that owns OpenXR instance, system, session, local space, stereo swapchains, frame timing, action sets, interaction profiles, and controller state. - Added `VRSceneCompositor`, the product VR rendering path backed by OpenXR. It polls XR frame/input state before scheduler update, renders each eye into the runtime swapchain, draws controller rays, submits projection layers, and falls back to normal rendering when the XR session is unavailable. - Replaced the old `SceneRenderer` abstraction with `SceneCompositor`, now owned by `RenderViewCore`. Custom scene composition is installed with `RenderViewCore::setSceneCompositor()`. - Replaced `VRGenericRenderer` with `VRPreviewSceneCompositor` for non-runtime stereo preview and debugging. The preview path keeps side-by-side rendering, distortion meshes, head tracking, render scale, vignette, and VR scissor remapping. - Added XR input events through `XRInputEvent` and `XRInputEventListener`, covering controller buttons, thumbstick axes, aim poses, grip poses, hand, phase, value, and interaction profile data. - Extended pointer input with `PointerType::Controller`, optional 3D rays, previous rays, and `PointerHitResult`, allowing XR controller rays to drive existing pointer-based UI and scene interactions. - Added VR pointer dispatch helpers to `InputSystem`, including controller pointer down/move/up/scroll and XR input event dispatch. - Updated `EventDispatcher` to route XR input listeners and store pointer hit results during scene-graph hit testing and pointer capture dispatch. - Made `Node::onPointerHitTest()` public and ray-aware, so custom 2D/3D nodes can participate in controller-ray picking. - Updated `Widget`, `ScrollView`, GUI scroll views, menus, and terrain picking to support controller rays, hit results, clipping, scroll gestures, and captured pointer streams in VR. - Added terrain ray-hit regression coverage and updated cpp-tests to use pointer hit results instead of manually reconstructing terrain rays. - Added asymmetric perspective projection support with `Mat4::createPerspectiveOffCenter()`, used for per-eye OpenXR frusta. - Generalized `RenderTexturePass` so it can target an RHI `RenderTarget` directly, disable camera override for advanced compositors, and use stable begin/clear/end ordering. - Added renderer/RHI support for external runtime-owned textures via `ExternalTextureDesc` and `DriverBase::createTextureFromNativeHandle()`. - Added `RenderContext::submitCurrentFrameCommands()` and `Renderer::submitCurrentFrameCommands()` so external runtimes can receive completed rendering work before swapchain release. - Added backend support needed by OpenXR swapchains across D3D11, D3D12, Vulkan, OpenGL ES, and shared RHI texture wrapping paths. - Added a `VulkanInterop` abstraction layer. `OpenXRVulkanInterop` implements the interface and is registered via `Application::registerVulkanInterop()`. `GraphicsCore` queries runtime-required Vulkan instance/device extensions and the runtime-selected physical device through this interface, keeping the core RHI free of OpenXR dependencies. - Added backend-specific OpenXR graphics bindings for D3D11, D3D12, Vulkan
Fix RenderTexturePass flip flag and VideoPlayer control buttons draw
PreviousNext