From 6244b586bb66c9297c498f6d7cb243037ffcf454 Mon Sep 17 00:00:00 2001 From: ssdfasd <2156608475@qq.com> Date: Thu, 26 Mar 2026 16:45:24 +0800 Subject: [PATCH] refactor api documentation structure --- docs/api-skill.md | 575 +++------ docs/api/XCEngine/Audio/Audio.md | 30 + .../XCEngine/Audio/AudioConfig/AudioConfig.md | 35 + .../XCEngine/Audio/AudioMixer/AddEffect.md | 31 + .../XCEngine/Audio/AudioMixer/AudioMixer.md | 45 + .../XCEngine/Audio/AudioMixer/ClearEffects.md | 30 + .../XCEngine/Audio/AudioMixer/Constructor.md | 28 + .../XCEngine/Audio/AudioMixer/Destructor.md | 29 + .../XCEngine/Audio/AudioMixer/Get3DParams.md | 30 + .../Audio/AudioMixer/GetChannelVolume.md | 31 + .../Audio/AudioMixer/GetOutputMixer.md | 30 + .../XCEngine/Audio/AudioMixer/GetVolume.md | 30 + docs/api/XCEngine/Audio/AudioMixer/IsMute.md | 30 + .../XCEngine/Audio/AudioMixer/ProcessAudio.md | 33 + .../XCEngine/Audio/AudioMixer/RemoveEffect.md | 31 + .../XCEngine/Audio/AudioMixer/Set3DParams.md | 31 + .../Audio/AudioMixer/SetChannelVolume.md | 32 + docs/api/XCEngine/Audio/AudioMixer/SetMute.md | 31 + .../Audio/AudioMixer/SetOutputMixer.md | 31 + .../XCEngine/Audio/AudioMixer/SetVolume.md | 31 + .../XCEngine/Audio/AudioSystem/AudioSystem.md | 51 + docs/api/XCEngine/Audio/AudioSystem/Get.md | 29 + .../Audio/AudioSystem/GetAvailableDevices.md | 31 + .../XCEngine/Audio/AudioSystem/GetBackend.md | 30 + .../Audio/AudioSystem/GetCurrentDevice.md | 30 + .../Audio/AudioSystem/GetListenerPosition.md | 30 + .../Audio/AudioSystem/GetListenerRotation.md | 30 + .../Audio/AudioSystem/GetListenerVelocity.md | 30 + .../Audio/AudioSystem/GetMasterVolume.md | 30 + .../XCEngine/Audio/AudioSystem/GetStats.md | 30 + .../XCEngine/Audio/AudioSystem/Initialize.md | 31 + .../api/XCEngine/Audio/AudioSystem/IsMuted.md | 30 + .../Audio/AudioSystem/ProcessAudio.md | 33 + .../Audio/AudioSystem/RegisterSource.md | 31 + .../XCEngine/Audio/AudioSystem/SetBackend.md | 31 + .../XCEngine/Audio/AudioSystem/SetDevice.md | 31 + .../Audio/AudioSystem/SetListenerTransform.md | 32 + .../Audio/AudioSystem/SetListenerVelocity.md | 31 + .../Audio/AudioSystem/SetMasterVolume.md | 31 + .../XCEngine/Audio/AudioSystem/SetMuted.md | 31 + .../XCEngine/Audio/AudioSystem/Shutdown.md | 30 + .../Audio/AudioSystem/UnregisterSource.md | 31 + docs/api/XCEngine/Audio/AudioSystem/Update.md | 31 + .../XCEngine/Audio/AudioTypes/AudioTypes.md | 43 + .../XCEngine/Audio/Equalizer/Constructor.md | 28 + .../XCEngine/Audio/Equalizer/Destructor.md | 29 + .../api/XCEngine/Audio/Equalizer/Equalizer.md | 44 + .../XCEngine/Audio/Equalizer/GetBandCount.md | 30 + .../Audio/Equalizer/GetBandFrequency.md | 31 + .../XCEngine/Audio/Equalizer/GetBandGain.md | 31 + docs/api/XCEngine/Audio/Equalizer/GetBandQ.md | 31 + .../api/XCEngine/Audio/Equalizer/GetWetMix.md | 30 + .../api/XCEngine/Audio/Equalizer/IsEnabled.md | 30 + .../XCEngine/Audio/Equalizer/ProcessAudio.md | 33 + .../XCEngine/Audio/Equalizer/SetBandCount.md | 31 + .../Audio/Equalizer/SetBandFrequency.md | 32 + .../XCEngine/Audio/Equalizer/SetBandGain.md | 32 + docs/api/XCEngine/Audio/Equalizer/SetBandQ.md | 32 + .../XCEngine/Audio/Equalizer/SetEnabled.md | 31 + .../api/XCEngine/Audio/Equalizer/SetWetMix.md | 31 + .../XCEngine/Audio/FFTFilter/Constructor.md | 41 + .../XCEngine/Audio/FFTFilter/Destructor.md | 29 + .../api/XCEngine/Audio/FFTFilter/FFTFilter.md | 38 + .../XCEngine/Audio/FFTFilter/GetFFTSize.md | 30 + .../Audio/FFTFilter/GetSmoothingFactor.md | 30 + .../Audio/FFTFilter/GetSpectrumData.md | 30 + .../Audio/FFTFilter/GetSpectrumSize.md | 30 + .../XCEngine/Audio/FFTFilter/ProcessAudio.md | 33 + .../XCEngine/Audio/FFTFilter/SetFFTSize.md | 31 + .../Audio/FFTFilter/SetSmoothingFactor.md | 31 + docs/api/XCEngine/Audio/HRTF/Constructor.md | 28 + docs/api/XCEngine/Audio/HRTF/Destructor.md | 29 + docs/api/XCEngine/Audio/HRTF/GetCrossFeed.md | 30 + .../XCEngine/Audio/HRTF/GetQualityLevel.md | 30 + .../XCEngine/Audio/HRTF/GetSpeedOfSound.md | 30 + docs/api/XCEngine/Audio/HRTF/HRTF.md | 45 + .../Audio/HRTF/IsDopplerShiftEnabled.md | 30 + docs/api/XCEngine/Audio/HRTF/IsEnabled.md | 30 + docs/api/XCEngine/Audio/HRTF/IsHRTFEnabled.md | 30 + docs/api/XCEngine/Audio/HRTF/ProcessAudio.md | 36 + docs/api/XCEngine/Audio/HRTF/SetCrossFeed.md | 31 + .../Audio/HRTF/SetDopplerShiftEnabled.md | 31 + docs/api/XCEngine/Audio/HRTF/SetEnabled.md | 31 + .../api/XCEngine/Audio/HRTF/SetHRTFEnabled.md | 31 + .../XCEngine/Audio/HRTF/SetQualityLevel.md | 31 + .../XCEngine/Audio/HRTF/SetSpeedOfSound.md | 31 + .../Audio/IAudioBackend/Destructor.md | 29 + .../IAudioBackend/GetAvailableDevices.md | 31 + .../XCEngine/Audio/IAudioBackend/GetConfig.md | 30 + .../Audio/IAudioBackend/GetDeviceName.md | 30 + .../Audio/IAudioBackend/GetMasterVolume.md | 30 + .../Audio/IAudioBackend/IAudioBackend.md | 46 + .../Audio/IAudioBackend/Initialize.md | 31 + .../XCEngine/Audio/IAudioBackend/IsMuted.md | 30 + .../XCEngine/Audio/IAudioBackend/IsRunning.md | 30 + .../Audio/IAudioBackend/ProcessAudio.md | 34 + .../XCEngine/Audio/IAudioBackend/Resume.md | 30 + .../XCEngine/Audio/IAudioBackend/SetDevice.md | 31 + .../Audio/IAudioBackend/SetMasterVolume.md | 31 + .../XCEngine/Audio/IAudioBackend/SetMuted.md | 31 + .../XCEngine/Audio/IAudioBackend/Shutdown.md | 30 + .../api/XCEngine/Audio/IAudioBackend/Start.md | 30 + docs/api/XCEngine/Audio/IAudioBackend/Stop.md | 30 + .../XCEngine/Audio/IAudioBackend/Suspend.md | 30 + .../XCEngine/Audio/IAudioEffect/Destructor.md | 29 + .../XCEngine/Audio/IAudioEffect/GetWetMix.md | 30 + .../Audio/IAudioEffect/IAudioEffect.md | 35 + .../XCEngine/Audio/IAudioEffect/IsEnabled.md | 30 + .../Audio/IAudioEffect/ProcessAudio.md | 33 + .../XCEngine/Audio/IAudioEffect/SetEnabled.md | 31 + .../XCEngine/Audio/IAudioEffect/SetWetMix.md | 31 + .../XCEngine/Audio/Reverbation/Constructor.md | 28 + .../XCEngine/Audio/Reverbation/Destructor.md | 29 + .../XCEngine/Audio/Reverbation/GetDamping.md | 30 + .../XCEngine/Audio/Reverbation/GetDryMix.md | 30 + .../XCEngine/Audio/Reverbation/GetRoomSize.md | 30 + .../XCEngine/Audio/Reverbation/GetWetMix.md | 30 + .../XCEngine/Audio/Reverbation/GetWidth.md | 30 + .../XCEngine/Audio/Reverbation/IsFreeze.md | 30 + .../Audio/Reverbation/ProcessAudio.md | 33 + .../XCEngine/Audio/Reverbation/Reverbation.md | 44 + .../XCEngine/Audio/Reverbation/SetDamping.md | 31 + .../XCEngine/Audio/Reverbation/SetDryMix.md | 31 + .../XCEngine/Audio/Reverbation/SetFreeze.md | 31 + .../XCEngine/Audio/Reverbation/SetRoomSize.md | 31 + .../XCEngine/Audio/Reverbation/SetWetMix.md | 31 + .../XCEngine/Audio/Reverbation/SetWidth.md | 31 + .../Audio/WindowsAudioBackend/Constructor.md | 28 + .../Audio/WindowsAudioBackend/Destructor.md | 29 + .../GetAvailableDevices.md | 31 + .../Audio/WindowsAudioBackend/GetConfig.md | 30 + .../WindowsAudioBackend/GetDeviceName.md | 30 + .../WindowsAudioBackend/GetMasterVolume.md | 30 + .../Audio/WindowsAudioBackend/Initialize.md | 31 + .../Audio/WindowsAudioBackend/IsMuted.md | 30 + .../Audio/WindowsAudioBackend/IsRunning.md | 30 + .../Audio/WindowsAudioBackend/ProcessAudio.md | 34 + .../Audio/WindowsAudioBackend/Resume.md | 30 + .../Audio/WindowsAudioBackend/SetDevice.md | 31 + .../WindowsAudioBackend/SetMasterVolume.md | 31 + .../Audio/WindowsAudioBackend/SetMuted.md | 31 + .../Audio/WindowsAudioBackend/Shutdown.md | 30 + .../Audio/WindowsAudioBackend/Start.md | 30 + .../Audio/WindowsAudioBackend/Stop.md | 30 + .../Audio/WindowsAudioBackend/Suspend.md | 30 + .../WindowsAudioBackend.md | 47 + .../AudioListenerComponent.md | 48 + .../AudioListenerComponent/Constructor.md | 28 + .../AudioListenerComponent/Destructor.md | 29 + .../AudioListenerComponent/GetDopplerLevel.md | 30 + .../AudioListenerComponent/GetEnergy.md | 30 + .../GetFrequencyData.md | 30 + .../GetFrequencyDataSize.md | 30 + .../AudioListenerComponent/GetMasterVolume.md | 30 + .../AudioListenerComponent/GetName.md | 30 + .../AudioListenerComponent/GetReverb.md | 30 + .../AudioListenerComponent/GetReverbLevel.md | 30 + .../AudioListenerComponent/GetSpeedOfSound.md | 30 + .../AudioListenerComponent/IsMute.md | 30 + .../AudioListenerComponent/SetDopplerLevel.md | 31 + .../AudioListenerComponent/SetMasterVolume.md | 31 + .../AudioListenerComponent/SetMute.md | 31 + .../AudioListenerComponent/SetReverb.md | 31 + .../AudioListenerComponent/SetReverbLevel.md | 31 + .../AudioListenerComponent/SetSpeedOfSound.md | 31 + .../AudioListenerComponent/Update.md | 31 + .../AudioSourceComponent.md | 71 ++ .../AudioSourceComponent/Constructor.md | 28 + .../AudioSourceComponent/Destructor.md | 29 + .../AudioSourceComponent/Get3DParams.md | 30 + .../AudioSourceComponent/GetClip.md | 30 + .../AudioSourceComponent/GetDopplerLevel.md | 30 + .../AudioSourceComponent/GetDuration.md | 30 + .../AudioSourceComponent/GetEnergy.md | 30 + .../AudioSourceComponent/GetName.md | 30 + .../AudioSourceComponent/GetOutputMixer.md | 30 + .../Components/AudioSourceComponent/GetPan.md | 30 + .../AudioSourceComponent/GetPitch.md | 30 + .../AudioSourceComponent/GetReverbZoneMix.md | 30 + .../AudioSourceComponent/GetSpread.md | 30 + .../AudioSourceComponent/GetTime.md | 30 + .../AudioSourceComponent/GetVolume.md | 30 + .../AudioSourceComponent/IsEnergyDetecting.md | 30 + .../AudioSourceComponent/IsLooping.md | 30 + .../AudioSourceComponent/IsPaused.md | 30 + .../AudioSourceComponent/IsPlaying.md | 30 + .../AudioSourceComponent/IsSpatialize.md | 30 + .../AudioSourceComponent/OnDestroy.md | 30 + .../AudioSourceComponent/OnDisable.md | 30 + .../AudioSourceComponent/OnEnable.md | 30 + .../Components/AudioSourceComponent/Pause.md | 30 + .../Components/AudioSourceComponent/Play.md | 30 + .../AudioSourceComponent/ProcessAudio.md | 35 + .../AudioSourceComponent/Set3DParams.md | 31 + .../AudioSourceComponent/SetClip.md | 31 + .../AudioSourceComponent/SetDopplerLevel.md | 31 + .../AudioSourceComponent/SetLooping.md | 31 + .../AudioSourceComponent/SetOutputMixer.md | 31 + .../Components/AudioSourceComponent/SetPan.md | 31 + .../AudioSourceComponent/SetPitch.md | 31 + .../AudioSourceComponent/SetReverbZoneMix.md | 31 + .../AudioSourceComponent/SetSpatialize.md | 31 + .../AudioSourceComponent/SetSpread.md | 31 + .../AudioSourceComponent/SetTime.md | 31 + .../AudioSourceComponent/SetVolume.md | 31 + .../AudioSourceComponent/StartEnergyDetect.md | 30 + .../Components/AudioSourceComponent/Stop.md | 31 + .../AudioSourceComponent/StopEnergyDetect.md | 30 + .../Components/AudioSourceComponent/Update.md | 31 + .../CameraComponent/CameraComponent.md | 49 + .../Components/CameraComponent/Deserialize.md | 31 + .../CameraComponent/GetClearColor.md | 30 + .../Components/CameraComponent/GetDepth.md | 30 + .../CameraComponent/GetFarClipPlane.md | 30 + .../CameraComponent/GetFieldOfView.md | 30 + .../Components/CameraComponent/GetName.md | 30 + .../CameraComponent/GetNearClipPlane.md | 30 + .../CameraComponent/GetOrthographicSize.md | 30 + .../CameraComponent/GetProjectionType.md | 30 + .../Components/CameraComponent/IsPrimary.md | 30 + .../Components/CameraComponent/Serialize.md | 31 + .../CameraComponent/SetClearColor.md | 31 + .../Components/CameraComponent/SetDepth.md | 31 + .../CameraComponent/SetFarClipPlane.md | 31 + .../CameraComponent/SetFieldOfView.md | 31 + .../CameraComponent/SetNearClipPlane.md | 31 + .../CameraComponent/SetOrthographicSize.md | 31 + .../Components/CameraComponent/SetPrimary.md | 31 + .../CameraComponent/SetProjectionType.md | 31 + .../XCEngine/Components/Component/Awake.md | 30 + .../Components/Component/Component.md | 46 + .../Components/Component/Deserialize.md | 31 + .../Components/Component/Destructor.md | 29 + .../Components/Component/FixedUpdate.md | 30 + .../Components/Component/GetGameObject.md | 30 + .../XCEngine/Components/Component/GetName.md | 30 + .../XCEngine/Components/Component/GetScene.md | 30 + .../Components/Component/IsEnabled.md | 30 + .../Components/Component/LateUpdate.md | 31 + .../Components/Component/OnDestroy.md | 30 + .../Components/Component/OnDisable.md | 30 + .../XCEngine/Components/Component/OnEnable.md | 30 + .../Components/Component/Serialize.md | 31 + .../Components/Component/SetEnabled.md | 31 + .../XCEngine/Components/Component/Start.md | 30 + .../XCEngine/Components/Component/Update.md | 31 + .../Components/Component/transform.md | 30 + .../ComponentFactoryRegistry.md | 34 + .../CreateComponent.md | 32 + .../ComponentFactoryRegistry/Get.md | 29 + .../GetRegisteredTypes.md | 30 + .../ComponentFactoryRegistry/IsRegistered.md | 31 + .../RegisterFactory.md | 32 + docs/api/XCEngine/Components/Components.md | 27 + .../Components/GameObject/AddComponent.md | 31 + .../XCEngine/Components/GameObject/Awake.md | 30 + .../Components/GameObject/Constructor.md | 41 + .../Components/GameObject/Deserialize.md | 31 + .../XCEngine/Components/GameObject/Destroy.md | 30 + .../Components/GameObject/Destructor.md | 29 + .../Components/GameObject/DetachChildren.md | 30 + .../Components/GameObject/DetachFromParent.md | 30 + .../XCEngine/Components/GameObject/Find.md | 31 + .../GameObject/FindGameObjectsWithTag.md | 31 + .../GameObject/FindObjectsOfType.md | 30 + .../Components/GameObject/FixedUpdate.md | 30 + .../Components/GameObject/GameObject.md | 66 + .../Components/GameObject/GetChild.md | 31 + .../Components/GameObject/GetChildCount.md | 30 + .../Components/GameObject/GetChildren.md | 30 + .../Components/GameObject/GetComponent.md | 42 + .../GameObject/GetComponentInChildren.md | 30 + .../GameObject/GetComponentInParent.md | 30 + .../Components/GameObject/GetComponents.md | 42 + .../GameObject/GetComponentsInChildren.md | 30 + .../XCEngine/Components/GameObject/GetID.md | 30 + .../XCEngine/Components/GameObject/GetName.md | 30 + .../Components/GameObject/GetParent.md | 30 + .../Components/GameObject/GetScene.md | 30 + .../Components/GameObject/GetTransform.md | 42 + .../XCEngine/Components/GameObject/GetUUID.md | 30 + .../Components/GameObject/IsActive.md | 30 + .../GameObject/IsActiveInHierarchy.md | 30 + .../Components/GameObject/LateUpdate.md | 31 + .../Components/GameObject/OnDestroy.md | 30 + .../Components/GameObject/RemoveComponent.md | 43 + .../Components/GameObject/Serialize.md | 31 + .../Components/GameObject/SetActive.md | 31 + .../XCEngine/Components/GameObject/SetName.md | 31 + .../Components/GameObject/SetParent.md | 45 + .../XCEngine/Components/GameObject/Start.md | 30 + .../XCEngine/Components/GameObject/Update.md | 31 + .../Components/LightComponent/Deserialize.md | 31 + .../LightComponent/GetCastsShadows.md | 30 + .../Components/LightComponent/GetColor.md | 30 + .../Components/LightComponent/GetIntensity.md | 30 + .../Components/LightComponent/GetLightType.md | 30 + .../Components/LightComponent/GetName.md | 30 + .../Components/LightComponent/GetRange.md | 30 + .../Components/LightComponent/GetSpotAngle.md | 30 + .../LightComponent/LightComponent.md | 45 + .../Components/LightComponent/Serialize.md | 31 + .../LightComponent/SetCastsShadows.md | 31 + .../Components/LightComponent/SetColor.md | 31 + .../Components/LightComponent/SetIntensity.md | 31 + .../Components/LightComponent/SetLightType.md | 31 + .../Components/LightComponent/SetRange.md | 31 + .../Components/LightComponent/SetSpotAngle.md | 31 + .../TransformComponent/Constructor.md | 28 + .../TransformComponent/Deserialize.md | 31 + .../TransformComponent/Destructor.md | 29 + .../TransformComponent/DetachChildren.md | 30 + .../Components/TransformComponent/Find.md | 31 + .../Components/TransformComponent/GetChild.md | 31 + .../TransformComponent/GetChildCount.md | 30 + .../TransformComponent/GetForward.md | 30 + .../TransformComponent/GetLocalEulerAngles.md | 30 + .../TransformComponent/GetLocalPosition.md | 30 + .../TransformComponent/GetLocalRotation.md | 30 + .../TransformComponent/GetLocalScale.md | 30 + .../GetLocalToWorldMatrix.md | 30 + .../Components/TransformComponent/GetName.md | 30 + .../TransformComponent/GetParent.md | 30 + .../TransformComponent/GetPosition.md | 30 + .../Components/TransformComponent/GetRight.md | 30 + .../TransformComponent/GetRotation.md | 30 + .../Components/TransformComponent/GetScale.md | 30 + .../TransformComponent/GetSiblingIndex.md | 30 + .../Components/TransformComponent/GetUp.md | 30 + .../GetWorldToLocalMatrix.md | 30 + .../InverseTransformDirection.md | 31 + .../InverseTransformPoint.md | 31 + .../Components/TransformComponent/LookAt.md | 45 + .../NotifyHierarchyChanged.md | 30 + .../Components/TransformComponent/Rotate.md | 47 + .../TransformComponent/Serialize.md | 31 + .../TransformComponent/SetAsFirstSibling.md | 30 + .../TransformComponent/SetAsLastSibling.md | 30 + .../Components/TransformComponent/SetDirty.md | 30 + .../TransformComponent/SetLocalEulerAngles.md | 31 + .../TransformComponent/SetLocalPosition.md | 31 + .../TransformComponent/SetLocalRotation.md | 31 + .../TransformComponent/SetLocalScale.md | 31 + .../TransformComponent/SetParent.md | 32 + .../TransformComponent/SetPosition.md | 31 + .../TransformComponent/SetRotation.md | 31 + .../Components/TransformComponent/SetScale.md | 31 + .../TransformComponent/SetSiblingIndex.md | 31 + .../TransformComponent/TransformComponent.md | 74 ++ .../TransformComponent/TransformDirection.md | 31 + .../TransformComponent/TransformPoint.md | 31 + .../TransformComponent/Translate.md | 32 + .../UpdateWorldTransform.md | 30 + docs/api/XCEngine/Core/Asset/Asset.md | 27 + .../Core/Asset/AsyncLoader/AsyncLoader.md | 42 + .../XCEngine/Core/Asset/AsyncLoader/Cancel.md | 31 + .../Core/Asset/AsyncLoader/CancelAll.md | 30 + .../Core/Asset/AsyncLoader/Constructor.md | 28 + .../Core/Asset/AsyncLoader/Destructor.md | 29 + .../XCEngine/Core/Asset/AsyncLoader/Get.md | 29 + .../Core/Asset/AsyncLoader/GetPendingCount.md | 30 + .../Core/Asset/AsyncLoader/GetProgress.md | 30 + .../Core/Asset/AsyncLoader/Initialize.md | 31 + .../Core/Asset/AsyncLoader/IsLoading.md | 30 + .../Core/Asset/AsyncLoader/Shutdown.md | 30 + .../XCEngine/Core/Asset/AsyncLoader/Submit.md | 49 + .../XCEngine/Core/Asset/AsyncLoader/Update.md | 30 + .../Core/Asset/IResource/Destructor.md | 29 + .../XCEngine/Core/Asset/IResource/GetGUID.md | 30 + .../Core/Asset/IResource/GetMemorySize.md | 30 + .../XCEngine/Core/Asset/IResource/GetName.md | 30 + .../XCEngine/Core/Asset/IResource/GetPath.md | 30 + .../XCEngine/Core/Asset/IResource/GetType.md | 30 + .../Core/Asset/IResource/IResource.md | 39 + .../Core/Asset/IResource/Initialize.md | 31 + .../XCEngine/Core/Asset/IResource/IsValid.md | 30 + .../XCEngine/Core/Asset/IResource/Release.md | 30 + .../Core/Asset/IResource/SetInvalid.md | 30 + .../Core/Asset/ImportSettings/Clone.md | 30 + .../Core/Asset/ImportSettings/Destructor.md | 29 + .../Asset/ImportSettings/ImportSettings.md | 33 + .../Core/Asset/ImportSettings/LoadFromJSON.md | 31 + .../Core/Asset/ImportSettings/SaveToJSON.md | 30 + .../XCEngine/Core/Asset/ResourceCache/Add.md | 32 + .../Core/Asset/ResourceCache/Clear.md | 30 + .../Core/Asset/ResourceCache/Constructor.md | 28 + .../Core/Asset/ResourceCache/Destructor.md | 29 + .../XCEngine/Core/Asset/ResourceCache/Find.md | 31 + .../Core/Asset/ResourceCache/Flush.md | 30 + .../Core/Asset/ResourceCache/GetLRUList.md | 31 + .../Asset/ResourceCache/GetMemoryBudget.md | 30 + .../Asset/ResourceCache/GetMemoryUsage.md | 30 + .../Core/Asset/ResourceCache/GetSize.md | 30 + .../Asset/ResourceCache/OnMemoryPressure.md | 31 + .../Asset/ResourceCache/OnZeroRefCount.md | 31 + .../Core/Asset/ResourceCache/Remove.md | 31 + .../Core/Asset/ResourceCache/ResourceCache.md | 45 + .../Asset/ResourceCache/SetMemoryBudget.md | 31 + .../Core/Asset/ResourceCache/Touch.md | 31 + .../ResourceDependencyGraph/AddDependency.md | 32 + .../Asset/ResourceDependencyGraph/AddNode.md | 32 + .../Asset/ResourceDependencyGraph/Clear.md | 30 + .../ResourceDependencyGraph/Constructor.md | 28 + .../DecrementRefCount.md | 31 + .../ResourceDependencyGraph/Destructor.md | 29 + .../GetAllDependencies.md | 31 + .../GetDependencies.md | 31 + .../ResourceDependencyGraph/GetDependents.md | 31 + .../ResourceDependencyGraph/GetRefCount.md | 31 + .../HasCircularDependency.md | 32 + .../Asset/ResourceDependencyGraph/HasNode.md | 31 + .../IncrementRefCount.md | 31 + .../RemoveDependency.md | 32 + .../ResourceDependencyGraph/RemoveNode.md | 31 + .../ResourceDependencyGraph.md | 47 + .../TopologicalSort.md | 30 + .../Asset/ResourceDependencyGraph/Unload.md | 31 + .../Core/Asset/ResourceHandle/Constructor.md | 63 + .../Core/Asset/ResourceHandle/Destructor.md | 29 + .../XCEngine/Core/Asset/ResourceHandle/Get.md | 29 + .../Core/Asset/ResourceHandle/GetGUID.md | 30 + .../Asset/ResourceHandle/GetResourceType.md | 30 + .../Core/Asset/ResourceHandle/IsValid.md | 30 + .../Asset/ResourceHandle/OperatorArrow.md | 30 + .../Asset/ResourceHandle/OperatorAssign.md | 44 + .../Asset/ResourceHandle/OperatorMultiply.md | 30 + .../Core/Asset/ResourceHandle/Reset.md | 30 + .../Asset/ResourceHandle/ResourceHandle.md | 41 + .../Core/Asset/ResourceHandle/Swap.md | 31 + .../Core/Asset/ResourceHandle/bool.md | 30 + .../Core/Asset/ResourceManager/AddRef.md | 31 + .../Core/Asset/ResourceManager/Exists.md | 44 + .../Core/Asset/ResourceManager/Find.md | 44 + .../Core/Asset/ResourceManager/FlushCache.md | 30 + .../Core/Asset/ResourceManager/Get.md | 29 + .../Core/Asset/ResourceManager/GetLoader.md | 31 + .../Asset/ResourceManager/GetMemoryBudget.md | 30 + .../Asset/ResourceManager/GetMemoryUsage.md | 30 + .../Core/Asset/ResourceManager/GetRefCount.md | 31 + .../Asset/ResourceManager/GetResourcePaths.md | 30 + .../Asset/ResourceManager/GetResourceRoot.md | 30 + .../Core/Asset/ResourceManager/Initialize.md | 30 + .../Core/Asset/ResourceManager/Load.md | 32 + .../Core/Asset/ResourceManager/LoadAsync.md | 49 + .../Core/Asset/ResourceManager/LoadGroup.md | 32 + .../Asset/ResourceManager/RegisterLoader.md | 31 + .../Core/Asset/ResourceManager/Release.md | 31 + .../Core/Asset/ResourceManager/ResolvePath.md | 31 + .../Asset/ResourceManager/ResourceManager.md | 55 + .../Asset/ResourceManager/SetMemoryBudget.md | 31 + .../Asset/ResourceManager/SetResourceRoot.md | 31 + .../Core/Asset/ResourceManager/Shutdown.md | 30 + .../Core/Asset/ResourceManager/Unload.md | 44 + .../Core/Asset/ResourceManager/UnloadAll.md | 30 + .../Core/Asset/ResourceManager/UnloadGroup.md | 31 + .../Asset/ResourceManager/UnloadUnused.md | 30 + .../Asset/ResourceManager/UnregisterLoader.md | 31 + .../Core/Asset/ResourceTypes/ResourceTypes.md | 53 + .../XCEngine/Core/Containers/Array/Array.md | 48 + .../XCEngine/Core/Containers/Array/Back.md | 42 + .../Core/Containers/Array/Capacity.md | 30 + .../XCEngine/Core/Containers/Array/Clear.md | 30 + .../Core/Containers/Array/Constructor.md | 86 ++ .../XCEngine/Core/Containers/Array/Data.md | 42 + .../Core/Containers/Array/Destructor.md | 29 + .../Core/Containers/Array/EmplaceBack.md | 31 + .../XCEngine/Core/Containers/Array/Empty.md | 30 + .../XCEngine/Core/Containers/Array/Front.md | 42 + .../Core/Containers/Array/OperatorAssign.md | 44 + .../Containers/Array/OperatorSubscript.md | 44 + .../XCEngine/Core/Containers/Array/PopBack.md | 30 + .../Core/Containers/Array/PushBack.md | 44 + .../XCEngine/Core/Containers/Array/Reserve.md | 31 + .../XCEngine/Core/Containers/Array/Resize.md | 45 + .../Core/Containers/Array/SetAllocator.md | 31 + .../XCEngine/Core/Containers/Array/Size.md | 30 + .../XCEngine/Core/Containers/Array/begin.md | 42 + .../api/XCEngine/Core/Containers/Array/end.md | 42 + .../XCEngine/Core/Containers/Containers.md | 23 + .../Core/Containers/Containers/Containers.md | 18 + .../XCEngine/Core/Containers/HashMap/Clear.md | 30 + .../Core/Containers/HashMap/Constructor.md | 64 + .../Core/Containers/HashMap/Contains.md | 31 + .../Core/Containers/HashMap/Destructor.md | 29 + .../XCEngine/Core/Containers/HashMap/Empty.md | 30 + .../XCEngine/Core/Containers/HashMap/Erase.md | 31 + .../XCEngine/Core/Containers/HashMap/Find.md | 44 + .../Core/Containers/HashMap/HashMap.md | 43 + .../Core/Containers/HashMap/Insert.md | 57 + .../Core/Containers/HashMap/OperatorAssign.md | 44 + .../Containers/HashMap/OperatorSubscript.md | 31 + .../Core/Containers/HashMap/SetAllocator.md | 31 + .../XCEngine/Core/Containers/HashMap/Size.md | 30 + .../XCEngine/Core/Containers/HashMap/begin.md | 42 + .../XCEngine/Core/Containers/HashMap/end.md | 42 + .../XCEngine/Core/Containers/String/CStr.md | 30 + .../Core/Containers/String/Capacity.md | 30 + .../XCEngine/Core/Containers/String/Clear.md | 30 + .../Core/Containers/String/Constructor.md | 75 ++ .../Core/Containers/String/Destructor.md | 29 + .../XCEngine/Core/Containers/String/Empty.md | 30 + .../Core/Containers/String/EndsWith.md | 44 + .../XCEngine/Core/Containers/String/Find.md | 32 + .../XCEngine/Core/Containers/String/Length.md | 30 + .../Core/Containers/String/OperatorAssign.md | 55 + .../Containers/String/OperatorPlusAssign.md | 55 + .../Containers/String/OperatorSubscript.md | 44 + .../Core/Containers/String/Reserve.md | 31 + .../XCEngine/Core/Containers/String/Resize.md | 45 + .../Core/Containers/String/StartsWith.md | 44 + .../XCEngine/Core/Containers/String/String.md | 58 + .../Core/Containers/String/Substring.md | 32 + .../Core/Containers/String/ToLower.md | 30 + .../Core/Containers/String/ToUpper.md | 30 + .../XCEngine/Core/Containers/String/Trim.md | 30 + docs/api/XCEngine/Core/Core.md | 34 + docs/api/XCEngine/Core/Core/Core.md | 18 + docs/api/XCEngine/Core/Event/Clear.md | 30 + docs/api/XCEngine/Core/Event/Event.md | 36 + docs/api/XCEngine/Core/Event/Invoke.md | 31 + .../Core/Event/ProcessUnsubscribes.md | 30 + docs/api/XCEngine/Core/Event/Subscribe.md | 31 + docs/api/XCEngine/Core/Event/Unsubscribe.md | 31 + docs/api/XCEngine/Core/Event/begin.md | 30 + docs/api/XCEngine/Core/Event/end.md | 30 + docs/api/XCEngine/Core/FileWriter/Close.md | 30 + .../XCEngine/Core/FileWriter/Constructor.md | 42 + .../XCEngine/Core/FileWriter/Destructor.md | 29 + .../XCEngine/Core/FileWriter/FileWriter.md | 36 + docs/api/XCEngine/Core/FileWriter/Flush.md | 30 + docs/api/XCEngine/Core/FileWriter/IsOpen.md | 30 + docs/api/XCEngine/Core/FileWriter/Open.md | 32 + docs/api/XCEngine/Core/FileWriter/Write.md | 45 + .../api/XCEngine/Core/IO/FileArchive/Close.md | 30 + .../Core/IO/FileArchive/Constructor.md | 28 + .../Core/IO/FileArchive/Destructor.md | 29 + .../XCEngine/Core/IO/FileArchive/Enumerate.md | 32 + .../XCEngine/Core/IO/FileArchive/Exists.md | 31 + .../Core/IO/FileArchive/FileArchive.md | 39 + .../XCEngine/Core/IO/FileArchive/GetPath.md | 30 + .../XCEngine/Core/IO/FileArchive/GetSize.md | 31 + .../XCEngine/Core/IO/FileArchive/IsValid.md | 30 + docs/api/XCEngine/Core/IO/FileArchive/Open.md | 31 + docs/api/XCEngine/Core/IO/FileArchive/Read.md | 34 + docs/api/XCEngine/Core/IO/IO.md | 24 + .../Core/IO/IResourceLoader/CanLoad.md | 31 + .../Core/IO/IResourceLoader/Destructor.md | 29 + .../IO/IResourceLoader/GetDefaultSettings.md | 30 + .../IO/IResourceLoader/GetResourceType.md | 30 + .../IResourceLoader/GetSupportedExtensions.md | 30 + .../IO/IResourceLoader/IResourceLoader.md | 38 + .../XCEngine/Core/IO/IResourceLoader/Load.md | 32 + .../Core/IO/IResourceLoader/LoadAsync.md | 33 + .../Core/IO/ResourceFileSystem/AddArchive.md | 31 + .../IO/ResourceFileSystem/AddDirectory.md | 31 + .../Core/IO/ResourceFileSystem/Constructor.md | 28 + .../Core/IO/ResourceFileSystem/Destructor.md | 29 + .../ResourceFileSystem/EnumerateResources.md | 32 + .../Core/IO/ResourceFileSystem/Exists.md | 31 + .../IO/ResourceFileSystem/FindResource.md | 32 + .../Core/IO/ResourceFileSystem/Get.md | 29 + .../IO/ResourceFileSystem/GetResourceInfo.md | 32 + .../Core/IO/ResourceFileSystem/Initialize.md | 31 + .../IO/ResourceFileSystem/ReadResource.md | 31 + .../IO/ResourceFileSystem/RemoveArchive.md | 31 + .../ResourceFileSystem/ResourceFileSystem.md | 44 + .../Core/IO/ResourceFileSystem/Shutdown.md | 30 + .../XCEngine/Core/IO/ResourcePackage/Close.md | 30 + .../Core/IO/ResourcePackage/Constructor.md | 28 + .../Core/IO/ResourcePackage/Destructor.md | 29 + .../Core/IO/ResourcePackage/Enumerate.md | 32 + .../Core/IO/ResourcePackage/Exists.md | 31 + .../Core/IO/ResourcePackage/GetInfo.md | 30 + .../Core/IO/ResourcePackage/GetSize.md | 31 + .../Core/IO/ResourcePackage/IsValid.md | 30 + .../XCEngine/Core/IO/ResourcePackage/Open.md | 31 + .../XCEngine/Core/IO/ResourcePackage/Read.md | 31 + .../IO/ResourcePackage/ResourcePackage.md | 41 + .../Core/IO/ResourcePath/Constructor.md | 52 + .../Core/IO/ResourcePath/GetDirectory.md | 30 + .../Core/IO/ResourcePath/GetExtension.md | 30 + .../Core/IO/ResourcePath/GetFileName.md | 30 + .../Core/IO/ResourcePath/GetFullPath.md | 30 + .../XCEngine/Core/IO/ResourcePath/GetPath.md | 30 + .../Core/IO/ResourcePath/GetRelativePath.md | 30 + .../XCEngine/Core/IO/ResourcePath/GetStem.md | 30 + .../Core/IO/ResourcePath/HasAnyExtension.md | 32 + .../Core/IO/ResourcePath/HasExtension.md | 31 + .../XCEngine/Core/IO/ResourcePath/IsValid.md | 30 + .../Core/IO/ResourcePath/ResourcePath.md | 42 + .../XCEngine/Core/IO/ResourcePath/SetPath.md | 31 + .../XCEngine/Core/IO/ResourcePath/ToGUID.md | 30 + docs/api/XCEngine/Core/Layer/Constructor.md | 29 + docs/api/XCEngine/Core/Layer/Destructor.md | 29 + docs/api/XCEngine/Core/Layer/Layer.md | 37 + docs/api/XCEngine/Core/Layer/getName.md | 30 + docs/api/XCEngine/Core/Layer/onAttach.md | 30 + docs/api/XCEngine/Core/Layer/onDetach.md | 30 + docs/api/XCEngine/Core/Layer/onEvent.md | 31 + docs/api/XCEngine/Core/Layer/onImGuiRender.md | 30 + docs/api/XCEngine/Core/Layer/onUpdate.md | 31 + .../XCEngine/Core/LayerStack/Constructor.md | 28 + .../XCEngine/Core/LayerStack/Destructor.md | 29 + .../XCEngine/Core/LayerStack/LayerStack.md | 48 + docs/api/XCEngine/Core/LayerStack/begin.md | 30 + docs/api/XCEngine/Core/LayerStack/cbegin.md | 30 + docs/api/XCEngine/Core/LayerStack/cend.md | 30 + docs/api/XCEngine/Core/LayerStack/crbegin.md | 30 + docs/api/XCEngine/Core/LayerStack/crend.md | 30 + docs/api/XCEngine/Core/LayerStack/end.md | 30 + docs/api/XCEngine/Core/LayerStack/onAttach.md | 30 + docs/api/XCEngine/Core/LayerStack/onDetach.md | 30 + docs/api/XCEngine/Core/LayerStack/onEvent.md | 31 + .../XCEngine/Core/LayerStack/onImGuiRender.md | 30 + docs/api/XCEngine/Core/LayerStack/onUpdate.md | 31 + docs/api/XCEngine/Core/LayerStack/popLayer.md | 31 + .../XCEngine/Core/LayerStack/popOverlay.md | 31 + .../api/XCEngine/Core/LayerStack/pushLayer.md | 31 + .../XCEngine/Core/LayerStack/pushOverlay.md | 31 + docs/api/XCEngine/Core/LayerStack/rbegin.md | 30 + docs/api/XCEngine/Core/LayerStack/rend.md | 30 + docs/api/XCEngine/Core/Math/AABB/AABB.md | 32 + docs/api/XCEngine/Core/Math/Bounds/Bounds.md | 31 + docs/api/XCEngine/Core/Math/Box/Box.md | 32 + docs/api/XCEngine/Core/Math/Color/Color.md | 33 + .../XCEngine/Core/Math/Frustum/Contains.md | 55 + .../api/XCEngine/Core/Math/Frustum/Frustum.md | 31 + .../XCEngine/Core/Math/Frustum/Intersects.md | 44 + docs/api/XCEngine/Core/Math/Math.md | 36 + docs/api/XCEngine/Core/Math/Math/Math.md | 18 + .../XCEngine/Core/Math/Matrix3/Constructor.md | 28 + .../XCEngine/Core/Math/Matrix3/Determinant.md | 30 + .../XCEngine/Core/Math/Matrix3/Identity.md | 30 + .../api/XCEngine/Core/Math/Matrix3/Inverse.md | 30 + .../api/XCEngine/Core/Math/Matrix3/Matrix3.md | 41 + .../Core/Math/Matrix3/OperatorMultiply.md | 44 + .../Core/Math/Matrix3/OperatorSubscript.md | 44 + .../XCEngine/Core/Math/Matrix3/RotationX.md | 31 + .../XCEngine/Core/Math/Matrix3/RotationY.md | 31 + .../XCEngine/Core/Math/Matrix3/RotationZ.md | 31 + docs/api/XCEngine/Core/Math/Matrix3/Scale.md | 31 + .../XCEngine/Core/Math/Matrix3/Transpose.md | 30 + docs/api/XCEngine/Core/Math/Matrix3/Zero.md | 30 + .../XCEngine/Core/Math/Matrix4/Constructor.md | 28 + .../XCEngine/Core/Math/Matrix4/Decompose.md | 33 + .../XCEngine/Core/Math/Matrix4/Determinant.md | 30 + .../XCEngine/Core/Math/Matrix4/GetRotation.md | 30 + .../XCEngine/Core/Math/Matrix4/GetScale.md | 30 + .../Core/Math/Matrix4/GetTranslation.md | 30 + .../XCEngine/Core/Math/Matrix4/Identity.md | 30 + .../api/XCEngine/Core/Math/Matrix4/Inverse.md | 30 + docs/api/XCEngine/Core/Math/Matrix4/LookAt.md | 33 + .../api/XCEngine/Core/Math/Matrix4/Matrix4.md | 53 + .../Core/Math/Matrix4/MultiplyPoint.md | 31 + .../Core/Math/Matrix4/MultiplyVector.md | 31 + .../Core/Math/Matrix4/OperatorMultiply.md | 44 + .../Core/Math/Matrix4/OperatorSubscript.md | 44 + .../Core/Math/Matrix4/Orthographic.md | 36 + .../XCEngine/Core/Math/Matrix4/Perspective.md | 34 + .../XCEngine/Core/Math/Matrix4/Rotation.md | 31 + .../XCEngine/Core/Math/Matrix4/RotationX.md | 31 + .../XCEngine/Core/Math/Matrix4/RotationY.md | 31 + .../XCEngine/Core/Math/Matrix4/RotationZ.md | 31 + docs/api/XCEngine/Core/Math/Matrix4/Scale.md | 31 + docs/api/XCEngine/Core/Math/Matrix4/TRS.md | 33 + .../XCEngine/Core/Math/Matrix4/Translation.md | 31 + .../XCEngine/Core/Math/Matrix4/Transpose.md | 30 + docs/api/XCEngine/Core/Math/Matrix4/Zero.md | 30 + docs/api/XCEngine/Core/Math/Plane/Plane.md | 31 + .../Core/Math/Quaternion/Quaternion.md | 33 + docs/api/XCEngine/Core/Math/Ray/Ray.md | 31 + docs/api/XCEngine/Core/Math/Rect/Rect.md | 35 + docs/api/XCEngine/Core/Math/Sphere/Sphere.md | 31 + .../XCEngine/Core/Math/Transform/Transform.md | 33 + .../api/XCEngine/Core/Math/Vector2/Vector2.md | 31 + .../api/XCEngine/Core/Math/Vector3/Vector3.md | 32 + .../api/XCEngine/Core/Math/Vector4/Vector4.md | 33 + docs/api/XCEngine/Core/RefCounted/AddRef.md | 30 + .../XCEngine/Core/RefCounted/Constructor.md | 28 + .../XCEngine/Core/RefCounted/Destructor.md | 29 + .../XCEngine/Core/RefCounted/GetRefCount.md | 30 + .../XCEngine/Core/RefCounted/RefCounted.md | 34 + docs/api/XCEngine/Core/RefCounted/Release.md | 30 + docs/api/XCEngine/Core/SmartPtr/SmartPtr.md | 18 + docs/api/XCEngine/Core/Types/Types.md | 18 + .../Debug/ConsoleLogSink/ConsoleLogSink.md | 35 + .../Debug/ConsoleLogSink/Constructor.md | 28 + .../Debug/ConsoleLogSink/Destructor.md | 29 + .../XCEngine/Debug/ConsoleLogSink/Flush.md | 30 + docs/api/XCEngine/Debug/ConsoleLogSink/Log.md | 31 + .../Debug/ConsoleLogSink/SetColorOutput.md | 31 + .../Debug/ConsoleLogSink/SetMinimumLevel.md | 31 + docs/api/XCEngine/Debug/Debug.md | 29 + docs/api/XCEngine/Debug/Debug/Debug.md | 18 + .../XCEngine/Debug/FileLogSink/Constructor.md | 29 + .../XCEngine/Debug/FileLogSink/Destructor.md | 29 + .../XCEngine/Debug/FileLogSink/FileLogSink.md | 33 + docs/api/XCEngine/Debug/FileLogSink/Flush.md | 30 + docs/api/XCEngine/Debug/FileLogSink/Log.md | 31 + .../api/XCEngine/Debug/ILogSink/Destructor.md | 29 + docs/api/XCEngine/Debug/ILogSink/Flush.md | 30 + docs/api/XCEngine/Debug/ILogSink/ILogSink.md | 32 + docs/api/XCEngine/Debug/ILogSink/Log.md | 31 + .../XCEngine/Debug/LogCategory/LogCategory.md | 40 + docs/api/XCEngine/Debug/LogEntry/LogEntry.md | 37 + docs/api/XCEngine/Debug/LogLevel/LogLevel.md | 35 + docs/api/XCEngine/Debug/Logger/AddSink.md | 31 + docs/api/XCEngine/Debug/Logger/Debug.md | 32 + docs/api/XCEngine/Debug/Logger/Error.md | 32 + docs/api/XCEngine/Debug/Logger/Fatal.md | 32 + docs/api/XCEngine/Debug/Logger/Get.md | 29 + docs/api/XCEngine/Debug/Logger/Info.md | 32 + docs/api/XCEngine/Debug/Logger/Initialize.md | 30 + docs/api/XCEngine/Debug/Logger/Log.md | 36 + docs/api/XCEngine/Debug/Logger/Logger.md | 43 + docs/api/XCEngine/Debug/Logger/RemoveSink.md | 31 + .../Debug/Logger/SetCategoryEnabled.md | 32 + .../XCEngine/Debug/Logger/SetMinimumLevel.md | 31 + docs/api/XCEngine/Debug/Logger/Shutdown.md | 30 + docs/api/XCEngine/Debug/Logger/Verbose.md | 32 + docs/api/XCEngine/Debug/Logger/Warning.md | 32 + .../api/XCEngine/Debug/Profiler/BeginFrame.md | 30 + .../XCEngine/Debug/Profiler/BeginProfile.md | 31 + docs/api/XCEngine/Debug/Profiler/EndFrame.md | 30 + .../api/XCEngine/Debug/Profiler/EndProfile.md | 30 + .../Debug/Profiler/ExportChromeTracing.md | 31 + docs/api/XCEngine/Debug/Profiler/Get.md | 29 + .../api/XCEngine/Debug/Profiler/Initialize.md | 30 + docs/api/XCEngine/Debug/Profiler/MarkEvent.md | 33 + docs/api/XCEngine/Debug/Profiler/Profiler.md | 39 + docs/api/XCEngine/Debug/Profiler/SetMarker.md | 32 + docs/api/XCEngine/Debug/Profiler/Shutdown.md | 30 + .../Debug/RenderDocCapture/BeginCapture.md | 31 + .../Debug/RenderDocCapture/EndCapture.md | 30 + .../XCEngine/Debug/RenderDocCapture/Get.md | 29 + .../Debug/RenderDocCapture/GetCapture.md | 32 + .../Debug/RenderDocCapture/GetNumCaptures.md | 30 + .../Debug/RenderDocCapture/Initialize.md | 32 + .../Debug/RenderDocCapture/IsCapturing.md | 30 + .../Debug/RenderDocCapture/IsLoaded.md | 30 + .../Debug/RenderDocCapture/LaunchReplayUI.md | 32 + .../RenderDocCapture/RenderDocCapture.md | 46 + .../RenderDocCapture/SetCaptureComments.md | 31 + .../RenderDocCapture/SetCaptureFilePath.md | 31 + .../RenderDocCapture/SetCaptureOptionU32.md | 32 + .../Debug/RenderDocCapture/SetDevice.md | 31 + .../Debug/RenderDocCapture/SetWindow.md | 31 + .../Debug/RenderDocCapture/Shutdown.md | 30 + .../Debug/RenderDocCapture/TriggerCapture.md | 30 + docs/api/XCEngine/Input/Input.md | 24 + .../XCEngine/Input/InputAxis/Constructor.md | 43 + docs/api/XCEngine/Input/InputAxis/GetName.md | 30 + .../Input/InputAxis/GetNegativeKey.md | 30 + .../Input/InputAxis/GetPositiveKey.md | 30 + docs/api/XCEngine/Input/InputAxis/GetValue.md | 30 + .../api/XCEngine/Input/InputAxis/InputAxis.md | 36 + docs/api/XCEngine/Input/InputAxis/SetKeys.md | 32 + docs/api/XCEngine/Input/InputAxis/SetValue.md | 31 + .../XCEngine/Input/InputEvent/InputEvent.md | 39 + .../XCEngine/Input/InputManager/ClearAxes.md | 30 + docs/api/XCEngine/Input/InputManager/Get.md | 29 + .../XCEngine/Input/InputManager/GetAxis.md | 31 + .../XCEngine/Input/InputManager/GetAxisRaw.md | 31 + .../XCEngine/Input/InputManager/GetButton.md | 31 + .../Input/InputManager/GetButtonDown.md | 31 + .../Input/InputManager/GetButtonUp.md | 31 + .../Input/InputManager/GetMouseDelta.md | 30 + .../Input/InputManager/GetMousePosition.md | 30 + .../Input/InputManager/GetMouseScrollDelta.md | 30 + .../XCEngine/Input/InputManager/GetTouch.md | 31 + .../Input/InputManager/GetTouchCount.md | 30 + .../XCEngine/Input/InputManager/Initialize.md | 31 + .../Input/InputManager/InputManager.md | 63 + .../XCEngine/Input/InputManager/IsKeyDown.md | 31 + .../Input/InputManager/IsKeyPressed.md | 31 + .../XCEngine/Input/InputManager/IsKeyUp.md | 31 + .../InputManager/IsMouseButtonClicked.md | 31 + .../Input/InputManager/IsMouseButtonDown.md | 31 + .../Input/InputManager/IsMouseButtonUp.md | 31 + .../XCEngine/Input/InputManager/OnKeyEvent.md | 30 + .../Input/InputManager/OnMouseButton.md | 30 + .../Input/InputManager/OnMouseMove.md | 30 + .../Input/InputManager/OnMouseWheel.md | 30 + .../Input/InputManager/OnTextInput.md | 30 + .../Input/InputManager/ProcessKeyDown.md | 36 + .../Input/InputManager/ProcessKeyUp.md | 35 + .../Input/InputManager/ProcessMouseButton.md | 34 + .../Input/InputManager/ProcessMouseMove.md | 34 + .../Input/InputManager/ProcessMouseWheel.md | 33 + .../Input/InputManager/ProcessTextInput.md | 31 + .../Input/InputManager/RegisterAxis.md | 31 + .../Input/InputManager/RegisterButton.md | 32 + .../XCEngine/Input/InputManager/Shutdown.md | 30 + .../api/XCEngine/Input/InputManager/Update.md | 31 + .../XCEngine/Input/InputModule/Destructor.md | 29 + .../Input/InputModule/HandleMessage.md | 34 + .../XCEngine/Input/InputModule/Initialize.md | 31 + .../XCEngine/Input/InputModule/InputModule.md | 34 + .../XCEngine/Input/InputModule/PumpEvents.md | 30 + .../XCEngine/Input/InputModule/Shutdown.md | 30 + .../XCEngine/Input/InputTypes/InputTypes.md | 111 ++ .../api/XCEngine/Memory/Allocator/Allocate.md | 32 + .../XCEngine/Memory/Allocator/Allocator.md | 38 + .../XCEngine/Memory/Allocator/Destructor.md | 29 + docs/api/XCEngine/Memory/Allocator/Free.md | 31 + .../Memory/Allocator/GetAllocationCount.md | 30 + docs/api/XCEngine/Memory/Allocator/GetName.md | 30 + .../Memory/Allocator/GetPeakAllocated.md | 30 + .../Memory/Allocator/GetTotalAllocated.md | 30 + .../Memory/Allocator/GetTotalFreed.md | 30 + .../XCEngine/Memory/Allocator/Reallocate.md | 32 + .../Memory/LinearAllocator/Allocate.md | 32 + .../XCEngine/Memory/LinearAllocator/Clear.md | 30 + .../Memory/LinearAllocator/Constructor.md | 30 + .../Memory/LinearAllocator/Destructor.md | 29 + .../XCEngine/Memory/LinearAllocator/Free.md | 31 + .../LinearAllocator/GetAllocationCount.md | 30 + .../Memory/LinearAllocator/GetCapacity.md | 30 + .../Memory/LinearAllocator/GetMarker.md | 30 + .../Memory/LinearAllocator/GetName.md | 30 + .../LinearAllocator/GetPeakAllocated.md | 30 + .../LinearAllocator/GetTotalAllocated.md | 30 + .../Memory/LinearAllocator/GetTotalFreed.md | 30 + .../Memory/LinearAllocator/GetUsedSize.md | 30 + .../Memory/LinearAllocator/LinearAllocator.md | 44 + .../Memory/LinearAllocator/Reallocate.md | 32 + .../Memory/LinearAllocator/SetMarker.md | 31 + docs/api/XCEngine/Memory/Memory.md | 24 + .../MemoryManager/CreateLinearAllocator.md | 31 + .../MemoryManager/CreatePoolAllocator.md | 32 + .../MemoryManager/CreateProxyAllocator.md | 31 + .../Memory/MemoryManager/DumpMemoryLeaks.md | 30 + .../MemoryManager/GenerateMemoryReport.md | 30 + docs/api/XCEngine/Memory/MemoryManager/Get.md | 29 + .../MemoryManager/GetSystemAllocator.md | 30 + .../Memory/MemoryManager/Initialize.md | 30 + .../Memory/MemoryManager/MemoryManager.md | 39 + .../MemoryManager/SetTrackAllocations.md | 31 + .../XCEngine/Memory/MemoryManager/Shutdown.md | 30 + .../XCEngine/Memory/PoolAllocator/Allocate.md | 32 + .../Memory/PoolAllocator/Constructor.md | 31 + .../XCEngine/Memory/PoolAllocator/Contains.md | 31 + .../Memory/PoolAllocator/Destructor.md | 29 + .../api/XCEngine/Memory/PoolAllocator/Free.md | 31 + .../PoolAllocator/GetAllocationCount.md | 30 + .../Memory/PoolAllocator/GetBlockSize.md | 30 + .../Memory/PoolAllocator/GetFreeBlockCount.md | 30 + .../XCEngine/Memory/PoolAllocator/GetName.md | 30 + .../Memory/PoolAllocator/GetPeakAllocated.md | 30 + .../Memory/PoolAllocator/GetTotalAllocated.md | 30 + .../PoolAllocator/GetTotalBlockCount.md | 30 + .../Memory/PoolAllocator/GetTotalFreed.md | 30 + .../Memory/PoolAllocator/PoolAllocator.md | 43 + .../Memory/PoolAllocator/Reallocate.md | 32 + .../Memory/ProxyAllocator/Allocate.md | 32 + .../Memory/ProxyAllocator/Constructor.md | 30 + .../XCEngine/Memory/ProxyAllocator/Free.md | 31 + .../ProxyAllocator/GetAllocationCount.md | 30 + .../XCEngine/Memory/ProxyAllocator/GetName.md | 30 + .../Memory/ProxyAllocator/GetPeakAllocated.md | 30 + .../Memory/ProxyAllocator/GetStats.md | 30 + .../ProxyAllocator/GetTotalAllocated.md | 30 + .../Memory/ProxyAllocator/GetTotalFreed.md | 30 + .../Memory/ProxyAllocator/ProxyAllocator.md | 39 + .../Memory/ProxyAllocator/Reallocate.md | 32 + .../XCEngine/Platform/GameTime/GameTime.md | 32 + .../XCEngine/Platform/IClock/Destructor.md | 29 + .../Platform/IClock/GetAbsoluteTime.md | 30 + .../XCEngine/Platform/IClock/GetDeltaTime.md | 30 + .../Platform/IClock/GetTimeSinceInit.md | 30 + docs/api/XCEngine/Platform/IClock/IClock.md | 34 + docs/api/XCEngine/Platform/IClock/Update.md | 30 + .../Platform/IDisplayEnumerator/Destructor.md | 29 + .../IDisplayEnumerator/GetDPIForDisplay.md | 31 + .../IDisplayEnumerator/GetDisplayCount.md | 30 + .../IDisplayEnumerator/GetDisplayInfo.md | 31 + .../IDisplayEnumerator/GetPrimaryDisplay.md | 30 + .../IDisplayEnumerator/IDisplayEnumerator.md | 35 + .../Platform/IDynamicLibrary/Destructor.md | 29 + .../Platform/IDynamicLibrary/GetPath.md | 30 + .../Platform/IDynamicLibrary/GetSymbol.md | 44 + .../IDynamicLibrary/IDynamicLibrary.md | 35 + .../Platform/IDynamicLibrary/IsLoaded.md | 30 + .../XCEngine/Platform/IDynamicLibrary/Load.md | 31 + .../Platform/IDynamicLibrary/Unload.md | 30 + .../Platform/IFileSystem/CombinePaths.md | 32 + .../Platform/IFileSystem/CreateDirectory.md | 31 + .../Platform/IFileSystem/DeleteFile.md | 31 + .../Platform/IFileSystem/Destructor.md | 29 + .../Platform/IFileSystem/DirectoryExists.md | 31 + .../Platform/IFileSystem/FileExists.md | 31 + .../Platform/IFileSystem/GetExecutablePath.md | 30 + .../Platform/IFileSystem/GetFileSize.md | 31 + .../Platform/IFileSystem/GetTempDirectory.md | 30 + .../Platform/IFileSystem/GetUserDirectory.md | 30 + .../IFileSystem/GetWorkingDirectory.md | 30 + .../Platform/IFileSystem/IFileSystem.md | 43 + .../Platform/IFileSystem/NormalizePath.md | 31 + .../XCEngine/Platform/IFileSystem/ReadFile.md | 32 + .../Platform/IFileSystem/WriteFile.md | 33 + .../Platform/IPlatform/CreateClock.md | 30 + .../IPlatform/CreateDisplayEnumerator.md | 30 + .../Platform/IPlatform/CreateFileSystem.md | 30 + .../Platform/IPlatform/CreateWindow.md | 31 + .../XCEngine/Platform/IPlatform/Destructor.md | 29 + docs/api/XCEngine/Platform/IPlatform/Get.md | 29 + .../XCEngine/Platform/IPlatform/GetName.md | 30 + .../XCEngine/Platform/IPlatform/GetType.md | 30 + .../XCEngine/Platform/IPlatform/IPlatform.md | 39 + .../Platform/IPlatform/LoadDynamicLibrary.md | 31 + .../IPlatform/PumpPlatformMessages.md | 30 + docs/api/XCEngine/Platform/IWindow/Create.md | 31 + docs/api/XCEngine/Platform/IWindow/Destroy.md | 30 + .../XCEngine/Platform/IWindow/Destructor.md | 29 + .../XCEngine/Platform/IWindow/GetHeight.md | 30 + .../Platform/IWindow/GetNativeHandle.md | 30 + .../api/XCEngine/Platform/IWindow/GetWidth.md | 30 + docs/api/XCEngine/Platform/IWindow/IWindow.md | 49 + .../XCEngine/Platform/IWindow/IsFullscreen.md | 30 + docs/api/XCEngine/Platform/IWindow/IsVSync.md | 30 + docs/api/XCEngine/Platform/IWindow/IsValid.md | 30 + .../api/XCEngine/Platform/IWindow/Maximize.md | 30 + .../api/XCEngine/Platform/IWindow/Minimize.md | 30 + .../XCEngine/Platform/IWindow/PumpEvents.md | 30 + docs/api/XCEngine/Platform/IWindow/Restore.md | 30 + .../Platform/IWindow/SetCloseCallback.md | 31 + .../Platform/IWindow/SetFullscreen.md | 31 + .../Platform/IWindow/SetResizeCallback.md | 31 + .../Platform/IWindow/SetShouldClose.md | 31 + .../api/XCEngine/Platform/IWindow/SetTitle.md | 31 + .../api/XCEngine/Platform/IWindow/SetVSync.md | 31 + .../XCEngine/Platform/IWindow/ShouldClose.md | 30 + docs/api/XCEngine/Platform/Platform.md | 32 + .../Platform/PlatformTypes/PlatformTypes.md | 35 + docs/api/XCEngine/Platform/Window/Create.md | 31 + docs/api/XCEngine/Platform/Window/Destroy.md | 30 + .../XCEngine/Platform/Window/Destructor.md | 29 + .../api/XCEngine/Platform/Window/GetHandle.md | 30 + .../Platform/Window/GetInputModule.md | 30 + .../Platform/Window/GetNativeHandle.md | 30 + .../XCEngine/Platform/Window/IsFullscreen.md | 30 + docs/api/XCEngine/Platform/Window/Maximize.md | 30 + docs/api/XCEngine/Platform/Window/Minimize.md | 30 + .../XCEngine/Platform/Window/PumpEvents.md | 30 + docs/api/XCEngine/Platform/Window/Restore.md | 30 + .../XCEngine/Platform/Window/SetFullscreen.md | 31 + .../Platform/Window/SetInputModule.md | 31 + docs/api/XCEngine/Platform/Window/SetTitle.md | 31 + .../XCEngine/Platform/Window/ShouldClose.md | 30 + docs/api/XCEngine/Platform/Window/Window.md | 44 + docs/api/XCEngine/Platform/Windows/Windows.md | 21 + .../Windows/WindowsInputModule/Constructor.md | 28 + .../Windows/WindowsInputModule/Destructor.md | 29 + .../WindowsInputModule/HandleMessage.md | 34 + .../Windows/WindowsInputModule/Initialize.md | 31 + .../Windows/WindowsInputModule/PumpEvents.md | 30 + .../Windows/WindowsInputModule/Shutdown.md | 30 + .../WindowsInputModule/WindowsInputModule.md | 35 + .../Windows/WindowsWindow/Constructor.md | 28 + .../Platform/Windows/WindowsWindow/Create.md | 31 + .../Platform/Windows/WindowsWindow/Destroy.md | 30 + .../Windows/WindowsWindow/Destructor.md | 29 + .../Windows/WindowsWindow/GetHandle.md | 30 + .../Windows/WindowsWindow/GetNativeHandle.md | 30 + .../Windows/WindowsWindow/IsFullscreen.md | 30 + .../Windows/WindowsWindow/Maximize.md | 30 + .../Windows/WindowsWindow/Minimize.md | 30 + .../Windows/WindowsWindow/PumpEvents.md | 30 + .../Platform/Windows/WindowsWindow/Restore.md | 30 + .../Windows/WindowsWindow/SetFullscreen.md | 31 + .../WindowsWindow/SetMessageCallback.md | 31 + .../Windows/WindowsWindow/SetTitle.md | 31 + .../Windows/WindowsWindow/ShouldClose.md | 30 + .../Windows/WindowsWindow/WindowsWindow.md | 44 + docs/api/XCEngine/RHI/D3D12/D3D12.md | 42 + .../RHI/D3D12/D3D12Buffer/Constructor.md | 28 + .../RHI/D3D12/D3D12Buffer/D3D12Buffer.md | 53 + .../RHI/D3D12/D3D12Buffer/Destructor.md | 29 + .../RHI/D3D12/D3D12Buffer/GetBufferType.md | 30 + .../XCEngine/RHI/D3D12/D3D12Buffer/GetDesc.md | 30 + .../RHI/D3D12/D3D12Buffer/GetGPUAddress.md | 30 + .../D3D12/D3D12Buffer/GetGPUVirtualAddress.md | 30 + .../XCEngine/RHI/D3D12/D3D12Buffer/GetName.md | 30 + .../RHI/D3D12/D3D12Buffer/GetNativeHandle.md | 30 + .../RHI/D3D12/D3D12Buffer/GetResource.md | 30 + .../XCEngine/RHI/D3D12/D3D12Buffer/GetSize.md | 30 + .../RHI/D3D12/D3D12Buffer/GetState.md | 30 + .../RHI/D3D12/D3D12Buffer/GetStride.md | 30 + .../RHI/D3D12/D3D12Buffer/Initialize.md | 34 + .../D3D12Buffer/InitializeFromExisting.md | 31 + .../D3D12/D3D12Buffer/InitializeWithData.md | 35 + .../api/XCEngine/RHI/D3D12/D3D12Buffer/Map.md | 30 + .../RHI/D3D12/D3D12Buffer/SetBufferType.md | 31 + .../XCEngine/RHI/D3D12/D3D12Buffer/SetData.md | 33 + .../XCEngine/RHI/D3D12/D3D12Buffer/SetName.md | 31 + .../RHI/D3D12/D3D12Buffer/SetState.md | 31 + .../RHI/D3D12/D3D12Buffer/SetStride.md | 31 + .../RHI/D3D12/D3D12Buffer/Shutdown.md | 30 + .../XCEngine/RHI/D3D12/D3D12Buffer/Unmap.md | 30 + .../RHI/D3D12/D3D12Buffer/UpdateData.md | 32 + .../D3D12CommandAllocator/Constructor.md | 28 + .../D3D12CommandAllocator.md | 36 + .../D3D12/D3D12CommandAllocator/Destructor.md | 29 + .../GetCommandAllocator.md | 30 + .../D3D12/D3D12CommandAllocator/Initialize.md | 32 + .../D3D12/D3D12CommandAllocator/IsReady.md | 30 + .../RHI/D3D12/D3D12CommandAllocator/Reset.md | 30 + .../D3D12/D3D12CommandAllocator/Shutdown.md | 30 + .../D3D12/D3D12CommandList/AliasBarrier.md | 32 + .../D3D12CommandList/AliasBarrierInternal.md | 32 + .../RHI/D3D12/D3D12CommandList/BeginQuery.md | 33 + .../D3D12/D3D12CommandList/BeginRenderPass.md | 35 + .../RHI/D3D12/D3D12CommandList/Clear.md | 35 + .../D3D12CommandList/ClearDepthStencil.md | 33 + .../D3D12CommandList/ClearDepthStencilView.md | 54 + .../D3D12CommandList/ClearRenderTarget.md | 32 + .../D3D12CommandList/ClearRenderTargetView.md | 50 + .../ClearUnorderedAccessView.md | 36 + .../RHI/D3D12/D3D12CommandList/Close.md | 30 + .../RHI/D3D12/D3D12CommandList/Constructor.md | 28 + .../RHI/D3D12/D3D12CommandList/CopyBuffer.md | 35 + .../D3D12/D3D12CommandList/CopyResource.md | 32 + .../D3D12CommandList/CopyResourceInternal.md | 32 + .../RHI/D3D12/D3D12CommandList/CopyTexture.md | 34 + .../D3D12CommandList/D3D12CommandList.md | 101 ++ .../RHI/D3D12/D3D12CommandList/Destructor.md | 29 + .../RHI/D3D12/D3D12CommandList/Dispatch.md | 33 + .../D3D12CommandList/DispatchIndirect.md | 32 + .../DispatchIndirectInternal.md | 32 + .../RHI/D3D12/D3D12CommandList/Draw.md | 34 + .../RHI/D3D12/D3D12CommandList/DrawIndexed.md | 35 + .../DrawIndexedInstancedIndirect.md | 32 + .../DrawIndexedInstancedIndirectInternal.md | 32 + .../D3D12CommandList/DrawInstancedIndirect.md | 32 + .../DrawInstancedIndirectInternal.md | 32 + .../RHI/D3D12/D3D12CommandList/EndQuery.md | 33 + .../D3D12/D3D12CommandList/EndRenderPass.md | 30 + .../D3D12/D3D12CommandList/ExecuteBundle.md | 31 + .../D3D12/D3D12CommandList/GetCommandList.md | 30 + .../D3D12/D3D12CommandList/GetNativeHandle.md | 30 + .../D3D12CommandList/GetResourceState.md | 31 + .../RHI/D3D12/D3D12CommandList/Initialize.md | 33 + .../RHI/D3D12/D3D12CommandList/Reset.md | 30 + .../D3D12CommandList/ResolveQueryData.md | 36 + .../D3D12/D3D12CommandList/SetBlendFactor.md | 31 + .../SetComputeDescriptorSets.md | 34 + .../SetComputeDescriptorTable.md | 32 + .../D3D12/D3D12CommandList/SetDepthBias.md | 33 + .../D3D12CommandList/SetDescriptorHeap.md | 31 + .../D3D12CommandList/SetDescriptorHeaps.md | 32 + .../SetGraphicsDescriptorSets.md | 34 + .../SetGraphicsDescriptorTable.md | 32 + .../SetGraphicsRoot32BitConstants.md | 34 + .../SetGraphicsRootConstantBufferView.md | 32 + .../SetGraphicsRootDescriptorTable.md | 32 + .../SetGraphicsRootShaderResourceView.md | 32 + .../D3D12/D3D12CommandList/SetIndexBuffer.md | 47 + .../SetIndexBufferInternal.md | 33 + .../D3D12CommandList/SetPipelineLayout.md | 31 + .../D3D12CommandList/SetPipelineState.md | 44 + .../SetPipelineStateInternal.md | 31 + .../D3D12CommandList/SetPrimitiveTopology.md | 31 + .../D3D12CommandList/SetRenderTargets.md | 33 + .../SetRenderTargetsHandle.md | 33 + .../SetRenderTargetsInternal.md | 33 + .../D3D12CommandList/SetRootSignature.md | 31 + .../D3D12/D3D12CommandList/SetScissorRect.md | 31 + .../D3D12/D3D12CommandList/SetScissorRects.md | 32 + .../RHI/D3D12/D3D12CommandList/SetShader.md | 31 + .../D3D12/D3D12CommandList/SetStencilRef.md | 31 + .../D3D12/D3D12CommandList/SetVertexBuffer.md | 34 + .../D3D12CommandList/SetVertexBuffers.md | 35 + .../SetVertexBuffersInternal.md | 33 + .../RHI/D3D12/D3D12CommandList/SetViewport.md | 31 + .../D3D12/D3D12CommandList/SetViewports.md | 32 + .../RHI/D3D12/D3D12CommandList/Shutdown.md | 30 + .../D3D12/D3D12CommandList/TrackResource.md | 31 + .../D3D12CommandList/TransitionBarrier.md | 48 + .../TransitionBarrierInternal.md | 34 + .../RHI/D3D12/D3D12CommandList/UAVBarrier.md | 31 + .../D3D12CommandList/UAVBarrierInternal.md | 31 + .../D3D12/D3D12CommandQueue/Constructor.md | 28 + .../D3D12CommandQueue/D3D12CommandQueue.md | 45 + .../RHI/D3D12/D3D12CommandQueue/Destructor.md | 29 + .../D3D12CommandQueue/ExecuteCommandLists.md | 32 + .../ExecuteCommandListsInternal.md | 32 + .../D3D12CommandQueue/GetCommandQueue.md | 30 + .../D3D12CommandQueue/GetCompletedValue.md | 30 + .../D3D12CommandQueue/GetCurrentFrame.md | 30 + .../D3D12CommandQueue/GetNativeHandle.md | 30 + .../GetTimestampFrequency.md | 30 + .../RHI/D3D12/D3D12CommandQueue/GetType.md | 30 + .../RHI/D3D12/D3D12CommandQueue/Initialize.md | 32 + .../RHI/D3D12/D3D12CommandQueue/Shutdown.md | 30 + .../RHI/D3D12/D3D12CommandQueue/Signal.md | 46 + .../RHI/D3D12/D3D12CommandQueue/Wait.md | 46 + .../D3D12/D3D12CommandQueue/WaitForIdle.md | 30 + .../D3D12CommandQueue/WaitForPreviousFrame.md | 30 + .../RHI/D3D12/D3D12Common/D3D12Common.md | 18 + .../D3D12/D3D12DescriptorHeap/AllocateSet.md | 31 + .../D3D12/D3D12DescriptorHeap/Constructor.md | 28 + .../D3D12/D3D12DescriptorHeap/CreateDesc.md | 33 + .../D3D12DescriptorHeap.md | 47 + .../D3D12/D3D12DescriptorHeap/Destructor.md | 29 + .../RHI/D3D12/D3D12DescriptorHeap/FreeSet.md | 31 + .../GetCPUDescriptorHandle.md | 31 + .../GetCPUDescriptorHandleForHeapStart.md | 30 + .../D3D12DescriptorHeap/GetDescriptorCount.md | 30 + .../D3D12DescriptorHeap/GetDescriptorHeap.md | 30 + .../D3D12DescriptorHeap/GetDescriptorSize.md | 30 + .../D3D12/D3D12DescriptorHeap/GetDevice.md | 30 + .../GetGPUDescriptorHandle.md | 31 + .../GetGPUDescriptorHandleForHeapStart.md | 30 + .../D3D12DescriptorHeap/GetNativeHandle.md | 30 + .../RHI/D3D12/D3D12DescriptorHeap/GetType.md | 30 + .../D3D12/D3D12DescriptorHeap/Initialize.md | 47 + .../D3D12DescriptorHeap/IsShaderVisible.md | 30 + .../RHI/D3D12/D3D12DescriptorHeap/Shutdown.md | 30 + .../RHI/D3D12/D3D12DescriptorSet/Bind.md | 30 + .../D3D12/D3D12DescriptorSet/Constructor.md | 28 + .../D3D12DescriptorSet/D3D12DescriptorSet.md | 54 + .../D3D12/D3D12DescriptorSet/Destructor.md | 29 + .../D3D12DescriptorSet/GetBindingCount.md | 30 + .../D3D12/D3D12DescriptorSet/GetBindings.md | 30 + .../GetConstantBufferData.md | 30 + .../GetConstantBufferGPUAddress.md | 31 + .../GetConstantBufferSize.md | 30 + .../RHI/D3D12/D3D12DescriptorSet/GetCount.md | 30 + .../GetDescriptorIndexForBinding.md | 31 + .../GetFirstBindingOfType.md | 31 + .../D3D12/D3D12DescriptorSet/GetGPUHandle.md | 31 + .../GetGPUHandleForBinding.md | 31 + .../RHI/D3D12/D3D12DescriptorSet/GetHeap.md | 30 + .../RHI/D3D12/D3D12DescriptorSet/GetOffset.md | 30 + .../D3D12DescriptorSet/HasBindingType.md | 31 + .../D3D12/D3D12DescriptorSet/Initialize.md | 34 + .../D3D12DescriptorSet/IsConstantDirty.md | 30 + .../D3D12DescriptorSet/MarkConstantClean.md | 30 + .../RHI/D3D12/D3D12DescriptorSet/Shutdown.md | 30 + .../RHI/D3D12/D3D12DescriptorSet/Unbind.md | 30 + .../RHI/D3D12/D3D12DescriptorSet/Update.md | 32 + .../D3D12/D3D12DescriptorSet/UpdateSampler.md | 32 + .../UploadConstantBuffer.md | 31 + .../D3D12/D3D12DescriptorSet/WriteConstant.md | 34 + .../D3D12/D3D12Device/CheckFeatureSupport.md | 33 + .../RHI/D3D12/D3D12Device/Constructor.md | 28 + .../RHI/D3D12/D3D12Device/CreateBuffer.md | 31 + .../D3D12Device/CreateCommandAllocator.md | 31 + .../D3D12/D3D12Device/CreateCommandList.md | 31 + .../D3D12Device/CreateCommandListImpl.md | 31 + .../D3D12/D3D12Device/CreateCommandQueue.md | 31 + .../D3D12Device/CreateCommandQueueImpl.md | 31 + .../D3D12Device/CreateDepthStencilView.md | 32 + .../D3D12/D3D12Device/CreateDescriptorHeap.md | 31 + .../D3D12/D3D12Device/CreateDescriptorPool.md | 31 + .../D3D12/D3D12Device/CreateDescriptorSet.md | 32 + .../RHI/D3D12/D3D12Device/CreateFence.md | 31 + .../D3D12/D3D12Device/CreateFramebuffer.md | 36 + .../D3D12Device/CreateIndexBufferView.md | 32 + .../D3D12/D3D12Device/CreatePipelineLayout.md | 31 + .../D3D12/D3D12Device/CreatePipelineState.md | 31 + .../RHI/D3D12/D3D12Device/CreateQueryHeap.md | 31 + .../RHI/D3D12/D3D12Device/CreateRenderPass.md | 33 + .../D3D12Device/CreateRenderTargetView.md | 32 + .../D3D12/D3D12Device/CreateRootSignature.md | 31 + .../RHI/D3D12/D3D12Device/CreateSampler.md | 31 + .../RHI/D3D12/D3D12Device/CreateShader.md | 31 + .../D3D12Device/CreateShaderResourceView.md | 32 + .../RHI/D3D12/D3D12Device/CreateSwapChain.md | 32 + .../RHI/D3D12/D3D12Device/CreateTexture.md | 47 + .../D3D12Device/CreateUnorderedAccessView.md | 32 + .../D3D12Device/CreateVertexBufferView.md | 32 + .../RHI/D3D12/D3D12Device/D3D12Device.md | 72 ++ .../RHI/D3D12/D3D12Device/Destructor.md | 29 + .../D3D12/D3D12Device/EnumerateAdapters.md | 30 + .../RHI/D3D12/D3D12Device/GetAdapterInfo.md | 30 + .../RHI/D3D12/D3D12Device/GetCapabilities.md | 30 + .../GetDescriptorHandleIncrementSize.md | 31 + .../RHI/D3D12/D3D12Device/GetDevice.md | 30 + .../RHI/D3D12/D3D12Device/GetDeviceInfo.md | 30 + .../RHI/D3D12/D3D12Device/GetFactory.md | 30 + .../RHI/D3D12/D3D12Device/GetNativeDevice.md | 30 + .../RHI/D3D12/D3D12Device/GetNativeHandle.md | 30 + .../RHI/D3D12/D3D12Device/Initialize.md | 31 + .../RHI/D3D12/D3D12Device/IsDeviceRemoved.md | 30 + .../RHI/D3D12/D3D12Device/SetDeviceRemoved.md | 30 + .../RHI/D3D12/D3D12Device/Shutdown.md | 30 + .../RHI/D3D12/D3D12Enums/D3D12Enums.md | 18 + .../RHI/D3D12/D3D12Fence/Constructor.md | 28 + .../RHI/D3D12/D3D12Fence/D3D12Fence.md | 39 + .../RHI/D3D12/D3D12Fence/Destructor.md | 29 + .../RHI/D3D12/D3D12Fence/GetCompletedValue.md | 30 + .../RHI/D3D12/D3D12Fence/GetEventHandle.md | 30 + .../XCEngine/RHI/D3D12/D3D12Fence/GetFence.md | 30 + .../RHI/D3D12/D3D12Fence/GetNativeHandle.md | 30 + .../RHI/D3D12/D3D12Fence/Initialize.md | 32 + .../XCEngine/RHI/D3D12/D3D12Fence/Shutdown.md | 30 + .../XCEngine/RHI/D3D12/D3D12Fence/Signal.md | 43 + .../api/XCEngine/RHI/D3D12/D3D12Fence/Wait.md | 31 + .../RHI/D3D12/D3D12Framebuffer/Constructor.md | 28 + .../D3D12Framebuffer/D3D12Framebuffer.md | 43 + .../RHI/D3D12/D3D12Framebuffer/Destructor.md | 29 + .../D3D12Framebuffer/GetDepthStencilHandle.md | 30 + .../RHI/D3D12/D3D12Framebuffer/GetHeight.md | 30 + .../D3D12/D3D12Framebuffer/GetNativeHandle.md | 30 + .../D3D12/D3D12Framebuffer/GetRenderPass.md | 30 + .../D3D12Framebuffer/GetRenderTargetCount.md | 30 + .../D3D12Framebuffer/GetRenderTargetHandle.md | 31 + .../GetRenderTargetHandles.md | 30 + .../RHI/D3D12/D3D12Framebuffer/GetWidth.md | 30 + .../D3D12/D3D12Framebuffer/HasDepthStencil.md | 30 + .../RHI/D3D12/D3D12Framebuffer/Initialize.md | 36 + .../RHI/D3D12/D3D12Framebuffer/IsValid.md | 30 + .../RHI/D3D12/D3D12Framebuffer/Shutdown.md | 30 + .../D3D12/D3D12PipelineLayout/Constructor.md | 28 + .../D3D12PipelineLayout.md | 47 + .../D3D12/D3D12PipelineLayout/Destructor.md | 29 + .../GetConstantBufferRootParameterIndex.md | 45 + .../RHI/D3D12/D3D12PipelineLayout/GetDesc.md | 30 + .../D3D12PipelineLayout/GetNativeHandle.md | 30 + .../D3D12PipelineLayout/GetRootSignature.md | 30 + .../GetSamplerTableRootParameterIndex.md | 43 + .../D3D12PipelineLayout/GetSetLayoutCount.md | 30 + ...etShaderResourceTableRootParameterIndex.md | 43 + ...tUnorderedAccessTableRootParameterIndex.md | 43 + .../HasConstantBufferBinding.md | 45 + .../D3D12PipelineLayout/HasSamplerTable.md | 43 + .../HasShaderResourceTable.md | 43 + .../HasUnorderedAccessTable.md | 43 + .../D3D12/D3D12PipelineLayout/Initialize.md | 31 + .../InitializeWithDevice.md | 32 + .../RHI/D3D12/D3D12PipelineLayout/Shutdown.md | 30 + .../D3D12PipelineLayout/UsesSetLayouts.md | 30 + .../RHI/D3D12/D3D12PipelineState/Bind.md | 30 + .../D3D12/D3D12PipelineState/Constructor.md | 41 + .../D3D12PipelineState/CreateInputElement.md | 51 + .../D3D12PipelineState/D3D12PipelineState.md | 61 + .../D3D12/D3D12PipelineState/Destructor.md | 29 + .../D3D12/D3D12PipelineState/EnsureValid.md | 30 + .../D3D12/D3D12PipelineState/GetBlendState.md | 30 + .../GetComputePipelineState.md | 30 + .../D3D12PipelineState/GetComputeShader.md | 30 + .../GetDepthStencilState.md | 30 + .../RHI/D3D12/D3D12PipelineState/GetHash.md | 30 + .../D3D12PipelineState/GetInputLayout.md | 30 + .../D3D12PipelineState/GetNativeHandle.md | 30 + .../D3D12PipelineState/GetPipelineState.md | 30 + .../D3D12PipelineState/GetRasterizerState.md | 30 + .../D3D12PipelineState/GetRootSignature.md | 30 + .../RHI/D3D12/D3D12PipelineState/GetType.md | 30 + .../D3D12PipelineState/HasComputeShader.md | 30 + .../D3D12/D3D12PipelineState/Initialize.md | 32 + .../RHI/D3D12/D3D12PipelineState/IsValid.md | 30 + .../D3D12/D3D12PipelineState/SetBlendState.md | 31 + .../D3D12PipelineState/SetComputeShader.md | 31 + .../SetComputeShaderBytecodes.md | 31 + .../SetDepthStencilState.md | 31 + .../D3D12PipelineState/SetInputLayout.md | 31 + .../D3D12PipelineState/SetRasterizerState.md | 31 + .../SetRenderTargetFormats.md | 33 + .../D3D12PipelineState/SetRootSignature.md | 31 + .../D3D12PipelineState/SetSampleCount.md | 31 + .../D3D12PipelineState/SetShaderBytecodes.md | 30 + .../D3D12/D3D12PipelineState/SetTopology.md | 31 + .../RHI/D3D12/D3D12PipelineState/Shutdown.md | 30 + .../RHI/D3D12/D3D12PipelineState/Unbind.md | 30 + .../RHI/D3D12/D3D12QueryHeap/Constructor.md | 28 + .../D3D12/D3D12QueryHeap/D3D12QueryHeap.md | 37 + .../RHI/D3D12/D3D12QueryHeap/Destructor.md | 29 + .../RHI/D3D12/D3D12QueryHeap/GetCount.md | 30 + .../D3D12/D3D12QueryHeap/GetNativeHandle.md | 30 + .../RHI/D3D12/D3D12QueryHeap/GetQueryHeap.md | 30 + .../RHI/D3D12/D3D12QueryHeap/GetType.md | 30 + .../RHI/D3D12/D3D12QueryHeap/Initialize.md | 33 + .../RHI/D3D12/D3D12QueryHeap/Shutdown.md | 30 + .../RHI/D3D12/D3D12RenderPass/Constructor.md | 28 + .../D3D12/D3D12RenderPass/D3D12RenderPass.md | 41 + .../RHI/D3D12/D3D12RenderPass/Destructor.md | 29 + .../D3D12RenderPass/GetBeginningAccessType.md | 31 + .../GetColorAttachmentCount.md | 30 + .../D3D12RenderPass/GetColorAttachments.md | 30 + .../GetDepthBeginningAccessType.md | 30 + .../GetDepthEndingAccessType.md | 30 + .../GetDepthStencilAttachment.md | 30 + .../D3D12RenderPass/GetEndingAccessType.md | 31 + .../D3D12/D3D12RenderPass/GetNativeHandle.md | 30 + .../RHI/D3D12/D3D12RenderPass/Initialize.md | 33 + .../RHI/D3D12/D3D12RenderPass/Shutdown.md | 30 + .../D3D12/D3D12ResourceView/Constructor.md | 28 + .../CreateDepthStencilDesc.md | 32 + .../CreateRenderTargetDesc.md | 32 + .../CreateShaderResourceDesc.md | 33 + .../CreateUnorderedAccessDesc.md | 32 + .../D3D12ResourceView/D3D12ResourceView.md | 59 + .../RHI/D3D12/D3D12ResourceView/Destructor.md | 29 + .../D3D12ResourceView/GetBufferLocation.md | 30 + .../D3D12ResourceView/GetBufferOffset.md | 30 + .../D3D12/D3D12ResourceView/GetBufferSize.md | 30 + .../D3D12ResourceView/GetBufferStride.md | 30 + .../D3D12/D3D12ResourceView/GetCPUHandle.md | 30 + .../D3D12/D3D12ResourceView/GetDimension.md | 30 + .../RHI/D3D12/D3D12ResourceView/GetFormat.md | 30 + .../D3D12/D3D12ResourceView/GetGPUHandle.md | 30 + .../RHI/D3D12/D3D12ResourceView/GetHeap.md | 30 + .../D3D12ResourceView/GetNativeHandle.md | 30 + .../D3D12/D3D12ResourceView/GetResource.md | 30 + .../D3D12/D3D12ResourceView/GetSlotIndex.md | 30 + .../D3D12/D3D12ResourceView/GetViewType.md | 30 + .../InitializeAsConstantBuffer.md | 35 + .../InitializeAsDepthStencil.md | 35 + .../InitializeAsIndexBuffer.md | 32 + .../InitializeAsRenderTarget.md | 35 + .../InitializeAsShaderResource.md | 35 + .../InitializeAsUnorderedAccess.md | 35 + .../InitializeAsVertexBuffer.md | 32 + .../RHI/D3D12/D3D12ResourceView/IsValid.md | 30 + .../D3D12/D3D12ResourceView/SetOwnedHeap.md | 31 + .../D3D12/D3D12ResourceView/SetViewType.md | 31 + .../RHI/D3D12/D3D12ResourceView/Shutdown.md | 30 + .../D3D12/D3D12RootSignature/Constructor.md | 28 + .../Create32BitConstants.md | 34 + .../RHI/D3D12/D3D12RootSignature/CreateCBV.md | 33 + .../D3D12/D3D12RootSignature/CreateDesc.md | 35 + .../CreateDescriptorRange.md | 34 + .../CreateDescriptorTable.md | 33 + .../RHI/D3D12/D3D12RootSignature/CreateSRV.md | 33 + .../D3D12RootSignature/CreateSamplerDesc.md | 33 + .../D3D12RootSignature/CreateStaticSampler.md | 33 + .../RHI/D3D12/D3D12RootSignature/CreateUAV.md | 33 + .../D3D12RootSignature/D3D12RootSignature.md | 45 + .../D3D12/D3D12RootSignature/Destructor.md | 29 + .../D3D12RootSignature/GetNativeHandle.md | 30 + .../D3D12RootSignature/GetParameterCount.md | 30 + .../D3D12RootSignature/GetRootSignature.md | 30 + .../D3D12/D3D12RootSignature/Initialize.md | 32 + .../RHI/D3D12/D3D12RootSignature/Shutdown.md | 30 + .../XCEngine/RHI/D3D12/D3D12Sampler/Bind.md | 31 + .../RHI/D3D12/D3D12Sampler/Constructor.md | 28 + .../RHI/D3D12/D3D12Sampler/D3D12Sampler.md | 38 + .../RHI/D3D12/D3D12Sampler/Destructor.md | 29 + .../RHI/D3D12/D3D12Sampler/GetDesc.md | 30 + .../XCEngine/RHI/D3D12/D3D12Sampler/GetID.md | 30 + .../RHI/D3D12/D3D12Sampler/GetNativeHandle.md | 30 + .../RHI/D3D12/D3D12Sampler/Initialize.md | 32 + .../RHI/D3D12/D3D12Sampler/Shutdown.md | 30 + .../XCEngine/RHI/D3D12/D3D12Sampler/Unbind.md | 31 + .../RHI/D3D12/D3D12Screenshot/Capture.md | 65 + .../D3D12/D3D12Screenshot/D3D12Screenshot.md | 31 + .../RHI/D3D12/D3D12Screenshot/Shutdown.md | 30 + .../XCEngine/RHI/D3D12/D3D12Shader/Compile.md | 34 + .../RHI/D3D12/D3D12Shader/CompileFromFile.md | 33 + .../RHI/D3D12/D3D12Shader/Constructor.md | 28 + .../RHI/D3D12/D3D12Shader/D3D12Shader.md | 43 + .../RHI/D3D12/D3D12Shader/Destructor.md | 29 + .../RHI/D3D12/D3D12Shader/GetBytecode.md | 30 + .../RHI/D3D12/D3D12Shader/GetBytecodeSize.md | 30 + .../RHI/D3D12/D3D12Shader/GetD3D12Bytecode.md | 30 + .../RHI/D3D12/D3D12Shader/GetInputLayout.md | 30 + .../RHI/D3D12/D3D12Shader/GetNativeHandle.md | 30 + .../XCEngine/RHI/D3D12/D3D12Shader/GetType.md | 30 + .../RHI/D3D12/D3D12Shader/GetUniformInfo.md | 31 + .../RHI/D3D12/D3D12Shader/GetUniformInfos.md | 30 + .../XCEngine/RHI/D3D12/D3D12Shader/IsValid.md | 30 + .../RHI/D3D12/D3D12Shader/Shutdown.md | 30 + .../RHI/D3D12/D3D12SwapChain/Constructor.md | 28 + .../D3D12/D3D12SwapChain/D3D12SwapChain.md | 40 + .../RHI/D3D12/D3D12SwapChain/Destructor.md | 29 + .../RHI/D3D12/D3D12SwapChain/GetBackBuffer.md | 44 + .../D3D12SwapChain/GetCurrentBackBuffer.md | 30 + .../GetCurrentBackBufferIndex.md | 30 + .../D3D12SwapChain/GetNativeCommandQueue.md | 30 + .../D3D12/D3D12SwapChain/GetNativeHandle.md | 30 + .../RHI/D3D12/D3D12SwapChain/Initialize.md | 51 + .../RHI/D3D12/D3D12SwapChain/Present.md | 32 + .../RHI/D3D12/D3D12SwapChain/Resize.md | 32 + .../RHI/D3D12/D3D12SwapChain/Shutdown.md | 30 + .../RHI/D3D12/D3D12Texture/Constructor.md | 28 + .../RHI/D3D12/D3D12Texture/D3D12Texture.md | 55 + .../RHI/D3D12/D3D12Texture/Destructor.md | 29 + .../RHI/D3D12/D3D12Texture/GetArraySize.md | 30 + .../RHI/D3D12/D3D12Texture/GetDepth.md | 30 + .../RHI/D3D12/D3D12Texture/GetDesc.md | 30 + .../RHI/D3D12/D3D12Texture/GetFormat.md | 30 + .../RHI/D3D12/D3D12Texture/GetGPUAddress.md | 30 + .../RHI/D3D12/D3D12Texture/GetHeight.md | 30 + .../RHI/D3D12/D3D12Texture/GetMipLevels.md | 30 + .../RHI/D3D12/D3D12Texture/GetName.md | 30 + .../RHI/D3D12/D3D12Texture/GetNativeHandle.md | 30 + .../RHI/D3D12/D3D12Texture/GetResource.md | 30 + .../RHI/D3D12/D3D12Texture/GetSize.md | 30 + .../RHI/D3D12/D3D12Texture/GetState.md | 30 + .../RHI/D3D12/D3D12Texture/GetTextureType.md | 30 + .../RHI/D3D12/D3D12Texture/GetWidth.md | 30 + .../RHI/D3D12/D3D12Texture/Initialize.md | 33 + .../D3D12Texture/InitializeDepthStencil.md | 34 + .../D3D12/D3D12Texture/InitializeFromData.md | 38 + .../D3D12Texture/InitializeFromExisting.md | 32 + .../RHI/D3D12/D3D12Texture/OwnsResource.md | 30 + .../RHI/D3D12/D3D12Texture/SetFormat.md | 31 + .../RHI/D3D12/D3D12Texture/SetName.md | 31 + .../RHI/D3D12/D3D12Texture/SetState.md | 31 + .../RHI/D3D12/D3D12Texture/SetTextureType.md | 31 + .../RHI/D3D12/D3D12Texture/Shutdown.md | 30 + .../RHI/D3D12/D3D12Types/D3D12Types.md | 18 + docs/api/XCEngine/RHI/OpenGL/OpenGL.md | 42 + .../XCEngine/RHI/OpenGL/OpenGLBuffer/Bind.md | 30 + .../RHI/OpenGL/OpenGLBuffer/BindBase.md | 32 + .../RHI/OpenGL/OpenGLBuffer/Constructor.md | 28 + .../RHI/OpenGL/OpenGLBuffer/Destructor.md | 29 + .../RHI/OpenGL/OpenGLBuffer/GetBufferType.md | 30 + .../XCEngine/RHI/OpenGL/OpenGLBuffer/GetID.md | 30 + .../RHI/OpenGL/OpenGLBuffer/GetName.md | 30 + .../OpenGL/OpenGLBuffer/GetNativeHandle.md | 30 + .../RHI/OpenGL/OpenGLBuffer/GetSize.md | 30 + .../RHI/OpenGL/OpenGLBuffer/GetState.md | 30 + .../RHI/OpenGL/OpenGLBuffer/GetStride.md | 30 + .../RHI/OpenGL/OpenGLBuffer/GetType.md | 30 + .../RHI/OpenGL/OpenGLBuffer/Initialize.md | 34 + .../OpenGLBuffer/InitializeIndexBuffer.md | 32 + .../OpenGLBuffer/InitializeVertexBuffer.md | 32 + .../RHI/OpenGL/OpenGLBuffer/IsDynamic.md | 30 + .../XCEngine/RHI/OpenGL/OpenGLBuffer/Map.md | 30 + .../RHI/OpenGL/OpenGLBuffer/OpenGLBuffer.md | 55 + .../RHI/OpenGL/OpenGLBuffer/SetBufferType.md | 31 + .../RHI/OpenGL/OpenGLBuffer/SetData.md | 33 + .../RHI/OpenGL/OpenGLBuffer/SetName.md | 31 + .../RHI/OpenGL/OpenGLBuffer/SetState.md | 31 + .../RHI/OpenGL/OpenGLBuffer/SetStride.md | 31 + .../RHI/OpenGL/OpenGLBuffer/Shutdown.md | 30 + .../RHI/OpenGL/OpenGLBuffer/Unbind.md | 30 + .../XCEngine/RHI/OpenGL/OpenGLBuffer/Unmap.md | 30 + .../OpenGL/OpenGLCommandList/BeginQuery.md | 32 + .../OpenGLCommandList/BeginRenderPass.md | 35 + .../OpenGLCommandList/BindBufferBase.md | 33 + .../OpenGLCommandList/BindBufferRange.md | 35 + .../OpenGLCommandList/BindFragDataLocation.md | 33 + .../BindFragDataLocationIndexed.md | 34 + .../OpenGLCommandList/BindImageTexture.md | 37 + .../OpenGL/OpenGLCommandList/BindSampler.md | 32 + .../OpenGL/OpenGLCommandList/BindSamplers.md | 33 + .../OpenGL/OpenGLCommandList/BindTexture.md | 33 + .../OpenGL/OpenGLCommandList/BindTextures.md | 33 + .../OpenGLCommandList/BindVertexArray.md | 46 + .../OpenGLCommandList/BlitFramebuffer.md | 40 + .../RHI/OpenGL/OpenGLCommandList/Clear.md | 35 + .../OpenGL/OpenGLCommandList/ClearColor.md | 34 + .../OpenGL/OpenGLCommandList/ClearDepth.md | 31 + .../OpenGLCommandList/ClearDepthStencil.md | 47 + .../OpenGLCommandList/ClearRenderTarget.md | 32 + .../OpenGL/OpenGLCommandList/ClearStencil.md | 31 + .../RHI/OpenGL/OpenGLCommandList/Close.md | 30 + .../OpenGL/OpenGLCommandList/Constructor.md | 28 + .../OpenGLCommandList/CopyImageSubData.md | 45 + .../OpenGL/OpenGLCommandList/CopyResource.md | 32 + .../OpenGL/OpenGLCommandList/Destructor.md | 29 + .../RHI/OpenGL/OpenGLCommandList/Disable.md | 31 + .../RHI/OpenGL/OpenGLCommandList/Disablei.md | 32 + .../RHI/OpenGL/OpenGLCommandList/Dispatch.md | 33 + .../OpenGLCommandList/DispatchCompute.md | 33 + .../OpenGLCommandList/DispatchIndirect.md | 32 + .../RHI/OpenGL/OpenGLCommandList/Draw.md | 49 + .../OpenGL/OpenGLCommandList/DrawIndexed.md | 51 + .../OpenGLCommandList/DrawIndexedIndirect.md | 35 + .../OpenGLCommandList/DrawIndexedInstanced.md | 36 + .../OpenGL/OpenGLCommandList/DrawIndirect.md | 35 + .../OpenGL/OpenGLCommandList/DrawInstanced.md | 35 + .../RHI/OpenGL/OpenGLCommandList/Enable.md | 31 + .../OpenGLCommandList/EnableBlending.md | 31 + .../OpenGL/OpenGLCommandList/EnableCulling.md | 31 + .../OpenGLCommandList/EnableDepthTest.md | 31 + .../OpenGLCommandList/EnableDepthWrite.md | 31 + .../OpenGLCommandList/EnableScissorTest.md | 31 + .../OpenGLCommandList/EnableStencilTest.md | 31 + .../RHI/OpenGL/OpenGLCommandList/Enablei.md | 32 + .../RHI/OpenGL/OpenGLCommandList/EndQuery.md | 31 + .../OpenGL/OpenGLCommandList/EndRenderPass.md | 30 + .../OpenGLCommandList/GetQueryObjectiv.md | 33 + .../OpenGLCommandList/GetQueryObjectuiv.md | 33 + .../InvalidateFramebuffer.md | 33 + .../InvalidateSubFramebuffer.md | 37 + .../OpenGL/OpenGLCommandList/MemoryBarrier.md | 31 + .../OpenGLCommandList/MultiDrawArrays.md | 34 + .../OpenGLCommandList/MultiDrawElements.md | 35 + .../OpenGLCommandList/OpenGLCommandList.md | 135 ++ .../OpenGL/OpenGLCommandList/PopDebugGroup.md | 30 + .../OpenGLCommandList/PushDebugGroup.md | 34 + .../OpenGL/OpenGLCommandList/ReadPixels.md | 37 + .../RHI/OpenGL/OpenGLCommandList/Reset.md | 30 + .../OpenGL/OpenGLCommandList/SetBlendColor.md | 34 + .../OpenGLCommandList/SetBlendEquation.md | 31 + .../OpenGLCommandList/SetBlendFactor.md | 31 + .../OpenGL/OpenGLCommandList/SetBlendFunc.md | 32 + .../OpenGLCommandList/SetBlendFuncSeparate.md | 34 + .../SetComputeDescriptorSets.md | 34 + .../OpenGL/OpenGLCommandList/SetCullFace.md | 31 + .../OpenGL/OpenGLCommandList/SetDepthFunc.md | 31 + .../OpenGL/OpenGLCommandList/SetFrontFace.md | 31 + .../SetGraphicsDescriptorSets.md | 34 + .../OpenGLCommandList/SetIndexBuffer.md | 59 + .../OpenGLCommandList/SetPipelineState.md | 31 + .../OpenGLCommandList/SetPolygonMode.md | 31 + .../OpenGLCommandList/SetPolygonOffset.md | 32 + .../OpenGLCommandList/SetPrimitiveTopology.md | 31 + .../OpenGLCommandList/SetPrimitiveType.md | 31 + .../OpenGLCommandList/SetRenderTargets.md | 33 + .../OpenGL/OpenGLCommandList/SetScissor.md | 34 + .../OpenGLCommandList/SetScissorRect.md | 31 + .../OpenGLCommandList/SetScissorRects.md | 46 + .../RHI/OpenGL/OpenGLCommandList/SetShader.md | 31 + .../OpenGLCommandList/SetStencilFunc.md | 33 + .../OpenGL/OpenGLCommandList/SetStencilOp.md | 33 + .../OpenGL/OpenGLCommandList/SetStencilRef.md | 31 + .../OpenGL/OpenGLCommandList/SetUniform1f.md | 32 + .../OpenGL/OpenGLCommandList/SetUniform1fv.md | 33 + .../OpenGL/OpenGLCommandList/SetUniform1i.md | 32 + .../OpenGL/OpenGLCommandList/SetUniform2f.md | 33 + .../OpenGL/OpenGLCommandList/SetUniform2fv.md | 33 + .../OpenGL/OpenGLCommandList/SetUniform3f.md | 34 + .../OpenGL/OpenGLCommandList/SetUniform3fv.md | 33 + .../OpenGL/OpenGLCommandList/SetUniform4f.md | 35 + .../OpenGL/OpenGLCommandList/SetUniform4fv.md | 33 + .../OpenGLCommandList/SetUniformFloat.md | 32 + .../OpenGL/OpenGLCommandList/SetUniformInt.md | 32 + .../OpenGLCommandList/SetUniformMat4.md | 32 + .../OpenGLCommandList/SetUniformMatrix4fv.md | 34 + .../OpenGLCommandList/SetUniformVec3.md | 34 + .../OpenGLCommandList/SetUniformVec4.md | 35 + .../OpenGLCommandList/SetVertexBuffer.md | 33 + .../OpenGLCommandList/SetVertexBuffers.md | 52 + .../OpenGL/OpenGLCommandList/SetViewport.md | 63 + .../OpenGL/OpenGLCommandList/SetViewports.md | 46 + .../RHI/OpenGL/OpenGLCommandList/Shutdown.md | 30 + .../OpenGLCommandList/TextureBarrier.md | 30 + .../OpenGLCommandList/TransitionBarrier.md | 33 + .../OpenGL/OpenGLCommandList/UseProgram.md | 31 + .../RHI/OpenGL/OpenGLCommandList/UseShader.md | 31 + .../OpenGL/OpenGLCommandQueue/Constructor.md | 28 + .../OpenGL/OpenGLCommandQueue/Destructor.md | 29 + .../OpenGLCommandQueue/ExecuteCommandLists.md | 32 + .../OpenGLCommandQueue/GetCompletedValue.md | 30 + .../OpenGLCommandQueue/GetCurrentFrame.md | 30 + .../OpenGLCommandQueue/GetNativeHandle.md | 30 + .../GetTimestampFrequency.md | 30 + .../RHI/OpenGL/OpenGLCommandQueue/GetType.md | 30 + .../OpenGLCommandQueue/OpenGLCommandQueue.md | 42 + .../RHI/OpenGL/OpenGLCommandQueue/Shutdown.md | 30 + .../RHI/OpenGL/OpenGLCommandQueue/Signal.md | 32 + .../RHI/OpenGL/OpenGLCommandQueue/Wait.md | 32 + .../OpenGL/OpenGLCommandQueue/WaitForIdle.md | 30 + .../WaitForPreviousFrame.md | 30 + .../RHI/OpenGL/OpenGLDepthStencilView/Bind.md | 30 + .../OpenGLDepthStencilView/BindFramebuffer.md | 31 + .../OpenGLDepthStencilView/ClearDepth.md | 31 + .../ClearDepthStencil.md | 32 + .../OpenGLDepthStencilView/ClearStencil.md | 31 + .../OpenGLDepthStencilView/Constructor.md | 28 + .../OpenGLDepthStencilView/Destructor.md | 29 + .../OpenGLDepthStencilView/GetFramebuffer.md | 30 + .../OpenGLDepthStencilView/GetHeight.md | 30 + .../OpenGLDepthStencilView/GetMipLevel.md | 30 + .../OpenGLDepthStencilView/GetTexture.md | 30 + .../OpenGL/OpenGLDepthStencilView/GetWidth.md | 30 + .../OpenGLDepthStencilView/Initialize.md | 46 + .../InitializeCubemap.md | 33 + .../OpenGLDepthStencilView.md | 49 + .../OpenGL/OpenGLDepthStencilView/Shutdown.md | 30 + .../OpenGL/OpenGLDepthStencilView/Unbind.md | 30 + .../UnbindFramebuffer.md | 30 + .../OpenGLDescriptorPool/AllocateSet.md | 31 + .../OpenGLDescriptorPool/Constructor.md | 28 + .../OpenGL/OpenGLDescriptorPool/Destructor.md | 29 + .../OpenGL/OpenGLDescriptorPool/FreeSet.md | 31 + .../GetDescriptorCount.md | 30 + .../OpenGLDescriptorPool/GetNativeHandle.md | 30 + .../OpenGL/OpenGLDescriptorPool/GetType.md | 30 + .../OpenGL/OpenGLDescriptorPool/Initialize.md | 31 + .../OpenGLDescriptorPool.md | 39 + .../SetTextureUnitAllocator.md | 31 + .../OpenGL/OpenGLDescriptorPool/Shutdown.md | 30 + .../RHI/OpenGL/OpenGLDescriptorSet/Bind.md | 30 + .../BindWithPipelineLayout.md | 32 + .../OpenGL/OpenGLDescriptorSet/Constructor.md | 28 + .../OpenGL/OpenGLDescriptorSet/Destructor.md | 29 + .../OpenGLDescriptorSet/GetBindingCount.md | 30 + .../OpenGLDescriptorSet/GetBindingPoint.md | 31 + .../OpenGL/OpenGLDescriptorSet/GetBindings.md | 30 + .../GetConstantBufferData.md | 30 + .../GetConstantBufferSize.md | 30 + .../OpenGL/OpenGLDescriptorSet/Initialize.md | 33 + .../OpenGLDescriptorSet/IsConstantDirty.md | 30 + .../OpenGLDescriptorSet/MarkConstantClean.md | 30 + .../OpenGLDescriptorSet.md | 47 + .../OpenGL/OpenGLDescriptorSet/Shutdown.md | 30 + .../RHI/OpenGL/OpenGLDescriptorSet/Unbind.md | 30 + .../RHI/OpenGL/OpenGLDescriptorSet/Update.md | 32 + .../OpenGLDescriptorSet/UpdateSampler.md | 32 + .../OpenGLDescriptorSet/WriteConstant.md | 34 + .../RHI/OpenGL/OpenGLDevice/Constructor.md | 28 + .../RHI/OpenGL/OpenGLDevice/CreateBuffer.md | 31 + .../OpenGL/OpenGLDevice/CreateCommandList.md | 31 + .../OpenGL/OpenGLDevice/CreateCommandQueue.md | 31 + .../OpenGLDevice/CreateDepthStencilView.md | 32 + .../OpenGLDevice/CreateDescriptorPool.md | 31 + .../OpenGLDevice/CreateDescriptorSet.md | 32 + .../RHI/OpenGL/OpenGLDevice/CreateFence.md | 31 + .../OpenGL/OpenGLDevice/CreateFramebuffer.md | 36 + .../OpenGLDevice/CreateIndexBufferView.md | 32 + .../OpenGLDevice/CreatePipelineLayout.md | 31 + .../OpenGLDevice/CreatePipelineState.md | 31 + .../OpenGL/OpenGLDevice/CreateRenderPass.md | 33 + .../OpenGLDevice/CreateRenderTargetView.md | 32 + .../RHI/OpenGL/OpenGLDevice/CreateSampler.md | 31 + .../RHI/OpenGL/OpenGLDevice/CreateShader.md | 31 + .../OpenGLDevice/CreateShaderResourceView.md | 32 + .../OpenGL/OpenGLDevice/CreateSwapChain.md | 32 + .../RHI/OpenGL/OpenGLDevice/CreateTexture.md | 47 + .../OpenGLDevice/CreateUnorderedAccessView.md | 32 + .../OpenGLDevice/CreateVertexBufferView.md | 32 + .../RHI/OpenGL/OpenGLDevice/Destructor.md | 29 + .../OpenGL/OpenGLDevice/GetCapabilities.md | 30 + .../RHI/OpenGL/OpenGLDevice/GetDeviceInfo.md | 30 + .../OpenGL/OpenGLDevice/GetDeviceInfoImpl.md | 30 + .../OpenGL/OpenGLDevice/GetNativeContext.md | 30 + .../OpenGL/OpenGLDevice/GetNativeDevice.md | 30 + .../OpenGL/OpenGLDevice/GetNativeHandle.md | 30 + .../RHI/OpenGL/OpenGLDevice/Initialize.md | 31 + .../InitializeWithExistingWindow.md | 31 + .../OpenGL/OpenGLDevice/MakeContextCurrent.md | 30 + .../RHI/OpenGL/OpenGLDevice/OpenGLDevice.md | 61 + .../RHI/OpenGL/OpenGLDevice/Shutdown.md | 30 + .../RHI/OpenGL/OpenGLEnums/OpenGLEnums.md | 18 + .../RHI/OpenGL/OpenGLFence/Constructor.md | 28 + .../RHI/OpenGL/OpenGLFence/Destructor.md | 29 + .../OpenGL/OpenGLFence/GetCompletedValue.md | 30 + .../RHI/OpenGL/OpenGLFence/GetNativeHandle.md | 30 + .../RHI/OpenGL/OpenGLFence/Initialize.md | 31 + .../RHI/OpenGL/OpenGLFence/OpenGLFence.md | 37 + .../RHI/OpenGL/OpenGLFence/Shutdown.md | 30 + .../XCEngine/RHI/OpenGL/OpenGLFence/Signal.md | 43 + .../XCEngine/RHI/OpenGL/OpenGLFence/Wait.md | 31 + .../RHI/OpenGL/OpenGLFramebuffer/Bind.md | 30 + .../OpenGLFramebuffer/BindFramebuffer.md | 31 + .../OpenGL/OpenGLFramebuffer/ClearColor.md | 35 + .../OpenGL/OpenGLFramebuffer/ClearDepth.md | 31 + .../OpenGLFramebuffer/ClearDepthStencil.md | 32 + .../OpenGL/OpenGLFramebuffer/ClearStencil.md | 31 + .../OpenGL/OpenGLFramebuffer/Constructor.md | 28 + .../OpenGL/OpenGLFramebuffer/Destructor.md | 29 + .../OpenGLFramebuffer/GetFramebuffer.md | 30 + .../RHI/OpenGL/OpenGLFramebuffer/GetHeight.md | 30 + .../OpenGLFramebuffer/GetNativeHandle.md | 30 + .../RHI/OpenGL/OpenGLFramebuffer/GetWidth.md | 30 + .../OpenGL/OpenGLFramebuffer/Initialize.md | 49 + .../RHI/OpenGL/OpenGLFramebuffer/IsValid.md | 30 + .../OpenGLFramebuffer/OpenGLFramebuffer.md | 49 + .../RHI/OpenGL/OpenGLFramebuffer/Shutdown.md | 30 + .../RHI/OpenGL/OpenGLFramebuffer/Unbind.md | 30 + .../OpenGLFramebuffer/UnbindFramebuffer.md | 30 + .../OpenGLPipelineLayout/Constructor.md | 28 + .../OpenGL/OpenGLPipelineLayout/Destructor.md | 29 + .../GetConstantBufferBindingPoint.md | 32 + .../OpenGL/OpenGLPipelineLayout/GetDesc.md | 30 + .../OpenGLPipelineLayout/GetNativeHandle.md | 30 + .../GetSamplerBindingPoint.md | 32 + .../OpenGLPipelineLayout/GetSetLayoutCount.md | 30 + .../GetShaderResourceBindingPoint.md | 32 + .../GetUnorderedAccessBindingPoint.md | 32 + .../HasConstantBufferBinding.md | 32 + .../OpenGLPipelineLayout/HasSamplerBinding.md | 32 + .../HasShaderResourceBinding.md | 32 + .../HasUnorderedAccessBinding.md | 32 + .../OpenGL/OpenGLPipelineLayout/Initialize.md | 31 + .../OpenGLPipelineLayout.md | 45 + .../OpenGL/OpenGLPipelineLayout/Shutdown.md | 30 + .../OpenGLPipelineLayout/UsesSetLayouts.md | 30 + .../RHI/OpenGL/OpenGLPipelineState/Apply.md | 30 + .../OpenGL/OpenGLPipelineState/ApplyBlend.md | 30 + .../OpenGLPipelineState/ApplyDepthStencil.md | 30 + .../OpenGLPipelineState/ApplyRasterizer.md | 30 + .../OpenGLPipelineState/ApplyScissor.md | 30 + .../OpenGLPipelineState/ApplyViewport.md | 30 + .../OpenGLPipelineState/AttachShader.md | 31 + .../RHI/OpenGL/OpenGLPipelineState/Bind.md | 30 + .../RHI/OpenGL/OpenGLPipelineState/Clear.md | 31 + .../OpenGL/OpenGLPipelineState/Constructor.md | 28 + .../OpenGL/OpenGLPipelineState/Destructor.md | 29 + .../OpenGLPipelineState/DetachShader.md | 30 + .../OpenGL/OpenGLPipelineState/EnsureValid.md | 30 + .../OpenGLPipelineState/GetBlendState.md | 30 + .../OpenGLPipelineState/GetComputeShader.md | 30 + .../GetDepthStencilState.md | 30 + .../RHI/OpenGL/OpenGLPipelineState/GetHash.md | 30 + .../OpenGLPipelineState/GetInputLayout.md | 30 + .../OpenGLPipelineState/GetNativeHandle.md | 30 + .../GetOpenGLBlendState.md | 30 + .../GetOpenGLDepthStencilState.md | 30 + .../GetOpenGLRasterizerState.md | 30 + .../OpenGL/OpenGLPipelineState/GetProgram.md | 30 + .../OpenGLPipelineState/GetRasterizerState.md | 30 + .../RHI/OpenGL/OpenGLPipelineState/GetType.md | 30 + .../OpenGLPipelineState/HasComputeShader.md | 30 + .../RHI/OpenGL/OpenGLPipelineState/IsValid.md | 30 + .../OpenGLPipelineState.md | 76 ++ .../OpenGLPipelineState/SetBlendState.md | 44 + .../OpenGLPipelineState/SetClearColor.md | 34 + .../OpenGLPipelineState/SetComputeShader.md | 31 + .../SetDepthStencilState.md | 44 + .../OpenGLPipelineState/SetInputLayout.md | 31 + .../SetOwnedGraphicsShader.md | 31 + .../OpenGL/OpenGLPipelineState/SetProgram.md | 31 + .../OpenGLPipelineState/SetRasterizerState.md | 44 + .../SetRenderTargetFormats.md | 33 + .../OpenGLPipelineState/SetSampleCount.md | 31 + .../OpenGL/OpenGLPipelineState/SetScissor.md | 31 + .../OpenGL/OpenGLPipelineState/SetTopology.md | 31 + .../OpenGL/OpenGLPipelineState/SetViewport.md | 31 + .../OpenGL/OpenGLPipelineState/Shutdown.md | 30 + .../RHI/OpenGL/OpenGLPipelineState/Unbind.md | 30 + .../OpenGL/OpenGLRenderPass/Constructor.md | 28 + .../RHI/OpenGL/OpenGLRenderPass/Destructor.md | 29 + .../GetColorAttachmentCount.md | 30 + .../OpenGLRenderPass/GetColorAttachments.md | 30 + .../GetDepthStencilAttachment.md | 30 + .../OpenGLRenderPass/GetNativeHandle.md | 30 + .../RHI/OpenGL/OpenGLRenderPass/Initialize.md | 33 + .../OpenGLRenderPass/OpenGLRenderPass.md | 37 + .../RHI/OpenGL/OpenGLRenderPass/Shutdown.md | 30 + .../RHI/OpenGL/OpenGLRenderTargetView/Bind.md | 46 + .../OpenGLRenderTargetView/BindFramebuffer.md | 31 + .../OpenGL/OpenGLRenderTargetView/Clear.md | 52 + .../OpenGLRenderTargetView/Constructor.md | 28 + .../OpenGLRenderTargetView/Destructor.md | 29 + .../OpenGLRenderTargetView/GetFramebuffer.md | 30 + .../OpenGLRenderTargetView/GetHeight.md | 30 + .../OpenGLRenderTargetView/GetMipLevel.md | 30 + .../OpenGLRenderTargetView/GetTexture.md | 30 + .../OpenGL/OpenGLRenderTargetView/GetWidth.md | 30 + .../OpenGLRenderTargetView/Initialize.md | 46 + .../InitializeCubemap.md | 33 + .../OpenGLRenderTargetView.md | 46 + .../OpenGL/OpenGLRenderTargetView/Shutdown.md | 30 + .../OpenGL/OpenGLRenderTargetView/Unbind.md | 30 + .../UnbindFramebuffer.md | 30 + .../OpenGL/OpenGLResourceView/Constructor.md | 28 + .../OpenGL/OpenGLResourceView/Destructor.md | 29 + .../OpenGLResourceView/GetBindingPoint.md | 30 + .../OpenGL/OpenGLResourceView/GetBuffer.md | 30 + .../OpenGLResourceView/GetBufferOffset.md | 30 + .../OpenGLResourceView/GetBufferSize.md | 30 + .../OpenGLResourceView/GetBufferStride.md | 30 + .../OpenGL/OpenGLResourceView/GetDimension.md | 30 + .../OpenGL/OpenGLResourceView/GetFormat.md | 30 + .../OpenGLResourceView/GetFramebuffer.md | 30 + .../GetFramebufferAttachment.md | 30 + .../OpenGLResourceView/GetNativeHandle.md | 30 + .../OpenGL/OpenGLResourceView/GetTexture.md | 30 + .../OpenGLResourceView/GetTextureResource.md | 30 + .../OpenGLResourceView/GetTextureUnit.md | 30 + .../OpenGL/OpenGLResourceView/GetViewType.md | 30 + .../InitializeAsConstantBuffer.md | 33 + .../InitializeAsDepthStencil.md | 33 + .../InitializeAsIndexBuffer.md | 32 + .../InitializeAsRenderTarget.md | 33 + .../InitializeAsShaderResource.md | 33 + .../InitializeAsUnorderedAccess.md | 33 + .../InitializeAsVertexBuffer.md | 32 + .../RHI/OpenGL/OpenGLResourceView/IsValid.md | 30 + .../OpenGLResourceView/OpenGLResourceView.md | 54 + .../RHI/OpenGL/OpenGLResourceView/Shutdown.md | 30 + .../XCEngine/RHI/OpenGL/OpenGLSampler/Bind.md | 31 + .../RHI/OpenGL/OpenGLSampler/Constructor.md | 28 + .../RHI/OpenGL/OpenGLSampler/Destructor.md | 29 + .../RHI/OpenGL/OpenGLSampler/GetID.md | 42 + .../OpenGL/OpenGLSampler/GetNativeHandle.md | 30 + .../RHI/OpenGL/OpenGLSampler/Initialize.md | 31 + .../RHI/OpenGL/OpenGLSampler/OpenGLSampler.md | 41 + .../RHI/OpenGL/OpenGLSampler/Shutdown.md | 30 + .../RHI/OpenGL/OpenGLSampler/Unbind.md | 31 + .../RHI/OpenGL/OpenGLScreenshot/Capture.md | 63 + .../OpenGLScreenshot/OpenGLScreenshot.md | 31 + .../RHI/OpenGL/OpenGLScreenshot/Shutdown.md | 30 + .../RHI/OpenGL/OpenGLShader/Compile.md | 73 ++ .../RHI/OpenGL/OpenGLShader/CompileCompute.md | 31 + .../OpenGL/OpenGLShader/CompileFromFile.md | 60 + .../RHI/OpenGL/OpenGLShader/Constructor.md | 28 + .../RHI/OpenGL/OpenGLShader/Destructor.md | 29 + .../XCEngine/RHI/OpenGL/OpenGLShader/GetID.md | 30 + .../OpenGL/OpenGLShader/GetNativeHandle.md | 30 + .../RHI/OpenGL/OpenGLShader/GetType.md | 30 + .../RHI/OpenGL/OpenGLShader/GetUniformInfo.md | 31 + .../OpenGL/OpenGLShader/GetUniformInfos.md | 30 + .../OpenGL/OpenGLShader/GetUniformLocation.md | 31 + .../RHI/OpenGL/OpenGLShader/IsValid.md | 30 + .../RHI/OpenGL/OpenGLShader/OpenGLShader.md | 43 + .../RHI/OpenGL/OpenGLShader/Shutdown.md | 30 + .../XCEngine/RHI/OpenGL/OpenGLShader/Use.md | 30 + .../RHI/OpenGL/OpenGLSwapChain/Constructor.md | 28 + .../RHI/OpenGL/OpenGLSwapChain/Destructor.md | 29 + .../OpenGLSwapChain/GetCurrentBackBuffer.md | 30 + .../GetCurrentBackBufferIndex.md | 30 + .../RHI/OpenGL/OpenGLSwapChain/GetHeight.md | 30 + .../OpenGL/OpenGLSwapChain/GetNativeHandle.md | 30 + .../RHI/OpenGL/OpenGLSwapChain/GetWidth.md | 30 + .../RHI/OpenGL/OpenGLSwapChain/Initialize.md | 34 + .../OpenGL/OpenGLSwapChain/OpenGLSwapChain.md | 43 + .../RHI/OpenGL/OpenGLSwapChain/Present.md | 32 + .../RHI/OpenGL/OpenGLSwapChain/Resize.md | 32 + .../RHI/OpenGL/OpenGLSwapChain/Shutdown.md | 30 + .../RHI/OpenGL/OpenGLSwapChain/SwapBuffers.md | 30 + .../XCEngine/RHI/OpenGL/OpenGLTexture/Bind.md | 31 + .../RHI/OpenGL/OpenGLTexture/BindImage.md | 33 + .../RHI/OpenGL/OpenGLTexture/Constructor.md | 28 + .../RHI/OpenGL/OpenGLTexture/Destructor.md | 29 + .../OpenGL/OpenGLTexture/GenerateMipmap.md | 30 + .../RHI/OpenGL/OpenGLTexture/GetDepth.md | 30 + .../RHI/OpenGL/OpenGLTexture/GetFormat.md | 30 + .../RHI/OpenGL/OpenGLTexture/GetHeight.md | 30 + .../RHI/OpenGL/OpenGLTexture/GetID.md | 30 + .../RHI/OpenGL/OpenGLTexture/GetMipLevels.md | 30 + .../RHI/OpenGL/OpenGLTexture/GetName.md | 30 + .../OpenGL/OpenGLTexture/GetNativeHandle.md | 30 + .../RHI/OpenGL/OpenGLTexture/GetOpenGLType.md | 30 + .../RHI/OpenGL/OpenGLTexture/GetState.md | 30 + .../OpenGL/OpenGLTexture/GetTextureType.md | 30 + .../RHI/OpenGL/OpenGLTexture/GetWidth.md | 30 + .../RHI/OpenGL/OpenGLTexture/Initialize.md | 37 + .../RHI/OpenGL/OpenGLTexture/Initialize2D.md | 35 + .../OpenGL/OpenGLTexture/InitializeCubeMap.md | 34 + .../RHI/OpenGL/OpenGLTexture/LoadFromFile.md | 32 + .../RHI/OpenGL/OpenGLTexture/OpenGLTexture.md | 59 + .../RHI/OpenGL/OpenGLTexture/SetFiltering.md | 32 + .../RHI/OpenGL/OpenGLTexture/SetFormat.md | 31 + .../RHI/OpenGL/OpenGLTexture/SetName.md | 31 + .../RHI/OpenGL/OpenGLTexture/SetState.md | 31 + .../RHI/OpenGL/OpenGLTexture/SetWrapping.md | 33 + .../RHI/OpenGL/OpenGLTexture/Shutdown.md | 30 + .../RHI/OpenGL/OpenGLTexture/Unbind.md | 30 + .../OpenGLTextureUnitAllocator/Allocate.md | 30 + .../OpenGLTextureUnitAllocator/BindTexture.md | 32 + .../OpenGLTextureUnitAllocator/Constructor.md | 28 + .../OpenGLTextureUnitAllocator/Destructor.md | 29 + .../OpenGL/OpenGLTextureUnitAllocator/Free.md | 31 + .../GetBoundTexture.md | 31 + .../OpenGLTextureUnitAllocator/GetMaxUnits.md | 30 + .../OpenGLTextureUnitAllocator/Initialize.md | 31 + .../OpenGLTextureUnitAllocator/IsAllocated.md | 31 + .../OpenGLTextureUnitAllocator.md | 40 + .../OpenGLTextureUnitAllocator/Shutdown.md | 30 + .../UnbindTexture.md | 31 + .../OpenGLUniformBufferManager/Allocate.md | 30 + .../OpenGLUniformBufferManager/BindBuffer.md | 34 + .../OpenGLUniformBufferManager/Constructor.md | 28 + .../OpenGLUniformBufferManager/Destructor.md | 29 + .../OpenGL/OpenGLUniformBufferManager/Free.md | 31 + .../GetBoundBuffer.md | 31 + .../GetMaxBindingPoints.md | 30 + .../OpenGLUniformBufferManager/Initialize.md | 31 + .../OpenGLUniformBufferManager/IsAllocated.md | 31 + .../OpenGLUniformBufferManager.md | 40 + .../OpenGLUniformBufferManager/Shutdown.md | 30 + .../UnbindBuffer.md | 31 + .../OpenGLVertexArray/AddVertexBuffer.md | 32 + .../RHI/OpenGL/OpenGLVertexArray/Bind.md | 30 + .../OpenGL/OpenGLVertexArray/Constructor.md | 28 + .../OpenGL/OpenGLVertexArray/Destructor.md | 29 + .../RHI/OpenGL/OpenGLVertexArray/GetID.md | 30 + .../OpenGLVertexArray/GetIndexBuffer.md | 30 + .../OpenGL/OpenGLVertexArray/GetIndexCount.md | 30 + .../OpenGL/OpenGLVertexArray/Initialize.md | 30 + .../OpenGLVertexArray/OpenGLVertexArray.md | 43 + .../OpenGLVertexArray/SetIndexBuffer.md | 32 + .../RHI/OpenGL/OpenGLVertexArray/Shutdown.md | 30 + .../RHI/OpenGL/OpenGLVertexArray/Unbind.md | 30 + docs/api/XCEngine/RHI/RHI.md | 46 + docs/api/XCEngine/RHI/RHIBuffer/Destructor.md | 29 + .../XCEngine/RHI/RHIBuffer/GetBufferType.md | 30 + docs/api/XCEngine/RHI/RHIBuffer/GetName.md | 30 + .../XCEngine/RHI/RHIBuffer/GetNativeHandle.md | 30 + docs/api/XCEngine/RHI/RHIBuffer/GetSize.md | 30 + docs/api/XCEngine/RHI/RHIBuffer/GetState.md | 30 + docs/api/XCEngine/RHI/RHIBuffer/GetStride.md | 30 + docs/api/XCEngine/RHI/RHIBuffer/Map.md | 30 + docs/api/XCEngine/RHI/RHIBuffer/RHIBuffer.md | 44 + .../XCEngine/RHI/RHIBuffer/SetBufferType.md | 31 + docs/api/XCEngine/RHI/RHIBuffer/SetData.md | 33 + docs/api/XCEngine/RHI/RHIBuffer/SetName.md | 31 + docs/api/XCEngine/RHI/RHIBuffer/SetState.md | 31 + docs/api/XCEngine/RHI/RHIBuffer/SetStride.md | 31 + docs/api/XCEngine/RHI/RHIBuffer/Shutdown.md | 30 + docs/api/XCEngine/RHI/RHIBuffer/Unmap.md | 30 + .../RHI/RHICapabilities/RHICapabilities.md | 61 + .../RHI/RHICommandList/BeginRenderPass.md | 35 + docs/api/XCEngine/RHI/RHICommandList/Clear.md | 35 + .../RHI/RHICommandList/ClearDepthStencil.md | 33 + .../RHI/RHICommandList/ClearRenderTarget.md | 32 + docs/api/XCEngine/RHI/RHICommandList/Close.md | 30 + .../RHI/RHICommandList/CopyResource.md | 32 + .../XCEngine/RHI/RHICommandList/Destructor.md | 29 + .../XCEngine/RHI/RHICommandList/Dispatch.md | 33 + docs/api/XCEngine/RHI/RHICommandList/Draw.md | 34 + .../RHI/RHICommandList/DrawIndexed.md | 35 + .../RHI/RHICommandList/EndRenderPass.md | 30 + .../RHI/RHICommandList/GetNativeHandle.md | 30 + .../RHI/RHICommandList/RHICommandList.md | 60 + docs/api/XCEngine/RHI/RHICommandList/Reset.md | 30 + .../RHI/RHICommandList/SetBlendFactor.md | 31 + .../SetComputeDescriptorSets.md | 34 + .../SetGraphicsDescriptorSets.md | 34 + .../RHI/RHICommandList/SetIndexBuffer.md | 32 + .../RHI/RHICommandList/SetPipelineState.md | 31 + .../RHICommandList/SetPrimitiveTopology.md | 31 + .../RHI/RHICommandList/SetRenderTargets.md | 33 + .../RHI/RHICommandList/SetScissorRect.md | 31 + .../RHI/RHICommandList/SetScissorRects.md | 32 + .../XCEngine/RHI/RHICommandList/SetShader.md | 31 + .../RHI/RHICommandList/SetStencilRef.md | 31 + .../RHI/RHICommandList/SetVertexBuffers.md | 35 + .../RHI/RHICommandList/SetViewport.md | 31 + .../RHI/RHICommandList/SetViewports.md | 32 + .../XCEngine/RHI/RHICommandList/Shutdown.md | 30 + .../RHI/RHICommandList/TransitionBarrier.md | 33 + .../RHI/RHICommandQueue/Destructor.md | 29 + .../RHICommandQueue/ExecuteCommandLists.md | 32 + .../RHI/RHICommandQueue/GetCompletedValue.md | 30 + .../RHI/RHICommandQueue/GetCurrentFrame.md | 30 + .../RHI/RHICommandQueue/GetNativeHandle.md | 30 + .../RHICommandQueue/GetTimestampFrequency.md | 30 + .../XCEngine/RHI/RHICommandQueue/GetType.md | 30 + .../RHI/RHICommandQueue/RHICommandQueue.md | 41 + .../XCEngine/RHI/RHICommandQueue/Shutdown.md | 30 + .../XCEngine/RHI/RHICommandQueue/Signal.md | 32 + docs/api/XCEngine/RHI/RHICommandQueue/Wait.md | 32 + .../RHI/RHICommandQueue/WaitForIdle.md | 30 + .../RHICommandQueue/WaitForPreviousFrame.md | 30 + .../RHI/RHIDescriptorPool/AllocateSet.md | 31 + .../RHI/RHIDescriptorPool/Destructor.md | 29 + .../XCEngine/RHI/RHIDescriptorPool/FreeSet.md | 31 + .../RHIDescriptorPool/GetDescriptorCount.md | 30 + .../RHI/RHIDescriptorPool/GetNativeHandle.md | 30 + .../XCEngine/RHI/RHIDescriptorPool/GetType.md | 30 + .../RHI/RHIDescriptorPool/Initialize.md | 31 + .../RHIDescriptorPool/RHIDescriptorPool.md | 37 + .../RHI/RHIDescriptorPool/Shutdown.md | 30 + .../api/XCEngine/RHI/RHIDescriptorSet/Bind.md | 30 + .../RHI/RHIDescriptorSet/Destructor.md | 29 + .../RHI/RHIDescriptorSet/GetBindingCount.md | 30 + .../RHI/RHIDescriptorSet/GetBindings.md | 30 + .../RHIDescriptorSet/GetConstantBufferData.md | 30 + .../RHIDescriptorSet/GetConstantBufferSize.md | 30 + .../RHI/RHIDescriptorSet/IsConstantDirty.md | 30 + .../RHI/RHIDescriptorSet/MarkConstantClean.md | 30 + .../RHI/RHIDescriptorSet/RHIDescriptorSet.md | 42 + .../XCEngine/RHI/RHIDescriptorSet/Shutdown.md | 30 + .../XCEngine/RHI/RHIDescriptorSet/Unbind.md | 30 + .../XCEngine/RHI/RHIDescriptorSet/Update.md | 32 + .../RHI/RHIDescriptorSet/UpdateSampler.md | 32 + .../RHI/RHIDescriptorSet/WriteConstant.md | 34 + .../XCEngine/RHI/RHIDevice/CreateBuffer.md | 31 + .../RHI/RHIDevice/CreateCommandList.md | 31 + .../RHI/RHIDevice/CreateCommandQueue.md | 31 + .../RHI/RHIDevice/CreateDepthStencilView.md | 32 + .../RHI/RHIDevice/CreateDescriptorPool.md | 31 + .../RHI/RHIDevice/CreateDescriptorSet.md | 32 + .../api/XCEngine/RHI/RHIDevice/CreateFence.md | 31 + .../RHI/RHIDevice/CreateFramebuffer.md | 36 + .../RHI/RHIDevice/CreateIndexBufferView.md | 32 + .../RHI/RHIDevice/CreatePipelineLayout.md | 31 + .../RHI/RHIDevice/CreatePipelineState.md | 31 + .../RHI/RHIDevice/CreateRenderPass.md | 33 + .../RHI/RHIDevice/CreateRenderTargetView.md | 32 + .../XCEngine/RHI/RHIDevice/CreateSampler.md | 31 + .../XCEngine/RHI/RHIDevice/CreateShader.md | 31 + .../RHI/RHIDevice/CreateShaderResourceView.md | 32 + .../XCEngine/RHI/RHIDevice/CreateSwapChain.md | 32 + .../XCEngine/RHI/RHIDevice/CreateTexture.md | 47 + .../RHIDevice/CreateUnorderedAccessView.md | 32 + .../RHI/RHIDevice/CreateVertexBufferView.md | 32 + docs/api/XCEngine/RHI/RHIDevice/Destructor.md | 29 + .../XCEngine/RHI/RHIDevice/GetCapabilities.md | 30 + .../XCEngine/RHI/RHIDevice/GetDeviceInfo.md | 30 + .../XCEngine/RHI/RHIDevice/GetNativeDevice.md | 30 + docs/api/XCEngine/RHI/RHIDevice/Initialize.md | 31 + docs/api/XCEngine/RHI/RHIDevice/RHIDevice.md | 55 + docs/api/XCEngine/RHI/RHIDevice/Shutdown.md | 30 + docs/api/XCEngine/RHI/RHIEnums/RHIEnums.md | 73 ++ .../RHI/RHIFactory/CreateRHIDevice.md | 44 + .../api/XCEngine/RHI/RHIFactory/RHIFactory.md | 30 + docs/api/XCEngine/RHI/RHIFence/Destructor.md | 29 + .../RHI/RHIFence/GetCompletedValue.md | 30 + .../XCEngine/RHI/RHIFence/GetNativeHandle.md | 30 + docs/api/XCEngine/RHI/RHIFence/RHIFence.md | 35 + docs/api/XCEngine/RHI/RHIFence/Shutdown.md | 30 + docs/api/XCEngine/RHI/RHIFence/Signal.md | 43 + docs/api/XCEngine/RHI/RHIFence/Wait.md | 31 + .../XCEngine/RHI/RHIFramebuffer/Destructor.md | 29 + .../XCEngine/RHI/RHIFramebuffer/GetHeight.md | 30 + .../RHI/RHIFramebuffer/GetNativeHandle.md | 30 + .../XCEngine/RHI/RHIFramebuffer/GetWidth.md | 30 + .../XCEngine/RHI/RHIFramebuffer/Initialize.md | 36 + .../XCEngine/RHI/RHIFramebuffer/IsValid.md | 30 + .../RHI/RHIFramebuffer/RHIFramebuffer.md | 36 + .../XCEngine/RHI/RHIFramebuffer/Shutdown.md | 30 + .../RHI/RHIPipelineLayout/Destructor.md | 29 + .../RHI/RHIPipelineLayout/GetNativeHandle.md | 30 + .../RHI/RHIPipelineLayout/Initialize.md | 31 + .../RHIPipelineLayout/RHIPipelineLayout.md | 33 + .../RHI/RHIPipelineLayout/Shutdown.md | 30 + .../api/XCEngine/RHI/RHIPipelineState/Bind.md | 30 + .../RHI/RHIPipelineState/Destructor.md | 29 + .../RHI/RHIPipelineState/EnsureValid.md | 30 + .../RHI/RHIPipelineState/GetBlendState.md | 30 + .../RHI/RHIPipelineState/GetComputeShader.md | 30 + .../RHIPipelineState/GetDepthStencilState.md | 30 + .../XCEngine/RHI/RHIPipelineState/GetHash.md | 30 + .../RHI/RHIPipelineState/GetInputLayout.md | 30 + .../RHI/RHIPipelineState/GetNativeHandle.md | 30 + .../RHIPipelineState/GetRasterizerState.md | 30 + .../XCEngine/RHI/RHIPipelineState/GetType.md | 30 + .../RHI/RHIPipelineState/HasComputeShader.md | 30 + .../XCEngine/RHI/RHIPipelineState/IsValid.md | 30 + .../RHI/RHIPipelineState/RHIPipelineState.md | 52 + .../RHI/RHIPipelineState/SetBlendState.md | 31 + .../RHI/RHIPipelineState/SetComputeShader.md | 31 + .../RHIPipelineState/SetDepthStencilState.md | 31 + .../RHI/RHIPipelineState/SetInputLayout.md | 31 + .../RHIPipelineState/SetRasterizerState.md | 31 + .../SetRenderTargetFormats.md | 33 + .../RHI/RHIPipelineState/SetSampleCount.md | 31 + .../RHI/RHIPipelineState/SetTopology.md | 31 + .../XCEngine/RHI/RHIPipelineState/Shutdown.md | 30 + .../XCEngine/RHI/RHIPipelineState/Unbind.md | 30 + .../XCEngine/RHI/RHIRenderPass/Destructor.md | 29 + .../RHIRenderPass/GetColorAttachmentCount.md | 30 + .../RHI/RHIRenderPass/GetColorAttachments.md | 30 + .../GetDepthStencilAttachment.md | 30 + .../RHI/RHIRenderPass/GetNativeHandle.md | 30 + .../XCEngine/RHI/RHIRenderPass/Initialize.md | 33 + .../RHI/RHIRenderPass/RHIRenderPass.md | 37 + .../XCEngine/RHI/RHIRenderPass/Shutdown.md | 30 + .../XCEngine/RHI/RHIResource/Destructor.md | 29 + .../RHI/RHIResource/GetNativeHandle.md | 30 + docs/api/XCEngine/RHI/RHIResource/GetState.md | 30 + .../XCEngine/RHI/RHIResource/RHIResource.md | 33 + docs/api/XCEngine/RHI/RHIResource/SetState.md | 31 + .../RHI/RHIResourceView/Destructor.md | 29 + .../RHI/RHIResourceView/GetDimension.md | 30 + .../XCEngine/RHI/RHIResourceView/GetFormat.md | 30 + .../RHI/RHIResourceView/GetNativeHandle.md | 30 + .../RHI/RHIResourceView/GetViewType.md | 30 + .../XCEngine/RHI/RHIResourceView/IsValid.md | 30 + .../RHI/RHIResourceView/RHIResourceView.md | 43 + .../XCEngine/RHI/RHIResourceView/Shutdown.md | 30 + docs/api/XCEngine/RHI/RHISampler/Bind.md | 31 + .../api/XCEngine/RHI/RHISampler/Destructor.md | 29 + docs/api/XCEngine/RHI/RHISampler/GetID.md | 30 + .../RHI/RHISampler/GetNativeHandle.md | 30 + .../api/XCEngine/RHI/RHISampler/RHISampler.md | 35 + docs/api/XCEngine/RHI/RHISampler/Shutdown.md | 30 + docs/api/XCEngine/RHI/RHISampler/Unbind.md | 31 + .../api/XCEngine/RHI/RHIScreenshot/Capture.md | 33 + docs/api/XCEngine/RHI/RHIScreenshot/Create.md | 31 + .../XCEngine/RHI/RHIScreenshot/Destructor.md | 29 + .../RHI/RHIScreenshot/RHIScreenshot.md | 33 + .../XCEngine/RHI/RHIScreenshot/Shutdown.md | 30 + docs/api/XCEngine/RHI/RHIShader/Compile.md | 34 + .../XCEngine/RHI/RHIShader/CompileFromFile.md | 33 + docs/api/XCEngine/RHI/RHIShader/Destructor.md | 29 + .../XCEngine/RHI/RHIShader/GetNativeHandle.md | 30 + docs/api/XCEngine/RHI/RHIShader/GetType.md | 30 + .../XCEngine/RHI/RHIShader/GetUniformInfo.md | 31 + .../XCEngine/RHI/RHIShader/GetUniformInfos.md | 30 + docs/api/XCEngine/RHI/RHIShader/IsValid.md | 30 + docs/api/XCEngine/RHI/RHIShader/RHIShader.md | 38 + docs/api/XCEngine/RHI/RHIShader/Shutdown.md | 30 + .../XCEngine/RHI/RHISwapChain/Destructor.md | 29 + .../RHI/RHISwapChain/GetCurrentBackBuffer.md | 30 + .../RHISwapChain/GetCurrentBackBufferIndex.md | 30 + .../RHI/RHISwapChain/GetNativeHandle.md | 30 + docs/api/XCEngine/RHI/RHISwapChain/Present.md | 32 + .../XCEngine/RHI/RHISwapChain/RHISwapChain.md | 36 + docs/api/XCEngine/RHI/RHISwapChain/Resize.md | 32 + .../api/XCEngine/RHI/RHISwapChain/Shutdown.md | 30 + .../api/XCEngine/RHI/RHITexture/Destructor.md | 29 + docs/api/XCEngine/RHI/RHITexture/GetDepth.md | 30 + docs/api/XCEngine/RHI/RHITexture/GetFormat.md | 30 + docs/api/XCEngine/RHI/RHITexture/GetHeight.md | 30 + .../XCEngine/RHI/RHITexture/GetMipLevels.md | 30 + docs/api/XCEngine/RHI/RHITexture/GetName.md | 30 + .../RHI/RHITexture/GetNativeHandle.md | 30 + docs/api/XCEngine/RHI/RHITexture/GetState.md | 30 + .../XCEngine/RHI/RHITexture/GetTextureType.md | 30 + docs/api/XCEngine/RHI/RHITexture/GetWidth.md | 30 + .../api/XCEngine/RHI/RHITexture/RHITexture.md | 42 + docs/api/XCEngine/RHI/RHITexture/SetName.md | 31 + docs/api/XCEngine/RHI/RHITexture/SetState.md | 31 + docs/api/XCEngine/RHI/RHITexture/Shutdown.md | 30 + docs/api/XCEngine/RHI/RHITypes/RHITypes.md | 80 ++ .../XCEngine/Resources/AudioClip/AudioClip.md | 21 + .../AudioClip/AudioClip/AudioClip.md | 59 + .../AudioClip/AudioClip/Constructor.md | 28 + .../AudioClip/AudioClip/Destructor.md | 29 + .../AudioClip/AudioClip/GetAudioData.md | 30 + .../AudioClip/AudioClip/GetAudioFormat.md | 30 + .../AudioClip/AudioClip/GetAudioType.md | 30 + .../AudioClip/AudioClip/GetBitsPerSample.md | 30 + .../AudioClip/AudioClip/GetChannels.md | 30 + .../AudioClip/AudioClip/GetDuration.md | 30 + .../Resources/AudioClip/AudioClip/GetGUID.md | 30 + .../AudioClip/AudioClip/GetMemorySize.md | 30 + .../Resources/AudioClip/AudioClip/GetName.md | 30 + .../Resources/AudioClip/AudioClip/GetPath.md | 30 + .../AudioClip/AudioClip/GetSampleRate.md | 30 + .../Resources/AudioClip/AudioClip/GetType.md | 30 + .../Resources/AudioClip/AudioClip/Is3D.md | 30 + .../Resources/AudioClip/AudioClip/IsLoop.md | 30 + .../Resources/AudioClip/AudioClip/IsValid.md | 30 + .../Resources/AudioClip/AudioClip/Release.md | 30 + .../AudioClip/AudioClip/SetAudioData.md | 31 + .../AudioClip/AudioClip/SetAudioFormat.md | 31 + .../AudioClip/AudioClip/SetAudioType.md | 31 + .../AudioClip/AudioClip/SetBitsPerSample.md | 31 + .../AudioClip/AudioClip/SetChannels.md | 31 + .../AudioClip/AudioClip/SetDuration.md | 31 + .../Resources/AudioClip/AudioClip/SetIs3D.md | 31 + .../Resources/AudioClip/AudioClip/SetLoop.md | 31 + .../AudioClip/AudioClip/SetRHIResource.md | 31 + .../AudioClip/AudioClip/SetSampleRate.md | 31 + .../AudioClip/AudioLoader/AudioLoader.md | 36 + .../AudioClip/AudioLoader/CanLoad.md | 31 + .../AudioClip/AudioLoader/Constructor.md | 28 + .../AudioClip/AudioLoader/Destructor.md | 29 + .../AudioLoader/GetDefaultSettings.md | 30 + .../AudioClip/AudioLoader/GetResourceType.md | 30 + .../AudioLoader/GetSupportedExtensions.md | 30 + .../Resources/AudioClip/AudioLoader/Load.md | 32 + .../XCEngine/Resources/Material/Material.md | 21 + .../Material/Material/ClearAllProperties.md | 30 + .../Material/Material/Constructor.md | 28 + .../Resources/Material/Material/Destructor.md | 29 + .../Resources/Material/Material/GetBool.md | 31 + .../Material/GetConstantBufferData.md | 30 + .../Resources/Material/Material/GetFloat.md | 31 + .../Resources/Material/Material/GetFloat2.md | 31 + .../Resources/Material/Material/GetFloat3.md | 31 + .../Resources/Material/Material/GetFloat4.md | 31 + .../Resources/Material/Material/GetGUID.md | 30 + .../Resources/Material/Material/GetInt.md | 31 + .../Material/Material/GetMemorySize.md | 30 + .../Resources/Material/Material/GetName.md | 30 + .../Resources/Material/Material/GetPath.md | 30 + .../Resources/Material/Material/GetTexture.md | 31 + .../Material/GetTextureBindingCount.md | 30 + .../Resources/Material/Material/GetType.md | 30 + .../Material/Material/HasProperty.md | 31 + .../Resources/Material/Material/IsValid.md | 30 + .../Resources/Material/Material/Material.md | 61 + .../Resources/Material/Material/Release.md | 30 + .../Material/Material/RemoveProperty.md | 31 + .../Resources/Material/Material/SetBool.md | 32 + .../Resources/Material/Material/SetFloat.md | 32 + .../Resources/Material/Material/SetFloat2.md | 32 + .../Resources/Material/Material/SetFloat3.md | 32 + .../Resources/Material/Material/SetFloat4.md | 32 + .../Resources/Material/Material/SetInt.md | 32 + .../Resources/Material/Material/SetShader.md | 31 + .../Resources/Material/Material/SetTexture.md | 32 + .../Material/Material/UpdateConstantBuffer.md | 30 + .../Material/MaterialLoader/CanLoad.md | 31 + .../Material/MaterialLoader/Constructor.md | 28 + .../Material/MaterialLoader/Destructor.md | 29 + .../MaterialLoader/GetDefaultSettings.md | 30 + .../MaterialLoader/GetResourceType.md | 30 + .../MaterialLoader/GetSupportedExtensions.md | 30 + .../Resources/Material/MaterialLoader/Load.md | 32 + .../Material/MaterialLoader/MaterialLoader.md | 36 + docs/api/XCEngine/Resources/Mesh/Mesh.md | 22 + .../Resources/Mesh/Mesh/AddMaterial.md | 31 + .../Resources/Mesh/Mesh/AddSection.md | 31 + .../Resources/Mesh/Mesh/AddTexture.md | 31 + .../Resources/Mesh/Mesh/Constructor.md | 28 + .../Resources/Mesh/Mesh/Destructor.md | 29 + .../XCEngine/Resources/Mesh/Mesh/GetBounds.md | 30 + .../XCEngine/Resources/Mesh/Mesh/GetGUID.md | 30 + .../Resources/Mesh/Mesh/GetIndexCount.md | 30 + .../Resources/Mesh/Mesh/GetIndexData.md | 30 + .../Resources/Mesh/Mesh/GetIndexDataSize.md | 30 + .../Resources/Mesh/Mesh/GetMaterial.md | 31 + .../Resources/Mesh/Mesh/GetMaterials.md | 30 + .../Resources/Mesh/Mesh/GetMemorySize.md | 30 + .../XCEngine/Resources/Mesh/Mesh/GetName.md | 30 + .../XCEngine/Resources/Mesh/Mesh/GetPath.md | 30 + .../Resources/Mesh/Mesh/GetSections.md | 30 + .../Resources/Mesh/Mesh/GetTextures.md | 30 + .../XCEngine/Resources/Mesh/Mesh/GetType.md | 30 + .../Mesh/Mesh/GetVertexAttributes.md | 30 + .../Resources/Mesh/Mesh/GetVertexCount.md | 30 + .../Resources/Mesh/Mesh/GetVertexData.md | 30 + .../Resources/Mesh/Mesh/GetVertexDataSize.md | 30 + .../Resources/Mesh/Mesh/GetVertexStride.md | 30 + .../Resources/Mesh/Mesh/IsUse32BitIndex.md | 30 + .../XCEngine/Resources/Mesh/Mesh/IsValid.md | 30 + docs/api/XCEngine/Resources/Mesh/Mesh/Mesh.md | 61 + .../XCEngine/Resources/Mesh/Mesh/Release.md | 30 + .../XCEngine/Resources/Mesh/Mesh/SetBounds.md | 31 + .../Resources/Mesh/Mesh/SetIndexData.md | 34 + .../Resources/Mesh/Mesh/SetVertexData.md | 35 + .../Mesh/MeshImportSettings/AddImportFlag.md | 31 + .../Mesh/MeshImportSettings/Clone.md | 30 + .../Mesh/MeshImportSettings/Constructor.md | 28 + .../Mesh/MeshImportSettings/Destructor.md | 29 + .../MeshImportSettings/GetAxisConversion.md | 30 + .../Mesh/MeshImportSettings/GetImportFlags.md | 30 + .../Mesh/MeshImportSettings/GetImportScale.md | 30 + .../Mesh/MeshImportSettings/GetMergeMeshes.md | 30 + .../Mesh/MeshImportSettings/GetOffset.md | 30 + .../GetOptimizeThreshold.md | 30 + .../Mesh/MeshImportSettings/GetScale.md | 30 + .../Mesh/MeshImportSettings/GetThreshold.md | 30 + .../Mesh/MeshImportSettings/HasImportFlag.md | 31 + .../Mesh/MeshImportSettings/LoadFromJSON.md | 31 + .../MeshImportSettings/MeshImportSettings.md | 54 + .../MeshImportSettings/RemoveImportFlag.md | 31 + .../Mesh/MeshImportSettings/SaveToJSON.md | 30 + .../MeshImportSettings/SetAxisConversion.md | 31 + .../Mesh/MeshImportSettings/SetImportFlags.md | 31 + .../Mesh/MeshImportSettings/SetImportScale.md | 31 + .../Mesh/MeshImportSettings/SetMergeMeshes.md | 31 + .../Mesh/MeshImportSettings/SetOffset.md | 31 + .../SetOptimizeThreshold.md | 31 + .../Mesh/MeshImportSettings/SetScale.md | 31 + .../Mesh/MeshImportSettings/SetThreshold.md | 31 + .../Resources/Mesh/MeshLoader/CanLoad.md | 31 + .../Resources/Mesh/MeshLoader/Constructor.md | 28 + .../Resources/Mesh/MeshLoader/Destructor.md | 29 + .../Mesh/MeshLoader/GetDefaultSettings.md | 30 + .../Mesh/MeshLoader/GetResourceType.md | 30 + .../Mesh/MeshLoader/GetSupportedExtensions.md | 30 + .../Resources/Mesh/MeshLoader/Load.md | 32 + .../Resources/Mesh/MeshLoader/MeshLoader.md | 36 + docs/api/XCEngine/Resources/Resources.md | 28 + .../XCEngine/Resources/Resources/Resources.md | 18 + docs/api/XCEngine/Resources/Shader/Shader.md | 21 + .../Resources/Shader/Shader/AddAttribute.md | 31 + .../Resources/Shader/Shader/AddUniform.md | 31 + .../Resources/Shader/Shader/Constructor.md | 28 + .../Resources/Shader/Shader/Destructor.md | 29 + .../Resources/Shader/Shader/GetAttributes.md | 30 + .../Shader/Shader/GetCompiledBinary.md | 30 + .../Resources/Shader/Shader/GetGUID.md | 30 + .../Resources/Shader/Shader/GetMemorySize.md | 30 + .../Resources/Shader/Shader/GetName.md | 30 + .../Resources/Shader/Shader/GetPath.md | 30 + .../Shader/Shader/GetShaderLanguage.md | 30 + .../Resources/Shader/Shader/GetShaderType.md | 30 + .../Resources/Shader/Shader/GetSourceCode.md | 30 + .../Resources/Shader/Shader/GetType.md | 30 + .../Resources/Shader/Shader/GetUniforms.md | 30 + .../Resources/Shader/Shader/IsValid.md | 30 + .../Resources/Shader/Shader/Release.md | 30 + .../Shader/Shader/SetCompiledBinary.md | 31 + .../Resources/Shader/Shader/SetRHIResource.md | 31 + .../Shader/Shader/SetShaderLanguage.md | 31 + .../Resources/Shader/Shader/SetShaderType.md | 31 + .../Resources/Shader/Shader/SetSourceCode.md | 31 + .../Resources/Shader/Shader/Shader.md | 55 + .../Resources/Shader/ShaderLoader/CanLoad.md | 31 + .../Shader/ShaderLoader/Constructor.md | 28 + .../Shader/ShaderLoader/Destructor.md | 29 + .../Shader/ShaderLoader/GetDefaultSettings.md | 30 + .../Shader/ShaderLoader/GetResourceType.md | 30 + .../ShaderLoader/GetSupportedExtensions.md | 30 + .../Resources/Shader/ShaderLoader/Load.md | 32 + .../Shader/ShaderLoader/ShaderLoader.md | 36 + .../api/XCEngine/Resources/Texture/Texture.md | 22 + .../Resources/Texture/Texture/Constructor.md | 28 + .../Resources/Texture/Texture/Create.md | 38 + .../Resources/Texture/Texture/Destructor.md | 29 + .../Texture/Texture/GenerateMipmaps.md | 30 + .../Resources/Texture/Texture/GetArraySize.md | 30 + .../Resources/Texture/Texture/GetDepth.md | 30 + .../Resources/Texture/Texture/GetFormat.md | 30 + .../Resources/Texture/Texture/GetGUID.md | 30 + .../Resources/Texture/Texture/GetHeight.md | 30 + .../Texture/Texture/GetMemorySize.md | 30 + .../Resources/Texture/Texture/GetMipLevels.md | 30 + .../Resources/Texture/Texture/GetName.md | 30 + .../Resources/Texture/Texture/GetPath.md | 30 + .../Resources/Texture/Texture/GetPixelData.md | 30 + .../Texture/Texture/GetPixelDataSize.md | 30 + .../Texture/Texture/GetTextureType.md | 30 + .../Resources/Texture/Texture/GetType.md | 30 + .../Resources/Texture/Texture/GetUsage.md | 30 + .../Resources/Texture/Texture/GetWidth.md | 30 + .../Resources/Texture/Texture/IsValid.md | 30 + .../Resources/Texture/Texture/Release.md | 30 + .../Resources/Texture/Texture/Texture.md | 53 + .../Texture/TextureImportSettings/Clone.md | 30 + .../TextureImportSettings/Constructor.md | 28 + .../TextureImportSettings/Destructor.md | 29 + .../TextureImportSettings/GetBorderColor.md | 30 + .../GetCompressionQuality.md | 30 + .../GetFlipHorizontal.md | 30 + .../TextureImportSettings/GetFlipVertical.md | 30 + .../GetGenerateMipmaps.md | 30 + .../GetGenerateNormalMap.md | 30 + .../TextureImportSettings/GetMaxAnisotropy.md | 30 + .../TextureImportSettings/GetMaxSize.md | 30 + .../TextureImportSettings/GetMipmapFilter.md | 30 + .../GetNormalMapStrength.md | 30 + .../Texture/TextureImportSettings/GetSRGB.md | 30 + .../TextureImportSettings/GetTargetFormat.md | 30 + .../TextureImportSettings/GetTextureType.md | 30 + .../GetUseHardwareCompression.md | 30 + .../TextureImportSettings/LoadFromJSON.md | 31 + .../TextureImportSettings/SaveToJSON.md | 30 + .../TextureImportSettings/SetBorderColor.md | 31 + .../SetCompressionQuality.md | 31 + .../SetFlipHorizontal.md | 31 + .../TextureImportSettings/SetFlipVertical.md | 31 + .../SetGenerateMipmaps.md | 31 + .../SetGenerateNormalMap.md | 31 + .../TextureImportSettings/SetMaxAnisotropy.md | 31 + .../TextureImportSettings/SetMaxSize.md | 31 + .../TextureImportSettings/SetMipmapFilter.md | 31 + .../SetNormalMapStrength.md | 31 + .../Texture/TextureImportSettings/SetSRGB.md | 31 + .../TextureImportSettings/SetTargetFormat.md | 31 + .../TextureImportSettings/SetTextureType.md | 31 + .../SetUseHardwareCompression.md | 31 + .../TextureImportSettings.md | 64 + .../Texture/TextureLoader/CanLoad.md | 31 + .../Texture/TextureLoader/Constructor.md | 28 + .../Texture/TextureLoader/Destructor.md | 29 + .../TextureLoader/GetDefaultSettings.md | 30 + .../Texture/TextureLoader/GetResourceType.md | 30 + .../TextureLoader/GetSupportedExtensions.md | 30 + .../Resources/Texture/TextureLoader/Load.md | 32 + .../Texture/TextureLoader/LoadFromMemory.md | 33 + .../Texture/TextureLoader/TextureLoader.md | 37 + docs/api/XCEngine/Scene/Scene.md | 21 + docs/api/XCEngine/Scene/Scene/Constructor.md | 41 + .../XCEngine/Scene/Scene/CreateGameObject.md | 32 + .../Scene/Scene/DeserializeFromString.md | 31 + .../XCEngine/Scene/Scene/DestroyGameObject.md | 31 + docs/api/XCEngine/Scene/Scene/Destructor.md | 29 + docs/api/XCEngine/Scene/Scene/Find.md | 31 + docs/api/XCEngine/Scene/Scene/FindByID.md | 31 + .../Scene/Scene/FindGameObjectWithTag.md | 31 + .../XCEngine/Scene/Scene/FindObjectOfType.md | 30 + .../XCEngine/Scene/Scene/FindObjectsOfType.md | 30 + docs/api/XCEngine/Scene/Scene/FixedUpdate.md | 31 + docs/api/XCEngine/Scene/Scene/GetName.md | 30 + .../Scene/Scene/GetRootGameObjects.md | 30 + docs/api/XCEngine/Scene/Scene/IsActive.md | 30 + docs/api/XCEngine/Scene/Scene/LateUpdate.md | 31 + docs/api/XCEngine/Scene/Scene/Load.md | 31 + .../Scene/Scene/OnGameObjectCreated.md | 30 + .../Scene/Scene/OnGameObjectDestroyed.md | 30 + docs/api/XCEngine/Scene/Scene/Save.md | 31 + docs/api/XCEngine/Scene/Scene/Scene.md | 52 + .../XCEngine/Scene/Scene/SerializeToString.md | 30 + docs/api/XCEngine/Scene/Scene/SetActive.md | 31 + docs/api/XCEngine/Scene/Scene/SetName.md | 31 + docs/api/XCEngine/Scene/Scene/Update.md | 31 + .../Scene/SceneManager/CreateScene.md | 31 + docs/api/XCEngine/Scene/SceneManager/Get.md | 29 + .../Scene/SceneManager/GetActiveScene.md | 30 + .../Scene/SceneManager/GetAllScenes.md | 30 + .../XCEngine/Scene/SceneManager/GetScene.md | 31 + .../XCEngine/Scene/SceneManager/LoadScene.md | 31 + .../Scene/SceneManager/LoadSceneAsync.md | 32 + .../SceneManager/OnActiveSceneChanged.md | 30 + .../Scene/SceneManager/OnSceneLoaded.md | 30 + .../Scene/SceneManager/OnSceneUnloaded.md | 30 + .../Scene/SceneManager/SceneManager.md | 41 + .../Scene/SceneManager/SetActiveScene.md | 44 + .../Scene/SceneManager/UnloadScene.md | 44 + .../Threading/LambdaTask/Constructor.md | 30 + .../XCEngine/Threading/LambdaTask/Execute.md | 30 + .../Threading/LambdaTask/LambdaTask.md | 31 + .../XCEngine/Threading/Mutex/Constructor.md | 28 + .../XCEngine/Threading/Mutex/Destructor.md | 29 + docs/api/XCEngine/Threading/Mutex/Mutex.md | 37 + docs/api/XCEngine/Threading/Mutex/TryLock.md | 30 + docs/api/XCEngine/Threading/Mutex/lock.md | 30 + docs/api/XCEngine/Threading/Mutex/try_lock.md | 30 + docs/api/XCEngine/Threading/Mutex/unlock.md | 30 + .../Threading/ReadWriteLock/Constructor.md | 28 + .../Threading/ReadWriteLock/Destructor.md | 29 + .../Threading/ReadWriteLock/ReadLock.md | 30 + .../Threading/ReadWriteLock/ReadUnlock.md | 30 + .../Threading/ReadWriteLock/ReadWriteLock.md | 35 + .../Threading/ReadWriteLock/WriteLock.md | 30 + .../Threading/ReadWriteLock/WriteUnlock.md | 30 + .../XCEngine/Threading/SpinLock/SpinLock.md | 35 + .../XCEngine/Threading/SpinLock/TryLock.md | 30 + docs/api/XCEngine/Threading/SpinLock/lock.md | 30 + .../XCEngine/Threading/SpinLock/try_lock.md | 30 + .../api/XCEngine/Threading/SpinLock/unlock.md | 30 + docs/api/XCEngine/Threading/Task/Task.md | 36 + .../Threading/TaskGroup/AddDependency.md | 32 + .../XCEngine/Threading/TaskGroup/AddTask.md | 45 + .../XCEngine/Threading/TaskGroup/Cancel.md | 30 + .../Threading/TaskGroup/Constructor.md | 28 + .../Threading/TaskGroup/Destructor.md | 29 + .../Threading/TaskGroup/GetProgress.md | 30 + .../Threading/TaskGroup/IsComplete.md | 30 + .../TaskGroup/SetCompleteCallback.md | 31 + .../XCEngine/Threading/TaskGroup/TaskGroup.md | 39 + docs/api/XCEngine/Threading/TaskGroup/Wait.md | 30 + .../XCEngine/Threading/TaskGroup/WaitFor.md | 31 + .../Threading/TaskSystem/CreateTaskGroup.md | 30 + .../Threading/TaskSystem/DestroyTaskGroup.md | 31 + docs/api/XCEngine/Threading/TaskSystem/Get.md | 29 + .../TaskSystem/GetWorkerThreadCount.md | 30 + .../Threading/TaskSystem/Initialize.md | 31 + .../Threading/TaskSystem/ParallelFor.md | 33 + .../Threading/TaskSystem/RunOnMainThread.md | 31 + .../XCEngine/Threading/TaskSystem/Shutdown.md | 30 + .../XCEngine/Threading/TaskSystem/Submit.md | 45 + .../Threading/TaskSystem/TaskSystem.md | 40 + .../XCEngine/Threading/TaskSystem/Update.md | 30 + .../api/XCEngine/Threading/TaskSystem/Wait.md | 31 + .../TaskSystemConfig/TaskSystemConfig.md | 34 + .../XCEngine/Threading/Thread/Constructor.md | 28 + .../XCEngine/Threading/Thread/Destructor.md | 29 + docs/api/XCEngine/Threading/Thread/Detach.md | 30 + .../XCEngine/Threading/Thread/GetCurrentId.md | 30 + docs/api/XCEngine/Threading/Thread/GetId.md | 30 + docs/api/XCEngine/Threading/Thread/GetName.md | 30 + docs/api/XCEngine/Threading/Thread/Join.md | 30 + docs/api/XCEngine/Threading/Thread/Sleep.md | 31 + docs/api/XCEngine/Threading/Thread/Start.md | 32 + docs/api/XCEngine/Threading/Thread/Thread.md | 39 + docs/api/XCEngine/Threading/Thread/Yield.md | 30 + docs/api/XCEngine/Threading/Threading.md | 29 + .../XCEngine/Threading/Threading/Threading.md | 18 + docs/api/XCEngine/XCEngine.md | 30 + docs/api/_meta/README.md | 14 + docs/api/_meta/rebuild-status.md | 51 + docs/api/_tools/README.md | 19 + .../audit_api_docs.cpython-313.pyc | Bin 0 -> 20740 bytes .../__pycache__/fix_links.cpython-313.pyc | Bin 0 -> 8182 bytes ..._resources_canonical_pages.cpython-313.pyc | Bin 0 -> 38858 bytes ...nerate_rhi_canonical_pages.cpython-313.pyc | Bin 0 -> 19197 bytes ...igrate_legacy_method_pages.cpython-313.pyc | Bin 0 -> 9884 bytes .../scaffold_parallel_layout.cpython-313.pyc | Bin 0 -> 12370 bytes docs/api/_tools/audit_api_docs.py | 402 ++++++ docs/api/{ => _tools}/fix_links.py | 3 +- ...generate_core_resources_canonical_pages.py | 829 ++++++++++++ .../generate_parallel_canonical_pages.py | 18 + .../_tools/generate_rhi_canonical_pages.py | 18 + .../migrate_canonical_pages_to_class_dirs.py | 134 ++ docs/api/_tools/scaffold_parallel_layout.py | 180 +++ .../audio/audio-3d-params/audio-3d-params.md | 46 - .../audio-buffer-desc/audio-buffer-desc.md | 25 - docs/api/audio/audio-config/audio-config.md | 44 - docs/api/audio/audio-mixer/add-effect.md | 17 - docs/api/audio/audio-mixer/audio-mixer.md | 67 - docs/api/audio/audio-mixer/clear-effects.md | 12 - docs/api/audio/audio-mixer/get-3d-params.md | 15 - .../audio/audio-mixer/get-channel-volume.md | 16 - .../api/audio/audio-mixer/get-output-mixer.md | 14 - docs/api/audio/audio-mixer/get-volume.md | 14 - docs/api/audio/audio-mixer/is-mute.md | 14 - docs/api/audio/audio-mixer/process-audio.md | 16 - docs/api/audio/audio-mixer/remove-effect.md | 15 - docs/api/audio/audio-mixer/set-3d-params.md | 15 - .../audio/audio-mixer/set-channel-volume.md | 15 - docs/api/audio/audio-mixer/set-mute.md | 15 - .../api/audio/audio-mixer/set-output-mixer.md | 16 - docs/api/audio/audio-mixer/set-volume.md | 15 - docs/api/audio/audio-system/audio-system.md | 88 -- .../audio-system/get-available-devices.md | 34 - docs/api/audio/audio-system/get-backend.md | 15 - .../audio/audio-system/get-current-device.md | 26 - .../audio-system/get-listener-position.md | 14 - .../audio-system/get-listener-rotation.md | 14 - .../audio-system/get-listener-velocity.md | 14 - .../audio/audio-system/get-master-volume.md | 27 - docs/api/audio/audio-system/get-stats.md | 39 - docs/api/audio/audio-system/initialize.md | 40 - docs/api/audio/audio-system/is-muted.md | 28 - docs/api/audio/audio-system/process-audio.md | 18 - .../api/audio/audio-system/register-source.md | 29 - docs/api/audio/audio-system/set-backend.md | 30 - docs/api/audio/audio-system/set-device.md | 34 - .../audio-system/set-listener-transform.md | 31 - .../audio-system/set-listener-velocity.md | 29 - .../audio/audio-system/set-master-volume.md | 29 - docs/api/audio/audio-system/set-muted.md | 30 - docs/api/audio/audio-system/shutdown.md | 25 - .../audio/audio-system/unregister-source.md | 29 - docs/api/audio/audio-system/update.md | 28 - docs/api/audio/audio.md | 109 -- docs/api/audio/enums/audio-channel.md | 28 - docs/api/audio/enums/audio-format.md | 26 - docs/api/audio/enums/audio-load-state.md | 24 - docs/api/audio/enums/audio-resource-type.md | 23 - docs/api/audio/enums/pan-mode.md | 22 - docs/api/audio/enums/play-state.md | 23 - docs/api/audio/enums/speaker-mode.md | 26 - docs/api/audio/enums/stop-mode.md | 22 - docs/api/audio/enums/volume-source.md | 24 - docs/api/audio/equalizer/equalizer.md | 65 - docs/api/audio/fft-filter/fft-filter.md | 53 - docs/api/audio/hrtf-params/hrtf-params.md | 42 - docs/api/audio/hrtf/hrtf.md | 53 - .../audio/i-audio-backend/i-audio-backend.md | 60 - .../audio/i-audio-effect/i-audio-effect.md | 49 - docs/api/audio/reverbation/reverbation.md | 53 - .../spatializer-params/spatializer-params.md | 26 - .../audio/wasapi-backend/wasapi-backend.md | 58 - .../windows-audio-backend.md | 69 - .../audio-listener-component.md | 86 -- .../get-doppler-level.md | 37 - .../audio-listener-component/get-energy.md | 37 - .../get-frequency-data-size.md | 37 - .../get-frequency-data.md | 43 - .../get-master-volume.md | 37 - .../get-reverb-level.md | 37 - .../audio-listener-component/get-reverb.md | 42 - .../get-speed-of-sound.md | 37 - .../audio-listener-component/is-mute.md | 40 - .../set-doppler-level.md | 44 - .../set-master-volume.md | 36 - .../audio-listener-component/set-mute.md | 37 - .../set-reverb-level.md | 44 - .../audio-listener-component/set-reverb.md | 40 - .../set-speed-of-sound.md | 41 - .../audio-source-component.md | 121 -- .../audio-source-component/get-3d-params.md | 38 - .../audio-source-component/get-clip.md | 41 - .../get-doppler-level.md | 37 - .../audio-source-component/get-duration.md | 38 - .../get-output-mixer.md | 41 - .../audio-source-component/get-pan.md | 37 - .../audio-source-component/get-pitch.md | 37 - .../get-reverb-zone-mix.md | 37 - .../audio-source-component/get-spread.md | 37 - .../audio-source-component/get-time.md | 39 - .../audio-source-component/get-volume.md | 37 - .../is-energy-detecting.md | 41 - .../audio-source-component/is-looping.md | 38 - .../audio-source-component/is-paused.md | 38 - .../audio-source-component/is-playing.md | 40 - .../audio-source-component/is-spatialize.md | 38 - .../audio-source-component/pause.md | 31 - .../components/audio-source-component/play.md | 31 - .../audio-source-component/set-3d-params.md | 40 - .../audio-source-component/set-clip.md | 39 - .../set-doppler-level.md | 36 - .../audio-source-component/set-looping.md | 36 - .../set-output-mixer.md | 38 - .../audio-source-component/set-pan.md | 43 - .../audio-source-component/set-pitch.md | 43 - .../set-reverb-zone-mix.md | 43 - .../audio-source-component/set-spatialize.md | 40 - .../audio-source-component/set-spread.md | 43 - .../audio-source-component/set-time.md | 41 - .../audio-source-component/set-volume.md | 36 - .../start-energy-detect.md | 32 - .../stop-energy-detect.md | 31 - .../components/audio-source-component/stop.md | 42 - .../camera-component/camera-component.md | 80 -- .../camera-component/get-clear-color.md | 38 - .../components/camera-component/get-depth.md | 37 - .../camera-component/get-far-clip-plane.md | 37 - .../camera-component/get-field-of-view.md | 37 - .../camera-component/get-near-clip-plane.md | 39 - .../camera-component/get-orthographic-size.md | 37 - .../camera-component/get-projection-type.md | 40 - .../components/camera-component/is-primary.md | 38 - .../camera-component/set-clear-color.md | 41 - .../components/camera-component/set-depth.md | 37 - .../camera-component/set-far-clip-plane.md | 36 - .../camera-component/set-field-of-view.md | 43 - .../camera-component/set-near-clip-plane.md | 36 - .../camera-component/set-orthographic-size.md | 37 - .../camera-component/set-primary.md | 36 - .../camera-component/set-projection-type.md | 40 - docs/api/components/component/component.md | 69 - .../components/component/get-game-object.md | 13 - docs/api/components/component/get-name.md | 13 - docs/api/components/component/get-scene.md | 14 - docs/api/components/component/is-enabled.md | 14 - docs/api/components/component/set-enabled.md | 17 - docs/api/components/component/transform.md | 16 - docs/api/components/components.md | 65 - .../components/game-object/add-component.md | 23 - docs/api/components/game-object/awake.md | 14 - docs/api/components/game-object/destroy.md | 14 - .../components/game-object/detach-children.md | 14 - .../game-object/detach-from-parent.md | 15 - .../game-object/find-game-objects-with-tag.md | 18 - .../game-object/find-objects-of-type.md | 15 - docs/api/components/game-object/find.md | 18 - .../components/game-object/fixed-update.md | 14 - .../api/components/game-object/game-object.md | 121 -- .../components/game-object/get-child-count.md | 14 - docs/api/components/game-object/get-child.md | 17 - .../components/game-object/get-children.md | 14 - .../game-object/get-component-in-children.md | 20 - .../game-object/get-component-in-parent.md | 20 - .../components/game-object/get-component.md | 23 - .../game-object/get-components-in-children.md | 20 - .../components/game-object/get-components.md | 21 - docs/api/components/game-object/get-id.md | 13 - docs/api/components/game-object/get-name.md | 14 - docs/api/components/game-object/get-parent.md | 14 - docs/api/components/game-object/get-scene.md | 14 - .../components/game-object/get-transform.md | 15 - docs/api/components/game-object/get-uuid.md | 13 - .../game-object/is-active-in-hierarchy.md | 16 - docs/api/components/game-object/is-active.md | 15 - .../api/components/game-object/late-update.md | 17 - docs/api/components/game-object/on-destroy.md | 14 - .../game-object/remove-component.md | 26 - docs/api/components/game-object/set-active.md | 15 - docs/api/components/game-object/set-name.md | 15 - docs/api/components/game-object/set-parent.md | 19 - docs/api/components/game-object/start.md | 15 - docs/api/components/game-object/update.md | 15 - .../light-component/get-casts-shadows.md | 38 - .../components/light-component/get-color.md | 37 - .../light-component/get-intensity.md | 37 - .../light-component/get-light-type.md | 42 - .../components/light-component/get-range.md | 37 - .../light-component/get-spot-angle.md | 37 - .../light-component/light-component.md | 90 -- .../light-component/set-casts-shadows.md | 40 - .../components/light-component/set-color.md | 43 - .../light-component/set-intensity.md | 43 - .../light-component/set-light-type.md | 43 - .../components/light-component/set-range.md | 37 - .../light-component/set-spot-angle.md | 37 - .../transform-component/detach-children.md | 26 - .../components/transform-component/find.md | 33 - .../transform-component/get-child-count.md | 27 - .../transform-component/get-child.md | 32 - .../transform-component/get-forward.md | 31 - .../get-local-euler-angles.md | 31 - .../transform-component/get-local-position.md | 33 - .../transform-component/get-local-rotation.md | 33 - .../transform-component/get-local-scale.md | 31 - .../get-local-to-world-matrix.md | 29 - .../transform-component/get-parent.md | 32 - .../transform-component/get-position.md | 34 - .../transform-component/get-right.md | 30 - .../transform-component/get-rotation.md | 31 - .../transform-component/get-scale.md | 31 - .../transform-component/get-sibling-index.md | 28 - .../components/transform-component/get-up.md | 30 - .../get-world-to-local-matrix.md | 29 - .../inverse-transform-direction.md | 35 - .../inverse-transform-point.md | 35 - .../components/transform-component/look-at.md | 28 - .../components/transform-component/rotate.md | 29 - .../set-as-first-sibling.md | 22 - .../set-as-last-sibling.md | 22 - .../set-local-euler-angles.md | 30 - .../transform-component/set-local-position.md | 31 - .../transform-component/set-local-rotation.md | 32 - .../transform-component/set-local-scale.md | 30 - .../transform-component/set-parent.md | 31 - .../transform-component/set-position.md | 31 - .../transform-component/set-rotation.md | 32 - .../transform-component/set-scale.md | 31 - .../transform-component/set-sibling-index.md | 27 - .../transform-component.md | 126 -- .../transform-direction.md | 35 - .../transform-component/transform-point.md | 35 - .../transform-component/translate.md | 26 - docs/api/containers/array/array.md | 69 - docs/api/containers/array/begin-end.md | 52 - docs/api/containers/array/clear.md | 36 - docs/api/containers/array/constructor.md | 50 - .../containers/array/copy-move-constructor.md | 44 - docs/api/containers/array/data.md | 30 - docs/api/containers/array/destructor.md | 28 - docs/api/containers/array/emplaceback.md | 51 - docs/api/containers/array/front-back.md | 38 - docs/api/containers/array/operator-assign.md | 44 - .../containers/array/operator-subscript.md | 39 - docs/api/containers/array/popback.md | 38 - docs/api/containers/array/pushback.md | 44 - docs/api/containers/array/reserve.md | 39 - docs/api/containers/array/resize.md | 46 - docs/api/containers/array/setallocator.md | 29 - docs/api/containers/array/size.md | 47 - docs/api/containers/containers.md | 59 - docs/api/containers/hashmap/clear.md | 38 - docs/api/containers/hashmap/constructor.md | 34 - docs/api/containers/hashmap/contains.md | 39 - docs/api/containers/hashmap/copy-move.md | 38 - docs/api/containers/hashmap/destructor.md | 31 - docs/api/containers/hashmap/erase.md | 43 - docs/api/containers/hashmap/find.md | 43 - docs/api/containers/hashmap/hashmap.md | 91 -- docs/api/containers/hashmap/insert.md | 42 - docs/api/containers/hashmap/iterator.md | 38 - .../api/containers/hashmap/operator-assign.md | 40 - .../containers/hashmap/operator-subscript.md | 37 - docs/api/containers/hashmap/setallocator.md | 32 - docs/api/containers/hashmap/size.md | 39 - docs/api/containers/string/clear.md | 39 - docs/api/containers/string/constructor.md | 48 - docs/api/containers/string/cstr.md | 36 - docs/api/containers/string/destructor.md | 31 - docs/api/containers/string/ends-with.md | 39 - docs/api/containers/string/find.md | 47 - docs/api/containers/string/operator-assign.md | 47 - docs/api/containers/string/operator-equal.md | 43 - .../containers/string/operator-plus-assign.md | 43 - docs/api/containers/string/operator-plus.md | 39 - .../containers/string/operator-subscript.md | 51 - docs/api/containers/string/reserve-resize.md | 51 - docs/api/containers/string/size.md | 44 - docs/api/containers/string/starts-with.md | 39 - docs/api/containers/string/string.md | 107 -- docs/api/containers/string/substring.md | 43 - docs/api/containers/string/to-lower-upper.md | 36 - docs/api/containers/string/trim.md | 35 - docs/api/core/core.md | 99 -- docs/api/core/event/Clear.md | 39 - docs/api/core/event/Invoke.md | 45 - docs/api/core/event/ProcessUnsubscribes.md | 39 - docs/api/core/event/Subscribe.md | 50 - docs/api/core/event/Unsubscribe.md | 43 - docs/api/core/event/begin.md | 37 - docs/api/core/event/end.md | 36 - docs/api/core/event/event.md | 71 -- docs/api/core/filewriter/Close.md | 44 - docs/api/core/filewriter/Flush.md | 47 - docs/api/core/filewriter/IsOpen.md | 45 - docs/api/core/filewriter/Open.md | 55 - docs/api/core/filewriter/Write.md | 50 - docs/api/core/filewriter/constructor.md | 81 -- docs/api/core/filewriter/destructor.md | 37 - docs/api/core/filewriter/filewriter.md | 68 - docs/api/core/refcounted/AddRef.md | 46 - docs/api/core/refcounted/GetRefCount.md | 51 - docs/api/core/refcounted/Release.md | 46 - docs/api/core/refcounted/refcounted.md | 57 - docs/api/core/smartptr/MakeRef.md | 51 - docs/api/core/smartptr/MakeUnique.md | 49 - docs/api/core/smartptr/Ref.md | 40 - docs/api/core/smartptr/UniqueRef.md | 46 - docs/api/core/smartptr/smartptr.md | 66 - docs/api/core/types/byte.md | 28 - docs/api/core/types/int16.md | 25 - docs/api/core/types/int32.md | 28 - docs/api/core/types/int64.md | 28 - docs/api/core/types/int8.md | 26 - docs/api/core/types/types.md | 62 - docs/api/core/types/uint16.md | 28 - docs/api/core/types/uint32.md | 28 - docs/api/core/types/uint64.md | 28 - docs/api/core/types/uint8.md | 28 - docs/api/d3d12/d3d12-buffer-get-desc.md | 13 - .../d3d12-buffer-get-gpu-virtual-address.md | 13 - docs/api/d3d12/d3d12-buffer-get-resource.md | 13 - docs/api/d3d12/d3d12-buffer-get-state.md | 13 - .../d3d12-buffer-initialize-from-existing.md | 16 - .../d3d12-buffer-initialize-with-data.md | 20 - docs/api/d3d12/d3d12-buffer-initialize.md | 19 - docs/api/d3d12/d3d12-buffer-map.md | 13 - docs/api/d3d12/d3d12-buffer-set-data.md | 16 - docs/api/d3d12/d3d12-buffer-set-state.md | 14 - docs/api/d3d12/d3d12-buffer-shutdown.md | 11 - docs/api/d3d12/d3d12-buffer-unmap.md | 11 - docs/api/d3d12/d3d12-buffer-update-data.md | 15 - docs/api/d3d12/d3d12-buffer.md | 38 - .../d3d12-command-list-clear-depth-stencil.md | 16 - .../d3d12-command-list-clear-render-target.md | 15 - docs/api/d3d12/d3d12-command-list-close.md | 13 - .../d3d12/d3d12-command-list-copy-resource.md | 15 - docs/api/d3d12/d3d12-command-list-dispatch.md | 16 - .../d3d12/d3d12-command-list-draw-indexed.md | 18 - docs/api/d3d12/d3d12-command-list-draw.md | 17 - .../d3d12/d3d12-command-list-initialize.md | 18 - docs/api/d3d12/d3d12-command-list-reset.md | 13 - .../d3d12-command-list-set-render-targets.md | 16 - docs/api/d3d12/d3d12-command-list-shutdown.md | 11 - .../d3d12-command-list-transition-barrier.md | 18 - docs/api/d3d12/d3d12-command-list.md | 85 -- docs/api/d3d12/d3d12-command-queue.md | 51 - .../d3d12-device-check-feature-support.md | 18 - docs/api/d3d12/d3d12-device-compile-shader.md | 16 - docs/api/d3d12/d3d12-device-create-buffer.md | 17 - .../d3d12/d3d12-device-create-command-list.md | 17 - .../d3d12-device-create-command-queue-impl.md | 17 - .../d3d12-device-create-command-queue.md | 17 - docs/api/d3d12/d3d12-device-create-fence.md | 16 - .../d3d12-device-create-pipeline-state.md | 16 - docs/api/d3d12/d3d12-device-create-sampler.md | 16 - .../d3d12/d3d12-device-create-swap-chain.md | 17 - docs/api/d3d12/d3d12-device-create-texture.md | 17 - .../d3d12/d3d12-device-enumerate-adapters.md | 13 - .../d3d12/d3d12-device-get-adapter-info.md | 13 - .../d3d12/d3d12-device-get-capabilities.md | 13 - ...ce-get-descriptor-handle-increment-size.md | 16 - .../api/d3d12/d3d12-device-get-device-info.md | 13 - docs/api/d3d12/d3d12-device-get-device.md | 13 - docs/api/d3d12/d3d12-device-get-factory.md | 13 - .../d3d12/d3d12-device-get-native-device.md | 13 - .../d3d12/d3d12-device-get-native-handle.md | 13 - docs/api/d3d12/d3d12-device-initialize.md | 45 - .../d3d12/d3d12-device-is-device-removed.md | 13 - .../d3d12/d3d12-device-set-device-removed.md | 13 - docs/api/d3d12/d3d12-device-shutdown.md | 20 - docs/api/d3d12/d3d12-device.md | 122 -- ...wap-chain-get-current-back-buffer-index.md | 13 - ...3d12-swap-chain-get-current-back-buffer.md | 13 - docs/api/d3d12/d3d12-swap-chain-initialize.md | 36 - docs/api/d3d12/d3d12-swap-chain-present.md | 15 - docs/api/d3d12/d3d12-swap-chain-resize.md | 15 - docs/api/d3d12/d3d12-swap-chain-shutdown.md | 11 - docs/api/d3d12/d3d12-swap-chain.md | 31 - docs/api/d3d12/d3d12-texture-get-depth.md | 13 - docs/api/d3d12/d3d12-texture-get-desc.md | 13 - docs/api/d3d12/d3d12-texture-get-height.md | 13 - .../api/d3d12/d3d12-texture-get-mip-levels.md | 13 - docs/api/d3d12/d3d12-texture-get-resource.md | 13 - docs/api/d3d12/d3d12-texture-get-state.md | 13 - docs/api/d3d12/d3d12-texture-get-width.md | 13 - .../d3d12-texture-initialize-depth-stencil.md | 19 - .../d3d12-texture-initialize-from-data.md | 23 - .../d3d12-texture-initialize-from-existing.md | 17 - docs/api/d3d12/d3d12-texture-initialize.md | 18 - docs/api/d3d12/d3d12-texture-set-state.md | 14 - docs/api/d3d12/d3d12-texture-shutdown.md | 11 - docs/api/d3d12/d3d12-texture.md | 38 - docs/api/d3d12/d3d12.md | 106 -- .../debug/consolelogsink/consolelogsink.md | 50 - docs/api/debug/consolelogsink/constructor.md | 27 - docs/api/debug/consolelogsink/destructor.md | 25 - docs/api/debug/consolelogsink/flush.md | 26 - docs/api/debug/consolelogsink/log.md | 42 - .../debug/consolelogsink/setcoloroutput.md | 28 - .../debug/consolelogsink/setminimumlevel.md | 28 - docs/api/debug/debug.md | 88 -- docs/api/debug/filelogsink/constructor.md | 26 - docs/api/debug/filelogsink/destructor.md | 17 - docs/api/debug/filelogsink/filelogsink.md | 37 - docs/api/debug/filelogsink/flush.md | 27 - docs/api/debug/filelogsink/log.md | 27 - docs/api/debug/ilogsink/flush.md | 38 - docs/api/debug/ilogsink/ilogsink.md | 47 - docs/api/debug/ilogsink/log.md | 33 - docs/api/debug/logcategory/logcategory.md | 46 - .../debug/logcategory/logcategorytostring.md | 30 - docs/api/debug/logentry/logentry.md | 49 - docs/api/debug/logger/addsink.md | 43 - docs/api/debug/logger/debug.md | 32 - docs/api/debug/logger/error.md | 32 - docs/api/debug/logger/fatal.md | 31 - docs/api/debug/logger/get.md | 24 - docs/api/debug/logger/info.md | 32 - docs/api/debug/logger/initialize.md | 28 - docs/api/debug/logger/log.md | 42 - docs/api/debug/logger/logger.md | 72 -- docs/api/debug/logger/removesink.md | 37 - docs/api/debug/logger/setcategoryenabled.md | 38 - docs/api/debug/logger/setminimumlevel.md | 37 - docs/api/debug/logger/shutdown.md | 28 - docs/api/debug/logger/verbose.md | 32 - docs/api/debug/logger/warning.md | 32 - docs/api/debug/loglevel/loglevel.md | 94 -- docs/api/debug/loglevel/logleveltostring.md | 28 - docs/api/debug/profiler/beginframe.md | 30 - docs/api/debug/profiler/beginprofile.md | 40 - docs/api/debug/profiler/endframe.md | 32 - docs/api/debug/profiler/endprofile.md | 29 - .../api/debug/profiler/exportchrometracing.md | 49 - docs/api/debug/profiler/get.md | 24 - docs/api/debug/profiler/initialize.md | 34 - docs/api/debug/profiler/markevent.md | 40 - docs/api/debug/profiler/profiler.md | 133 -- docs/api/debug/profiler/setmarker.md | 37 - docs/api/debug/profiler/shutdown.md | 26 - .../renderdoc-capture/renderdoc-capture.md | 86 -- docs/api/main.md | 135 +- docs/api/math/aabb/aabb.md | 62 - docs/api/math/aabb/intersects-obb.md | 30 - docs/api/math/aabb/intersects-sphere.md | 30 - docs/api/math/aabb/obb-contains.md | 26 - docs/api/math/aabb/obb-getaxis.md | 26 - docs/api/math/aabb/obb-getmax.md | 23 - docs/api/math/aabb/obb-getmin.md | 23 - docs/api/math/bounds/bounds.constructors.md | 38 - docs/api/math/bounds/bounds.md | 64 - docs/api/math/bounds/contains.md | 38 - docs/api/math/bounds/encapsulate.md | 40 - docs/api/math/bounds/expand.md | 38 - docs/api/math/bounds/getclosestpoint.md | 38 - docs/api/math/bounds/getmax.md | 31 - docs/api/math/bounds/getmin.md | 31 - docs/api/math/bounds/getvolume.md | 30 - docs/api/math/bounds/intersects.md | 36 - docs/api/math/bounds/setminmax.md | 36 - docs/api/math/box/box.md | 65 - docs/api/math/box/constructor.md | 42 - docs/api/math/box/contains.md | 33 - docs/api/math/box/getmax.md | 32 - docs/api/math/box/getmin.md | 32 - docs/api/math/box/intersects-box.md | 35 - docs/api/math/box/intersects-ray.md | 38 - docs/api/math/box/intersects.md | 35 - docs/api/math/color/black.md | 24 - docs/api/math/color/blue.md | 24 - docs/api/math/color/clear.md | 24 - docs/api/math/color/color.md | 94 -- docs/api/math/color/cyan.md | 24 - docs/api/math/color/green.md | 24 - docs/api/math/color/lerp.md | 28 - docs/api/math/color/magenta.md | 24 - docs/api/math/color/operator-add.md | 29 - docs/api/math/color/operator-div.md | 28 - docs/api/math/color/operator-mul.md | 28 - docs/api/math/color/operator-sub.md | 29 - docs/api/math/color/red.md | 24 - docs/api/math/color/torgba.md | 26 - docs/api/math/color/tovector3.md | 25 - docs/api/math/color/tovector4.md | 25 - docs/api/math/color/white.md | 24 - docs/api/math/color/yellow.md | 24 - docs/api/math/frustum/contains-bounds.md | 35 - docs/api/math/frustum/contains-point.md | 34 - docs/api/math/frustum/contains-sphere.md | 34 - docs/api/math/frustum/frustum.md | 51 - docs/api/math/frustum/intersects-bounds.md | 39 - docs/api/math/frustum/intersects-sphere.md | 37 - docs/api/math/h/deg-to-rad.md | 20 - docs/api/math/h/degrees.md | 20 - docs/api/math/h/epsilon.md | 23 - docs/api/math/h/float-max.md | 19 - docs/api/math/h/h.md | 56 - docs/api/math/h/half-pi.md | 19 - docs/api/math/h/pi.md | 22 - docs/api/math/h/rad-to-deg.md | 20 - docs/api/math/h/radians.md | 20 - docs/api/math/h/two-pi.md | 19 - docs/api/math/math.md | 106 -- docs/api/math/matrix3/determinant.md | 18 - docs/api/math/matrix3/identity.md | 17 - docs/api/math/matrix3/inverse.md | 24 - docs/api/math/matrix3/matrix3.md | 85 -- docs/api/math/matrix3/operator-mul-matrix3.md | 24 - docs/api/math/matrix3/operator-mul-vector3.md | 24 - docs/api/math/matrix3/operator-subscript.md | 27 - docs/api/math/matrix3/rotation-x.md | 24 - docs/api/math/matrix3/rotation-y.md | 24 - docs/api/math/matrix3/rotation-z.md | 24 - docs/api/math/matrix3/scale.md | 20 - docs/api/math/matrix3/transpose.md | 18 - docs/api/math/matrix3/zero.md | 17 - docs/api/math/matrix4/decompose.md | 50 - docs/api/math/matrix4/determinant.md | 36 - docs/api/math/matrix4/get-rotation.md | 42 - docs/api/math/matrix4/get-scale.md | 40 - docs/api/math/matrix4/get-translation.md | 40 - docs/api/math/matrix4/identity.md | 31 - docs/api/math/matrix4/inverse.md | 39 - docs/api/math/matrix4/lookat.md | 39 - docs/api/math/matrix4/matrix4.md | 77 -- docs/api/math/matrix4/multiplypoint.md | 41 - docs/api/math/matrix4/multiplyvector.md | 36 - docs/api/math/matrix4/operator_index.md | 35 - docs/api/math/matrix4/operator_mul.md | 44 - docs/api/math/matrix4/orthographic.md | 36 - docs/api/math/matrix4/perspective.md | 37 - docs/api/math/matrix4/rotation.md | 39 - docs/api/math/matrix4/rotationx.md | 36 - docs/api/math/matrix4/rotationy.md | 36 - docs/api/math/matrix4/rotationz.md | 36 - docs/api/math/matrix4/scale.md | 35 - docs/api/math/matrix4/translation.md | 35 - docs/api/math/matrix4/transpose.md | 32 - docs/api/math/matrix4/trs.md | 45 - docs/api/math/matrix4/zero.md | 30 - docs/api/math/obb/contains.md | 35 - docs/api/math/obb/get-axis.md | 33 - docs/api/math/obb/get-max.md | 30 - docs/api/math/obb/get-min.md | 30 - docs/api/math/obb/intersects-obb.md | 34 - docs/api/math/obb/intersects-sphere.md | 34 - docs/api/math/obb/obb.md | 52 - docs/api/math/plane/constructor-default.md | 29 - docs/api/math/plane/constructor.md | 35 - docs/api/math/plane/frompoints.md | 41 - docs/api/math/plane/getclosestpoint.md | 37 - docs/api/math/plane/getdistancetopoint.md | 42 - docs/api/math/plane/getside.md | 42 - docs/api/math/plane/intersects.md | 41 - docs/api/math/plane/plane.md | 64 - docs/api/math/quaternion/dot.md | 34 - docs/api/math/quaternion/from-axis-angle.md | 35 - docs/api/math/quaternion/from-euler-angles.md | 44 - .../math/quaternion/from-rotation-matrix.md | 37 - docs/api/math/quaternion/identity.md | 28 - docs/api/math/quaternion/inverse.md | 31 - docs/api/math/quaternion/look-rotation.md | 33 - docs/api/math/quaternion/magnitude.md | 30 - docs/api/math/quaternion/normalize.md | 32 - docs/api/math/quaternion/normalized.md | 30 - docs/api/math/quaternion/operator-mul.md | 40 - docs/api/math/quaternion/quaternion.md | 72 -- docs/api/math/quaternion/slerp.md | 38 - docs/api/math/quaternion/to-euler-angles.md | 37 - docs/api/math/quaternion/to-matrix4x4.md | 30 - docs/api/math/ray/getpoint.md | 32 - docs/api/math/ray/intersects-box.md | 41 - docs/api/math/ray/intersects-plane.md | 41 - docs/api/math/ray/intersects-sphere.md | 41 - docs/api/math/ray/ray-constructor-default.md | 27 - docs/api/math/ray/ray-constructor.md | 33 - docs/api/math/ray/ray.md | 60 - docs/api/math/rect/contains-float.md | 24 - docs/api/math/rect/contains-vector2.md | 24 - docs/api/math/rect/contains.md | 50 - docs/api/math/rect/getbottom.md | 18 - docs/api/math/rect/getcenter.md | 18 - docs/api/math/rect/getleft.md | 18 - docs/api/math/rect/getposition.md | 18 - docs/api/math/rect/getright.md | 18 - docs/api/math/rect/getsize.md | 18 - docs/api/math/rect/gettop.md | 18 - docs/api/math/rect/intersect.md | 23 - docs/api/math/rect/intersects.md | 24 - docs/api/math/rect/rect-overview.md | 69 - docs/api/math/rect/rect.md | 81 -- docs/api/math/rect/set.md | 24 - docs/api/math/rect/setposition-float.md | 22 - docs/api/math/rect/setposition-vector2.md | 21 - docs/api/math/rect/setposition.md | 47 - docs/api/math/rect/union.md | 23 - docs/api/math/rectint/contains.md | 24 - docs/api/math/rectint/getbottom.md | 18 - docs/api/math/rectint/getcenter.md | 18 - docs/api/math/rectint/getleft.md | 18 - docs/api/math/rectint/getposition.md | 18 - docs/api/math/rectint/getright.md | 18 - docs/api/math/rectint/getsize.md | 18 - docs/api/math/rectint/gettop.md | 18 - docs/api/math/rectint/intersects.md | 24 - docs/api/math/rectint/rectint.md | 53 - docs/api/math/sphere/contains.md | 40 - docs/api/math/sphere/intersects.md | 36 - docs/api/math/sphere/sphere-constructor.md | 32 - .../math/sphere/sphere-default-constructor.md | 28 - docs/api/math/sphere/sphere.md | 54 - .../transform/inverse-transform-direction.md | 42 - .../math/transform/inverse-transform-point.md | 42 - docs/api/math/transform/inverse.md | 44 - docs/api/math/transform/operator-star.md | 47 - docs/api/math/transform/space.md | 40 - docs/api/math/transform/to-matrix.md | 38 - .../api/math/transform/transform-direction.md | 42 - docs/api/math/transform/transform-point.md | 42 - docs/api/math/transform/transform.md | 77 -- docs/api/math/vector2/cross.md | 32 - docs/api/math/vector2/dot.md | 32 - docs/api/math/vector2/down.md | 25 - docs/api/math/vector2/left.md | 25 - docs/api/math/vector2/lerp.md | 33 - docs/api/math/vector2/magnitude.md | 35 - docs/api/math/vector2/movetowards.md | 33 - docs/api/math/vector2/normalize.md | 30 - docs/api/math/vector2/normalized.md | 28 - docs/api/math/vector2/one.md | 25 - docs/api/math/vector2/operator-add-assign.md | 29 - docs/api/math/vector2/operator-add.md | 30 - docs/api/math/vector2/operator-div-assign.md | 29 - docs/api/math/vector2/operator-div.md | 29 - docs/api/math/vector2/operator-eq.md | 29 - docs/api/math/vector2/operator-mul-assign.md | 29 - docs/api/math/vector2/operator-mul.md | 29 - docs/api/math/vector2/operator-neq.md | 29 - docs/api/math/vector2/operator-sub-assign.md | 29 - docs/api/math/vector2/operator-sub.md | 30 - docs/api/math/vector2/right.md | 25 - docs/api/math/vector2/sqrmagnitude.md | 34 - docs/api/math/vector2/up.md | 25 - docs/api/math/vector2/vector2.md | 73 -- docs/api/math/vector2/zero.md | 25 - docs/api/math/vector3/angle.md | 29 - docs/api/math/vector3/back.md | 26 - docs/api/math/vector3/cross.md | 29 - docs/api/math/vector3/dot.md | 29 - docs/api/math/vector3/down.md | 26 - docs/api/math/vector3/forward.md | 27 - docs/api/math/vector3/left.md | 26 - docs/api/math/vector3/lerp.md | 30 - docs/api/math/vector3/magnitude-instance.md | 27 - docs/api/math/vector3/magnitude.md | 32 - docs/api/math/vector3/movetowards.md | 30 - docs/api/math/vector3/normalize.md | 27 - docs/api/math/vector3/normalized-instance.md | 27 - docs/api/math/vector3/normalized.md | 25 - docs/api/math/vector3/one.md | 25 - docs/api/math/vector3/operator-add-assign.md | 29 - docs/api/math/vector3/operator-add.md | 30 - docs/api/math/vector3/operator-div-assign.md | 31 - docs/api/math/vector3/operator-div.md | 40 - docs/api/math/vector3/operator-eq.md | 32 - docs/api/math/vector3/operator-index.md | 35 - docs/api/math/vector3/operator-mul-assign.md | 29 - docs/api/math/vector3/operator-mul.md | 39 - docs/api/math/vector3/operator-neq.md | 30 - docs/api/math/vector3/operator-sub-assign.md | 29 - docs/api/math/vector3/operator-sub.md | 30 - docs/api/math/vector3/project-on-plane.md | 30 - docs/api/math/vector3/project.md | 30 - docs/api/math/vector3/quaternion-multiply.md | 29 - docs/api/math/vector3/reflect.md | 29 - docs/api/math/vector3/right.md | 26 - .../api/math/vector3/sqrmagnitude-instance.md | 27 - docs/api/math/vector3/sqrmagnitude.md | 32 - docs/api/math/vector3/up.md | 26 - docs/api/math/vector3/vector3-constructor.md | 39 - docs/api/math/vector3/vector3.md | 96 -- docs/api/math/vector3/zero.md | 25 - docs/api/math/vector4/constructor-vector3.md | 25 - docs/api/math/vector4/constructor.md | 25 - docs/api/math/vector4/constructor_default.md | 20 - docs/api/math/vector4/dot.md | 27 - docs/api/math/vector4/one.md | 21 - docs/api/math/vector4/operator-add.md | 24 - docs/api/math/vector4/operator-brackets.md | 28 - docs/api/math/vector4/operator-eq.md | 25 - docs/api/math/vector4/operator-mul.md | 23 - docs/api/math/vector4/operator-ne.md | 24 - docs/api/math/vector4/operator-neg.md | 26 - docs/api/math/vector4/operator-sub.md | 24 - docs/api/math/vector4/project.md | 27 - docs/api/math/vector4/to-vector3.md | 23 - docs/api/math/vector4/vector4.md | 71 -- docs/api/math/vector4/zero.md | 22 - docs/api/math/viewport/getaspectratio.md | 18 - docs/api/math/viewport/getrect.md | 18 - docs/api/math/viewport/viewport.md | 45 - docs/api/memory/allocator/allocate.md | 38 - docs/api/memory/allocator/allocator.md | 75 -- docs/api/memory/allocator/free.md | 40 - .../memory/allocator/get-allocation-count.md | 52 - docs/api/memory/allocator/get-name.md | 40 - .../memory/allocator/get-peak-allocated.md | 57 - .../memory/allocator/get-total-allocated.md | 50 - docs/api/memory/allocator/get-total-freed.md | 48 - docs/api/memory/allocator/reallocate.md | 55 - docs/api/memory/linear-allocator/allocate.md | 41 - docs/api/memory/linear-allocator/clear.md | 37 - .../memory/linear-allocator/constructor.md | 36 - docs/api/memory/linear-allocator/free.md | 35 - .../linear-allocator/get-allocation-count.md | 31 - .../memory/linear-allocator/get-capacity.md | 33 - .../api/memory/linear-allocator/get-marker.md | 43 - docs/api/memory/linear-allocator/get-name.md | 27 - .../linear-allocator/get-peak-allocated.md | 33 - .../linear-allocator/get-total-allocated.md | 36 - .../linear-allocator/get-total-freed.md | 30 - .../memory/linear-allocator/get-used-size.md | 39 - .../linear-allocator/linear-allocator.md | 38 - .../api/memory/linear-allocator/reallocate.md | 35 - .../api/memory/linear-allocator/set-marker.md | 41 - .../linear-allocator/~linear-allocator.md | 29 - .../memory/manager/create-linear-allocator.md | 32 - .../memory/manager/create-pool-allocator.md | 37 - .../memory/manager/create-proxy-allocator.md | 36 - docs/api/memory/manager/dump-memory-leaks.md | 31 - .../memory/manager/generate-memory-report.md | 37 - .../memory/manager/get-system-allocator.md | 27 - docs/api/memory/manager/get.md | 39 - docs/api/memory/manager/initialize.md | 33 - docs/api/memory/manager/manager.md | 87 -- .../memory/manager/set-track-allocations.md | 35 - docs/api/memory/manager/shutdown.md | 35 - docs/api/memory/memory.md | 77 -- docs/api/memory/pool-allocator/allocate.md | 38 - docs/api/memory/pool-allocator/constructor.md | 40 - docs/api/memory/pool-allocator/contains.md | 38 - docs/api/memory/pool-allocator/free.md | 38 - .../pool-allocator/get-allocation-count.md | 40 - .../memory/pool-allocator/get-block-size.md | 31 - .../pool-allocator/get-free-block-count.md | 40 - docs/api/memory/pool-allocator/get-name.md | 29 - .../pool-allocator/get-peak-allocated.md | 33 - .../pool-allocator/get-total-allocated.md | 33 - .../pool-allocator/get-total-block-count.md | 34 - .../memory/pool-allocator/get-total-freed.md | 33 - .../memory/pool-allocator/pool-allocator.md | 80 -- docs/api/memory/pool-allocator/reallocate.md | 35 - .../memory/pool-allocator/~pool-allocator.md | 31 - docs/api/memory/proxy-allocator/allocate.md | 37 - .../api/memory/proxy-allocator/constructor.md | 39 - docs/api/memory/proxy-allocator/free.md | 40 - .../proxy-allocator/get-allocation-count.md | 37 - docs/api/memory/proxy-allocator/get-name.md | 32 - .../proxy-allocator/get-peak-allocated.md | 37 - docs/api/memory/proxy-allocator/get-stats.md | 40 - .../proxy-allocator/get-total-allocated.md | 35 - .../memory/proxy-allocator/get-total-freed.md | 35 - .../memory/proxy-allocator/proxy-allocator.md | 35 - docs/api/memory/proxy-allocator/reallocate.md | 38 - .../proxy-allocator/~proxy-allocator.md | 37 - docs/api/resources/asyncloader/asyncloader.md | 121 -- docs/api/resources/asyncloader/cancel.md | 27 - docs/api/resources/asyncloader/cancelall.md | 26 - .../resources/asyncloader/getpendingcount.md | 24 - docs/api/resources/asyncloader/getprogress.md | 24 - docs/api/resources/asyncloader/initialize.md | 24 - docs/api/resources/asyncloader/isloading.md | 25 - docs/api/resources/asyncloader/shutdown.md | 23 - docs/api/resources/asyncloader/submit.md | 36 - docs/api/resources/asyncloader/update.md | 27 - docs/api/resources/audio-loader/can-load.md | 36 - .../api/resources/audio-loader/constructor.md | 27 - docs/api/resources/audio-loader/destructor.md | 29 - .../audio-loader/get-default-settings.md | 27 - .../audio-loader/get-supported-extensions.md | 38 - docs/api/resources/audio-loader/index.md | 56 - docs/api/resources/audio-loader/load.md | 58 - docs/api/resources/audioclip/audioclip.md | 153 --- docs/api/resources/audioclip/constructor.md | 23 - docs/api/resources/audioclip/destructor.md | 26 - .../api/resources/audioclip/get-audio-data.md | 29 - .../resources/audioclip/get-audio-format.md | 26 - .../api/resources/audioclip/get-audio-type.md | 26 - .../audioclip/get-bits-per-sample.md | 26 - docs/api/resources/audioclip/get-channels.md | 26 - docs/api/resources/audioclip/get-duration.md | 26 - docs/api/resources/audioclip/get-guid.md | 25 - .../resources/audioclip/get-memory-size.md | 25 - docs/api/resources/audioclip/get-name.md | 25 - docs/api/resources/audioclip/get-path.md | 25 - .../resources/audioclip/get-rhi-resource.md | 27 - .../resources/audioclip/get-sample-rate.md | 26 - docs/api/resources/audioclip/get-type.md | 25 - docs/api/resources/audioclip/is-3d.md | 26 - docs/api/resources/audioclip/is-loop.md | 26 - docs/api/resources/audioclip/is-valid.md | 25 - docs/api/resources/audioclip/release.md | 36 - .../resources/audioclip/set-audio-format.md | 27 - .../api/resources/audioclip/set-audio-type.md | 27 - .../audioclip/set-bits-per-sample.md | 27 - docs/api/resources/audioclip/set-channels.md | 27 - docs/api/resources/audioclip/set-duration.md | 27 - docs/api/resources/audioclip/set-is-3d.md | 27 - docs/api/resources/audioclip/set-loop.md | 27 - .../resources/audioclip/set-rhi-resource.md | 28 - .../resources/audioclip/set-sample-rate.md | 27 - docs/api/resources/audioclip/setaudiodata.md | 29 - .../dependencygraph/adddependency.md | 27 - docs/api/resources/dependencygraph/addnode.md | 27 - .../dependencygraph/dependencygraph.md | 90 -- .../dependencygraph/getdependencies.md | 25 - .../dependencygraph/hascirculardependency.md | 31 - .../dependencygraph/topologicalsort.md | 28 - docs/api/resources/filearchive/close.md | 22 - docs/api/resources/filearchive/enumerate.md | 31 - docs/api/resources/filearchive/exists.md | 36 - docs/api/resources/filearchive/filearchive.md | 75 -- docs/api/resources/filearchive/getsize.md | 37 - docs/api/resources/filearchive/open.md | 34 - docs/api/resources/filearchive/read.md | 42 - docs/api/resources/filesystem/exists.md | 26 - docs/api/resources/filesystem/filesystem.md | 106 -- docs/api/resources/filesystem/initialize.md | 24 - docs/api/resources/filesystem/readresource.md | 27 - docs/api/resources/iloader/canload.md | 31 - .../resources/iloader/getdefaultsettings.md | 25 - docs/api/resources/iloader/getresourcetype.md | 23 - .../iloader/getsupportedextensions.md | 25 - docs/api/resources/iloader/iloader.md | 121 -- docs/api/resources/iloader/load.md | 42 - docs/api/resources/iloader/loadasync.md | 34 - .../importsettings/importsettings.md | 173 --- docs/api/resources/iresource/getguid.md | 29 - docs/api/resources/iresource/getmemorysize.md | 29 - docs/api/resources/iresource/getname.md | 29 - docs/api/resources/iresource/getpath.md | 29 - docs/api/resources/iresource/gettype.md | 30 - docs/api/resources/iresource/initialize.md | 38 - docs/api/resources/iresource/iresource.md | 55 - docs/api/resources/iresource/isvalid.md | 33 - docs/api/resources/iresource/release.md | 37 - docs/api/resources/iresource/setinvalid.md | 32 - docs/api/resources/material-loader/index.md | 59 - .../material-loader/methods/can-load.md | 31 - .../material-loader/methods/constructor.md | 29 - .../material-loader/methods/destructor.md | 28 - .../methods/get-default-settings.md | 27 - .../methods/get-resource-type.md | 27 - .../methods/get-supported-extensions.md | 36 - .../resources/material-loader/methods/load.md | 62 - .../material/clear-all-properties.md | 21 - docs/api/resources/material/get-bool.md | 26 - .../material/get-constant-buffer-data.md | 25 - docs/api/resources/material/get-float.md | 26 - docs/api/resources/material/get-float2.md | 26 - docs/api/resources/material/get-float3.md | 26 - docs/api/resources/material/get-float4.md | 26 - docs/api/resources/material/get-guid.md | 24 - docs/api/resources/material/get-int.md | 26 - .../api/resources/material/get-memory-size.md | 24 - docs/api/resources/material/get-name.md | 24 - docs/api/resources/material/get-path.md | 24 - docs/api/resources/material/get-shader.md | 26 - docs/api/resources/material/get-texture.md | 26 - docs/api/resources/material/get-type.md | 26 - docs/api/resources/material/has-property.md | 28 - docs/api/resources/material/is-valid.md | 26 - docs/api/resources/material/material.md | 164 --- docs/api/resources/material/release.md | 26 - .../api/resources/material/remove-property.md | 24 - docs/api/resources/material/set-bool.md | 26 - docs/api/resources/material/set-float.md | 26 - docs/api/resources/material/set-float2.md | 25 - docs/api/resources/material/set-float3.md | 26 - docs/api/resources/material/set-float4.md | 25 - docs/api/resources/material/set-int.md | 26 - docs/api/resources/material/set-shader.md | 25 - docs/api/resources/material/set-texture.md | 28 - .../material/update-constant-buffer.md | 23 - .../mesh-import-settings.md | 101 -- docs/api/resources/mesh-loader/index.md | 59 - .../resources/mesh-loader/methods/can-load.md | 36 - .../mesh-loader/methods/constructor.md | 29 - .../mesh-loader/methods/destructor.md | 29 - .../methods/get-default-settings.md | 31 - .../mesh-loader/methods/get-resource-type.md | 31 - .../methods/get-supported-extensions.md | 46 - .../api/resources/mesh-loader/methods/load.md | 55 - docs/api/resources/mesh/add-section.md | 52 - docs/api/resources/mesh/constructor.md | 31 - docs/api/resources/mesh/destructor.md | 35 - docs/api/resources/mesh/get-guid.md | 41 - docs/api/resources/mesh/get-index-count.md | 34 - .../api/resources/mesh/get-index-data-size.md | 34 - docs/api/resources/mesh/get-index-data.md | 37 - docs/api/resources/mesh/get-memory-size.md | 33 - docs/api/resources/mesh/get-name.md | 38 - docs/api/resources/mesh/get-path.md | 38 - docs/api/resources/mesh/get-sections.md | 40 - docs/api/resources/mesh/get-type.md | 34 - .../resources/mesh/get-vertex-attributes.md | 43 - docs/api/resources/mesh/get-vertex-count.md | 34 - .../resources/mesh/get-vertex-data-size.md | 34 - docs/api/resources/mesh/get-vertex-data.md | 37 - docs/api/resources/mesh/get-vertex-stride.md | 41 - docs/api/resources/mesh/is-use-32bit-index.md | 40 - docs/api/resources/mesh/is-valid.md | 44 - docs/api/resources/mesh/mesh.md | 121 -- docs/api/resources/mesh/meshsection.md | 38 - docs/api/resources/mesh/release.md | 41 - docs/api/resources/mesh/set-index-data.md | 44 - docs/api/resources/mesh/set-vertex-data.md | 57 - docs/api/resources/mesh/vertexattribute.md | 37 - .../add-dependency.md | 36 - .../resource-dependency-graph/add-node.md | 32 - .../resource-dependency-graph/clear.md | 30 - .../decrement-ref-count.md | 32 - .../get-all-dependencies.md | 41 - .../get-dependencies.md | 38 - .../get-dependents.md | 38 - .../get-ref-count.md | 31 - .../has-circular-dependency.md | 36 - .../resource-dependency-graph/has-node.md | 31 - .../increment-ref-count.md | 32 - .../resource-dependency-graph/index.md | 94 -- .../remove-dependency.md | 34 - .../resource-dependency-graph/remove-node.md | 33 - .../topological-sort.md | 28 - .../resource-dependency-graph/unload.md | 39 - .../resource-file-system/add-archive.md | 51 - .../resource-file-system/add-directory.md | 51 - .../enumerate-resources.md | 63 - .../resources/resource-file-system/exists.md | 63 - .../resource-file-system/find-resource.md | 60 - .../resource-file-system/get-resource-info.md | 63 - .../api/resources/resource-file-system/get.md | 59 - .../resource-file-system/iarchive.md | 123 -- .../resources/resource-file-system/index.md | 88 -- .../resource-file-system/initialize.md | 49 - .../resource-file-system/read-resource.md | 66 - .../resource-file-system/remove-archive.md | 56 - .../resource-file-system/resource-info.md | 46 - .../resource-file-system/shutdown.md | 44 - docs/api/resources/resource-loader/canload.md | 31 - .../resource-loader/getdefaultsettings.md | 25 - .../resource-loader/getresourcetype.md | 27 - .../resource-loader/getsupportedextensions.md | 23 - docs/api/resources/resource-loader/load.md | 42 - .../resources/resource-loader/loadasync.md | 45 - .../resource-loader/resource-loader.md | 119 -- .../resource-manager/resource-manager.md | 166 --- docs/api/resources/resource-package/close.md | 42 - .../resources/resource-package/enumerate.md | 56 - docs/api/resources/resource-package/exists.md | 52 - .../api/resources/resource-package/getinfo.md | 50 - .../api/resources/resource-package/getsize.md | 45 - docs/api/resources/resource-package/index.md | 94 -- .../api/resources/resource-package/isvalid.md | 53 - docs/api/resources/resource-package/open.md | 51 - docs/api/resources/resource-package/read.md | 55 - docs/api/resources/resourcecache.md | 88 -- docs/api/resources/resourcehandle.md | 113 -- .../resources/resourcepath/getdirectory.md | 32 - .../resources/resourcepath/getextension.md | 32 - .../api/resources/resourcepath/getfilename.md | 32 - .../api/resources/resourcepath/getfullpath.md | 26 - docs/api/resources/resourcepath/getpath.md | 27 - .../resources/resourcepath/getrelativepath.md | 26 - docs/api/resources/resourcepath/getstem.md | 32 - .../resources/resourcepath/hasanyextension.md | 36 - .../resources/resourcepath/hasextension.md | 33 - docs/api/resources/resourcepath/isvalid.md | 33 - .../resources/resourcepath/resourcepath.md | 89 -- docs/api/resources/resourcepath/setpath.md | 29 - docs/api/resources/resourcepath/toguid.md | 30 - docs/api/resources/resources.md | 97 -- docs/api/resources/resourcetypes/generate.md | 35 - .../resourcetypes/getresourcetypename.md | 26 - .../resources/resourcetypes/resourcetypes.md | 183 --- docs/api/resources/shader-loader/index.md | 59 - .../shader-loader/methods/can-load.md | 36 - .../shader-loader/methods/constructor.md | 29 - .../shader-loader/methods/destructor.md | 33 - .../methods/get-default-settings.md | 31 - .../methods/get-resource-type.md | 31 - .../methods/get-supported-extensions.md | 44 - .../resources/shader-loader/methods/load.md | 74 -- docs/api/resources/shader/addattribute.md | 31 - docs/api/resources/shader/adduniform.md | 31 - docs/api/resources/shader/constructor.md | 25 - docs/api/resources/shader/destructor.md | 27 - docs/api/resources/shader/getattributes.md | 27 - .../api/resources/shader/getcompiledbinary.md | 24 - docs/api/resources/shader/getguid.md | 25 - docs/api/resources/shader/getmemorysize.md | 25 - docs/api/resources/shader/getname.md | 25 - docs/api/resources/shader/getpath.md | 25 - docs/api/resources/shader/getrhi.md | 28 - .../api/resources/shader/getshaderlanguage.md | 27 - docs/api/resources/shader/getshadertype.md | 27 - docs/api/resources/shader/getsourcecode.md | 24 - docs/api/resources/shader/gettype.md | 27 - docs/api/resources/shader/getuniforms.md | 27 - docs/api/resources/shader/isvalid.md | 29 - docs/api/resources/shader/release.md | 34 - docs/api/resources/shader/setbinary.md | 28 - docs/api/resources/shader/setrhi.md | 34 - .../api/resources/shader/setshaderlanguage.md | 28 - docs/api/resources/shader/setshadertype.md | 28 - docs/api/resources/shader/setsourcecode.md | 35 - docs/api/resources/shader/shader.md | 166 --- .../texture-import-settings/clone.md | 25 - .../texture-import-settings/getbordercolor.md | 3 - .../getcompressionquality.md | 3 - .../getfliphhorizontal.md | 3 - .../getflipvertical.md | 3 - .../getgeneratemipmaps.md | 3 - .../getgeneratenormalmap.md | 3 - .../getmaxanisotropy.md | 3 - .../texture-import-settings/getmaxsize.md | 3 - .../getmipmapfilter.md | 3 - .../getnormalmapstrength.md | 3 - .../texture-import-settings/getsrgb.md | 3 - .../gettargetformat.md | 3 - .../texture-import-settings/gettexturetype.md | 3 - .../getusehardwarecompression.md | 3 - .../texture-import-settings/loadfromjson.md | 28 - .../texture-import-settings/savetojson.md | 26 - .../texture-import-settings/setbordercolor.md | 27 - .../setcompressionquality.md | 27 - .../setfliphhorizontal.md | 27 - .../setflipvertical.md | 27 - .../setgeneratemipmaps.md | 27 - .../setgeneratenormalmap.md | 27 - .../setmaxanisotropy.md | 27 - .../texture-import-settings/setmaxsize.md | 27 - .../setmipmapfilter.md | 27 - .../setnormalmapstrength.md | 27 - .../texture-import-settings/setsrgb.md | 27 - .../settargetformat.md | 28 - .../texture-import-settings/settexturetype.md | 28 - .../setusehardwarecompression.md | 27 - .../texture-import-settings.md | 119 -- .../resources/texture-loader/constructor.md | 27 - .../resources/texture-loader/destructor.md | 29 - docs/api/resources/texture-loader/index.md | 141 --- docs/api/resources/texture/constructor.md | 29 - docs/api/resources/texture/create.md | 46 - docs/api/resources/texture/destructor.md | 31 - docs/api/resources/texture/generatemipmaps.md | 27 - docs/api/resources/texture/getarraysize.md | 36 - docs/api/resources/texture/getdepth.md | 37 - docs/api/resources/texture/getformat.md | 29 - docs/api/resources/texture/getheight.md | 30 - docs/api/resources/texture/getmiplevels.md | 32 - docs/api/resources/texture/getpixeldata.md | 36 - .../api/resources/texture/getpixeldatasize.md | 32 - docs/api/resources/texture/gettexturetype.md | 29 - docs/api/resources/texture/getusage.md | 29 - docs/api/resources/texture/getwidth.md | 30 - docs/api/resources/texture/texture.md | 159 --- docs/api/rhi/buffer/buffer.md | 90 -- docs/api/rhi/buffer/constructor.md | 28 - docs/api/rhi/buffer/destructor.md | 29 - docs/api/rhi/buffer/get-buffer-type.md | 28 - docs/api/rhi/buffer/get-name.md | 24 - docs/api/rhi/buffer/get-native-handle.md | 29 - docs/api/rhi/buffer/get-size.md | 24 - docs/api/rhi/buffer/get-state.md | 26 - docs/api/rhi/buffer/get-stride.md | 24 - docs/api/rhi/buffer/map.md | 27 - docs/api/rhi/buffer/set-buffer-type.md | 24 - docs/api/rhi/buffer/set-data.md | 29 - docs/api/rhi/buffer/set-name.md | 22 - docs/api/rhi/buffer/set-state.md | 22 - docs/api/rhi/buffer/set-stride.md | 24 - docs/api/rhi/buffer/shutdown.md | 23 - docs/api/rhi/buffer/unmap.md | 23 - docs/api/rhi/capabilities/capabilities.md | 86 -- .../rhi/command-list/clear-depth-stencil.md | 32 - .../rhi/command-list/clear-render-target.md | 32 - docs/api/rhi/command-list/clear.md | 34 - docs/api/rhi/command-list/close.md | 29 - docs/api/rhi/command-list/command-list.md | 70 - docs/api/rhi/command-list/constructor.md | 28 - docs/api/rhi/command-list/copy-resource.md | 30 - docs/api/rhi/command-list/destructor.md | 29 - docs/api/rhi/command-list/dispatch.md | 32 - docs/api/rhi/command-list/draw-indexed.md | 34 - docs/api/rhi/command-list/draw.md | 33 - docs/api/rhi/command-list/reset.md | 29 - docs/api/rhi/command-list/set-blend-factor.md | 30 - docs/api/rhi/command-list/set-blend-state.md | 37 - .../command-list/set-depth-stencil-state.md | 35 - docs/api/rhi/command-list/set-index-buffer.md | 32 - .../rhi/command-list/set-pipeline-state.md | 30 - .../command-list/set-primitive-topology.md | 30 - .../rhi/command-list/set-render-targets.md | 33 - docs/api/rhi/command-list/set-scissor-rect.md | 35 - .../api/rhi/command-list/set-scissor-rects.md | 34 - docs/api/rhi/command-list/set-stencil-ref.md | 29 - .../api/rhi/command-list/set-vertex-buffer.md | 33 - .../rhi/command-list/set-vertex-buffers.md | 36 - docs/api/rhi/command-list/set-viewport.md | 37 - docs/api/rhi/command-list/set-viewports.md | 34 - docs/api/rhi/command-list/shutdown.md | 29 - .../rhi/command-list/transition-barrier.md | 33 - docs/api/rhi/command-queue/command-queue.md | 76 -- docs/api/rhi/command-queue/constructor.md | 28 - docs/api/rhi/command-queue/destructor.md | 29 - .../command-queue/execute-command-lists.md | 39 - .../rhi/command-queue/get-completed-value.md | 34 - .../rhi/command-queue/get-native-handle.md | 30 - .../command-queue/get-timestamp-frequency.md | 30 - docs/api/rhi/command-queue/get-type.md | 39 - docs/api/rhi/command-queue/shutdown.md | 31 - docs/api/rhi/command-queue/signal.md | 36 - docs/api/rhi/command-queue/wait-for-idle.md | 31 - docs/api/rhi/command-queue/wait.md | 36 - docs/api/rhi/d3d12/buffer/buffer.md | 80 -- docs/api/rhi/d3d12/buffer/get-desc.md | 19 - docs/api/rhi/d3d12/buffer/get-gpu-address.md | 19 - .../d3d12/buffer/get-gpu-virtual-address.md | 19 - docs/api/rhi/d3d12/buffer/get-resource.md | 19 - .../d3d12/buffer/initialize-from-existing.md | 35 - .../rhi/d3d12/buffer/initialize-with-data.md | 42 - docs/api/rhi/d3d12/buffer/initialize.md | 39 - docs/api/rhi/d3d12/buffer/update-data.md | 32 - .../command-allocator/command-allocator.md | 50 - .../d3d12/command-allocator/constructor.md | 20 - .../rhi/d3d12/command-allocator/destructor.md | 22 - .../get-command-allocator.md | 25 - .../rhi/d3d12/command-allocator/initialize.md | 37 - .../rhi/d3d12/command-allocator/is-ready.md | 26 - docs/api/rhi/d3d12/command-allocator/reset.md | 25 - .../rhi/d3d12/command-allocator/shutdown.md | 27 - .../command-list/alias-barrier-internal.md | 31 - .../rhi/d3d12/command-list/alias-barrier.md | 17 - .../api/rhi/d3d12/command-list/begin-query.md | 27 - .../command-list/clear-depth-stencil-view.md | 35 - .../d3d12/command-list/clear-depth-stencil.md | 18 - .../command-list/clear-render-target-view.md | 34 - .../d3d12/command-list/clear-render-target.md | 17 - .../clear-unordered-access-view.md | 28 - docs/api/rhi/d3d12/command-list/clear.md | 21 - docs/api/rhi/d3d12/command-list/close.md | 14 - .../rhi/d3d12/command-list/command-list.md | 119 -- .../api/rhi/d3d12/command-list/constructor.md | 35 - .../api/rhi/d3d12/command-list/copy-buffer.md | 30 - .../command-list/copy-resource-internal.md | 31 - .../rhi/d3d12/command-list/copy-resource.md | 27 - .../rhi/d3d12/command-list/copy-texture.md | 37 - docs/api/rhi/d3d12/command-list/destructor.md | 36 - .../dispatch-indirect-internal.md | 31 - .../d3d12/command-list/dispatch-indirect.md | 25 - docs/api/rhi/d3d12/command-list/dispatch.md | 18 - ...raw-indexed-instanced-indirect-internal.md | 31 - .../draw-indexed-instanced-indirect.md | 17 - .../rhi/d3d12/command-list/draw-indexed.md | 20 - .../draw-instanced-indirect-internal.md | 31 - .../command-list/draw-instanced-indirect.md | 17 - docs/api/rhi/d3d12/command-list/draw.md | 19 - docs/api/rhi/d3d12/command-list/end-query.md | 27 - .../rhi/d3d12/command-list/execute-bundle.md | 23 - .../d3d12/command-list/get-command-list.md | 15 - .../d3d12/command-list/get-resource-state.md | 30 - docs/api/rhi/d3d12/command-list/initialize.md | 40 - docs/api/rhi/d3d12/command-list/reset.md | 14 - .../d3d12/command-list/resolve-query-data.md | 31 - .../d3d12/command-list/set-blend-factor.md | 16 - .../rhi/d3d12/command-list/set-blend-state.md | 16 - .../set-compute-descriptor-table.md | 17 - .../rhi/d3d12/command-list/set-depth-bias.md | 28 - .../command-list/set-depth-stencil-state.md | 16 - .../d3d12/command-list/set-descriptor-heap.md | 16 - .../command-list/set-descriptor-heaps.md | 17 - .../set-graphics-descriptor-table.md | 17 - .../set-graphics-root-32bit-constants.md | 19 - .../set-graphics-root-constant-buffer-view.md | 17 - .../set-graphics-root-descriptor-table.md | 17 - .../set-graphics-root-shader-resource-view.md | 17 - .../command-list/set-index-buffer-internal.md | 32 - .../d3d12/command-list/set-index-buffer.md | 18 - .../set-pipeline-state-internal.md | 30 - .../d3d12/command-list/set-pipeline-state.md | 16 - .../command-list/set-primitive-topology.md | 16 - .../command-list/set-render-targets-handle.md | 18 - .../set-render-targets-internal.md | 18 - .../d3d12/command-list/set-render-targets.md | 18 - .../d3d12/command-list/set-root-signature.md | 16 - .../d3d12/command-list/set-scissor-rect.md | 16 - .../d3d12/command-list/set-scissor-rects.md | 17 - .../rhi/d3d12/command-list/set-stencil-ref.md | 16 - .../set-vertex-buffer-internal.md | 33 - .../d3d12/command-list/set-vertex-buffer.md | 19 - .../set-vertex-buffers-internal.md | 35 - .../d3d12/command-list/set-vertex-buffers.md | 20 - .../rhi/d3d12/command-list/set-viewport.md | 16 - .../rhi/d3d12/command-list/set-viewports.md | 17 - docs/api/rhi/d3d12/command-list/shutdown.md | 14 - .../rhi/d3d12/command-list/track-resource.md | 25 - .../transition-barrier-internal.md | 19 - .../d3d12/command-list/transition-barrier.md | 18 - .../command-list/uav-barrier-internal.md | 30 - .../api/rhi/d3d12/command-list/uav-barrier.md | 16 - .../rhi/d3d12/command-queue/command-queue.md | 49 - .../command-queue/execute-command-lists.md | 34 - .../d3d12/command-queue/get-command-queue.md | 15 - .../command-queue/get-completed-value.md | 19 - .../d3d12/command-queue/get-native-handle.md | 18 - .../command-queue/get-timestamp-frequency.md | 15 - docs/api/rhi/d3d12/command-queue/get-type.md | 21 - .../api/rhi/d3d12/command-queue/initialize.md | 31 - docs/api/rhi/d3d12/command-queue/shutdown.md | 31 - .../rhi/d3d12/command-queue/signal-native.md | 25 - docs/api/rhi/d3d12/command-queue/signal.md | 34 - .../rhi/d3d12/command-queue/wait-for-idle.md | 36 - .../rhi/d3d12/command-queue/wait-native.md | 25 - docs/api/rhi/d3d12/command-queue/wait.md | 37 - .../rhi/d3d12/common/check-format-support.md | 37 - docs/api/rhi/d3d12/common/common.md | 111 -- .../d3d12/common/create-aliasing-barrier.md | 32 - .../create-depth-stencil-clear-value.md | 35 - .../d3d12/common/create-index-buffer-view.md | 37 - .../create-render-target-clear-value.md | 38 - .../rhi/d3d12/common/create-scissor-rect.md | 29 - .../d3d12/common/create-transition-barrier.md | 39 - .../rhi/d3d12/common/create-uav-barrier.md | 27 - .../d3d12/common/create-vertex-buffer-view.md | 37 - docs/api/rhi/d3d12/common/create-viewport.md | 38 - .../common/get-cbv-srv-uav-descriptor-size.md | 26 - .../d3d12/common/get-cpu-descriptor-handle.md | 35 - .../get-descriptor-handle-increment-size.md | 28 - .../d3d12/common/get-dsv-descriptor-size.md | 26 - .../d3d12/common/get-gpu-descriptor-handle.md | 35 - .../d3d12/common/get-rtv-descriptor-size.md | 27 - .../common/get-sampler-descriptor-size.md | 26 - .../is-depth-stencil-format-supported.md | 29 - .../is-render-target-format-supported.md | 29 - .../is-shader-resource-format-supported.md | 29 - .../common/is-texture-format-supported.md | 29 - .../constant-buffer-view.md | 37 - .../d3d12/constant-buffer-view/constructor.md | 16 - .../d3d12/constant-buffer-view/destructor.md | 16 - .../get-cpu-descriptor-handle.md | 21 - .../d3d12/constant-buffer-view/initialize.md | 26 - .../d3d12/constant-buffer-view/shutdown.md | 16 - docs/api/rhi/d3d12/d3d12.md | 77 -- .../d3d12/depth-stencil-view/constructor.md | 27 - .../d3d12/depth-stencil-view/create-desc.md | 27 - .../depth-stencil-view/depth-stencil-view.md | 46 - .../d3d12/depth-stencil-view/destructor.md | 34 - .../get-cpu-descriptor-handle.md | 29 - .../d3d12/depth-stencil-view/initialize-at.md | 33 - .../d3d12/depth-stencil-view/initialize.md | 36 - .../rhi/d3d12/depth-stencil-view/shutdown.md | 31 - .../rhi/d3d12/descriptor-heap/constructor.md | 18 - .../rhi/d3d12/descriptor-heap/create-desc.md | 20 - .../d3d12/descriptor-heap/descriptor-heap.md | 62 - ...et-cpu-descriptor-handle-for-heap-start.md | 17 - .../get-cpu-descriptor-handle.md | 18 - .../descriptor-heap/get-descriptor-count.md | 15 - .../descriptor-heap/get-descriptor-heap.md | 15 - .../descriptor-heap/get-descriptor-size.md | 15 - ...et-gpu-descriptor-handle-for-heap-start.md | 17 - .../get-gpu-descriptor-handle.md | 18 - .../descriptor-heap/get-native-handle.md | 17 - .../api/rhi/d3d12/descriptor-heap/get-type.md | 16 - .../descriptor-heap/initialize-device.md | 40 - .../descriptor-heap/initialize-from-desc.md | 34 - .../api/rhi/d3d12/descriptor-heap/shutdown.md | 14 - .../rhi/d3d12/device/check-feature-support.md | 25 - docs/api/rhi/d3d12/device/compile-shader.md | 31 - docs/api/rhi/d3d12/device/constructor.md | 35 - docs/api/rhi/d3d12/device/create-buffer.md | 32 - .../rhi/d3d12/device/create-command-list.md | 19 - .../rhi/d3d12/device/create-command-queue.md | 19 - docs/api/rhi/d3d12/device/create-fence.md | 27 - .../rhi/d3d12/device/create-pipeline-state.md | 19 - docs/api/rhi/d3d12/device/create-sampler.md | 30 - .../api/rhi/d3d12/device/create-swap-chain.md | 19 - docs/api/rhi/d3d12/device/create-texture.md | 36 - docs/api/rhi/d3d12/device/destructor.md | 38 - docs/api/rhi/d3d12/device/device.md | 56 - .../rhi/d3d12/device/enumerate-adapters.md | 22 - docs/api/rhi/d3d12/device/get-adapter-info.md | 20 - docs/api/rhi/d3d12/device/get-capabilities.md | 15 - .../get-descriptor-handle-increment-size.md | 22 - docs/api/rhi/d3d12/device/get-device-info.md | 14 - docs/api/rhi/d3d12/device/get-device.md | 19 - docs/api/rhi/d3d12/device/get-factory.md | 19 - .../api/rhi/d3d12/device/get-native-device.md | 21 - .../api/rhi/d3d12/device/get-native-handle.md | 16 - docs/api/rhi/d3d12/device/initialize.md | 35 - .../api/rhi/d3d12/device/is-device-removed.md | 14 - .../rhi/d3d12/device/set-device-removed.md | 12 - docs/api/rhi/d3d12/device/shutdown.md | 21 - docs/api/rhi/d3d12/enums/enums.md | 78 -- docs/api/rhi/d3d12/fence/constructor.md | 35 - docs/api/rhi/d3d12/fence/destructor.md | 36 - docs/api/rhi/d3d12/fence/fence.md | 39 - .../rhi/d3d12/fence/get-completed-value.md | 34 - docs/api/rhi/d3d12/fence/get-event-handle.md | 31 - docs/api/rhi/d3d12/fence/get-fence.md | 30 - docs/api/rhi/d3d12/fence/get-native-handle.md | 30 - docs/api/rhi/d3d12/fence/index.md | 75 -- docs/api/rhi/d3d12/fence/initialize.md | 43 - docs/api/rhi/d3d12/fence/is-signaled.md | 33 - docs/api/rhi/d3d12/fence/shutdown.md | 37 - docs/api/rhi/d3d12/fence/signal.md | 46 - docs/api/rhi/d3d12/fence/wait.md | 37 - docs/api/rhi/d3d12/pipeline-state/bind.md | 36 - .../rhi/d3d12/pipeline-state/create-desc.md | 53 - .../pipeline-state/create-input-element.md | 54 - .../d3d12/pipeline-state/get-native-handle.md | 37 - .../pipeline-state/get-pipeline-state.md | 29 - docs/api/rhi/d3d12/pipeline-state/get-type.md | 35 - .../rhi/d3d12/pipeline-state/initialize.md | 48 - .../d3d12/pipeline-state/pipeline-state.md | 26 - docs/api/rhi/d3d12/pipeline-state/shutdown.md | 36 - docs/api/rhi/d3d12/pipeline-state/unbind.md | 36 - docs/api/rhi/d3d12/query-heap/constructor.md | 35 - docs/api/rhi/d3d12/query-heap/destructor.md | 36 - docs/api/rhi/d3d12/query-heap/get-count.md | 30 - .../rhi/d3d12/query-heap/get-native-handle.md | 33 - .../rhi/d3d12/query-heap/get-query-heap.md | 30 - docs/api/rhi/d3d12/query-heap/get-type.md | 36 - docs/api/rhi/d3d12/query-heap/initialize.md | 42 - docs/api/rhi/d3d12/query-heap/query-heap.md | 38 - docs/api/rhi/d3d12/query-heap/shutdown.md | 35 - .../d3d12/render-target-view/constructor.md | 27 - .../d3d12/render-target-view/create-desc.md | 39 - .../d3d12/render-target-view/destructor.md | 34 - .../get-cpu-descriptor-handle.md | 31 - .../d3d12/render-target-view/initialize-at.md | 42 - .../d3d12/render-target-view/initialize.md | 35 - .../render-target-view/render-target-view.md | 40 - .../rhi/d3d12/render-target-view/shutdown.md | 26 - .../rhi/d3d12/root-signature/constructor.md | 27 - .../root-signature/create-32bit-constants.md | 38 - .../rhi/d3d12/root-signature/create-cbv.md | 39 - .../rhi/d3d12/root-signature/create-desc.md | 48 - .../root-signature/create-descriptor-range.md | 39 - .../root-signature/create-descriptor-table.md | 40 - .../root-signature/create-sampler-desc.md | 38 - .../rhi/d3d12/root-signature/create-srv.md | 39 - .../root-signature/create-static-sampler.md | 39 - .../rhi/d3d12/root-signature/create-uav.md | 39 - .../rhi/d3d12/root-signature/destructor.md | 34 - .../d3d12/root-signature/get-native-handle.md | 31 - .../root-signature/get-parameter-count.md | 29 - .../root-signature/get-root-signature.md | 29 - .../rhi/d3d12/root-signature/initialize.md | 48 - .../d3d12/root-signature/root-signature.md | 51 - docs/api/rhi/d3d12/root-signature/shutdown.md | 30 - docs/api/rhi/d3d12/sampler/bind.md | 26 - docs/api/rhi/d3d12/sampler/constructor.md | 37 - docs/api/rhi/d3d12/sampler/destructor.md | 36 - docs/api/rhi/d3d12/sampler/get-desc.md | 42 - docs/api/rhi/d3d12/sampler/get-id.md | 29 - .../rhi/d3d12/sampler/get-native-handle.md | 24 - docs/api/rhi/d3d12/sampler/index.md | 70 - docs/api/rhi/d3d12/sampler/initialize.md | 52 - docs/api/rhi/d3d12/sampler/sampler.md | 51 - docs/api/rhi/d3d12/sampler/shutdown.md | 24 - docs/api/rhi/d3d12/sampler/unbind.md | 26 - docs/api/rhi/d3d12/screenshot/capture.md | 46 - .../screenshot/copy-to-readback-and-save.md | 46 - docs/api/rhi/d3d12/screenshot/screenshot.md | 16 - .../d3d12/shader-resource-view/constructor.md | 24 - .../d3d12/shader-resource-view/create-desc.md | 44 - .../d3d12/shader-resource-view/destructor.md | 24 - .../get-cpu-descriptor-handle.md | 37 - .../shader-resource-view/initialize-at.md | 39 - .../d3d12/shader-resource-view/initialize.md | 41 - .../shader-resource-view.md | 52 - .../d3d12/shader-resource-view/shutdown.md | 30 - .../api/rhi/d3d12/shader/get-bytecode-size.md | 30 - docs/api/rhi/d3d12/shader/get-bytecode.md | 30 - .../rhi/d3d12/shader/get-d3d12-bytecode.md | 29 - docs/api/rhi/d3d12/shader/get-input-layout.md | 29 - docs/api/rhi/d3d12/shader/set-float.md | 36 - docs/api/rhi/d3d12/shader/set-int.md | 36 - docs/api/rhi/d3d12/shader/set-mat4.md | 37 - docs/api/rhi/d3d12/shader/set-vec3.md | 38 - docs/api/rhi/d3d12/shader/set-vec4.md | 39 - docs/api/rhi/d3d12/shader/shader.md | 46 - docs/api/rhi/d3d12/swap-chain/constructor.md | 26 - docs/api/rhi/d3d12/swap-chain/destructor.md | 21 - .../rhi/d3d12/swap-chain/get-back-buffer.md | 47 - .../get-current-back-buffer-index.md | 30 - .../swap-chain/get-current-back-buffer.md | 30 - .../rhi/d3d12/swap-chain/get-native-handle.md | 35 - .../rhi/d3d12/swap-chain/get-swap-chain.md | 29 - .../swap-chain/initialize-from-factory.md | 42 - .../swap-chain/initialize-from-swapchain.md | 39 - .../api/rhi/d3d12/swap-chain/is-fullscreen.md | 32 - docs/api/rhi/d3d12/swap-chain/poll-events.md | 29 - docs/api/rhi/d3d12/swap-chain/present.md | 36 - docs/api/rhi/d3d12/swap-chain/resize.md | 42 - .../rhi/d3d12/swap-chain/set-fullscreen.md | 36 - .../rhi/d3d12/swap-chain/set-should-close.md | 36 - docs/api/rhi/d3d12/swap-chain/should-close.md | 32 - docs/api/rhi/d3d12/swap-chain/shutdown.md | 40 - docs/api/rhi/d3d12/swap-chain/swap-chain.md | 61 - docs/api/rhi/d3d12/texture/constructor.md | 42 - docs/api/rhi/d3d12/texture/destructor.md | 42 - docs/api/rhi/d3d12/texture/get-array-size.md | 29 - docs/api/rhi/d3d12/texture/get-depth.md | 33 - docs/api/rhi/d3d12/texture/get-desc.md | 31 - docs/api/rhi/d3d12/texture/get-format.md | 31 - docs/api/rhi/d3d12/texture/get-gpu-address.md | 31 - docs/api/rhi/d3d12/texture/get-height.md | 33 - docs/api/rhi/d3d12/texture/get-mip-levels.md | 31 - docs/api/rhi/d3d12/texture/get-name.md | 33 - .../rhi/d3d12/texture/get-native-handle.md | 32 - docs/api/rhi/d3d12/texture/get-resource.md | 32 - docs/api/rhi/d3d12/texture/get-size.md | 32 - docs/api/rhi/d3d12/texture/get-state.md | 32 - .../api/rhi/d3d12/texture/get-texture-type.md | 31 - docs/api/rhi/d3d12/texture/get-width.md | 33 - .../d3d12/texture/initialize-depth-stencil.md | 38 - .../rhi/d3d12/texture/initialize-from-data.md | 42 - .../d3d12/texture/initialize-from-existing.md | 50 - docs/api/rhi/d3d12/texture/initialize.md | 49 - docs/api/rhi/d3d12/texture/owns-resource.md | 33 - docs/api/rhi/d3d12/texture/set-name.md | 32 - docs/api/rhi/d3d12/texture/set-state.md | 32 - docs/api/rhi/d3d12/texture/shutdown.md | 33 - docs/api/rhi/d3d12/texture/texture.md | 38 - .../rhi/d3d12/types/to-d3d12-buffer-desc.md | 36 - .../rhi/d3d12/types/to-d3d12-clear-value.md | 37 - .../types/to-d3d12-command-queue-desc.md | 36 - .../rhi/d3d12/types/to-d3d12-depth-stencil.md | 37 - .../types/to-d3d12-descriptor-heap-desc.md | 36 - .../d3d12/types/to-d3d12-heap-properties.md | 36 - docs/api/rhi/d3d12/types/to-d3d12-rect.md | 36 - .../rhi/d3d12/types/to-d3d12-texture-desc.md | 36 - docs/api/rhi/d3d12/types/to-d3d12-viewport.md | 36 - docs/api/rhi/d3d12/types/types.md | 24 - .../unordered-access-view/constructor.md | 22 - .../d3d12/unordered-access-view/destructor.md | 16 - .../get-cpu-descriptor-handle.md | 31 - .../rhi/d3d12/unordered-access-view/index.md | 60 - .../d3d12/unordered-access-view/initialize.md | 39 - .../d3d12/unordered-access-view/shutdown.md | 28 - .../unordered-access-view.md | 21 - .../rhi/descriptor-pool/descriptor-pool.md | 52 - docs/api/rhi/descriptor-pool/destructor.md | 33 - .../descriptor-pool/get-descriptor-count.md | 28 - .../rhi/descriptor-pool/get-native-handle.md | 34 - docs/api/rhi/descriptor-pool/get-type.md | 36 - docs/api/rhi/descriptor-pool/initialize.md | 45 - docs/api/rhi/descriptor-pool/shutdown.md | 33 - docs/api/rhi/device/compile-shader.md | 35 - docs/api/rhi/device/constructor.md | 30 - docs/api/rhi/device/create-buffer.md | 32 - docs/api/rhi/device/create-command-list.md | 29 - docs/api/rhi/device/create-command-queue.md | 31 - docs/api/rhi/device/create-fence.md | 29 - docs/api/rhi/device/create-pipeline-state.md | 29 - docs/api/rhi/device/create-sampler.md | 34 - docs/api/rhi/device/create-shader.md | 34 - docs/api/rhi/device/create-swap-chain.md | 34 - docs/api/rhi/device/create-texture.md | 38 - docs/api/rhi/device/destructor.md | 29 - docs/api/rhi/device/device.md | 77 -- docs/api/rhi/device/get-capabilities.md | 32 - docs/api/rhi/device/get-device-info.md | 27 - docs/api/rhi/device/get-native-device.md | 29 - docs/api/rhi/device/initialize.md | 39 - docs/api/rhi/device/shutdown.md | 20 - docs/api/rhi/enums/blend-factor.md | 53 - docs/api/rhi/enums/blend-op.md | 40 - docs/api/rhi/enums/border-color.md | 38 - docs/api/rhi/enums/buffer-type.md | 42 - docs/api/rhi/enums/color-write-mask.md | 41 - docs/api/rhi/enums/command-queue-type.md | 38 - docs/api/rhi/enums/comparison-func.md | 43 - docs/api/rhi/enums/cull-mode.md | 38 - docs/api/rhi/enums/descriptor-heap-type.md | 39 - docs/api/rhi/enums/descriptor-type.md | 41 - docs/api/rhi/enums/enums.md | 454 ------- docs/api/rhi/enums/fill-mode.md | 37 - docs/api/rhi/enums/filter-mode.md | 47 - docs/api/rhi/enums/format.md | 55 - docs/api/rhi/enums/heap-type.md | 39 - docs/api/rhi/enums/load-action.md | 38 - docs/api/rhi/enums/logic-op.md | 51 - docs/api/rhi/enums/pipeline-type.md | 38 - docs/api/rhi/enums/present-flags.md | 39 - docs/api/rhi/enums/primitive-topology.md | 46 - docs/api/rhi/enums/query-type.md | 38 - docs/api/rhi/enums/resource-states.md | 48 - docs/api/rhi/enums/rhi-type.md | 39 - docs/api/rhi/enums/root-parameter-type.md | 40 - docs/api/rhi/enums/shader-type.md | 47 - docs/api/rhi/enums/shader-visibility.md | 43 - docs/api/rhi/enums/stencil-op.md | 43 - docs/api/rhi/enums/store-action.md | 40 - docs/api/rhi/enums/texture-address-mode.md | 40 - docs/api/rhi/enums/texture-type.md | 41 - .../rhi/factory/create-rhi-device-string.md | 59 - .../api/rhi/factory/create-rhi-device-type.md | 59 - docs/api/rhi/factory/destructor.md | 29 - docs/api/rhi/factory/factory.md | 50 - docs/api/rhi/fence/constructor.md | 28 - docs/api/rhi/fence/destructor.md | 29 - docs/api/rhi/fence/fence.md | 55 - docs/api/rhi/fence/get-completed-value.md | 21 - docs/api/rhi/fence/get-native-handle.md | 17 - docs/api/rhi/fence/is-signaled.md | 23 - docs/api/rhi/fence/shutdown.md | 28 - docs/api/rhi/fence/signal-value.md | 34 - docs/api/rhi/fence/signal.md | 32 - docs/api/rhi/fence/wait.md | 35 - docs/api/rhi/framebuffer/framebuffer.md | 54 - docs/api/rhi/framebuffer/get-height.md | 17 - docs/api/rhi/framebuffer/get-native-handle.md | 25 - docs/api/rhi/framebuffer/get-width.md | 17 - docs/api/rhi/framebuffer/initialize.md | 49 - docs/api/rhi/framebuffer/is-valid.md | 27 - docs/api/rhi/framebuffer/shutdown.md | 21 - docs/api/rhi/opengl/README.md | 26 - docs/api/rhi/opengl/buffer/bind-base.md | 21 - docs/api/rhi/opengl/buffer/bind.md | 17 - docs/api/rhi/opengl/buffer/buffer.md | 38 - docs/api/rhi/opengl/buffer/get-id.md | 20 - docs/api/rhi/opengl/buffer/get-type.md | 19 - .../opengl/buffer/initialize-index-buffer.md | 25 - .../opengl/buffer/initialize-vertex-buffer.md | 25 - docs/api/rhi/opengl/buffer/initialize.md | 26 - docs/api/rhi/opengl/buffer/is-dynamic.md | 24 - docs/api/rhi/opengl/buffer/map.md | 27 - docs/api/rhi/opengl/buffer/set-data.md | 30 - docs/api/rhi/opengl/buffer/unbind.md | 17 - docs/api/rhi/opengl/buffer/unmap.md | 22 - .../rhi/opengl/command-list/clear-color.md | 23 - .../command-list/clear-depth-stencil.md | 22 - .../rhi/opengl/command-list/clear-depth.md | 20 - .../command-list/clear-render-target.md | 22 - .../rhi/opengl/command-list/clear-stencil.md | 20 - docs/api/rhi/opengl/command-list/clear.md | 45 - .../rhi/opengl/command-list/command-list.md | 115 -- .../rhi/opengl/command-list/copy-resource.md | 21 - docs/api/rhi/opengl/command-list/dispatch.md | 22 - .../rhi/opengl/command-list/draw-indexed.md | 24 - docs/api/rhi/opengl/command-list/draw.md | 37 - .../rhi/opengl/command-list/opengl-methods.md | 1128 ----------------- .../opengl/command-list/set-blend-factor.md | 21 - .../opengl/command-list/set-blend-state.md | 43 - .../command-list/set-depth-stencil-state.md | 24 - .../opengl/command-list/set-index-buffer.md | 22 - .../opengl/command-list/set-pipeline-state.md | 20 - .../command-list/set-primitive-topology.md | 20 - .../opengl/command-list/set-render-targets.md | 23 - .../opengl/command-list/set-scissor-rect.md | 23 - .../opengl/command-list/set-scissor-rects.md | 22 - .../opengl/command-list/set-stencil-ref.md | 20 - .../opengl/command-list/set-vertex-buffer.md | 23 - .../opengl/command-list/set-vertex-buffers.md | 24 - .../rhi/opengl/command-list/set-viewport.md | 36 - .../rhi/opengl/command-list/set-viewports.md | 22 - .../opengl/command-list/transition-barrier.md | 22 - .../rhi/opengl/command-queue/command-queue.md | 30 - .../command-queue/execute-command-lists.md | 24 - .../command-queue/get-completed-value.md | 19 - .../opengl/command-queue/get-native-handle.md | 19 - .../command-queue/get-timestamp-frequency.md | 19 - docs/api/rhi/opengl/command-queue/get-type.md | 19 - docs/api/rhi/opengl/command-queue/shutdown.md | 13 - docs/api/rhi/opengl/command-queue/signal.md | 23 - .../rhi/opengl/command-queue/wait-for-idle.md | 19 - docs/api/rhi/opengl/command-queue/wait.md | 23 - .../depth-stencil-view/bind-framebuffer.md | 22 - .../api/rhi/opengl/depth-stencil-view/bind.md | 17 - .../depth-stencil-view/clear-depth-stencil.md | 23 - .../opengl/depth-stencil-view/clear-depth.md | 22 - .../depth-stencil-view/clear-stencil.md | 22 - .../opengl/depth-stencil-view/constructor.md | 11 - .../depth-stencil-format.md | 19 - .../depth-stencil-view/depth-stencil-type.md | 18 - .../depth-stencil-view/depth-stencil-view.md | 45 - .../opengl/depth-stencil-view/destructor.md | 11 - .../depth-stencil-view/get-framebuffer.md | 19 - .../depth-stencil-view/get-mip-level.md | 19 - .../rhi/opengl/depth-stencil-view/get-size.md | 14 - .../opengl/depth-stencil-view/get-texture.md | 19 - .../depth-stencil-view/initialize-cubemap.md | 25 - .../opengl/depth-stencil-view/initialize.md | 62 - .../openGLDepthStencilViewDesc.md | 30 - .../rhi/opengl/depth-stencil-view/shutdown.md | 17 - .../depth-stencil-view/unbind-framebuffer.md | 19 - .../rhi/opengl/depth-stencil-view/unbind.md | 17 - docs/api/rhi/opengl/device/compile-shader.md | 73 -- docs/api/rhi/opengl/device/constructor.md | 29 - docs/api/rhi/opengl/device/create-buffer.md | 67 - .../rhi/opengl/device/create-command-list.md | 49 - .../rhi/opengl/device/create-command-queue.md | 45 - docs/api/rhi/opengl/device/create-fence.md | 56 - .../opengl/device/create-pipeline-state.md | 53 - .../rhi/opengl/device/create-render-window.md | 28 - docs/api/rhi/opengl/device/create-sampler.md | 65 - .../rhi/opengl/device/create-swap-chain.md | 61 - docs/api/rhi/opengl/device/create-texture.md | 81 -- docs/api/rhi/opengl/device/destructor.md | 33 - docs/api/rhi/opengl/device/device.md | 85 -- .../api/rhi/opengl/device/get-capabilities.md | 57 - docs/api/rhi/opengl/device/get-context.md | 31 - docs/api/rhi/opengl/device/get-dc.md | 31 - .../rhi/opengl/device/get-device-info-impl.md | 39 - docs/api/rhi/opengl/device/get-device-info.md | 53 - .../rhi/opengl/device/get-native-context.md | 13 - .../rhi/opengl/device/get-native-device.md | 35 - .../rhi/opengl/device/get-native-handle.md | 26 - docs/api/rhi/opengl/device/get-window.md | 22 - .../device/initialize-with-existing-window.md | 26 - docs/api/rhi/opengl/device/initialize.md | 64 - .../rhi/opengl/device/make-context-current.md | 13 - docs/api/rhi/opengl/device/poll-events.md | 23 - .../api/rhi/opengl/device/set-should-close.md | 20 - docs/api/rhi/opengl/device/should-close.md | 23 - docs/api/rhi/opengl/device/shutdown.md | 49 - docs/api/rhi/opengl/device/swap-buffers.md | 19 - docs/api/rhi/opengl/fence/fence.md | 44 - .../rhi/opengl/fence/get-completed-value.md | 41 - .../api/rhi/opengl/fence/get-current-value.md | 41 - .../api/rhi/opengl/fence/get-native-handle.md | 43 - docs/api/rhi/opengl/fence/get-status.md | 50 - docs/api/rhi/opengl/fence/initialize.md | 41 - docs/api/rhi/opengl/fence/is-signaled.md | 43 - docs/api/rhi/opengl/fence/reset.md | 47 - docs/api/rhi/opengl/fence/shutdown.md | 39 - docs/api/rhi/opengl/fence/signal.md | 48 - docs/api/rhi/opengl/fence/wait.md | 50 - docs/api/rhi/opengl/opengl.md | 41 - .../rhi/opengl/pipeline-state/apply-blend.md | 21 - .../pipeline-state/apply-depth-stencil.md | 21 - .../opengl/pipeline-state/apply-rasterizer.md | 21 - .../opengl/pipeline-state/apply-scissor.md | 21 - .../opengl/pipeline-state/apply-viewport.md | 21 - docs/api/rhi/opengl/pipeline-state/apply.md | 27 - .../opengl/pipeline-state/attach-shader.md | 23 - docs/api/rhi/opengl/pipeline-state/bind.md | 24 - docs/api/rhi/opengl/pipeline-state/clear.md | 31 - .../rhi/opengl/pipeline-state/constructor.md | 21 - .../rhi/opengl/pipeline-state/destructor.md | 22 - .../opengl/pipeline-state/detach-shader.md | 20 - .../opengl/pipeline-state/get-blend-state.md | 25 - .../pipeline-state/get-depth-stencil-state.md | 25 - .../pipeline-state/get-native-handle.md | 26 - .../pipeline-state/get-rasterizer-state.md | 25 - .../api/rhi/opengl/pipeline-state/get-type.md | 27 - .../opengl/pipeline-state/pipeline-state.md | 40 - .../opengl/pipeline-state/set-blend-state.md | 27 - .../opengl/pipeline-state/set-clear-color.md | 26 - .../pipeline-state/set-depth-stencil-state.md | 27 - .../pipeline-state/set-logical-operation.md | 25 - .../pipeline-state/set-rasterizer-state.md | 27 - .../rhi/opengl/pipeline-state/set-scissor.md | 29 - .../rhi/opengl/pipeline-state/set-viewport.md | 30 - .../api/rhi/opengl/pipeline-state/shutdown.md | 21 - docs/api/rhi/opengl/pipeline-state/unbind.md | 20 - .../render-target-view/bind-framebuffer.md | 20 - .../api/rhi/opengl/render-target-view/bind.md | 36 - .../rhi/opengl/render-target-view/clear.md | 36 - .../render-target-view/get-framebuffer.md | 19 - .../opengl/render-target-view/get-height.md | 19 - .../render-target-view/get-mip-level.md | 19 - .../rhi/opengl/render-target-view/get-size.md | 19 - .../opengl/render-target-view/get-texture.md | 19 - .../render-target-view/initialize-cubemap.md | 25 - .../opengl/render-target-view/initialize.md | 29 - .../render-target-view/render-target-view.md | 86 -- .../rhi/opengl/render-target-view/shutdown.md | 24 - .../render-target-view/unbind-framebuffer.md | 17 - .../rhi/opengl/render-target-view/unbind.md | 19 - docs/api/rhi/opengl/sampler/bind.md | 26 - docs/api/rhi/opengl/sampler/constructor.md | 23 - docs/api/rhi/opengl/sampler/get-id.md | 27 - docs/api/rhi/opengl/sampler/initialize.md | 48 - docs/api/rhi/opengl/sampler/sampler.md | 72 -- docs/api/rhi/opengl/sampler/shutdown.md | 29 - docs/api/rhi/opengl/sampler/unbind.md | 26 - docs/api/rhi/opengl/shader/compile-compute.md | 30 - .../opengl/shader/compile-from-file-vs-fs.md | 25 - .../shader/compile-from-file-vs-gs-fs.md | 26 - docs/api/rhi/opengl/shader/compile-type.md | 31 - docs/api/rhi/opengl/shader/compile-vs-fs.md | 34 - docs/api/rhi/opengl/shader/get-id.md | 23 - .../rhi/opengl/shader/get-uniform-location.md | 27 - docs/api/rhi/opengl/shader/set-float-array.md | 26 - docs/api/rhi/opengl/shader/set-int-array.md | 26 - docs/api/rhi/opengl/shader/set-mat2.md | 34 - docs/api/rhi/opengl/shader/set-mat3.md | 35 - docs/api/rhi/opengl/shader/set-mat4-array.md | 44 - docs/api/rhi/opengl/shader/set-vec3-array.md | 35 - docs/api/rhi/opengl/shader/set-vec4-array.md | 35 - docs/api/rhi/opengl/shader/shader.md | 40 - docs/api/rhi/opengl/shader/use.md | 21 - docs/api/rhi/opengl/swap-chain/constructor.md | 24 - docs/api/rhi/opengl/swap-chain/destructor.md | 27 - .../get-current-back-buffer-index.md | 26 - .../swap-chain/get-current-back-buffer.md | 28 - .../swap-chain/get-framebuffer-height.md | 26 - .../swap-chain/get-framebuffer-width.md | 26 - docs/api/rhi/opengl/swap-chain/get-height.md | 22 - .../opengl/swap-chain/get-native-handle.md | 26 - docs/api/rhi/opengl/swap-chain/get-width.md | 22 - docs/api/rhi/opengl/swap-chain/get-window.md | 22 - .../rhi/opengl/swap-chain/initialize-mode.md | 25 - docs/api/rhi/opengl/swap-chain/initialize.md | 28 - .../rhi/opengl/swap-chain/is-fullscreen.md | 24 - docs/api/rhi/opengl/swap-chain/is-vsync.md | 24 - docs/api/rhi/opengl/swap-chain/poll-events.md | 22 - .../api/rhi/opengl/swap-chain/present-mode.md | 21 - docs/api/rhi/opengl/swap-chain/present.md | 24 - docs/api/rhi/opengl/swap-chain/resize.md | 28 - .../opengl/swap-chain/set-framebuffer-size.md | 29 - .../rhi/opengl/swap-chain/set-fullscreen.md | 23 - .../rhi/opengl/swap-chain/set-should-close.md | 23 - docs/api/rhi/opengl/swap-chain/set-vsync.md | 23 - .../api/rhi/opengl/swap-chain/should-close.md | 25 - docs/api/rhi/opengl/swap-chain/shutdown.md | 24 - .../rhi/opengl/swap-chain/surface-format.md | 21 - .../api/rhi/opengl/swap-chain/swap-buffers.md | 20 - docs/api/rhi/opengl/swap-chain/swap-chain.md | 63 - docs/api/rhi/opengl/texture/bind-image.md | 22 - docs/api/rhi/opengl/texture/bind.md | 22 - docs/api/rhi/opengl/texture/constructors.md | 28 - .../api/rhi/opengl/texture/generate-mipmap.md | 18 - docs/api/rhi/opengl/texture/get-id.md | 20 - .../api/rhi/opengl/texture/get-opengl-type.md | 23 - docs/api/rhi/opengl/texture/initialize-2d.md | 28 - .../rhi/opengl/texture/initialize-cube-map.md | 26 - docs/api/rhi/opengl/texture/initialize.md | 31 - docs/api/rhi/opengl/texture/load-from-file.md | 26 - docs/api/rhi/opengl/texture/set-filtering.md | 21 - docs/api/rhi/opengl/texture/set-format.md | 21 - docs/api/rhi/opengl/texture/set-wrapping.md | 22 - docs/api/rhi/opengl/texture/texture.md | 42 - docs/api/rhi/opengl/texture/unbind.md | 18 - .../opengl/vertex-array/add-vertex-buffer.md | 48 - docs/api/rhi/opengl/vertex-array/bind.md | 18 - .../rhi/opengl/vertex-array/constructor.md | 31 - .../api/rhi/opengl/vertex-array/destructor.md | 29 - docs/api/rhi/opengl/vertex-array/get-id.md | 20 - .../opengl/vertex-array/get-index-buffer.md | 19 - .../opengl/vertex-array/get-index-count.md | 29 - .../api/rhi/opengl/vertex-array/initialize.md | 33 - .../opengl/vertex-array/set-index-buffer.md | 30 - docs/api/rhi/opengl/vertex-array/shutdown.md | 32 - docs/api/rhi/opengl/vertex-array/unbind.md | 17 - .../rhi/opengl/vertex-array/vertex-array.md | 68 - .../opengl/vertex-array/vertex-attribute.md | 72 -- docs/api/rhi/pipeline-layout/constructor.md | 27 - docs/api/rhi/pipeline-layout/destructor.md | 29 - .../rhi/pipeline-layout/get-native-handle.md | 25 - docs/api/rhi/pipeline-layout/initialize.md | 38 - .../rhi/pipeline-layout/pipeline-layout.md | 53 - docs/api/rhi/pipeline-layout/shutdown.md | 24 - docs/api/rhi/pipeline-state/bind.md | 37 - docs/api/rhi/pipeline-state/constructor.md | 28 - docs/api/rhi/pipeline-state/destructor.md | 29 - .../rhi/pipeline-state/get-native-handle.md | 43 - docs/api/rhi/pipeline-state/get-type.md | 49 - docs/api/rhi/pipeline-state/pipeline-state.md | 60 - docs/api/rhi/pipeline-state/shutdown.md | 33 - docs/api/rhi/pipeline-state/unbind.md | 32 - .../render-pass/get-color-attachment-count.md | 17 - .../rhi/render-pass/get-color-attachments.md | 27 - .../get-depth-stencil-attachment.md | 27 - docs/api/rhi/render-pass/get-native-handle.md | 23 - docs/api/rhi/render-pass/initialize.md | 43 - docs/api/rhi/render-pass/render-pass.md | 79 -- docs/api/rhi/render-pass/shutdown.md | 21 - docs/api/rhi/rhi.md | 144 --- docs/api/rhi/sampler/bind.md | 55 - docs/api/rhi/sampler/constructor.md | 28 - docs/api/rhi/sampler/destructor.md | 29 - docs/api/rhi/sampler/get-id.md | 45 - docs/api/rhi/sampler/get-native-handle.md | 46 - docs/api/rhi/sampler/sampler.md | 58 - docs/api/rhi/sampler/shutdown.md | 48 - docs/api/rhi/sampler/unbind.md | 52 - docs/api/rhi/shader/bind.md | 40 - docs/api/rhi/shader/compile-from-file.md | 39 - docs/api/rhi/shader/compile.md | 40 - docs/api/rhi/shader/constructor.md | 30 - docs/api/rhi/shader/destructor.md | 29 - docs/api/rhi/shader/get-native-handle.md | 35 - docs/api/rhi/shader/get-type.md | 40 - docs/api/rhi/shader/is-valid.md | 36 - docs/api/rhi/shader/set-float.md | 41 - docs/api/rhi/shader/set-int.md | 40 - docs/api/rhi/shader/set-mat4.md | 39 - docs/api/rhi/shader/set-vec3.md | 42 - docs/api/rhi/shader/set-vec4.md | 43 - docs/api/rhi/shader/shader.md | 80 -- docs/api/rhi/shader/shutdown.md | 32 - docs/api/rhi/shader/unbind.md | 30 - docs/api/rhi/swap-chain/constructor.md | 28 - docs/api/rhi/swap-chain/destructor.md | 29 - .../get-current-back-buffer-index.md | 21 - .../rhi/swap-chain/get-current-back-buffer.md | 21 - docs/api/rhi/swap-chain/get-native-handle.md | 23 - docs/api/rhi/swap-chain/is-fullscreen.md | 23 - docs/api/rhi/swap-chain/poll-events.md | 21 - docs/api/rhi/swap-chain/present.md | 25 - docs/api/rhi/swap-chain/resize.md | 29 - docs/api/rhi/swap-chain/set-fullscreen.md | 24 - docs/api/rhi/swap-chain/set-should-close.md | 24 - docs/api/rhi/swap-chain/should-close.md | 23 - docs/api/rhi/swap-chain/shutdown.md | 21 - docs/api/rhi/swap-chain/swap-chain.md | 47 - docs/api/rhi/texture/constructor.md | 28 - docs/api/rhi/texture/destructor.md | 28 - docs/api/rhi/texture/get-depth.md | 25 - docs/api/rhi/texture/get-format.md | 25 - docs/api/rhi/texture/get-height.md | 25 - docs/api/rhi/texture/get-mip-levels.md | 25 - docs/api/rhi/texture/get-name.md | 26 - docs/api/rhi/texture/get-native-handle.md | 25 - docs/api/rhi/texture/get-state.md | 25 - docs/api/rhi/texture/get-texture-type.md | 28 - docs/api/rhi/texture/get-width.md | 25 - docs/api/rhi/texture/set-name.md | 26 - docs/api/rhi/texture/set-state.md | 26 - docs/api/rhi/texture/shutdown.md | 25 - docs/api/rhi/texture/texture.md | 99 -- docs/api/rhi/types/types.md | 556 -------- docs/api/scene/scene-manager/create-scene.md | 31 - .../scene/scene-manager/get-active-scene.md | 29 - .../api/scene/scene-manager/get-all-scenes.md | 28 - docs/api/scene/scene-manager/get-scene.md | 33 - docs/api/scene/scene-manager/get.md | 25 - .../scene/scene-manager/load-scene-async.md | 34 - docs/api/scene/scene-manager/load-scene.md | 31 - .../scene-manager/on-active-scene-changed.md | 33 - .../scene/scene-manager/on-scene-loaded.md | 33 - .../scene/scene-manager/on-scene-unloaded.md | 33 - docs/api/scene/scene-manager/scene-manager.md | 74 -- .../scene/scene-manager/set-active-scene.md | 32 - docs/api/scene/scene-manager/unload-scene.md | 33 - docs/api/scene/scene.md | 46 - docs/api/scene/scene/create-game-object.md | 35 - .../scene/scene/deserialize-from-string.md | 40 - docs/api/scene/scene/destroy-game-object.md | 29 - docs/api/scene/scene/find-by-id.md | 36 - .../scene/scene/find-game-object-with-tag.md | 36 - docs/api/scene/scene/find.md | 36 - docs/api/scene/scene/fixed-update.md | 30 - docs/api/scene/scene/get-name.md | 26 - docs/api/scene/scene/get-root-game-objects.md | 27 - docs/api/scene/scene/is-active.md | 27 - docs/api/scene/scene/late-update.md | 30 - docs/api/scene/scene/load.md | 29 - .../api/scene/scene/on-game-object-created.md | 31 - .../scene/scene/on-game-object-destroyed.md | 31 - docs/api/scene/scene/save.md | 29 - docs/api/scene/scene/scene.md | 93 -- docs/api/scene/scene/serialize-to-string.md | 33 - docs/api/scene/scene/set-active.md | 25 - docs/api/scene/scene/set-name.md | 25 - docs/api/scene/scene/update.md | 25 - docs/api/threading/lambda-task/constructor.md | 41 - docs/api/threading/lambda-task/execute.md | 40 - docs/api/threading/lambda-task/lambda-task.md | 57 - docs/api/threading/mutex/lock-const.md | 43 - docs/api/threading/mutex/lock.md | 34 - docs/api/threading/mutex/mutex.md | 63 - docs/api/threading/mutex/try-lock-const.md | 41 - docs/api/threading/mutex/try_lock.md | 36 - docs/api/threading/mutex/trylock.md | 36 - docs/api/threading/mutex/unlock-const.md | 34 - docs/api/threading/mutex/unlock.md | 32 - .../threading/read-write-lock/constructor.md | 35 - .../threading/read-write-lock/destructor.md | 40 - .../read-write-lock/read-write-lock.md | 91 -- .../api/threading/read-write-lock/readlock.md | 41 - .../threading/read-write-lock/readunlock.md | 38 - .../threading/read-write-lock/writelock.md | 41 - .../threading/read-write-lock/writeunlock.md | 39 - docs/api/threading/spinlock/lock-stl.md | 31 - docs/api/threading/spinlock/lock.md | 35 - docs/api/threading/spinlock/spinlock.md | 56 - docs/api/threading/spinlock/try-lock.md | 32 - docs/api/threading/spinlock/trylock.md | 31 - docs/api/threading/spinlock/unlock-stl.md | 31 - docs/api/threading/spinlock/unlock.md | 32 - .../threading/task-group/add-dependency.md | 90 -- .../threading/task-group/add-task-callback.md | 55 - docs/api/threading/task-group/add-task.md | 62 - docs/api/threading/task-group/cancel.md | 49 - docs/api/threading/task-group/constructor.md | 34 - docs/api/threading/task-group/destructor.md | 40 - docs/api/threading/task-group/get-progress.md | 50 - docs/api/threading/task-group/is-complete.md | 50 - .../task-group/set-complete-callback.md | 82 -- docs/api/threading/task-group/task-group.md | 88 -- .../api/threading/task-group/task-priority.md | 59 - docs/api/threading/task-group/wait-for.md | 89 -- docs/api/threading/task-group/wait.md | 47 - .../enable-task-profiling.md | 29 - .../task-system-config/max-task-queue-size.md | 24 - .../task-system-config/steal-tasks.md | 25 - .../task-system-config/task-system-config.md | 36 - .../task-system-config/thread-stack-size.md | 28 - .../task-system-config/worker-thread-count.md | 25 - .../task-system/create-task-group.md | 41 - .../task-system/destroy-task-group.md | 34 - .../task-system/get-worker-thread-count.md | 27 - docs/api/threading/task-system/get.md | 26 - docs/api/threading/task-system/initialize.md | 39 - docs/api/threading/task-system/parallelfor.md | 48 - .../threading/task-system/runonmainthread.md | 45 - docs/api/threading/task-system/shutdown.md | 35 - docs/api/threading/task-system/submit.md | 67 - docs/api/threading/task-system/task-system.md | 81 -- docs/api/threading/task-system/update.md | 38 - docs/api/threading/task-system/wait.md | 30 - docs/api/threading/task/add-ref.md | 27 - docs/api/threading/task/execute.md | 43 - docs/api/threading/task/get-id.md | 25 - docs/api/threading/task/get-priority.md | 27 - docs/api/threading/task/get-status.md | 32 - docs/api/threading/task/on-cancel.md | 38 - docs/api/threading/task/on-complete.md | 39 - docs/api/threading/task/release.md | 32 - docs/api/threading/task/set-id.md | 28 - docs/api/threading/task/set-priority.md | 28 - docs/api/threading/task/set-status.md | 35 - docs/api/threading/task/task.md | 93 -- docs/api/threading/thread/detach.md | 46 - docs/api/threading/thread/get-current-id.md | 43 - docs/api/threading/thread/get-id.md | 44 - docs/api/threading/thread/get-name.md | 49 - docs/api/threading/thread/join.md | 47 - docs/api/threading/thread/sleep.md | 37 - docs/api/threading/thread/start.md | 47 - docs/api/threading/thread/thread.md | 65 - docs/api/threading/thread/yield.md | 50 - docs/api/threading/threading.md | 76 -- 4389 files changed, 80504 insertions(+), 69241 deletions(-) create mode 100644 docs/api/XCEngine/Audio/Audio.md create mode 100644 docs/api/XCEngine/Audio/AudioConfig/AudioConfig.md create mode 100644 docs/api/XCEngine/Audio/AudioMixer/AddEffect.md create mode 100644 docs/api/XCEngine/Audio/AudioMixer/AudioMixer.md create mode 100644 docs/api/XCEngine/Audio/AudioMixer/ClearEffects.md create mode 100644 docs/api/XCEngine/Audio/AudioMixer/Constructor.md create mode 100644 docs/api/XCEngine/Audio/AudioMixer/Destructor.md create mode 100644 docs/api/XCEngine/Audio/AudioMixer/Get3DParams.md create mode 100644 docs/api/XCEngine/Audio/AudioMixer/GetChannelVolume.md create mode 100644 docs/api/XCEngine/Audio/AudioMixer/GetOutputMixer.md create mode 100644 docs/api/XCEngine/Audio/AudioMixer/GetVolume.md create mode 100644 docs/api/XCEngine/Audio/AudioMixer/IsMute.md create mode 100644 docs/api/XCEngine/Audio/AudioMixer/ProcessAudio.md create mode 100644 docs/api/XCEngine/Audio/AudioMixer/RemoveEffect.md create mode 100644 docs/api/XCEngine/Audio/AudioMixer/Set3DParams.md create mode 100644 docs/api/XCEngine/Audio/AudioMixer/SetChannelVolume.md create mode 100644 docs/api/XCEngine/Audio/AudioMixer/SetMute.md create mode 100644 docs/api/XCEngine/Audio/AudioMixer/SetOutputMixer.md create mode 100644 docs/api/XCEngine/Audio/AudioMixer/SetVolume.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/AudioSystem.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/Get.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/GetAvailableDevices.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/GetBackend.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/GetCurrentDevice.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/GetListenerPosition.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/GetListenerRotation.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/GetListenerVelocity.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/GetMasterVolume.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/GetStats.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/Initialize.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/IsMuted.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/ProcessAudio.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/RegisterSource.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/SetBackend.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/SetDevice.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/SetListenerTransform.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/SetListenerVelocity.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/SetMasterVolume.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/SetMuted.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/Shutdown.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/UnregisterSource.md create mode 100644 docs/api/XCEngine/Audio/AudioSystem/Update.md create mode 100644 docs/api/XCEngine/Audio/AudioTypes/AudioTypes.md create mode 100644 docs/api/XCEngine/Audio/Equalizer/Constructor.md create mode 100644 docs/api/XCEngine/Audio/Equalizer/Destructor.md create mode 100644 docs/api/XCEngine/Audio/Equalizer/Equalizer.md create mode 100644 docs/api/XCEngine/Audio/Equalizer/GetBandCount.md create mode 100644 docs/api/XCEngine/Audio/Equalizer/GetBandFrequency.md create mode 100644 docs/api/XCEngine/Audio/Equalizer/GetBandGain.md create mode 100644 docs/api/XCEngine/Audio/Equalizer/GetBandQ.md create mode 100644 docs/api/XCEngine/Audio/Equalizer/GetWetMix.md create mode 100644 docs/api/XCEngine/Audio/Equalizer/IsEnabled.md create mode 100644 docs/api/XCEngine/Audio/Equalizer/ProcessAudio.md create mode 100644 docs/api/XCEngine/Audio/Equalizer/SetBandCount.md create mode 100644 docs/api/XCEngine/Audio/Equalizer/SetBandFrequency.md create mode 100644 docs/api/XCEngine/Audio/Equalizer/SetBandGain.md create mode 100644 docs/api/XCEngine/Audio/Equalizer/SetBandQ.md create mode 100644 docs/api/XCEngine/Audio/Equalizer/SetEnabled.md create mode 100644 docs/api/XCEngine/Audio/Equalizer/SetWetMix.md create mode 100644 docs/api/XCEngine/Audio/FFTFilter/Constructor.md create mode 100644 docs/api/XCEngine/Audio/FFTFilter/Destructor.md create mode 100644 docs/api/XCEngine/Audio/FFTFilter/FFTFilter.md create mode 100644 docs/api/XCEngine/Audio/FFTFilter/GetFFTSize.md create mode 100644 docs/api/XCEngine/Audio/FFTFilter/GetSmoothingFactor.md create mode 100644 docs/api/XCEngine/Audio/FFTFilter/GetSpectrumData.md create mode 100644 docs/api/XCEngine/Audio/FFTFilter/GetSpectrumSize.md create mode 100644 docs/api/XCEngine/Audio/FFTFilter/ProcessAudio.md create mode 100644 docs/api/XCEngine/Audio/FFTFilter/SetFFTSize.md create mode 100644 docs/api/XCEngine/Audio/FFTFilter/SetSmoothingFactor.md create mode 100644 docs/api/XCEngine/Audio/HRTF/Constructor.md create mode 100644 docs/api/XCEngine/Audio/HRTF/Destructor.md create mode 100644 docs/api/XCEngine/Audio/HRTF/GetCrossFeed.md create mode 100644 docs/api/XCEngine/Audio/HRTF/GetQualityLevel.md create mode 100644 docs/api/XCEngine/Audio/HRTF/GetSpeedOfSound.md create mode 100644 docs/api/XCEngine/Audio/HRTF/HRTF.md create mode 100644 docs/api/XCEngine/Audio/HRTF/IsDopplerShiftEnabled.md create mode 100644 docs/api/XCEngine/Audio/HRTF/IsEnabled.md create mode 100644 docs/api/XCEngine/Audio/HRTF/IsHRTFEnabled.md create mode 100644 docs/api/XCEngine/Audio/HRTF/ProcessAudio.md create mode 100644 docs/api/XCEngine/Audio/HRTF/SetCrossFeed.md create mode 100644 docs/api/XCEngine/Audio/HRTF/SetDopplerShiftEnabled.md create mode 100644 docs/api/XCEngine/Audio/HRTF/SetEnabled.md create mode 100644 docs/api/XCEngine/Audio/HRTF/SetHRTFEnabled.md create mode 100644 docs/api/XCEngine/Audio/HRTF/SetQualityLevel.md create mode 100644 docs/api/XCEngine/Audio/HRTF/SetSpeedOfSound.md create mode 100644 docs/api/XCEngine/Audio/IAudioBackend/Destructor.md create mode 100644 docs/api/XCEngine/Audio/IAudioBackend/GetAvailableDevices.md create mode 100644 docs/api/XCEngine/Audio/IAudioBackend/GetConfig.md create mode 100644 docs/api/XCEngine/Audio/IAudioBackend/GetDeviceName.md create mode 100644 docs/api/XCEngine/Audio/IAudioBackend/GetMasterVolume.md create mode 100644 docs/api/XCEngine/Audio/IAudioBackend/IAudioBackend.md create mode 100644 docs/api/XCEngine/Audio/IAudioBackend/Initialize.md create mode 100644 docs/api/XCEngine/Audio/IAudioBackend/IsMuted.md create mode 100644 docs/api/XCEngine/Audio/IAudioBackend/IsRunning.md create mode 100644 docs/api/XCEngine/Audio/IAudioBackend/ProcessAudio.md create mode 100644 docs/api/XCEngine/Audio/IAudioBackend/Resume.md create mode 100644 docs/api/XCEngine/Audio/IAudioBackend/SetDevice.md create mode 100644 docs/api/XCEngine/Audio/IAudioBackend/SetMasterVolume.md create mode 100644 docs/api/XCEngine/Audio/IAudioBackend/SetMuted.md create mode 100644 docs/api/XCEngine/Audio/IAudioBackend/Shutdown.md create mode 100644 docs/api/XCEngine/Audio/IAudioBackend/Start.md create mode 100644 docs/api/XCEngine/Audio/IAudioBackend/Stop.md create mode 100644 docs/api/XCEngine/Audio/IAudioBackend/Suspend.md create mode 100644 docs/api/XCEngine/Audio/IAudioEffect/Destructor.md create mode 100644 docs/api/XCEngine/Audio/IAudioEffect/GetWetMix.md create mode 100644 docs/api/XCEngine/Audio/IAudioEffect/IAudioEffect.md create mode 100644 docs/api/XCEngine/Audio/IAudioEffect/IsEnabled.md create mode 100644 docs/api/XCEngine/Audio/IAudioEffect/ProcessAudio.md create mode 100644 docs/api/XCEngine/Audio/IAudioEffect/SetEnabled.md create mode 100644 docs/api/XCEngine/Audio/IAudioEffect/SetWetMix.md create mode 100644 docs/api/XCEngine/Audio/Reverbation/Constructor.md create mode 100644 docs/api/XCEngine/Audio/Reverbation/Destructor.md create mode 100644 docs/api/XCEngine/Audio/Reverbation/GetDamping.md create mode 100644 docs/api/XCEngine/Audio/Reverbation/GetDryMix.md create mode 100644 docs/api/XCEngine/Audio/Reverbation/GetRoomSize.md create mode 100644 docs/api/XCEngine/Audio/Reverbation/GetWetMix.md create mode 100644 docs/api/XCEngine/Audio/Reverbation/GetWidth.md create mode 100644 docs/api/XCEngine/Audio/Reverbation/IsFreeze.md create mode 100644 docs/api/XCEngine/Audio/Reverbation/ProcessAudio.md create mode 100644 docs/api/XCEngine/Audio/Reverbation/Reverbation.md create mode 100644 docs/api/XCEngine/Audio/Reverbation/SetDamping.md create mode 100644 docs/api/XCEngine/Audio/Reverbation/SetDryMix.md create mode 100644 docs/api/XCEngine/Audio/Reverbation/SetFreeze.md create mode 100644 docs/api/XCEngine/Audio/Reverbation/SetRoomSize.md create mode 100644 docs/api/XCEngine/Audio/Reverbation/SetWetMix.md create mode 100644 docs/api/XCEngine/Audio/Reverbation/SetWidth.md create mode 100644 docs/api/XCEngine/Audio/WindowsAudioBackend/Constructor.md create mode 100644 docs/api/XCEngine/Audio/WindowsAudioBackend/Destructor.md create mode 100644 docs/api/XCEngine/Audio/WindowsAudioBackend/GetAvailableDevices.md create mode 100644 docs/api/XCEngine/Audio/WindowsAudioBackend/GetConfig.md create mode 100644 docs/api/XCEngine/Audio/WindowsAudioBackend/GetDeviceName.md create mode 100644 docs/api/XCEngine/Audio/WindowsAudioBackend/GetMasterVolume.md create mode 100644 docs/api/XCEngine/Audio/WindowsAudioBackend/Initialize.md create mode 100644 docs/api/XCEngine/Audio/WindowsAudioBackend/IsMuted.md create mode 100644 docs/api/XCEngine/Audio/WindowsAudioBackend/IsRunning.md create mode 100644 docs/api/XCEngine/Audio/WindowsAudioBackend/ProcessAudio.md create mode 100644 docs/api/XCEngine/Audio/WindowsAudioBackend/Resume.md create mode 100644 docs/api/XCEngine/Audio/WindowsAudioBackend/SetDevice.md create mode 100644 docs/api/XCEngine/Audio/WindowsAudioBackend/SetMasterVolume.md create mode 100644 docs/api/XCEngine/Audio/WindowsAudioBackend/SetMuted.md create mode 100644 docs/api/XCEngine/Audio/WindowsAudioBackend/Shutdown.md create mode 100644 docs/api/XCEngine/Audio/WindowsAudioBackend/Start.md create mode 100644 docs/api/XCEngine/Audio/WindowsAudioBackend/Stop.md create mode 100644 docs/api/XCEngine/Audio/WindowsAudioBackend/Suspend.md create mode 100644 docs/api/XCEngine/Audio/WindowsAudioBackend/WindowsAudioBackend.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/AudioListenerComponent.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/Constructor.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/Destructor.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/GetDopplerLevel.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/GetEnergy.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/GetFrequencyData.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/GetFrequencyDataSize.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/GetMasterVolume.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/GetName.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/GetReverb.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/GetReverbLevel.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/GetSpeedOfSound.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/IsMute.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/SetDopplerLevel.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/SetMasterVolume.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/SetMute.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/SetReverb.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/SetReverbLevel.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/SetSpeedOfSound.md create mode 100644 docs/api/XCEngine/Components/AudioListenerComponent/Update.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/AudioSourceComponent.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/Constructor.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/Destructor.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/Get3DParams.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/GetClip.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/GetDopplerLevel.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/GetDuration.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/GetEnergy.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/GetName.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/GetOutputMixer.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/GetPan.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/GetPitch.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/GetReverbZoneMix.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/GetSpread.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/GetTime.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/GetVolume.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/IsEnergyDetecting.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/IsLooping.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/IsPaused.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/IsPlaying.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/IsSpatialize.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/OnDestroy.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/OnDisable.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/OnEnable.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/Pause.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/Play.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/ProcessAudio.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/Set3DParams.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/SetClip.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/SetDopplerLevel.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/SetLooping.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/SetOutputMixer.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/SetPan.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/SetPitch.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/SetReverbZoneMix.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/SetSpatialize.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/SetSpread.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/SetTime.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/SetVolume.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/StartEnergyDetect.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/Stop.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/StopEnergyDetect.md create mode 100644 docs/api/XCEngine/Components/AudioSourceComponent/Update.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/CameraComponent.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/Deserialize.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/GetClearColor.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/GetDepth.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/GetFarClipPlane.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/GetFieldOfView.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/GetName.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/GetNearClipPlane.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/GetOrthographicSize.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/GetProjectionType.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/IsPrimary.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/Serialize.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/SetClearColor.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/SetDepth.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/SetFarClipPlane.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/SetFieldOfView.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/SetNearClipPlane.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/SetOrthographicSize.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/SetPrimary.md create mode 100644 docs/api/XCEngine/Components/CameraComponent/SetProjectionType.md create mode 100644 docs/api/XCEngine/Components/Component/Awake.md create mode 100644 docs/api/XCEngine/Components/Component/Component.md create mode 100644 docs/api/XCEngine/Components/Component/Deserialize.md create mode 100644 docs/api/XCEngine/Components/Component/Destructor.md create mode 100644 docs/api/XCEngine/Components/Component/FixedUpdate.md create mode 100644 docs/api/XCEngine/Components/Component/GetGameObject.md create mode 100644 docs/api/XCEngine/Components/Component/GetName.md create mode 100644 docs/api/XCEngine/Components/Component/GetScene.md create mode 100644 docs/api/XCEngine/Components/Component/IsEnabled.md create mode 100644 docs/api/XCEngine/Components/Component/LateUpdate.md create mode 100644 docs/api/XCEngine/Components/Component/OnDestroy.md create mode 100644 docs/api/XCEngine/Components/Component/OnDisable.md create mode 100644 docs/api/XCEngine/Components/Component/OnEnable.md create mode 100644 docs/api/XCEngine/Components/Component/Serialize.md create mode 100644 docs/api/XCEngine/Components/Component/SetEnabled.md create mode 100644 docs/api/XCEngine/Components/Component/Start.md create mode 100644 docs/api/XCEngine/Components/Component/Update.md create mode 100644 docs/api/XCEngine/Components/Component/transform.md create mode 100644 docs/api/XCEngine/Components/ComponentFactoryRegistry/ComponentFactoryRegistry.md create mode 100644 docs/api/XCEngine/Components/ComponentFactoryRegistry/CreateComponent.md create mode 100644 docs/api/XCEngine/Components/ComponentFactoryRegistry/Get.md create mode 100644 docs/api/XCEngine/Components/ComponentFactoryRegistry/GetRegisteredTypes.md create mode 100644 docs/api/XCEngine/Components/ComponentFactoryRegistry/IsRegistered.md create mode 100644 docs/api/XCEngine/Components/ComponentFactoryRegistry/RegisterFactory.md create mode 100644 docs/api/XCEngine/Components/Components.md create mode 100644 docs/api/XCEngine/Components/GameObject/AddComponent.md create mode 100644 docs/api/XCEngine/Components/GameObject/Awake.md create mode 100644 docs/api/XCEngine/Components/GameObject/Constructor.md create mode 100644 docs/api/XCEngine/Components/GameObject/Deserialize.md create mode 100644 docs/api/XCEngine/Components/GameObject/Destroy.md create mode 100644 docs/api/XCEngine/Components/GameObject/Destructor.md create mode 100644 docs/api/XCEngine/Components/GameObject/DetachChildren.md create mode 100644 docs/api/XCEngine/Components/GameObject/DetachFromParent.md create mode 100644 docs/api/XCEngine/Components/GameObject/Find.md create mode 100644 docs/api/XCEngine/Components/GameObject/FindGameObjectsWithTag.md create mode 100644 docs/api/XCEngine/Components/GameObject/FindObjectsOfType.md create mode 100644 docs/api/XCEngine/Components/GameObject/FixedUpdate.md create mode 100644 docs/api/XCEngine/Components/GameObject/GameObject.md create mode 100644 docs/api/XCEngine/Components/GameObject/GetChild.md create mode 100644 docs/api/XCEngine/Components/GameObject/GetChildCount.md create mode 100644 docs/api/XCEngine/Components/GameObject/GetChildren.md create mode 100644 docs/api/XCEngine/Components/GameObject/GetComponent.md create mode 100644 docs/api/XCEngine/Components/GameObject/GetComponentInChildren.md create mode 100644 docs/api/XCEngine/Components/GameObject/GetComponentInParent.md create mode 100644 docs/api/XCEngine/Components/GameObject/GetComponents.md create mode 100644 docs/api/XCEngine/Components/GameObject/GetComponentsInChildren.md create mode 100644 docs/api/XCEngine/Components/GameObject/GetID.md create mode 100644 docs/api/XCEngine/Components/GameObject/GetName.md create mode 100644 docs/api/XCEngine/Components/GameObject/GetParent.md create mode 100644 docs/api/XCEngine/Components/GameObject/GetScene.md create mode 100644 docs/api/XCEngine/Components/GameObject/GetTransform.md create mode 100644 docs/api/XCEngine/Components/GameObject/GetUUID.md create mode 100644 docs/api/XCEngine/Components/GameObject/IsActive.md create mode 100644 docs/api/XCEngine/Components/GameObject/IsActiveInHierarchy.md create mode 100644 docs/api/XCEngine/Components/GameObject/LateUpdate.md create mode 100644 docs/api/XCEngine/Components/GameObject/OnDestroy.md create mode 100644 docs/api/XCEngine/Components/GameObject/RemoveComponent.md create mode 100644 docs/api/XCEngine/Components/GameObject/Serialize.md create mode 100644 docs/api/XCEngine/Components/GameObject/SetActive.md create mode 100644 docs/api/XCEngine/Components/GameObject/SetName.md create mode 100644 docs/api/XCEngine/Components/GameObject/SetParent.md create mode 100644 docs/api/XCEngine/Components/GameObject/Start.md create mode 100644 docs/api/XCEngine/Components/GameObject/Update.md create mode 100644 docs/api/XCEngine/Components/LightComponent/Deserialize.md create mode 100644 docs/api/XCEngine/Components/LightComponent/GetCastsShadows.md create mode 100644 docs/api/XCEngine/Components/LightComponent/GetColor.md create mode 100644 docs/api/XCEngine/Components/LightComponent/GetIntensity.md create mode 100644 docs/api/XCEngine/Components/LightComponent/GetLightType.md create mode 100644 docs/api/XCEngine/Components/LightComponent/GetName.md create mode 100644 docs/api/XCEngine/Components/LightComponent/GetRange.md create mode 100644 docs/api/XCEngine/Components/LightComponent/GetSpotAngle.md create mode 100644 docs/api/XCEngine/Components/LightComponent/LightComponent.md create mode 100644 docs/api/XCEngine/Components/LightComponent/Serialize.md create mode 100644 docs/api/XCEngine/Components/LightComponent/SetCastsShadows.md create mode 100644 docs/api/XCEngine/Components/LightComponent/SetColor.md create mode 100644 docs/api/XCEngine/Components/LightComponent/SetIntensity.md create mode 100644 docs/api/XCEngine/Components/LightComponent/SetLightType.md create mode 100644 docs/api/XCEngine/Components/LightComponent/SetRange.md create mode 100644 docs/api/XCEngine/Components/LightComponent/SetSpotAngle.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/Constructor.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/Deserialize.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/Destructor.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/DetachChildren.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/Find.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/GetChild.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/GetChildCount.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/GetForward.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/GetLocalEulerAngles.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/GetLocalPosition.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/GetLocalRotation.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/GetLocalScale.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/GetLocalToWorldMatrix.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/GetName.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/GetParent.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/GetPosition.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/GetRight.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/GetRotation.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/GetScale.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/GetSiblingIndex.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/GetUp.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/GetWorldToLocalMatrix.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/InverseTransformDirection.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/InverseTransformPoint.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/LookAt.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/NotifyHierarchyChanged.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/Rotate.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/Serialize.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/SetAsFirstSibling.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/SetAsLastSibling.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/SetDirty.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/SetLocalEulerAngles.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/SetLocalPosition.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/SetLocalRotation.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/SetLocalScale.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/SetParent.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/SetPosition.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/SetRotation.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/SetScale.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/SetSiblingIndex.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/TransformComponent.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/TransformDirection.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/TransformPoint.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/Translate.md create mode 100644 docs/api/XCEngine/Components/TransformComponent/UpdateWorldTransform.md create mode 100644 docs/api/XCEngine/Core/Asset/Asset.md create mode 100644 docs/api/XCEngine/Core/Asset/AsyncLoader/AsyncLoader.md create mode 100644 docs/api/XCEngine/Core/Asset/AsyncLoader/Cancel.md create mode 100644 docs/api/XCEngine/Core/Asset/AsyncLoader/CancelAll.md create mode 100644 docs/api/XCEngine/Core/Asset/AsyncLoader/Constructor.md create mode 100644 docs/api/XCEngine/Core/Asset/AsyncLoader/Destructor.md create mode 100644 docs/api/XCEngine/Core/Asset/AsyncLoader/Get.md create mode 100644 docs/api/XCEngine/Core/Asset/AsyncLoader/GetPendingCount.md create mode 100644 docs/api/XCEngine/Core/Asset/AsyncLoader/GetProgress.md create mode 100644 docs/api/XCEngine/Core/Asset/AsyncLoader/Initialize.md create mode 100644 docs/api/XCEngine/Core/Asset/AsyncLoader/IsLoading.md create mode 100644 docs/api/XCEngine/Core/Asset/AsyncLoader/Shutdown.md create mode 100644 docs/api/XCEngine/Core/Asset/AsyncLoader/Submit.md create mode 100644 docs/api/XCEngine/Core/Asset/AsyncLoader/Update.md create mode 100644 docs/api/XCEngine/Core/Asset/IResource/Destructor.md create mode 100644 docs/api/XCEngine/Core/Asset/IResource/GetGUID.md create mode 100644 docs/api/XCEngine/Core/Asset/IResource/GetMemorySize.md create mode 100644 docs/api/XCEngine/Core/Asset/IResource/GetName.md create mode 100644 docs/api/XCEngine/Core/Asset/IResource/GetPath.md create mode 100644 docs/api/XCEngine/Core/Asset/IResource/GetType.md create mode 100644 docs/api/XCEngine/Core/Asset/IResource/IResource.md create mode 100644 docs/api/XCEngine/Core/Asset/IResource/Initialize.md create mode 100644 docs/api/XCEngine/Core/Asset/IResource/IsValid.md create mode 100644 docs/api/XCEngine/Core/Asset/IResource/Release.md create mode 100644 docs/api/XCEngine/Core/Asset/IResource/SetInvalid.md create mode 100644 docs/api/XCEngine/Core/Asset/ImportSettings/Clone.md create mode 100644 docs/api/XCEngine/Core/Asset/ImportSettings/Destructor.md create mode 100644 docs/api/XCEngine/Core/Asset/ImportSettings/ImportSettings.md create mode 100644 docs/api/XCEngine/Core/Asset/ImportSettings/LoadFromJSON.md create mode 100644 docs/api/XCEngine/Core/Asset/ImportSettings/SaveToJSON.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceCache/Add.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceCache/Clear.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceCache/Constructor.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceCache/Destructor.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceCache/Find.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceCache/Flush.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceCache/GetLRUList.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceCache/GetMemoryBudget.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceCache/GetMemoryUsage.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceCache/GetSize.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceCache/OnMemoryPressure.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceCache/OnZeroRefCount.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceCache/Remove.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceCache/ResourceCache.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceCache/SetMemoryBudget.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceCache/Touch.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/AddDependency.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/AddNode.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/Clear.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/Constructor.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/DecrementRefCount.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/Destructor.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/GetAllDependencies.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/GetDependencies.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/GetDependents.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/GetRefCount.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/HasCircularDependency.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/HasNode.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/IncrementRefCount.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/RemoveDependency.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/RemoveNode.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/ResourceDependencyGraph.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/TopologicalSort.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/Unload.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceHandle/Constructor.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceHandle/Destructor.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceHandle/Get.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceHandle/GetGUID.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceHandle/GetResourceType.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceHandle/IsValid.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceHandle/OperatorArrow.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceHandle/OperatorAssign.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceHandle/OperatorMultiply.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceHandle/Reset.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceHandle/ResourceHandle.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceHandle/Swap.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceHandle/bool.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/AddRef.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/Exists.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/Find.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/FlushCache.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/Get.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/GetLoader.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/GetMemoryBudget.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/GetMemoryUsage.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/GetRefCount.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/GetResourcePaths.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/GetResourceRoot.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/Initialize.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/Load.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/LoadAsync.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/LoadGroup.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/RegisterLoader.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/Release.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/ResolvePath.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/ResourceManager.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/SetMemoryBudget.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/SetResourceRoot.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/Shutdown.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/Unload.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/UnloadAll.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/UnloadGroup.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/UnloadUnused.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceManager/UnregisterLoader.md create mode 100644 docs/api/XCEngine/Core/Asset/ResourceTypes/ResourceTypes.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/Array.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/Back.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/Capacity.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/Clear.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/Constructor.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/Data.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/Destructor.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/EmplaceBack.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/Empty.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/Front.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/OperatorAssign.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/OperatorSubscript.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/PopBack.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/PushBack.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/Reserve.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/Resize.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/SetAllocator.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/Size.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/begin.md create mode 100644 docs/api/XCEngine/Core/Containers/Array/end.md create mode 100644 docs/api/XCEngine/Core/Containers/Containers.md create mode 100644 docs/api/XCEngine/Core/Containers/Containers/Containers.md create mode 100644 docs/api/XCEngine/Core/Containers/HashMap/Clear.md create mode 100644 docs/api/XCEngine/Core/Containers/HashMap/Constructor.md create mode 100644 docs/api/XCEngine/Core/Containers/HashMap/Contains.md create mode 100644 docs/api/XCEngine/Core/Containers/HashMap/Destructor.md create mode 100644 docs/api/XCEngine/Core/Containers/HashMap/Empty.md create mode 100644 docs/api/XCEngine/Core/Containers/HashMap/Erase.md create mode 100644 docs/api/XCEngine/Core/Containers/HashMap/Find.md create mode 100644 docs/api/XCEngine/Core/Containers/HashMap/HashMap.md create mode 100644 docs/api/XCEngine/Core/Containers/HashMap/Insert.md create mode 100644 docs/api/XCEngine/Core/Containers/HashMap/OperatorAssign.md create mode 100644 docs/api/XCEngine/Core/Containers/HashMap/OperatorSubscript.md create mode 100644 docs/api/XCEngine/Core/Containers/HashMap/SetAllocator.md create mode 100644 docs/api/XCEngine/Core/Containers/HashMap/Size.md create mode 100644 docs/api/XCEngine/Core/Containers/HashMap/begin.md create mode 100644 docs/api/XCEngine/Core/Containers/HashMap/end.md create mode 100644 docs/api/XCEngine/Core/Containers/String/CStr.md create mode 100644 docs/api/XCEngine/Core/Containers/String/Capacity.md create mode 100644 docs/api/XCEngine/Core/Containers/String/Clear.md create mode 100644 docs/api/XCEngine/Core/Containers/String/Constructor.md create mode 100644 docs/api/XCEngine/Core/Containers/String/Destructor.md create mode 100644 docs/api/XCEngine/Core/Containers/String/Empty.md create mode 100644 docs/api/XCEngine/Core/Containers/String/EndsWith.md create mode 100644 docs/api/XCEngine/Core/Containers/String/Find.md create mode 100644 docs/api/XCEngine/Core/Containers/String/Length.md create mode 100644 docs/api/XCEngine/Core/Containers/String/OperatorAssign.md create mode 100644 docs/api/XCEngine/Core/Containers/String/OperatorPlusAssign.md create mode 100644 docs/api/XCEngine/Core/Containers/String/OperatorSubscript.md create mode 100644 docs/api/XCEngine/Core/Containers/String/Reserve.md create mode 100644 docs/api/XCEngine/Core/Containers/String/Resize.md create mode 100644 docs/api/XCEngine/Core/Containers/String/StartsWith.md create mode 100644 docs/api/XCEngine/Core/Containers/String/String.md create mode 100644 docs/api/XCEngine/Core/Containers/String/Substring.md create mode 100644 docs/api/XCEngine/Core/Containers/String/ToLower.md create mode 100644 docs/api/XCEngine/Core/Containers/String/ToUpper.md create mode 100644 docs/api/XCEngine/Core/Containers/String/Trim.md create mode 100644 docs/api/XCEngine/Core/Core.md create mode 100644 docs/api/XCEngine/Core/Core/Core.md create mode 100644 docs/api/XCEngine/Core/Event/Clear.md create mode 100644 docs/api/XCEngine/Core/Event/Event.md create mode 100644 docs/api/XCEngine/Core/Event/Invoke.md create mode 100644 docs/api/XCEngine/Core/Event/ProcessUnsubscribes.md create mode 100644 docs/api/XCEngine/Core/Event/Subscribe.md create mode 100644 docs/api/XCEngine/Core/Event/Unsubscribe.md create mode 100644 docs/api/XCEngine/Core/Event/begin.md create mode 100644 docs/api/XCEngine/Core/Event/end.md create mode 100644 docs/api/XCEngine/Core/FileWriter/Close.md create mode 100644 docs/api/XCEngine/Core/FileWriter/Constructor.md create mode 100644 docs/api/XCEngine/Core/FileWriter/Destructor.md create mode 100644 docs/api/XCEngine/Core/FileWriter/FileWriter.md create mode 100644 docs/api/XCEngine/Core/FileWriter/Flush.md create mode 100644 docs/api/XCEngine/Core/FileWriter/IsOpen.md create mode 100644 docs/api/XCEngine/Core/FileWriter/Open.md create mode 100644 docs/api/XCEngine/Core/FileWriter/Write.md create mode 100644 docs/api/XCEngine/Core/IO/FileArchive/Close.md create mode 100644 docs/api/XCEngine/Core/IO/FileArchive/Constructor.md create mode 100644 docs/api/XCEngine/Core/IO/FileArchive/Destructor.md create mode 100644 docs/api/XCEngine/Core/IO/FileArchive/Enumerate.md create mode 100644 docs/api/XCEngine/Core/IO/FileArchive/Exists.md create mode 100644 docs/api/XCEngine/Core/IO/FileArchive/FileArchive.md create mode 100644 docs/api/XCEngine/Core/IO/FileArchive/GetPath.md create mode 100644 docs/api/XCEngine/Core/IO/FileArchive/GetSize.md create mode 100644 docs/api/XCEngine/Core/IO/FileArchive/IsValid.md create mode 100644 docs/api/XCEngine/Core/IO/FileArchive/Open.md create mode 100644 docs/api/XCEngine/Core/IO/FileArchive/Read.md create mode 100644 docs/api/XCEngine/Core/IO/IO.md create mode 100644 docs/api/XCEngine/Core/IO/IResourceLoader/CanLoad.md create mode 100644 docs/api/XCEngine/Core/IO/IResourceLoader/Destructor.md create mode 100644 docs/api/XCEngine/Core/IO/IResourceLoader/GetDefaultSettings.md create mode 100644 docs/api/XCEngine/Core/IO/IResourceLoader/GetResourceType.md create mode 100644 docs/api/XCEngine/Core/IO/IResourceLoader/GetSupportedExtensions.md create mode 100644 docs/api/XCEngine/Core/IO/IResourceLoader/IResourceLoader.md create mode 100644 docs/api/XCEngine/Core/IO/IResourceLoader/Load.md create mode 100644 docs/api/XCEngine/Core/IO/IResourceLoader/LoadAsync.md create mode 100644 docs/api/XCEngine/Core/IO/ResourceFileSystem/AddArchive.md create mode 100644 docs/api/XCEngine/Core/IO/ResourceFileSystem/AddDirectory.md create mode 100644 docs/api/XCEngine/Core/IO/ResourceFileSystem/Constructor.md create mode 100644 docs/api/XCEngine/Core/IO/ResourceFileSystem/Destructor.md create mode 100644 docs/api/XCEngine/Core/IO/ResourceFileSystem/EnumerateResources.md create mode 100644 docs/api/XCEngine/Core/IO/ResourceFileSystem/Exists.md create mode 100644 docs/api/XCEngine/Core/IO/ResourceFileSystem/FindResource.md create mode 100644 docs/api/XCEngine/Core/IO/ResourceFileSystem/Get.md create mode 100644 docs/api/XCEngine/Core/IO/ResourceFileSystem/GetResourceInfo.md create mode 100644 docs/api/XCEngine/Core/IO/ResourceFileSystem/Initialize.md create mode 100644 docs/api/XCEngine/Core/IO/ResourceFileSystem/ReadResource.md create mode 100644 docs/api/XCEngine/Core/IO/ResourceFileSystem/RemoveArchive.md create mode 100644 docs/api/XCEngine/Core/IO/ResourceFileSystem/ResourceFileSystem.md create mode 100644 docs/api/XCEngine/Core/IO/ResourceFileSystem/Shutdown.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePackage/Close.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePackage/Constructor.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePackage/Destructor.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePackage/Enumerate.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePackage/Exists.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePackage/GetInfo.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePackage/GetSize.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePackage/IsValid.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePackage/Open.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePackage/Read.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePackage/ResourcePackage.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePath/Constructor.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePath/GetDirectory.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePath/GetExtension.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePath/GetFileName.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePath/GetFullPath.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePath/GetPath.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePath/GetRelativePath.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePath/GetStem.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePath/HasAnyExtension.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePath/HasExtension.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePath/IsValid.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePath/ResourcePath.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePath/SetPath.md create mode 100644 docs/api/XCEngine/Core/IO/ResourcePath/ToGUID.md create mode 100644 docs/api/XCEngine/Core/Layer/Constructor.md create mode 100644 docs/api/XCEngine/Core/Layer/Destructor.md create mode 100644 docs/api/XCEngine/Core/Layer/Layer.md create mode 100644 docs/api/XCEngine/Core/Layer/getName.md create mode 100644 docs/api/XCEngine/Core/Layer/onAttach.md create mode 100644 docs/api/XCEngine/Core/Layer/onDetach.md create mode 100644 docs/api/XCEngine/Core/Layer/onEvent.md create mode 100644 docs/api/XCEngine/Core/Layer/onImGuiRender.md create mode 100644 docs/api/XCEngine/Core/Layer/onUpdate.md create mode 100644 docs/api/XCEngine/Core/LayerStack/Constructor.md create mode 100644 docs/api/XCEngine/Core/LayerStack/Destructor.md create mode 100644 docs/api/XCEngine/Core/LayerStack/LayerStack.md create mode 100644 docs/api/XCEngine/Core/LayerStack/begin.md create mode 100644 docs/api/XCEngine/Core/LayerStack/cbegin.md create mode 100644 docs/api/XCEngine/Core/LayerStack/cend.md create mode 100644 docs/api/XCEngine/Core/LayerStack/crbegin.md create mode 100644 docs/api/XCEngine/Core/LayerStack/crend.md create mode 100644 docs/api/XCEngine/Core/LayerStack/end.md create mode 100644 docs/api/XCEngine/Core/LayerStack/onAttach.md create mode 100644 docs/api/XCEngine/Core/LayerStack/onDetach.md create mode 100644 docs/api/XCEngine/Core/LayerStack/onEvent.md create mode 100644 docs/api/XCEngine/Core/LayerStack/onImGuiRender.md create mode 100644 docs/api/XCEngine/Core/LayerStack/onUpdate.md create mode 100644 docs/api/XCEngine/Core/LayerStack/popLayer.md create mode 100644 docs/api/XCEngine/Core/LayerStack/popOverlay.md create mode 100644 docs/api/XCEngine/Core/LayerStack/pushLayer.md create mode 100644 docs/api/XCEngine/Core/LayerStack/pushOverlay.md create mode 100644 docs/api/XCEngine/Core/LayerStack/rbegin.md create mode 100644 docs/api/XCEngine/Core/LayerStack/rend.md create mode 100644 docs/api/XCEngine/Core/Math/AABB/AABB.md create mode 100644 docs/api/XCEngine/Core/Math/Bounds/Bounds.md create mode 100644 docs/api/XCEngine/Core/Math/Box/Box.md create mode 100644 docs/api/XCEngine/Core/Math/Color/Color.md create mode 100644 docs/api/XCEngine/Core/Math/Frustum/Contains.md create mode 100644 docs/api/XCEngine/Core/Math/Frustum/Frustum.md create mode 100644 docs/api/XCEngine/Core/Math/Frustum/Intersects.md create mode 100644 docs/api/XCEngine/Core/Math/Math.md create mode 100644 docs/api/XCEngine/Core/Math/Math/Math.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix3/Constructor.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix3/Determinant.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix3/Identity.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix3/Inverse.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix3/Matrix3.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix3/OperatorMultiply.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix3/OperatorSubscript.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix3/RotationX.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix3/RotationY.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix3/RotationZ.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix3/Scale.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix3/Transpose.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix3/Zero.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/Constructor.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/Decompose.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/Determinant.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/GetRotation.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/GetScale.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/GetTranslation.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/Identity.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/Inverse.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/LookAt.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/Matrix4.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/MultiplyPoint.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/MultiplyVector.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/OperatorMultiply.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/OperatorSubscript.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/Orthographic.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/Perspective.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/Rotation.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/RotationX.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/RotationY.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/RotationZ.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/Scale.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/TRS.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/Translation.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/Transpose.md create mode 100644 docs/api/XCEngine/Core/Math/Matrix4/Zero.md create mode 100644 docs/api/XCEngine/Core/Math/Plane/Plane.md create mode 100644 docs/api/XCEngine/Core/Math/Quaternion/Quaternion.md create mode 100644 docs/api/XCEngine/Core/Math/Ray/Ray.md create mode 100644 docs/api/XCEngine/Core/Math/Rect/Rect.md create mode 100644 docs/api/XCEngine/Core/Math/Sphere/Sphere.md create mode 100644 docs/api/XCEngine/Core/Math/Transform/Transform.md create mode 100644 docs/api/XCEngine/Core/Math/Vector2/Vector2.md create mode 100644 docs/api/XCEngine/Core/Math/Vector3/Vector3.md create mode 100644 docs/api/XCEngine/Core/Math/Vector4/Vector4.md create mode 100644 docs/api/XCEngine/Core/RefCounted/AddRef.md create mode 100644 docs/api/XCEngine/Core/RefCounted/Constructor.md create mode 100644 docs/api/XCEngine/Core/RefCounted/Destructor.md create mode 100644 docs/api/XCEngine/Core/RefCounted/GetRefCount.md create mode 100644 docs/api/XCEngine/Core/RefCounted/RefCounted.md create mode 100644 docs/api/XCEngine/Core/RefCounted/Release.md create mode 100644 docs/api/XCEngine/Core/SmartPtr/SmartPtr.md create mode 100644 docs/api/XCEngine/Core/Types/Types.md create mode 100644 docs/api/XCEngine/Debug/ConsoleLogSink/ConsoleLogSink.md create mode 100644 docs/api/XCEngine/Debug/ConsoleLogSink/Constructor.md create mode 100644 docs/api/XCEngine/Debug/ConsoleLogSink/Destructor.md create mode 100644 docs/api/XCEngine/Debug/ConsoleLogSink/Flush.md create mode 100644 docs/api/XCEngine/Debug/ConsoleLogSink/Log.md create mode 100644 docs/api/XCEngine/Debug/ConsoleLogSink/SetColorOutput.md create mode 100644 docs/api/XCEngine/Debug/ConsoleLogSink/SetMinimumLevel.md create mode 100644 docs/api/XCEngine/Debug/Debug.md create mode 100644 docs/api/XCEngine/Debug/Debug/Debug.md create mode 100644 docs/api/XCEngine/Debug/FileLogSink/Constructor.md create mode 100644 docs/api/XCEngine/Debug/FileLogSink/Destructor.md create mode 100644 docs/api/XCEngine/Debug/FileLogSink/FileLogSink.md create mode 100644 docs/api/XCEngine/Debug/FileLogSink/Flush.md create mode 100644 docs/api/XCEngine/Debug/FileLogSink/Log.md create mode 100644 docs/api/XCEngine/Debug/ILogSink/Destructor.md create mode 100644 docs/api/XCEngine/Debug/ILogSink/Flush.md create mode 100644 docs/api/XCEngine/Debug/ILogSink/ILogSink.md create mode 100644 docs/api/XCEngine/Debug/ILogSink/Log.md create mode 100644 docs/api/XCEngine/Debug/LogCategory/LogCategory.md create mode 100644 docs/api/XCEngine/Debug/LogEntry/LogEntry.md create mode 100644 docs/api/XCEngine/Debug/LogLevel/LogLevel.md create mode 100644 docs/api/XCEngine/Debug/Logger/AddSink.md create mode 100644 docs/api/XCEngine/Debug/Logger/Debug.md create mode 100644 docs/api/XCEngine/Debug/Logger/Error.md create mode 100644 docs/api/XCEngine/Debug/Logger/Fatal.md create mode 100644 docs/api/XCEngine/Debug/Logger/Get.md create mode 100644 docs/api/XCEngine/Debug/Logger/Info.md create mode 100644 docs/api/XCEngine/Debug/Logger/Initialize.md create mode 100644 docs/api/XCEngine/Debug/Logger/Log.md create mode 100644 docs/api/XCEngine/Debug/Logger/Logger.md create mode 100644 docs/api/XCEngine/Debug/Logger/RemoveSink.md create mode 100644 docs/api/XCEngine/Debug/Logger/SetCategoryEnabled.md create mode 100644 docs/api/XCEngine/Debug/Logger/SetMinimumLevel.md create mode 100644 docs/api/XCEngine/Debug/Logger/Shutdown.md create mode 100644 docs/api/XCEngine/Debug/Logger/Verbose.md create mode 100644 docs/api/XCEngine/Debug/Logger/Warning.md create mode 100644 docs/api/XCEngine/Debug/Profiler/BeginFrame.md create mode 100644 docs/api/XCEngine/Debug/Profiler/BeginProfile.md create mode 100644 docs/api/XCEngine/Debug/Profiler/EndFrame.md create mode 100644 docs/api/XCEngine/Debug/Profiler/EndProfile.md create mode 100644 docs/api/XCEngine/Debug/Profiler/ExportChromeTracing.md create mode 100644 docs/api/XCEngine/Debug/Profiler/Get.md create mode 100644 docs/api/XCEngine/Debug/Profiler/Initialize.md create mode 100644 docs/api/XCEngine/Debug/Profiler/MarkEvent.md create mode 100644 docs/api/XCEngine/Debug/Profiler/Profiler.md create mode 100644 docs/api/XCEngine/Debug/Profiler/SetMarker.md create mode 100644 docs/api/XCEngine/Debug/Profiler/Shutdown.md create mode 100644 docs/api/XCEngine/Debug/RenderDocCapture/BeginCapture.md create mode 100644 docs/api/XCEngine/Debug/RenderDocCapture/EndCapture.md create mode 100644 docs/api/XCEngine/Debug/RenderDocCapture/Get.md create mode 100644 docs/api/XCEngine/Debug/RenderDocCapture/GetCapture.md create mode 100644 docs/api/XCEngine/Debug/RenderDocCapture/GetNumCaptures.md create mode 100644 docs/api/XCEngine/Debug/RenderDocCapture/Initialize.md create mode 100644 docs/api/XCEngine/Debug/RenderDocCapture/IsCapturing.md create mode 100644 docs/api/XCEngine/Debug/RenderDocCapture/IsLoaded.md create mode 100644 docs/api/XCEngine/Debug/RenderDocCapture/LaunchReplayUI.md create mode 100644 docs/api/XCEngine/Debug/RenderDocCapture/RenderDocCapture.md create mode 100644 docs/api/XCEngine/Debug/RenderDocCapture/SetCaptureComments.md create mode 100644 docs/api/XCEngine/Debug/RenderDocCapture/SetCaptureFilePath.md create mode 100644 docs/api/XCEngine/Debug/RenderDocCapture/SetCaptureOptionU32.md create mode 100644 docs/api/XCEngine/Debug/RenderDocCapture/SetDevice.md create mode 100644 docs/api/XCEngine/Debug/RenderDocCapture/SetWindow.md create mode 100644 docs/api/XCEngine/Debug/RenderDocCapture/Shutdown.md create mode 100644 docs/api/XCEngine/Debug/RenderDocCapture/TriggerCapture.md create mode 100644 docs/api/XCEngine/Input/Input.md create mode 100644 docs/api/XCEngine/Input/InputAxis/Constructor.md create mode 100644 docs/api/XCEngine/Input/InputAxis/GetName.md create mode 100644 docs/api/XCEngine/Input/InputAxis/GetNegativeKey.md create mode 100644 docs/api/XCEngine/Input/InputAxis/GetPositiveKey.md create mode 100644 docs/api/XCEngine/Input/InputAxis/GetValue.md create mode 100644 docs/api/XCEngine/Input/InputAxis/InputAxis.md create mode 100644 docs/api/XCEngine/Input/InputAxis/SetKeys.md create mode 100644 docs/api/XCEngine/Input/InputAxis/SetValue.md create mode 100644 docs/api/XCEngine/Input/InputEvent/InputEvent.md create mode 100644 docs/api/XCEngine/Input/InputManager/ClearAxes.md create mode 100644 docs/api/XCEngine/Input/InputManager/Get.md create mode 100644 docs/api/XCEngine/Input/InputManager/GetAxis.md create mode 100644 docs/api/XCEngine/Input/InputManager/GetAxisRaw.md create mode 100644 docs/api/XCEngine/Input/InputManager/GetButton.md create mode 100644 docs/api/XCEngine/Input/InputManager/GetButtonDown.md create mode 100644 docs/api/XCEngine/Input/InputManager/GetButtonUp.md create mode 100644 docs/api/XCEngine/Input/InputManager/GetMouseDelta.md create mode 100644 docs/api/XCEngine/Input/InputManager/GetMousePosition.md create mode 100644 docs/api/XCEngine/Input/InputManager/GetMouseScrollDelta.md create mode 100644 docs/api/XCEngine/Input/InputManager/GetTouch.md create mode 100644 docs/api/XCEngine/Input/InputManager/GetTouchCount.md create mode 100644 docs/api/XCEngine/Input/InputManager/Initialize.md create mode 100644 docs/api/XCEngine/Input/InputManager/InputManager.md create mode 100644 docs/api/XCEngine/Input/InputManager/IsKeyDown.md create mode 100644 docs/api/XCEngine/Input/InputManager/IsKeyPressed.md create mode 100644 docs/api/XCEngine/Input/InputManager/IsKeyUp.md create mode 100644 docs/api/XCEngine/Input/InputManager/IsMouseButtonClicked.md create mode 100644 docs/api/XCEngine/Input/InputManager/IsMouseButtonDown.md create mode 100644 docs/api/XCEngine/Input/InputManager/IsMouseButtonUp.md create mode 100644 docs/api/XCEngine/Input/InputManager/OnKeyEvent.md create mode 100644 docs/api/XCEngine/Input/InputManager/OnMouseButton.md create mode 100644 docs/api/XCEngine/Input/InputManager/OnMouseMove.md create mode 100644 docs/api/XCEngine/Input/InputManager/OnMouseWheel.md create mode 100644 docs/api/XCEngine/Input/InputManager/OnTextInput.md create mode 100644 docs/api/XCEngine/Input/InputManager/ProcessKeyDown.md create mode 100644 docs/api/XCEngine/Input/InputManager/ProcessKeyUp.md create mode 100644 docs/api/XCEngine/Input/InputManager/ProcessMouseButton.md create mode 100644 docs/api/XCEngine/Input/InputManager/ProcessMouseMove.md create mode 100644 docs/api/XCEngine/Input/InputManager/ProcessMouseWheel.md create mode 100644 docs/api/XCEngine/Input/InputManager/ProcessTextInput.md create mode 100644 docs/api/XCEngine/Input/InputManager/RegisterAxis.md create mode 100644 docs/api/XCEngine/Input/InputManager/RegisterButton.md create mode 100644 docs/api/XCEngine/Input/InputManager/Shutdown.md create mode 100644 docs/api/XCEngine/Input/InputManager/Update.md create mode 100644 docs/api/XCEngine/Input/InputModule/Destructor.md create mode 100644 docs/api/XCEngine/Input/InputModule/HandleMessage.md create mode 100644 docs/api/XCEngine/Input/InputModule/Initialize.md create mode 100644 docs/api/XCEngine/Input/InputModule/InputModule.md create mode 100644 docs/api/XCEngine/Input/InputModule/PumpEvents.md create mode 100644 docs/api/XCEngine/Input/InputModule/Shutdown.md create mode 100644 docs/api/XCEngine/Input/InputTypes/InputTypes.md create mode 100644 docs/api/XCEngine/Memory/Allocator/Allocate.md create mode 100644 docs/api/XCEngine/Memory/Allocator/Allocator.md create mode 100644 docs/api/XCEngine/Memory/Allocator/Destructor.md create mode 100644 docs/api/XCEngine/Memory/Allocator/Free.md create mode 100644 docs/api/XCEngine/Memory/Allocator/GetAllocationCount.md create mode 100644 docs/api/XCEngine/Memory/Allocator/GetName.md create mode 100644 docs/api/XCEngine/Memory/Allocator/GetPeakAllocated.md create mode 100644 docs/api/XCEngine/Memory/Allocator/GetTotalAllocated.md create mode 100644 docs/api/XCEngine/Memory/Allocator/GetTotalFreed.md create mode 100644 docs/api/XCEngine/Memory/Allocator/Reallocate.md create mode 100644 docs/api/XCEngine/Memory/LinearAllocator/Allocate.md create mode 100644 docs/api/XCEngine/Memory/LinearAllocator/Clear.md create mode 100644 docs/api/XCEngine/Memory/LinearAllocator/Constructor.md create mode 100644 docs/api/XCEngine/Memory/LinearAllocator/Destructor.md create mode 100644 docs/api/XCEngine/Memory/LinearAllocator/Free.md create mode 100644 docs/api/XCEngine/Memory/LinearAllocator/GetAllocationCount.md create mode 100644 docs/api/XCEngine/Memory/LinearAllocator/GetCapacity.md create mode 100644 docs/api/XCEngine/Memory/LinearAllocator/GetMarker.md create mode 100644 docs/api/XCEngine/Memory/LinearAllocator/GetName.md create mode 100644 docs/api/XCEngine/Memory/LinearAllocator/GetPeakAllocated.md create mode 100644 docs/api/XCEngine/Memory/LinearAllocator/GetTotalAllocated.md create mode 100644 docs/api/XCEngine/Memory/LinearAllocator/GetTotalFreed.md create mode 100644 docs/api/XCEngine/Memory/LinearAllocator/GetUsedSize.md create mode 100644 docs/api/XCEngine/Memory/LinearAllocator/LinearAllocator.md create mode 100644 docs/api/XCEngine/Memory/LinearAllocator/Reallocate.md create mode 100644 docs/api/XCEngine/Memory/LinearAllocator/SetMarker.md create mode 100644 docs/api/XCEngine/Memory/Memory.md create mode 100644 docs/api/XCEngine/Memory/MemoryManager/CreateLinearAllocator.md create mode 100644 docs/api/XCEngine/Memory/MemoryManager/CreatePoolAllocator.md create mode 100644 docs/api/XCEngine/Memory/MemoryManager/CreateProxyAllocator.md create mode 100644 docs/api/XCEngine/Memory/MemoryManager/DumpMemoryLeaks.md create mode 100644 docs/api/XCEngine/Memory/MemoryManager/GenerateMemoryReport.md create mode 100644 docs/api/XCEngine/Memory/MemoryManager/Get.md create mode 100644 docs/api/XCEngine/Memory/MemoryManager/GetSystemAllocator.md create mode 100644 docs/api/XCEngine/Memory/MemoryManager/Initialize.md create mode 100644 docs/api/XCEngine/Memory/MemoryManager/MemoryManager.md create mode 100644 docs/api/XCEngine/Memory/MemoryManager/SetTrackAllocations.md create mode 100644 docs/api/XCEngine/Memory/MemoryManager/Shutdown.md create mode 100644 docs/api/XCEngine/Memory/PoolAllocator/Allocate.md create mode 100644 docs/api/XCEngine/Memory/PoolAllocator/Constructor.md create mode 100644 docs/api/XCEngine/Memory/PoolAllocator/Contains.md create mode 100644 docs/api/XCEngine/Memory/PoolAllocator/Destructor.md create mode 100644 docs/api/XCEngine/Memory/PoolAllocator/Free.md create mode 100644 docs/api/XCEngine/Memory/PoolAllocator/GetAllocationCount.md create mode 100644 docs/api/XCEngine/Memory/PoolAllocator/GetBlockSize.md create mode 100644 docs/api/XCEngine/Memory/PoolAllocator/GetFreeBlockCount.md create mode 100644 docs/api/XCEngine/Memory/PoolAllocator/GetName.md create mode 100644 docs/api/XCEngine/Memory/PoolAllocator/GetPeakAllocated.md create mode 100644 docs/api/XCEngine/Memory/PoolAllocator/GetTotalAllocated.md create mode 100644 docs/api/XCEngine/Memory/PoolAllocator/GetTotalBlockCount.md create mode 100644 docs/api/XCEngine/Memory/PoolAllocator/GetTotalFreed.md create mode 100644 docs/api/XCEngine/Memory/PoolAllocator/PoolAllocator.md create mode 100644 docs/api/XCEngine/Memory/PoolAllocator/Reallocate.md create mode 100644 docs/api/XCEngine/Memory/ProxyAllocator/Allocate.md create mode 100644 docs/api/XCEngine/Memory/ProxyAllocator/Constructor.md create mode 100644 docs/api/XCEngine/Memory/ProxyAllocator/Free.md create mode 100644 docs/api/XCEngine/Memory/ProxyAllocator/GetAllocationCount.md create mode 100644 docs/api/XCEngine/Memory/ProxyAllocator/GetName.md create mode 100644 docs/api/XCEngine/Memory/ProxyAllocator/GetPeakAllocated.md create mode 100644 docs/api/XCEngine/Memory/ProxyAllocator/GetStats.md create mode 100644 docs/api/XCEngine/Memory/ProxyAllocator/GetTotalAllocated.md create mode 100644 docs/api/XCEngine/Memory/ProxyAllocator/GetTotalFreed.md create mode 100644 docs/api/XCEngine/Memory/ProxyAllocator/ProxyAllocator.md create mode 100644 docs/api/XCEngine/Memory/ProxyAllocator/Reallocate.md create mode 100644 docs/api/XCEngine/Platform/GameTime/GameTime.md create mode 100644 docs/api/XCEngine/Platform/IClock/Destructor.md create mode 100644 docs/api/XCEngine/Platform/IClock/GetAbsoluteTime.md create mode 100644 docs/api/XCEngine/Platform/IClock/GetDeltaTime.md create mode 100644 docs/api/XCEngine/Platform/IClock/GetTimeSinceInit.md create mode 100644 docs/api/XCEngine/Platform/IClock/IClock.md create mode 100644 docs/api/XCEngine/Platform/IClock/Update.md create mode 100644 docs/api/XCEngine/Platform/IDisplayEnumerator/Destructor.md create mode 100644 docs/api/XCEngine/Platform/IDisplayEnumerator/GetDPIForDisplay.md create mode 100644 docs/api/XCEngine/Platform/IDisplayEnumerator/GetDisplayCount.md create mode 100644 docs/api/XCEngine/Platform/IDisplayEnumerator/GetDisplayInfo.md create mode 100644 docs/api/XCEngine/Platform/IDisplayEnumerator/GetPrimaryDisplay.md create mode 100644 docs/api/XCEngine/Platform/IDisplayEnumerator/IDisplayEnumerator.md create mode 100644 docs/api/XCEngine/Platform/IDynamicLibrary/Destructor.md create mode 100644 docs/api/XCEngine/Platform/IDynamicLibrary/GetPath.md create mode 100644 docs/api/XCEngine/Platform/IDynamicLibrary/GetSymbol.md create mode 100644 docs/api/XCEngine/Platform/IDynamicLibrary/IDynamicLibrary.md create mode 100644 docs/api/XCEngine/Platform/IDynamicLibrary/IsLoaded.md create mode 100644 docs/api/XCEngine/Platform/IDynamicLibrary/Load.md create mode 100644 docs/api/XCEngine/Platform/IDynamicLibrary/Unload.md create mode 100644 docs/api/XCEngine/Platform/IFileSystem/CombinePaths.md create mode 100644 docs/api/XCEngine/Platform/IFileSystem/CreateDirectory.md create mode 100644 docs/api/XCEngine/Platform/IFileSystem/DeleteFile.md create mode 100644 docs/api/XCEngine/Platform/IFileSystem/Destructor.md create mode 100644 docs/api/XCEngine/Platform/IFileSystem/DirectoryExists.md create mode 100644 docs/api/XCEngine/Platform/IFileSystem/FileExists.md create mode 100644 docs/api/XCEngine/Platform/IFileSystem/GetExecutablePath.md create mode 100644 docs/api/XCEngine/Platform/IFileSystem/GetFileSize.md create mode 100644 docs/api/XCEngine/Platform/IFileSystem/GetTempDirectory.md create mode 100644 docs/api/XCEngine/Platform/IFileSystem/GetUserDirectory.md create mode 100644 docs/api/XCEngine/Platform/IFileSystem/GetWorkingDirectory.md create mode 100644 docs/api/XCEngine/Platform/IFileSystem/IFileSystem.md create mode 100644 docs/api/XCEngine/Platform/IFileSystem/NormalizePath.md create mode 100644 docs/api/XCEngine/Platform/IFileSystem/ReadFile.md create mode 100644 docs/api/XCEngine/Platform/IFileSystem/WriteFile.md create mode 100644 docs/api/XCEngine/Platform/IPlatform/CreateClock.md create mode 100644 docs/api/XCEngine/Platform/IPlatform/CreateDisplayEnumerator.md create mode 100644 docs/api/XCEngine/Platform/IPlatform/CreateFileSystem.md create mode 100644 docs/api/XCEngine/Platform/IPlatform/CreateWindow.md create mode 100644 docs/api/XCEngine/Platform/IPlatform/Destructor.md create mode 100644 docs/api/XCEngine/Platform/IPlatform/Get.md create mode 100644 docs/api/XCEngine/Platform/IPlatform/GetName.md create mode 100644 docs/api/XCEngine/Platform/IPlatform/GetType.md create mode 100644 docs/api/XCEngine/Platform/IPlatform/IPlatform.md create mode 100644 docs/api/XCEngine/Platform/IPlatform/LoadDynamicLibrary.md create mode 100644 docs/api/XCEngine/Platform/IPlatform/PumpPlatformMessages.md create mode 100644 docs/api/XCEngine/Platform/IWindow/Create.md create mode 100644 docs/api/XCEngine/Platform/IWindow/Destroy.md create mode 100644 docs/api/XCEngine/Platform/IWindow/Destructor.md create mode 100644 docs/api/XCEngine/Platform/IWindow/GetHeight.md create mode 100644 docs/api/XCEngine/Platform/IWindow/GetNativeHandle.md create mode 100644 docs/api/XCEngine/Platform/IWindow/GetWidth.md create mode 100644 docs/api/XCEngine/Platform/IWindow/IWindow.md create mode 100644 docs/api/XCEngine/Platform/IWindow/IsFullscreen.md create mode 100644 docs/api/XCEngine/Platform/IWindow/IsVSync.md create mode 100644 docs/api/XCEngine/Platform/IWindow/IsValid.md create mode 100644 docs/api/XCEngine/Platform/IWindow/Maximize.md create mode 100644 docs/api/XCEngine/Platform/IWindow/Minimize.md create mode 100644 docs/api/XCEngine/Platform/IWindow/PumpEvents.md create mode 100644 docs/api/XCEngine/Platform/IWindow/Restore.md create mode 100644 docs/api/XCEngine/Platform/IWindow/SetCloseCallback.md create mode 100644 docs/api/XCEngine/Platform/IWindow/SetFullscreen.md create mode 100644 docs/api/XCEngine/Platform/IWindow/SetResizeCallback.md create mode 100644 docs/api/XCEngine/Platform/IWindow/SetShouldClose.md create mode 100644 docs/api/XCEngine/Platform/IWindow/SetTitle.md create mode 100644 docs/api/XCEngine/Platform/IWindow/SetVSync.md create mode 100644 docs/api/XCEngine/Platform/IWindow/ShouldClose.md create mode 100644 docs/api/XCEngine/Platform/Platform.md create mode 100644 docs/api/XCEngine/Platform/PlatformTypes/PlatformTypes.md create mode 100644 docs/api/XCEngine/Platform/Window/Create.md create mode 100644 docs/api/XCEngine/Platform/Window/Destroy.md create mode 100644 docs/api/XCEngine/Platform/Window/Destructor.md create mode 100644 docs/api/XCEngine/Platform/Window/GetHandle.md create mode 100644 docs/api/XCEngine/Platform/Window/GetInputModule.md create mode 100644 docs/api/XCEngine/Platform/Window/GetNativeHandle.md create mode 100644 docs/api/XCEngine/Platform/Window/IsFullscreen.md create mode 100644 docs/api/XCEngine/Platform/Window/Maximize.md create mode 100644 docs/api/XCEngine/Platform/Window/Minimize.md create mode 100644 docs/api/XCEngine/Platform/Window/PumpEvents.md create mode 100644 docs/api/XCEngine/Platform/Window/Restore.md create mode 100644 docs/api/XCEngine/Platform/Window/SetFullscreen.md create mode 100644 docs/api/XCEngine/Platform/Window/SetInputModule.md create mode 100644 docs/api/XCEngine/Platform/Window/SetTitle.md create mode 100644 docs/api/XCEngine/Platform/Window/ShouldClose.md create mode 100644 docs/api/XCEngine/Platform/Window/Window.md create mode 100644 docs/api/XCEngine/Platform/Windows/Windows.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsInputModule/Constructor.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsInputModule/Destructor.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsInputModule/HandleMessage.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsInputModule/Initialize.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsInputModule/PumpEvents.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsInputModule/Shutdown.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsInputModule/WindowsInputModule.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsWindow/Constructor.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsWindow/Create.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsWindow/Destroy.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsWindow/Destructor.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsWindow/GetHandle.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsWindow/GetNativeHandle.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsWindow/IsFullscreen.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsWindow/Maximize.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsWindow/Minimize.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsWindow/PumpEvents.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsWindow/Restore.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsWindow/SetFullscreen.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsWindow/SetMessageCallback.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsWindow/SetTitle.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsWindow/ShouldClose.md create mode 100644 docs/api/XCEngine/Platform/Windows/WindowsWindow/WindowsWindow.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Constructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/D3D12Buffer.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Destructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetBufferType.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetDesc.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetGPUAddress.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetGPUVirtualAddress.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetName.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetResource.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetSize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetState.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetStride.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Initialize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/InitializeFromExisting.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/InitializeWithData.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Map.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetBufferType.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetData.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetName.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetState.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetStride.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Unmap.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Buffer/UpdateData.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Constructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/D3D12CommandAllocator.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Destructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/GetCommandAllocator.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Initialize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/IsReady.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Reset.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/AliasBarrier.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/AliasBarrierInternal.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/BeginQuery.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/BeginRenderPass.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Clear.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearDepthStencil.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearDepthStencilView.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearRenderTarget.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearRenderTargetView.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearUnorderedAccessView.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Close.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Constructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/CopyBuffer.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/CopyResource.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/CopyResourceInternal.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/CopyTexture.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/D3D12CommandList.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Destructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Dispatch.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DispatchIndirect.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DispatchIndirectInternal.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Draw.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawIndexed.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawIndexedInstancedIndirect.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawIndexedInstancedIndirectInternal.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawInstancedIndirect.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawInstancedIndirectInternal.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/EndQuery.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/EndRenderPass.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ExecuteBundle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/GetCommandList.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/GetResourceState.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Initialize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Reset.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ResolveQueryData.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetBlendFactor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetComputeDescriptorSets.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetComputeDescriptorTable.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetDepthBias.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetDescriptorHeap.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetDescriptorHeaps.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsDescriptorSets.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsDescriptorTable.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsRoot32BitConstants.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsRootConstantBufferView.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsRootDescriptorTable.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsRootShaderResourceView.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetIndexBuffer.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetIndexBufferInternal.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetPipelineLayout.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetPipelineState.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetPipelineStateInternal.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetPrimitiveTopology.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetRenderTargets.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetRenderTargetsHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetRenderTargetsInternal.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetRootSignature.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetScissorRect.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetScissorRects.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetShader.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetStencilRef.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetVertexBuffer.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetVertexBuffers.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetVertexBuffersInternal.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetViewport.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetViewports.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/TrackResource.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/TransitionBarrier.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/TransitionBarrierInternal.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/UAVBarrier.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandList/UAVBarrierInternal.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Constructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/D3D12CommandQueue.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Destructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/ExecuteCommandLists.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/ExecuteCommandListsInternal.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetCommandQueue.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetCompletedValue.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetCurrentFrame.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetTimestampFrequency.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetType.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Initialize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Signal.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Wait.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/WaitForIdle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/WaitForPreviousFrame.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Common/D3D12Common.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/AllocateSet.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/Constructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/CreateDesc.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/D3D12DescriptorHeap.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/Destructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/FreeSet.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetCPUDescriptorHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetCPUDescriptorHandleForHeapStart.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetDescriptorCount.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetDescriptorHeap.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetDescriptorSize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetDevice.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetGPUDescriptorHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetGPUDescriptorHandleForHeapStart.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetType.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/Initialize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/IsShaderVisible.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Bind.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Constructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/D3D12DescriptorSet.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Destructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetBindingCount.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetBindings.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetConstantBufferData.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetConstantBufferGPUAddress.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetConstantBufferSize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetCount.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetDescriptorIndexForBinding.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetFirstBindingOfType.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetGPUHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetGPUHandleForBinding.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetHeap.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetOffset.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/HasBindingType.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Initialize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/IsConstantDirty.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/MarkConstantClean.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Unbind.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Update.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/UpdateSampler.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/UploadConstantBuffer.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/WriteConstant.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CheckFeatureSupport.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/Constructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateBuffer.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandAllocator.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandList.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandListImpl.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandQueue.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandQueueImpl.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateDepthStencilView.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateDescriptorHeap.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateDescriptorPool.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateDescriptorSet.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateFence.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateFramebuffer.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateIndexBufferView.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreatePipelineLayout.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreatePipelineState.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateQueryHeap.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateRenderPass.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateRenderTargetView.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateRootSignature.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateSampler.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateShader.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateShaderResourceView.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateSwapChain.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateTexture.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateUnorderedAccessView.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateVertexBufferView.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/D3D12Device.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/Destructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/EnumerateAdapters.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/GetAdapterInfo.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/GetCapabilities.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/GetDescriptorHandleIncrementSize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/GetDevice.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/GetDeviceInfo.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/GetFactory.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/GetNativeDevice.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/Initialize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/IsDeviceRemoved.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/SetDeviceRemoved.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Device/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Enums/D3D12Enums.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Fence/Constructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Fence/D3D12Fence.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Fence/Destructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Fence/GetCompletedValue.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Fence/GetEventHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Fence/GetFence.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Fence/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Fence/Initialize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Fence/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Fence/Signal.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Fence/Wait.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/Constructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/D3D12Framebuffer.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/Destructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetDepthStencilHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetHeight.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetRenderPass.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetRenderTargetCount.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetRenderTargetHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetRenderTargetHandles.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetWidth.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/HasDepthStencil.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/Initialize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/IsValid.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/Constructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/D3D12PipelineLayout.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/Destructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetConstantBufferRootParameterIndex.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetDesc.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetRootSignature.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetSamplerTableRootParameterIndex.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetSetLayoutCount.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetShaderResourceTableRootParameterIndex.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetUnorderedAccessTableRootParameterIndex.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/HasConstantBufferBinding.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/HasSamplerTable.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/HasShaderResourceTable.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/HasUnorderedAccessTable.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/Initialize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/InitializeWithDevice.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/UsesSetLayouts.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Bind.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Constructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/CreateInputElement.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/D3D12PipelineState.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Destructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/EnsureValid.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetBlendState.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetComputePipelineState.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetComputeShader.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetDepthStencilState.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetHash.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetInputLayout.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetPipelineState.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetRasterizerState.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetRootSignature.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetType.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/HasComputeShader.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Initialize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/IsValid.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetBlendState.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetComputeShader.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetComputeShaderBytecodes.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetDepthStencilState.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetInputLayout.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetRasterizerState.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetRenderTargetFormats.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetRootSignature.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetSampleCount.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetShaderBytecodes.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetTopology.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Unbind.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/Constructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/D3D12QueryHeap.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/Destructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/GetCount.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/GetQueryHeap.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/GetType.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/Initialize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/Constructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/D3D12RenderPass.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/Destructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetBeginningAccessType.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetColorAttachmentCount.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetColorAttachments.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetDepthBeginningAccessType.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetDepthEndingAccessType.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetDepthStencilAttachment.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetEndingAccessType.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/Initialize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/Constructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/CreateDepthStencilDesc.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/CreateRenderTargetDesc.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/CreateShaderResourceDesc.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/CreateUnorderedAccessDesc.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/D3D12ResourceView.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/Destructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetBufferLocation.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetBufferOffset.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetBufferSize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetBufferStride.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetCPUHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetDimension.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetFormat.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetGPUHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetHeap.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetResource.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetSlotIndex.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetViewType.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsConstantBuffer.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsDepthStencil.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsIndexBuffer.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsRenderTarget.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsShaderResource.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsUnorderedAccess.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsVertexBuffer.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/IsValid.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/SetOwnedHeap.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/SetViewType.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Constructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Create32BitConstants.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateCBV.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateDesc.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateDescriptorRange.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateDescriptorTable.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateSRV.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateSamplerDesc.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateStaticSampler.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateUAV.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/D3D12RootSignature.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Destructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/GetParameterCount.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/GetRootSignature.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Initialize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Bind.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Constructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Sampler/D3D12Sampler.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Destructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Sampler/GetDesc.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Sampler/GetID.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Sampler/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Initialize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Unbind.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Screenshot/Capture.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Screenshot/D3D12Screenshot.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Screenshot/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Shader/Compile.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Shader/CompileFromFile.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Shader/Constructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Shader/D3D12Shader.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Shader/Destructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetBytecode.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetBytecodeSize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetD3D12Bytecode.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetInputLayout.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetType.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetUniformInfo.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetUniformInfos.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Shader/IsValid.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Shader/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Constructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/D3D12SwapChain.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Destructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetBackBuffer.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetCurrentBackBuffer.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetCurrentBackBufferIndex.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetNativeCommandQueue.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Initialize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Present.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Resize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/Constructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/D3D12Texture.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/Destructor.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetArraySize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetDepth.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetDesc.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetFormat.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetGPUAddress.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetHeight.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetMipLevels.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetName.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetResource.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetSize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetState.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetTextureType.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetWidth.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/Initialize.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/InitializeDepthStencil.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/InitializeFromData.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/InitializeFromExisting.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/OwnsResource.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/SetFormat.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/SetName.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/SetState.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/SetTextureType.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Texture/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/D3D12/D3D12Types/D3D12Types.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGL.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Bind.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/BindBase.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetBufferType.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetID.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetName.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetSize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetState.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetStride.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetType.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Initialize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/InitializeIndexBuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/InitializeVertexBuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/IsDynamic.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Map.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/OpenGLBuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetBufferType.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetData.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetName.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetState.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetStride.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Unbind.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Unmap.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BeginQuery.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BeginRenderPass.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindBufferBase.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindBufferRange.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindFragDataLocation.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindFragDataLocationIndexed.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindImageTexture.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindSampler.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindSamplers.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindTexture.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindTextures.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindVertexArray.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BlitFramebuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Clear.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearColor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearDepth.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearDepthStencil.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearRenderTarget.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearStencil.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Close.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/CopyImageSubData.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/CopyResource.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Disable.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Disablei.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Dispatch.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DispatchCompute.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DispatchIndirect.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Draw.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawIndexed.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawIndexedIndirect.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawIndexedInstanced.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawIndirect.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawInstanced.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Enable.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableBlending.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableCulling.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableDepthTest.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableDepthWrite.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableScissorTest.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableStencilTest.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Enablei.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EndQuery.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EndRenderPass.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/GetQueryObjectiv.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/GetQueryObjectuiv.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/InvalidateFramebuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/InvalidateSubFramebuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/MemoryBarrier.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/MultiDrawArrays.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/MultiDrawElements.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/OpenGLCommandList.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/PopDebugGroup.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/PushDebugGroup.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ReadPixels.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Reset.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendColor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendEquation.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendFactor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendFunc.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendFuncSeparate.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetComputeDescriptorSets.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetCullFace.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetDepthFunc.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetFrontFace.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetGraphicsDescriptorSets.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetIndexBuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPipelineState.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPolygonMode.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPolygonOffset.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPrimitiveTopology.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPrimitiveType.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetRenderTargets.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetScissor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetScissorRect.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetScissorRects.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetShader.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetStencilFunc.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetStencilOp.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetStencilRef.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform1f.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform1fv.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform1i.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform2f.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform2fv.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform3f.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform3fv.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform4f.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform4fv.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformFloat.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformInt.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformMat4.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformMatrix4fv.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformVec3.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformVec4.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetVertexBuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetVertexBuffers.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetViewport.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetViewports.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/TextureBarrier.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/TransitionBarrier.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/UseProgram.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/UseShader.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/ExecuteCommandLists.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetCompletedValue.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetCurrentFrame.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetTimestampFrequency.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetType.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/OpenGLCommandQueue.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Signal.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Wait.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/WaitForIdle.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/WaitForPreviousFrame.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Bind.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/BindFramebuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/ClearDepth.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/ClearDepthStencil.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/ClearStencil.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetFramebuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetHeight.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetMipLevel.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetTexture.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetWidth.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Initialize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/InitializeCubemap.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/OpenGLDepthStencilView.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Unbind.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/UnbindFramebuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/AllocateSet.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/FreeSet.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/GetDescriptorCount.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/GetType.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/Initialize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/OpenGLDescriptorPool.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/SetTextureUnitAllocator.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Bind.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/BindWithPipelineLayout.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetBindingCount.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetBindingPoint.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetBindings.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetConstantBufferData.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetConstantBufferSize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Initialize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/IsConstantDirty.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/MarkConstantClean.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/OpenGLDescriptorSet.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Unbind.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Update.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/UpdateSampler.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/WriteConstant.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateBuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateCommandList.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateCommandQueue.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateDepthStencilView.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateDescriptorPool.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateDescriptorSet.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateFence.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateFramebuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateIndexBufferView.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreatePipelineLayout.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreatePipelineState.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateRenderPass.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateRenderTargetView.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateSampler.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateShader.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateShaderResourceView.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateSwapChain.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateTexture.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateUnorderedAccessView.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateVertexBufferView.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetCapabilities.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetDeviceInfo.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetDeviceInfoImpl.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetNativeContext.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetNativeDevice.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/Initialize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/InitializeWithExistingWindow.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/MakeContextCurrent.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/OpenGLDevice.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLEnums/OpenGLEnums.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFence/GetCompletedValue.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFence/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Initialize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFence/OpenGLFence.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Signal.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Wait.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Bind.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/BindFramebuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/ClearColor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/ClearDepth.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/ClearDepthStencil.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/ClearStencil.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/GetFramebuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/GetHeight.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/GetWidth.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Initialize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/IsValid.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/OpenGLFramebuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Unbind.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/UnbindFramebuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetConstantBufferBindingPoint.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetDesc.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetSamplerBindingPoint.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetSetLayoutCount.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetShaderResourceBindingPoint.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetUnorderedAccessBindingPoint.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/HasConstantBufferBinding.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/HasSamplerBinding.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/HasShaderResourceBinding.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/HasUnorderedAccessBinding.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/Initialize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/OpenGLPipelineLayout.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/UsesSetLayouts.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Apply.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyBlend.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyDepthStencil.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyRasterizer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyScissor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyViewport.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/AttachShader.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Bind.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Clear.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/DetachShader.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/EnsureValid.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetBlendState.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetComputeShader.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetDepthStencilState.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetHash.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetInputLayout.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetOpenGLBlendState.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetOpenGLDepthStencilState.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetOpenGLRasterizerState.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetProgram.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetRasterizerState.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetType.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/HasComputeShader.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/IsValid.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/OpenGLPipelineState.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetBlendState.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetClearColor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetComputeShader.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetDepthStencilState.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetInputLayout.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetOwnedGraphicsShader.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetProgram.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetRasterizerState.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetRenderTargetFormats.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetSampleCount.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetScissor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetTopology.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetViewport.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Unbind.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/GetColorAttachmentCount.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/GetColorAttachments.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/GetDepthStencilAttachment.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/Initialize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/OpenGLRenderPass.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Bind.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/BindFramebuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Clear.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetFramebuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetHeight.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetMipLevel.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetTexture.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetWidth.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Initialize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/InitializeCubemap.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/OpenGLRenderTargetView.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Unbind.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/UnbindFramebuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBindingPoint.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBufferOffset.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBufferSize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBufferStride.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetDimension.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetFormat.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetFramebuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetFramebufferAttachment.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetTexture.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetTextureResource.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetTextureUnit.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetViewType.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsConstantBuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsDepthStencil.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsIndexBuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsRenderTarget.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsShaderResource.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsUnorderedAccess.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsVertexBuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/IsValid.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/OpenGLResourceView.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Bind.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/GetID.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Initialize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/OpenGLSampler.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Unbind.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLScreenshot/Capture.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLScreenshot/OpenGLScreenshot.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLScreenshot/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Compile.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLShader/CompileCompute.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLShader/CompileFromFile.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetID.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetType.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetUniformInfo.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetUniformInfos.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetUniformLocation.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLShader/IsValid.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLShader/OpenGLShader.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Use.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetCurrentBackBuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetCurrentBackBufferIndex.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetHeight.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetWidth.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Initialize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/OpenGLSwapChain.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Present.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Resize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/SwapBuffers.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Bind.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/BindImage.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GenerateMipmap.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetDepth.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetFormat.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetHeight.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetID.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetMipLevels.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetName.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetOpenGLType.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetState.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetTextureType.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetWidth.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Initialize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Initialize2D.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/InitializeCubeMap.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/LoadFromFile.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/OpenGLTexture.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetFiltering.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetFormat.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetName.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetState.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetWrapping.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Unbind.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Allocate.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/BindTexture.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Free.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/GetBoundTexture.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/GetMaxUnits.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Initialize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/IsAllocated.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/OpenGLTextureUnitAllocator.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/UnbindTexture.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Allocate.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/BindBuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Free.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/GetBoundBuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/GetMaxBindingPoints.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Initialize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/IsAllocated.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/OpenGLUniformBufferManager.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/UnbindBuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/AddVertexBuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Bind.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Constructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Destructor.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/GetID.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/GetIndexBuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/GetIndexCount.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Initialize.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/OpenGLVertexArray.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/SetIndexBuffer.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Unbind.md create mode 100644 docs/api/XCEngine/RHI/RHI.md create mode 100644 docs/api/XCEngine/RHI/RHIBuffer/Destructor.md create mode 100644 docs/api/XCEngine/RHI/RHIBuffer/GetBufferType.md create mode 100644 docs/api/XCEngine/RHI/RHIBuffer/GetName.md create mode 100644 docs/api/XCEngine/RHI/RHIBuffer/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/RHIBuffer/GetSize.md create mode 100644 docs/api/XCEngine/RHI/RHIBuffer/GetState.md create mode 100644 docs/api/XCEngine/RHI/RHIBuffer/GetStride.md create mode 100644 docs/api/XCEngine/RHI/RHIBuffer/Map.md create mode 100644 docs/api/XCEngine/RHI/RHIBuffer/RHIBuffer.md create mode 100644 docs/api/XCEngine/RHI/RHIBuffer/SetBufferType.md create mode 100644 docs/api/XCEngine/RHI/RHIBuffer/SetData.md create mode 100644 docs/api/XCEngine/RHI/RHIBuffer/SetName.md create mode 100644 docs/api/XCEngine/RHI/RHIBuffer/SetState.md create mode 100644 docs/api/XCEngine/RHI/RHIBuffer/SetStride.md create mode 100644 docs/api/XCEngine/RHI/RHIBuffer/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/RHIBuffer/Unmap.md create mode 100644 docs/api/XCEngine/RHI/RHICapabilities/RHICapabilities.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/BeginRenderPass.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/Clear.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/ClearDepthStencil.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/ClearRenderTarget.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/Close.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/CopyResource.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/Destructor.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/Dispatch.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/Draw.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/DrawIndexed.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/EndRenderPass.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/RHICommandList.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/Reset.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/SetBlendFactor.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/SetComputeDescriptorSets.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/SetGraphicsDescriptorSets.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/SetIndexBuffer.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/SetPipelineState.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/SetPrimitiveTopology.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/SetRenderTargets.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/SetScissorRect.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/SetScissorRects.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/SetShader.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/SetStencilRef.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/SetVertexBuffers.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/SetViewport.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/SetViewports.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/RHICommandList/TransitionBarrier.md create mode 100644 docs/api/XCEngine/RHI/RHICommandQueue/Destructor.md create mode 100644 docs/api/XCEngine/RHI/RHICommandQueue/ExecuteCommandLists.md create mode 100644 docs/api/XCEngine/RHI/RHICommandQueue/GetCompletedValue.md create mode 100644 docs/api/XCEngine/RHI/RHICommandQueue/GetCurrentFrame.md create mode 100644 docs/api/XCEngine/RHI/RHICommandQueue/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/RHICommandQueue/GetTimestampFrequency.md create mode 100644 docs/api/XCEngine/RHI/RHICommandQueue/GetType.md create mode 100644 docs/api/XCEngine/RHI/RHICommandQueue/RHICommandQueue.md create mode 100644 docs/api/XCEngine/RHI/RHICommandQueue/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/RHICommandQueue/Signal.md create mode 100644 docs/api/XCEngine/RHI/RHICommandQueue/Wait.md create mode 100644 docs/api/XCEngine/RHI/RHICommandQueue/WaitForIdle.md create mode 100644 docs/api/XCEngine/RHI/RHICommandQueue/WaitForPreviousFrame.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorPool/AllocateSet.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorPool/Destructor.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorPool/FreeSet.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorPool/GetDescriptorCount.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorPool/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorPool/GetType.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorPool/Initialize.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorPool/RHIDescriptorPool.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorPool/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorSet/Bind.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorSet/Destructor.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorSet/GetBindingCount.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorSet/GetBindings.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorSet/GetConstantBufferData.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorSet/GetConstantBufferSize.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorSet/IsConstantDirty.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorSet/MarkConstantClean.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorSet/RHIDescriptorSet.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorSet/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorSet/Unbind.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorSet/Update.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorSet/UpdateSampler.md create mode 100644 docs/api/XCEngine/RHI/RHIDescriptorSet/WriteConstant.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreateBuffer.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreateCommandList.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreateCommandQueue.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreateDepthStencilView.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreateDescriptorPool.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreateDescriptorSet.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreateFence.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreateFramebuffer.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreateIndexBufferView.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreatePipelineLayout.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreatePipelineState.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreateRenderPass.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreateRenderTargetView.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreateSampler.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreateShader.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreateShaderResourceView.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreateSwapChain.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreateTexture.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreateUnorderedAccessView.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/CreateVertexBufferView.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/Destructor.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/GetCapabilities.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/GetDeviceInfo.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/GetNativeDevice.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/Initialize.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/RHIDevice.md create mode 100644 docs/api/XCEngine/RHI/RHIDevice/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/RHIEnums/RHIEnums.md create mode 100644 docs/api/XCEngine/RHI/RHIFactory/CreateRHIDevice.md create mode 100644 docs/api/XCEngine/RHI/RHIFactory/RHIFactory.md create mode 100644 docs/api/XCEngine/RHI/RHIFence/Destructor.md create mode 100644 docs/api/XCEngine/RHI/RHIFence/GetCompletedValue.md create mode 100644 docs/api/XCEngine/RHI/RHIFence/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/RHIFence/RHIFence.md create mode 100644 docs/api/XCEngine/RHI/RHIFence/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/RHIFence/Signal.md create mode 100644 docs/api/XCEngine/RHI/RHIFence/Wait.md create mode 100644 docs/api/XCEngine/RHI/RHIFramebuffer/Destructor.md create mode 100644 docs/api/XCEngine/RHI/RHIFramebuffer/GetHeight.md create mode 100644 docs/api/XCEngine/RHI/RHIFramebuffer/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/RHIFramebuffer/GetWidth.md create mode 100644 docs/api/XCEngine/RHI/RHIFramebuffer/Initialize.md create mode 100644 docs/api/XCEngine/RHI/RHIFramebuffer/IsValid.md create mode 100644 docs/api/XCEngine/RHI/RHIFramebuffer/RHIFramebuffer.md create mode 100644 docs/api/XCEngine/RHI/RHIFramebuffer/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineLayout/Destructor.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineLayout/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineLayout/Initialize.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineLayout/RHIPipelineLayout.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineLayout/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/Bind.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/Destructor.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/EnsureValid.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/GetBlendState.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/GetComputeShader.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/GetDepthStencilState.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/GetHash.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/GetInputLayout.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/GetRasterizerState.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/GetType.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/HasComputeShader.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/IsValid.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/RHIPipelineState.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/SetBlendState.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/SetComputeShader.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/SetDepthStencilState.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/SetInputLayout.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/SetRasterizerState.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/SetRenderTargetFormats.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/SetSampleCount.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/SetTopology.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/RHIPipelineState/Unbind.md create mode 100644 docs/api/XCEngine/RHI/RHIRenderPass/Destructor.md create mode 100644 docs/api/XCEngine/RHI/RHIRenderPass/GetColorAttachmentCount.md create mode 100644 docs/api/XCEngine/RHI/RHIRenderPass/GetColorAttachments.md create mode 100644 docs/api/XCEngine/RHI/RHIRenderPass/GetDepthStencilAttachment.md create mode 100644 docs/api/XCEngine/RHI/RHIRenderPass/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/RHIRenderPass/Initialize.md create mode 100644 docs/api/XCEngine/RHI/RHIRenderPass/RHIRenderPass.md create mode 100644 docs/api/XCEngine/RHI/RHIRenderPass/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/RHIResource/Destructor.md create mode 100644 docs/api/XCEngine/RHI/RHIResource/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/RHIResource/GetState.md create mode 100644 docs/api/XCEngine/RHI/RHIResource/RHIResource.md create mode 100644 docs/api/XCEngine/RHI/RHIResource/SetState.md create mode 100644 docs/api/XCEngine/RHI/RHIResourceView/Destructor.md create mode 100644 docs/api/XCEngine/RHI/RHIResourceView/GetDimension.md create mode 100644 docs/api/XCEngine/RHI/RHIResourceView/GetFormat.md create mode 100644 docs/api/XCEngine/RHI/RHIResourceView/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/RHIResourceView/GetViewType.md create mode 100644 docs/api/XCEngine/RHI/RHIResourceView/IsValid.md create mode 100644 docs/api/XCEngine/RHI/RHIResourceView/RHIResourceView.md create mode 100644 docs/api/XCEngine/RHI/RHIResourceView/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/RHISampler/Bind.md create mode 100644 docs/api/XCEngine/RHI/RHISampler/Destructor.md create mode 100644 docs/api/XCEngine/RHI/RHISampler/GetID.md create mode 100644 docs/api/XCEngine/RHI/RHISampler/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/RHISampler/RHISampler.md create mode 100644 docs/api/XCEngine/RHI/RHISampler/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/RHISampler/Unbind.md create mode 100644 docs/api/XCEngine/RHI/RHIScreenshot/Capture.md create mode 100644 docs/api/XCEngine/RHI/RHIScreenshot/Create.md create mode 100644 docs/api/XCEngine/RHI/RHIScreenshot/Destructor.md create mode 100644 docs/api/XCEngine/RHI/RHIScreenshot/RHIScreenshot.md create mode 100644 docs/api/XCEngine/RHI/RHIScreenshot/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/RHIShader/Compile.md create mode 100644 docs/api/XCEngine/RHI/RHIShader/CompileFromFile.md create mode 100644 docs/api/XCEngine/RHI/RHIShader/Destructor.md create mode 100644 docs/api/XCEngine/RHI/RHIShader/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/RHIShader/GetType.md create mode 100644 docs/api/XCEngine/RHI/RHIShader/GetUniformInfo.md create mode 100644 docs/api/XCEngine/RHI/RHIShader/GetUniformInfos.md create mode 100644 docs/api/XCEngine/RHI/RHIShader/IsValid.md create mode 100644 docs/api/XCEngine/RHI/RHIShader/RHIShader.md create mode 100644 docs/api/XCEngine/RHI/RHIShader/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/RHISwapChain/Destructor.md create mode 100644 docs/api/XCEngine/RHI/RHISwapChain/GetCurrentBackBuffer.md create mode 100644 docs/api/XCEngine/RHI/RHISwapChain/GetCurrentBackBufferIndex.md create mode 100644 docs/api/XCEngine/RHI/RHISwapChain/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/RHISwapChain/Present.md create mode 100644 docs/api/XCEngine/RHI/RHISwapChain/RHISwapChain.md create mode 100644 docs/api/XCEngine/RHI/RHISwapChain/Resize.md create mode 100644 docs/api/XCEngine/RHI/RHISwapChain/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/RHITexture/Destructor.md create mode 100644 docs/api/XCEngine/RHI/RHITexture/GetDepth.md create mode 100644 docs/api/XCEngine/RHI/RHITexture/GetFormat.md create mode 100644 docs/api/XCEngine/RHI/RHITexture/GetHeight.md create mode 100644 docs/api/XCEngine/RHI/RHITexture/GetMipLevels.md create mode 100644 docs/api/XCEngine/RHI/RHITexture/GetName.md create mode 100644 docs/api/XCEngine/RHI/RHITexture/GetNativeHandle.md create mode 100644 docs/api/XCEngine/RHI/RHITexture/GetState.md create mode 100644 docs/api/XCEngine/RHI/RHITexture/GetTextureType.md create mode 100644 docs/api/XCEngine/RHI/RHITexture/GetWidth.md create mode 100644 docs/api/XCEngine/RHI/RHITexture/RHITexture.md create mode 100644 docs/api/XCEngine/RHI/RHITexture/SetName.md create mode 100644 docs/api/XCEngine/RHI/RHITexture/SetState.md create mode 100644 docs/api/XCEngine/RHI/RHITexture/Shutdown.md create mode 100644 docs/api/XCEngine/RHI/RHITypes/RHITypes.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/AudioClip.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/Constructor.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/Destructor.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/GetAudioData.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/GetAudioFormat.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/GetAudioType.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/GetBitsPerSample.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/GetChannels.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/GetDuration.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/GetGUID.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/GetMemorySize.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/GetName.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/GetPath.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/GetSampleRate.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/GetType.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/Is3D.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/IsLoop.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/IsValid.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/Release.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/SetAudioData.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/SetAudioFormat.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/SetAudioType.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/SetBitsPerSample.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/SetChannels.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/SetDuration.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/SetIs3D.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/SetLoop.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/SetRHIResource.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioClip/SetSampleRate.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioLoader/AudioLoader.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioLoader/CanLoad.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioLoader/Constructor.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioLoader/Destructor.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioLoader/GetDefaultSettings.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioLoader/GetResourceType.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioLoader/GetSupportedExtensions.md create mode 100644 docs/api/XCEngine/Resources/AudioClip/AudioLoader/Load.md create mode 100644 docs/api/XCEngine/Resources/Material/Material.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/ClearAllProperties.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/Constructor.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/Destructor.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/GetBool.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/GetConstantBufferData.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/GetFloat.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/GetFloat2.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/GetFloat3.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/GetFloat4.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/GetGUID.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/GetInt.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/GetMemorySize.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/GetName.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/GetPath.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/GetTexture.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/GetTextureBindingCount.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/GetType.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/HasProperty.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/IsValid.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/Material.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/Release.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/RemoveProperty.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/SetBool.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/SetFloat.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/SetFloat2.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/SetFloat3.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/SetFloat4.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/SetInt.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/SetShader.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/SetTexture.md create mode 100644 docs/api/XCEngine/Resources/Material/Material/UpdateConstantBuffer.md create mode 100644 docs/api/XCEngine/Resources/Material/MaterialLoader/CanLoad.md create mode 100644 docs/api/XCEngine/Resources/Material/MaterialLoader/Constructor.md create mode 100644 docs/api/XCEngine/Resources/Material/MaterialLoader/Destructor.md create mode 100644 docs/api/XCEngine/Resources/Material/MaterialLoader/GetDefaultSettings.md create mode 100644 docs/api/XCEngine/Resources/Material/MaterialLoader/GetResourceType.md create mode 100644 docs/api/XCEngine/Resources/Material/MaterialLoader/GetSupportedExtensions.md create mode 100644 docs/api/XCEngine/Resources/Material/MaterialLoader/Load.md create mode 100644 docs/api/XCEngine/Resources/Material/MaterialLoader/MaterialLoader.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/AddMaterial.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/AddSection.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/AddTexture.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/Constructor.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/Destructor.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/GetBounds.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/GetGUID.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/GetIndexCount.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/GetIndexData.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/GetIndexDataSize.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/GetMaterial.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/GetMaterials.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/GetMemorySize.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/GetName.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/GetPath.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/GetSections.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/GetTextures.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/GetType.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexAttributes.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexCount.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexData.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexDataSize.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexStride.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/IsUse32BitIndex.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/IsValid.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/Mesh.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/Release.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/SetBounds.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/SetIndexData.md create mode 100644 docs/api/XCEngine/Resources/Mesh/Mesh/SetVertexData.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/AddImportFlag.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/Clone.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/Constructor.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/Destructor.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetAxisConversion.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetImportFlags.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetImportScale.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetMergeMeshes.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetOffset.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetOptimizeThreshold.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetScale.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetThreshold.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/HasImportFlag.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/LoadFromJSON.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/MeshImportSettings.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/RemoveImportFlag.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SaveToJSON.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetAxisConversion.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetImportFlags.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetImportScale.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetMergeMeshes.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetOffset.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetOptimizeThreshold.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetScale.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetThreshold.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshLoader/CanLoad.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshLoader/Constructor.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshLoader/Destructor.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshLoader/GetDefaultSettings.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshLoader/GetResourceType.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshLoader/GetSupportedExtensions.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshLoader/Load.md create mode 100644 docs/api/XCEngine/Resources/Mesh/MeshLoader/MeshLoader.md create mode 100644 docs/api/XCEngine/Resources/Resources.md create mode 100644 docs/api/XCEngine/Resources/Resources/Resources.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/AddAttribute.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/AddUniform.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/Constructor.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/Destructor.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/GetAttributes.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/GetCompiledBinary.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/GetGUID.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/GetMemorySize.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/GetName.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/GetPath.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/GetShaderLanguage.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/GetShaderType.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/GetSourceCode.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/GetType.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/GetUniforms.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/IsValid.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/Release.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/SetCompiledBinary.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/SetRHIResource.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/SetShaderLanguage.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/SetShaderType.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/SetSourceCode.md create mode 100644 docs/api/XCEngine/Resources/Shader/Shader/Shader.md create mode 100644 docs/api/XCEngine/Resources/Shader/ShaderLoader/CanLoad.md create mode 100644 docs/api/XCEngine/Resources/Shader/ShaderLoader/Constructor.md create mode 100644 docs/api/XCEngine/Resources/Shader/ShaderLoader/Destructor.md create mode 100644 docs/api/XCEngine/Resources/Shader/ShaderLoader/GetDefaultSettings.md create mode 100644 docs/api/XCEngine/Resources/Shader/ShaderLoader/GetResourceType.md create mode 100644 docs/api/XCEngine/Resources/Shader/ShaderLoader/GetSupportedExtensions.md create mode 100644 docs/api/XCEngine/Resources/Shader/ShaderLoader/Load.md create mode 100644 docs/api/XCEngine/Resources/Shader/ShaderLoader/ShaderLoader.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/Constructor.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/Create.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/Destructor.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/GenerateMipmaps.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/GetArraySize.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/GetDepth.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/GetFormat.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/GetGUID.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/GetHeight.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/GetMemorySize.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/GetMipLevels.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/GetName.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/GetPath.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/GetPixelData.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/GetPixelDataSize.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/GetTextureType.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/GetType.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/GetUsage.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/GetWidth.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/IsValid.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/Release.md create mode 100644 docs/api/XCEngine/Resources/Texture/Texture/Texture.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/Clone.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/Constructor.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/Destructor.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetBorderColor.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetCompressionQuality.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetFlipHorizontal.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetFlipVertical.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetGenerateMipmaps.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetGenerateNormalMap.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetMaxAnisotropy.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetMaxSize.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetMipmapFilter.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetNormalMapStrength.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetSRGB.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetTargetFormat.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetTextureType.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetUseHardwareCompression.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/LoadFromJSON.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/SaveToJSON.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetBorderColor.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetCompressionQuality.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetFlipHorizontal.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetFlipVertical.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetGenerateMipmaps.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetGenerateNormalMap.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetMaxAnisotropy.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetMaxSize.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetMipmapFilter.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetNormalMapStrength.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetSRGB.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetTargetFormat.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetTextureType.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetUseHardwareCompression.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureImportSettings/TextureImportSettings.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureLoader/CanLoad.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureLoader/Constructor.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureLoader/Destructor.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureLoader/GetDefaultSettings.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureLoader/GetResourceType.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureLoader/GetSupportedExtensions.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureLoader/Load.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureLoader/LoadFromMemory.md create mode 100644 docs/api/XCEngine/Resources/Texture/TextureLoader/TextureLoader.md create mode 100644 docs/api/XCEngine/Scene/Scene.md create mode 100644 docs/api/XCEngine/Scene/Scene/Constructor.md create mode 100644 docs/api/XCEngine/Scene/Scene/CreateGameObject.md create mode 100644 docs/api/XCEngine/Scene/Scene/DeserializeFromString.md create mode 100644 docs/api/XCEngine/Scene/Scene/DestroyGameObject.md create mode 100644 docs/api/XCEngine/Scene/Scene/Destructor.md create mode 100644 docs/api/XCEngine/Scene/Scene/Find.md create mode 100644 docs/api/XCEngine/Scene/Scene/FindByID.md create mode 100644 docs/api/XCEngine/Scene/Scene/FindGameObjectWithTag.md create mode 100644 docs/api/XCEngine/Scene/Scene/FindObjectOfType.md create mode 100644 docs/api/XCEngine/Scene/Scene/FindObjectsOfType.md create mode 100644 docs/api/XCEngine/Scene/Scene/FixedUpdate.md create mode 100644 docs/api/XCEngine/Scene/Scene/GetName.md create mode 100644 docs/api/XCEngine/Scene/Scene/GetRootGameObjects.md create mode 100644 docs/api/XCEngine/Scene/Scene/IsActive.md create mode 100644 docs/api/XCEngine/Scene/Scene/LateUpdate.md create mode 100644 docs/api/XCEngine/Scene/Scene/Load.md create mode 100644 docs/api/XCEngine/Scene/Scene/OnGameObjectCreated.md create mode 100644 docs/api/XCEngine/Scene/Scene/OnGameObjectDestroyed.md create mode 100644 docs/api/XCEngine/Scene/Scene/Save.md create mode 100644 docs/api/XCEngine/Scene/Scene/Scene.md create mode 100644 docs/api/XCEngine/Scene/Scene/SerializeToString.md create mode 100644 docs/api/XCEngine/Scene/Scene/SetActive.md create mode 100644 docs/api/XCEngine/Scene/Scene/SetName.md create mode 100644 docs/api/XCEngine/Scene/Scene/Update.md create mode 100644 docs/api/XCEngine/Scene/SceneManager/CreateScene.md create mode 100644 docs/api/XCEngine/Scene/SceneManager/Get.md create mode 100644 docs/api/XCEngine/Scene/SceneManager/GetActiveScene.md create mode 100644 docs/api/XCEngine/Scene/SceneManager/GetAllScenes.md create mode 100644 docs/api/XCEngine/Scene/SceneManager/GetScene.md create mode 100644 docs/api/XCEngine/Scene/SceneManager/LoadScene.md create mode 100644 docs/api/XCEngine/Scene/SceneManager/LoadSceneAsync.md create mode 100644 docs/api/XCEngine/Scene/SceneManager/OnActiveSceneChanged.md create mode 100644 docs/api/XCEngine/Scene/SceneManager/OnSceneLoaded.md create mode 100644 docs/api/XCEngine/Scene/SceneManager/OnSceneUnloaded.md create mode 100644 docs/api/XCEngine/Scene/SceneManager/SceneManager.md create mode 100644 docs/api/XCEngine/Scene/SceneManager/SetActiveScene.md create mode 100644 docs/api/XCEngine/Scene/SceneManager/UnloadScene.md create mode 100644 docs/api/XCEngine/Threading/LambdaTask/Constructor.md create mode 100644 docs/api/XCEngine/Threading/LambdaTask/Execute.md create mode 100644 docs/api/XCEngine/Threading/LambdaTask/LambdaTask.md create mode 100644 docs/api/XCEngine/Threading/Mutex/Constructor.md create mode 100644 docs/api/XCEngine/Threading/Mutex/Destructor.md create mode 100644 docs/api/XCEngine/Threading/Mutex/Mutex.md create mode 100644 docs/api/XCEngine/Threading/Mutex/TryLock.md create mode 100644 docs/api/XCEngine/Threading/Mutex/lock.md create mode 100644 docs/api/XCEngine/Threading/Mutex/try_lock.md create mode 100644 docs/api/XCEngine/Threading/Mutex/unlock.md create mode 100644 docs/api/XCEngine/Threading/ReadWriteLock/Constructor.md create mode 100644 docs/api/XCEngine/Threading/ReadWriteLock/Destructor.md create mode 100644 docs/api/XCEngine/Threading/ReadWriteLock/ReadLock.md create mode 100644 docs/api/XCEngine/Threading/ReadWriteLock/ReadUnlock.md create mode 100644 docs/api/XCEngine/Threading/ReadWriteLock/ReadWriteLock.md create mode 100644 docs/api/XCEngine/Threading/ReadWriteLock/WriteLock.md create mode 100644 docs/api/XCEngine/Threading/ReadWriteLock/WriteUnlock.md create mode 100644 docs/api/XCEngine/Threading/SpinLock/SpinLock.md create mode 100644 docs/api/XCEngine/Threading/SpinLock/TryLock.md create mode 100644 docs/api/XCEngine/Threading/SpinLock/lock.md create mode 100644 docs/api/XCEngine/Threading/SpinLock/try_lock.md create mode 100644 docs/api/XCEngine/Threading/SpinLock/unlock.md create mode 100644 docs/api/XCEngine/Threading/Task/Task.md create mode 100644 docs/api/XCEngine/Threading/TaskGroup/AddDependency.md create mode 100644 docs/api/XCEngine/Threading/TaskGroup/AddTask.md create mode 100644 docs/api/XCEngine/Threading/TaskGroup/Cancel.md create mode 100644 docs/api/XCEngine/Threading/TaskGroup/Constructor.md create mode 100644 docs/api/XCEngine/Threading/TaskGroup/Destructor.md create mode 100644 docs/api/XCEngine/Threading/TaskGroup/GetProgress.md create mode 100644 docs/api/XCEngine/Threading/TaskGroup/IsComplete.md create mode 100644 docs/api/XCEngine/Threading/TaskGroup/SetCompleteCallback.md create mode 100644 docs/api/XCEngine/Threading/TaskGroup/TaskGroup.md create mode 100644 docs/api/XCEngine/Threading/TaskGroup/Wait.md create mode 100644 docs/api/XCEngine/Threading/TaskGroup/WaitFor.md create mode 100644 docs/api/XCEngine/Threading/TaskSystem/CreateTaskGroup.md create mode 100644 docs/api/XCEngine/Threading/TaskSystem/DestroyTaskGroup.md create mode 100644 docs/api/XCEngine/Threading/TaskSystem/Get.md create mode 100644 docs/api/XCEngine/Threading/TaskSystem/GetWorkerThreadCount.md create mode 100644 docs/api/XCEngine/Threading/TaskSystem/Initialize.md create mode 100644 docs/api/XCEngine/Threading/TaskSystem/ParallelFor.md create mode 100644 docs/api/XCEngine/Threading/TaskSystem/RunOnMainThread.md create mode 100644 docs/api/XCEngine/Threading/TaskSystem/Shutdown.md create mode 100644 docs/api/XCEngine/Threading/TaskSystem/Submit.md create mode 100644 docs/api/XCEngine/Threading/TaskSystem/TaskSystem.md create mode 100644 docs/api/XCEngine/Threading/TaskSystem/Update.md create mode 100644 docs/api/XCEngine/Threading/TaskSystem/Wait.md create mode 100644 docs/api/XCEngine/Threading/TaskSystemConfig/TaskSystemConfig.md create mode 100644 docs/api/XCEngine/Threading/Thread/Constructor.md create mode 100644 docs/api/XCEngine/Threading/Thread/Destructor.md create mode 100644 docs/api/XCEngine/Threading/Thread/Detach.md create mode 100644 docs/api/XCEngine/Threading/Thread/GetCurrentId.md create mode 100644 docs/api/XCEngine/Threading/Thread/GetId.md create mode 100644 docs/api/XCEngine/Threading/Thread/GetName.md create mode 100644 docs/api/XCEngine/Threading/Thread/Join.md create mode 100644 docs/api/XCEngine/Threading/Thread/Sleep.md create mode 100644 docs/api/XCEngine/Threading/Thread/Start.md create mode 100644 docs/api/XCEngine/Threading/Thread/Thread.md create mode 100644 docs/api/XCEngine/Threading/Thread/Yield.md create mode 100644 docs/api/XCEngine/Threading/Threading.md create mode 100644 docs/api/XCEngine/Threading/Threading/Threading.md create mode 100644 docs/api/XCEngine/XCEngine.md create mode 100644 docs/api/_meta/README.md create mode 100644 docs/api/_meta/rebuild-status.md create mode 100644 docs/api/_tools/README.md create mode 100644 docs/api/_tools/__pycache__/audit_api_docs.cpython-313.pyc create mode 100644 docs/api/_tools/__pycache__/fix_links.cpython-313.pyc create mode 100644 docs/api/_tools/__pycache__/generate_core_resources_canonical_pages.cpython-313.pyc create mode 100644 docs/api/_tools/__pycache__/generate_rhi_canonical_pages.cpython-313.pyc create mode 100644 docs/api/_tools/__pycache__/migrate_legacy_method_pages.cpython-313.pyc create mode 100644 docs/api/_tools/__pycache__/scaffold_parallel_layout.cpython-313.pyc create mode 100644 docs/api/_tools/audit_api_docs.py rename docs/api/{ => _tools}/fix_links.py (98%) create mode 100644 docs/api/_tools/generate_core_resources_canonical_pages.py create mode 100644 docs/api/_tools/generate_parallel_canonical_pages.py create mode 100644 docs/api/_tools/generate_rhi_canonical_pages.py create mode 100644 docs/api/_tools/migrate_canonical_pages_to_class_dirs.py create mode 100644 docs/api/_tools/scaffold_parallel_layout.py delete mode 100644 docs/api/audio/audio-3d-params/audio-3d-params.md delete mode 100644 docs/api/audio/audio-buffer-desc/audio-buffer-desc.md delete mode 100644 docs/api/audio/audio-config/audio-config.md delete mode 100644 docs/api/audio/audio-mixer/add-effect.md delete mode 100644 docs/api/audio/audio-mixer/audio-mixer.md delete mode 100644 docs/api/audio/audio-mixer/clear-effects.md delete mode 100644 docs/api/audio/audio-mixer/get-3d-params.md delete mode 100644 docs/api/audio/audio-mixer/get-channel-volume.md delete mode 100644 docs/api/audio/audio-mixer/get-output-mixer.md delete mode 100644 docs/api/audio/audio-mixer/get-volume.md delete mode 100644 docs/api/audio/audio-mixer/is-mute.md delete mode 100644 docs/api/audio/audio-mixer/process-audio.md delete mode 100644 docs/api/audio/audio-mixer/remove-effect.md delete mode 100644 docs/api/audio/audio-mixer/set-3d-params.md delete mode 100644 docs/api/audio/audio-mixer/set-channel-volume.md delete mode 100644 docs/api/audio/audio-mixer/set-mute.md delete mode 100644 docs/api/audio/audio-mixer/set-output-mixer.md delete mode 100644 docs/api/audio/audio-mixer/set-volume.md delete mode 100644 docs/api/audio/audio-system/audio-system.md delete mode 100644 docs/api/audio/audio-system/get-available-devices.md delete mode 100644 docs/api/audio/audio-system/get-backend.md delete mode 100644 docs/api/audio/audio-system/get-current-device.md delete mode 100644 docs/api/audio/audio-system/get-listener-position.md delete mode 100644 docs/api/audio/audio-system/get-listener-rotation.md delete mode 100644 docs/api/audio/audio-system/get-listener-velocity.md delete mode 100644 docs/api/audio/audio-system/get-master-volume.md delete mode 100644 docs/api/audio/audio-system/get-stats.md delete mode 100644 docs/api/audio/audio-system/initialize.md delete mode 100644 docs/api/audio/audio-system/is-muted.md delete mode 100644 docs/api/audio/audio-system/process-audio.md delete mode 100644 docs/api/audio/audio-system/register-source.md delete mode 100644 docs/api/audio/audio-system/set-backend.md delete mode 100644 docs/api/audio/audio-system/set-device.md delete mode 100644 docs/api/audio/audio-system/set-listener-transform.md delete mode 100644 docs/api/audio/audio-system/set-listener-velocity.md delete mode 100644 docs/api/audio/audio-system/set-master-volume.md delete mode 100644 docs/api/audio/audio-system/set-muted.md delete mode 100644 docs/api/audio/audio-system/shutdown.md delete mode 100644 docs/api/audio/audio-system/unregister-source.md delete mode 100644 docs/api/audio/audio-system/update.md delete mode 100644 docs/api/audio/audio.md delete mode 100644 docs/api/audio/enums/audio-channel.md delete mode 100644 docs/api/audio/enums/audio-format.md delete mode 100644 docs/api/audio/enums/audio-load-state.md delete mode 100644 docs/api/audio/enums/audio-resource-type.md delete mode 100644 docs/api/audio/enums/pan-mode.md delete mode 100644 docs/api/audio/enums/play-state.md delete mode 100644 docs/api/audio/enums/speaker-mode.md delete mode 100644 docs/api/audio/enums/stop-mode.md delete mode 100644 docs/api/audio/enums/volume-source.md delete mode 100644 docs/api/audio/equalizer/equalizer.md delete mode 100644 docs/api/audio/fft-filter/fft-filter.md delete mode 100644 docs/api/audio/hrtf-params/hrtf-params.md delete mode 100644 docs/api/audio/hrtf/hrtf.md delete mode 100644 docs/api/audio/i-audio-backend/i-audio-backend.md delete mode 100644 docs/api/audio/i-audio-effect/i-audio-effect.md delete mode 100644 docs/api/audio/reverbation/reverbation.md delete mode 100644 docs/api/audio/spatializer-params/spatializer-params.md delete mode 100644 docs/api/audio/wasapi-backend/wasapi-backend.md delete mode 100644 docs/api/audio/windows-audio-backend/windows-audio-backend.md delete mode 100644 docs/api/components/audio-listener-component/audio-listener-component.md delete mode 100644 docs/api/components/audio-listener-component/get-doppler-level.md delete mode 100644 docs/api/components/audio-listener-component/get-energy.md delete mode 100644 docs/api/components/audio-listener-component/get-frequency-data-size.md delete mode 100644 docs/api/components/audio-listener-component/get-frequency-data.md delete mode 100644 docs/api/components/audio-listener-component/get-master-volume.md delete mode 100644 docs/api/components/audio-listener-component/get-reverb-level.md delete mode 100644 docs/api/components/audio-listener-component/get-reverb.md delete mode 100644 docs/api/components/audio-listener-component/get-speed-of-sound.md delete mode 100644 docs/api/components/audio-listener-component/is-mute.md delete mode 100644 docs/api/components/audio-listener-component/set-doppler-level.md delete mode 100644 docs/api/components/audio-listener-component/set-master-volume.md delete mode 100644 docs/api/components/audio-listener-component/set-mute.md delete mode 100644 docs/api/components/audio-listener-component/set-reverb-level.md delete mode 100644 docs/api/components/audio-listener-component/set-reverb.md delete mode 100644 docs/api/components/audio-listener-component/set-speed-of-sound.md delete mode 100644 docs/api/components/audio-source-component/audio-source-component.md delete mode 100644 docs/api/components/audio-source-component/get-3d-params.md delete mode 100644 docs/api/components/audio-source-component/get-clip.md delete mode 100644 docs/api/components/audio-source-component/get-doppler-level.md delete mode 100644 docs/api/components/audio-source-component/get-duration.md delete mode 100644 docs/api/components/audio-source-component/get-output-mixer.md delete mode 100644 docs/api/components/audio-source-component/get-pan.md delete mode 100644 docs/api/components/audio-source-component/get-pitch.md delete mode 100644 docs/api/components/audio-source-component/get-reverb-zone-mix.md delete mode 100644 docs/api/components/audio-source-component/get-spread.md delete mode 100644 docs/api/components/audio-source-component/get-time.md delete mode 100644 docs/api/components/audio-source-component/get-volume.md delete mode 100644 docs/api/components/audio-source-component/is-energy-detecting.md delete mode 100644 docs/api/components/audio-source-component/is-looping.md delete mode 100644 docs/api/components/audio-source-component/is-paused.md delete mode 100644 docs/api/components/audio-source-component/is-playing.md delete mode 100644 docs/api/components/audio-source-component/is-spatialize.md delete mode 100644 docs/api/components/audio-source-component/pause.md delete mode 100644 docs/api/components/audio-source-component/play.md delete mode 100644 docs/api/components/audio-source-component/set-3d-params.md delete mode 100644 docs/api/components/audio-source-component/set-clip.md delete mode 100644 docs/api/components/audio-source-component/set-doppler-level.md delete mode 100644 docs/api/components/audio-source-component/set-looping.md delete mode 100644 docs/api/components/audio-source-component/set-output-mixer.md delete mode 100644 docs/api/components/audio-source-component/set-pan.md delete mode 100644 docs/api/components/audio-source-component/set-pitch.md delete mode 100644 docs/api/components/audio-source-component/set-reverb-zone-mix.md delete mode 100644 docs/api/components/audio-source-component/set-spatialize.md delete mode 100644 docs/api/components/audio-source-component/set-spread.md delete mode 100644 docs/api/components/audio-source-component/set-time.md delete mode 100644 docs/api/components/audio-source-component/set-volume.md delete mode 100644 docs/api/components/audio-source-component/start-energy-detect.md delete mode 100644 docs/api/components/audio-source-component/stop-energy-detect.md delete mode 100644 docs/api/components/audio-source-component/stop.md delete mode 100644 docs/api/components/camera-component/camera-component.md delete mode 100644 docs/api/components/camera-component/get-clear-color.md delete mode 100644 docs/api/components/camera-component/get-depth.md delete mode 100644 docs/api/components/camera-component/get-far-clip-plane.md delete mode 100644 docs/api/components/camera-component/get-field-of-view.md delete mode 100644 docs/api/components/camera-component/get-near-clip-plane.md delete mode 100644 docs/api/components/camera-component/get-orthographic-size.md delete mode 100644 docs/api/components/camera-component/get-projection-type.md delete mode 100644 docs/api/components/camera-component/is-primary.md delete mode 100644 docs/api/components/camera-component/set-clear-color.md delete mode 100644 docs/api/components/camera-component/set-depth.md delete mode 100644 docs/api/components/camera-component/set-far-clip-plane.md delete mode 100644 docs/api/components/camera-component/set-field-of-view.md delete mode 100644 docs/api/components/camera-component/set-near-clip-plane.md delete mode 100644 docs/api/components/camera-component/set-orthographic-size.md delete mode 100644 docs/api/components/camera-component/set-primary.md delete mode 100644 docs/api/components/camera-component/set-projection-type.md delete mode 100644 docs/api/components/component/component.md delete mode 100644 docs/api/components/component/get-game-object.md delete mode 100644 docs/api/components/component/get-name.md delete mode 100644 docs/api/components/component/get-scene.md delete mode 100644 docs/api/components/component/is-enabled.md delete mode 100644 docs/api/components/component/set-enabled.md delete mode 100644 docs/api/components/component/transform.md delete mode 100644 docs/api/components/components.md delete mode 100644 docs/api/components/game-object/add-component.md delete mode 100644 docs/api/components/game-object/awake.md delete mode 100644 docs/api/components/game-object/destroy.md delete mode 100644 docs/api/components/game-object/detach-children.md delete mode 100644 docs/api/components/game-object/detach-from-parent.md delete mode 100644 docs/api/components/game-object/find-game-objects-with-tag.md delete mode 100644 docs/api/components/game-object/find-objects-of-type.md delete mode 100644 docs/api/components/game-object/find.md delete mode 100644 docs/api/components/game-object/fixed-update.md delete mode 100644 docs/api/components/game-object/game-object.md delete mode 100644 docs/api/components/game-object/get-child-count.md delete mode 100644 docs/api/components/game-object/get-child.md delete mode 100644 docs/api/components/game-object/get-children.md delete mode 100644 docs/api/components/game-object/get-component-in-children.md delete mode 100644 docs/api/components/game-object/get-component-in-parent.md delete mode 100644 docs/api/components/game-object/get-component.md delete mode 100644 docs/api/components/game-object/get-components-in-children.md delete mode 100644 docs/api/components/game-object/get-components.md delete mode 100644 docs/api/components/game-object/get-id.md delete mode 100644 docs/api/components/game-object/get-name.md delete mode 100644 docs/api/components/game-object/get-parent.md delete mode 100644 docs/api/components/game-object/get-scene.md delete mode 100644 docs/api/components/game-object/get-transform.md delete mode 100644 docs/api/components/game-object/get-uuid.md delete mode 100644 docs/api/components/game-object/is-active-in-hierarchy.md delete mode 100644 docs/api/components/game-object/is-active.md delete mode 100644 docs/api/components/game-object/late-update.md delete mode 100644 docs/api/components/game-object/on-destroy.md delete mode 100644 docs/api/components/game-object/remove-component.md delete mode 100644 docs/api/components/game-object/set-active.md delete mode 100644 docs/api/components/game-object/set-name.md delete mode 100644 docs/api/components/game-object/set-parent.md delete mode 100644 docs/api/components/game-object/start.md delete mode 100644 docs/api/components/game-object/update.md delete mode 100644 docs/api/components/light-component/get-casts-shadows.md delete mode 100644 docs/api/components/light-component/get-color.md delete mode 100644 docs/api/components/light-component/get-intensity.md delete mode 100644 docs/api/components/light-component/get-light-type.md delete mode 100644 docs/api/components/light-component/get-range.md delete mode 100644 docs/api/components/light-component/get-spot-angle.md delete mode 100644 docs/api/components/light-component/light-component.md delete mode 100644 docs/api/components/light-component/set-casts-shadows.md delete mode 100644 docs/api/components/light-component/set-color.md delete mode 100644 docs/api/components/light-component/set-intensity.md delete mode 100644 docs/api/components/light-component/set-light-type.md delete mode 100644 docs/api/components/light-component/set-range.md delete mode 100644 docs/api/components/light-component/set-spot-angle.md delete mode 100644 docs/api/components/transform-component/detach-children.md delete mode 100644 docs/api/components/transform-component/find.md delete mode 100644 docs/api/components/transform-component/get-child-count.md delete mode 100644 docs/api/components/transform-component/get-child.md delete mode 100644 docs/api/components/transform-component/get-forward.md delete mode 100644 docs/api/components/transform-component/get-local-euler-angles.md delete mode 100644 docs/api/components/transform-component/get-local-position.md delete mode 100644 docs/api/components/transform-component/get-local-rotation.md delete mode 100644 docs/api/components/transform-component/get-local-scale.md delete mode 100644 docs/api/components/transform-component/get-local-to-world-matrix.md delete mode 100644 docs/api/components/transform-component/get-parent.md delete mode 100644 docs/api/components/transform-component/get-position.md delete mode 100644 docs/api/components/transform-component/get-right.md delete mode 100644 docs/api/components/transform-component/get-rotation.md delete mode 100644 docs/api/components/transform-component/get-scale.md delete mode 100644 docs/api/components/transform-component/get-sibling-index.md delete mode 100644 docs/api/components/transform-component/get-up.md delete mode 100644 docs/api/components/transform-component/get-world-to-local-matrix.md delete mode 100644 docs/api/components/transform-component/inverse-transform-direction.md delete mode 100644 docs/api/components/transform-component/inverse-transform-point.md delete mode 100644 docs/api/components/transform-component/look-at.md delete mode 100644 docs/api/components/transform-component/rotate.md delete mode 100644 docs/api/components/transform-component/set-as-first-sibling.md delete mode 100644 docs/api/components/transform-component/set-as-last-sibling.md delete mode 100644 docs/api/components/transform-component/set-local-euler-angles.md delete mode 100644 docs/api/components/transform-component/set-local-position.md delete mode 100644 docs/api/components/transform-component/set-local-rotation.md delete mode 100644 docs/api/components/transform-component/set-local-scale.md delete mode 100644 docs/api/components/transform-component/set-parent.md delete mode 100644 docs/api/components/transform-component/set-position.md delete mode 100644 docs/api/components/transform-component/set-rotation.md delete mode 100644 docs/api/components/transform-component/set-scale.md delete mode 100644 docs/api/components/transform-component/set-sibling-index.md delete mode 100644 docs/api/components/transform-component/transform-component.md delete mode 100644 docs/api/components/transform-component/transform-direction.md delete mode 100644 docs/api/components/transform-component/transform-point.md delete mode 100644 docs/api/components/transform-component/translate.md delete mode 100644 docs/api/containers/array/array.md delete mode 100644 docs/api/containers/array/begin-end.md delete mode 100644 docs/api/containers/array/clear.md delete mode 100644 docs/api/containers/array/constructor.md delete mode 100644 docs/api/containers/array/copy-move-constructor.md delete mode 100644 docs/api/containers/array/data.md delete mode 100644 docs/api/containers/array/destructor.md delete mode 100644 docs/api/containers/array/emplaceback.md delete mode 100644 docs/api/containers/array/front-back.md delete mode 100644 docs/api/containers/array/operator-assign.md delete mode 100644 docs/api/containers/array/operator-subscript.md delete mode 100644 docs/api/containers/array/popback.md delete mode 100644 docs/api/containers/array/pushback.md delete mode 100644 docs/api/containers/array/reserve.md delete mode 100644 docs/api/containers/array/resize.md delete mode 100644 docs/api/containers/array/setallocator.md delete mode 100644 docs/api/containers/array/size.md delete mode 100644 docs/api/containers/containers.md delete mode 100644 docs/api/containers/hashmap/clear.md delete mode 100644 docs/api/containers/hashmap/constructor.md delete mode 100644 docs/api/containers/hashmap/contains.md delete mode 100644 docs/api/containers/hashmap/copy-move.md delete mode 100644 docs/api/containers/hashmap/destructor.md delete mode 100644 docs/api/containers/hashmap/erase.md delete mode 100644 docs/api/containers/hashmap/find.md delete mode 100644 docs/api/containers/hashmap/hashmap.md delete mode 100644 docs/api/containers/hashmap/insert.md delete mode 100644 docs/api/containers/hashmap/iterator.md delete mode 100644 docs/api/containers/hashmap/operator-assign.md delete mode 100644 docs/api/containers/hashmap/operator-subscript.md delete mode 100644 docs/api/containers/hashmap/setallocator.md delete mode 100644 docs/api/containers/hashmap/size.md delete mode 100644 docs/api/containers/string/clear.md delete mode 100644 docs/api/containers/string/constructor.md delete mode 100644 docs/api/containers/string/cstr.md delete mode 100644 docs/api/containers/string/destructor.md delete mode 100644 docs/api/containers/string/ends-with.md delete mode 100644 docs/api/containers/string/find.md delete mode 100644 docs/api/containers/string/operator-assign.md delete mode 100644 docs/api/containers/string/operator-equal.md delete mode 100644 docs/api/containers/string/operator-plus-assign.md delete mode 100644 docs/api/containers/string/operator-plus.md delete mode 100644 docs/api/containers/string/operator-subscript.md delete mode 100644 docs/api/containers/string/reserve-resize.md delete mode 100644 docs/api/containers/string/size.md delete mode 100644 docs/api/containers/string/starts-with.md delete mode 100644 docs/api/containers/string/string.md delete mode 100644 docs/api/containers/string/substring.md delete mode 100644 docs/api/containers/string/to-lower-upper.md delete mode 100644 docs/api/containers/string/trim.md delete mode 100644 docs/api/core/core.md delete mode 100644 docs/api/core/event/Clear.md delete mode 100644 docs/api/core/event/Invoke.md delete mode 100644 docs/api/core/event/ProcessUnsubscribes.md delete mode 100644 docs/api/core/event/Subscribe.md delete mode 100644 docs/api/core/event/Unsubscribe.md delete mode 100644 docs/api/core/event/begin.md delete mode 100644 docs/api/core/event/end.md delete mode 100644 docs/api/core/event/event.md delete mode 100644 docs/api/core/filewriter/Close.md delete mode 100644 docs/api/core/filewriter/Flush.md delete mode 100644 docs/api/core/filewriter/IsOpen.md delete mode 100644 docs/api/core/filewriter/Open.md delete mode 100644 docs/api/core/filewriter/Write.md delete mode 100644 docs/api/core/filewriter/constructor.md delete mode 100644 docs/api/core/filewriter/destructor.md delete mode 100644 docs/api/core/filewriter/filewriter.md delete mode 100644 docs/api/core/refcounted/AddRef.md delete mode 100644 docs/api/core/refcounted/GetRefCount.md delete mode 100644 docs/api/core/refcounted/Release.md delete mode 100644 docs/api/core/refcounted/refcounted.md delete mode 100644 docs/api/core/smartptr/MakeRef.md delete mode 100644 docs/api/core/smartptr/MakeUnique.md delete mode 100644 docs/api/core/smartptr/Ref.md delete mode 100644 docs/api/core/smartptr/UniqueRef.md delete mode 100644 docs/api/core/smartptr/smartptr.md delete mode 100644 docs/api/core/types/byte.md delete mode 100644 docs/api/core/types/int16.md delete mode 100644 docs/api/core/types/int32.md delete mode 100644 docs/api/core/types/int64.md delete mode 100644 docs/api/core/types/int8.md delete mode 100644 docs/api/core/types/types.md delete mode 100644 docs/api/core/types/uint16.md delete mode 100644 docs/api/core/types/uint32.md delete mode 100644 docs/api/core/types/uint64.md delete mode 100644 docs/api/core/types/uint8.md delete mode 100644 docs/api/d3d12/d3d12-buffer-get-desc.md delete mode 100644 docs/api/d3d12/d3d12-buffer-get-gpu-virtual-address.md delete mode 100644 docs/api/d3d12/d3d12-buffer-get-resource.md delete mode 100644 docs/api/d3d12/d3d12-buffer-get-state.md delete mode 100644 docs/api/d3d12/d3d12-buffer-initialize-from-existing.md delete mode 100644 docs/api/d3d12/d3d12-buffer-initialize-with-data.md delete mode 100644 docs/api/d3d12/d3d12-buffer-initialize.md delete mode 100644 docs/api/d3d12/d3d12-buffer-map.md delete mode 100644 docs/api/d3d12/d3d12-buffer-set-data.md delete mode 100644 docs/api/d3d12/d3d12-buffer-set-state.md delete mode 100644 docs/api/d3d12/d3d12-buffer-shutdown.md delete mode 100644 docs/api/d3d12/d3d12-buffer-unmap.md delete mode 100644 docs/api/d3d12/d3d12-buffer-update-data.md delete mode 100644 docs/api/d3d12/d3d12-buffer.md delete mode 100644 docs/api/d3d12/d3d12-command-list-clear-depth-stencil.md delete mode 100644 docs/api/d3d12/d3d12-command-list-clear-render-target.md delete mode 100644 docs/api/d3d12/d3d12-command-list-close.md delete mode 100644 docs/api/d3d12/d3d12-command-list-copy-resource.md delete mode 100644 docs/api/d3d12/d3d12-command-list-dispatch.md delete mode 100644 docs/api/d3d12/d3d12-command-list-draw-indexed.md delete mode 100644 docs/api/d3d12/d3d12-command-list-draw.md delete mode 100644 docs/api/d3d12/d3d12-command-list-initialize.md delete mode 100644 docs/api/d3d12/d3d12-command-list-reset.md delete mode 100644 docs/api/d3d12/d3d12-command-list-set-render-targets.md delete mode 100644 docs/api/d3d12/d3d12-command-list-shutdown.md delete mode 100644 docs/api/d3d12/d3d12-command-list-transition-barrier.md delete mode 100644 docs/api/d3d12/d3d12-command-list.md delete mode 100644 docs/api/d3d12/d3d12-command-queue.md delete mode 100644 docs/api/d3d12/d3d12-device-check-feature-support.md delete mode 100644 docs/api/d3d12/d3d12-device-compile-shader.md delete mode 100644 docs/api/d3d12/d3d12-device-create-buffer.md delete mode 100644 docs/api/d3d12/d3d12-device-create-command-list.md delete mode 100644 docs/api/d3d12/d3d12-device-create-command-queue-impl.md delete mode 100644 docs/api/d3d12/d3d12-device-create-command-queue.md delete mode 100644 docs/api/d3d12/d3d12-device-create-fence.md delete mode 100644 docs/api/d3d12/d3d12-device-create-pipeline-state.md delete mode 100644 docs/api/d3d12/d3d12-device-create-sampler.md delete mode 100644 docs/api/d3d12/d3d12-device-create-swap-chain.md delete mode 100644 docs/api/d3d12/d3d12-device-create-texture.md delete mode 100644 docs/api/d3d12/d3d12-device-enumerate-adapters.md delete mode 100644 docs/api/d3d12/d3d12-device-get-adapter-info.md delete mode 100644 docs/api/d3d12/d3d12-device-get-capabilities.md delete mode 100644 docs/api/d3d12/d3d12-device-get-descriptor-handle-increment-size.md delete mode 100644 docs/api/d3d12/d3d12-device-get-device-info.md delete mode 100644 docs/api/d3d12/d3d12-device-get-device.md delete mode 100644 docs/api/d3d12/d3d12-device-get-factory.md delete mode 100644 docs/api/d3d12/d3d12-device-get-native-device.md delete mode 100644 docs/api/d3d12/d3d12-device-get-native-handle.md delete mode 100644 docs/api/d3d12/d3d12-device-initialize.md delete mode 100644 docs/api/d3d12/d3d12-device-is-device-removed.md delete mode 100644 docs/api/d3d12/d3d12-device-set-device-removed.md delete mode 100644 docs/api/d3d12/d3d12-device-shutdown.md delete mode 100644 docs/api/d3d12/d3d12-device.md delete mode 100644 docs/api/d3d12/d3d12-swap-chain-get-current-back-buffer-index.md delete mode 100644 docs/api/d3d12/d3d12-swap-chain-get-current-back-buffer.md delete mode 100644 docs/api/d3d12/d3d12-swap-chain-initialize.md delete mode 100644 docs/api/d3d12/d3d12-swap-chain-present.md delete mode 100644 docs/api/d3d12/d3d12-swap-chain-resize.md delete mode 100644 docs/api/d3d12/d3d12-swap-chain-shutdown.md delete mode 100644 docs/api/d3d12/d3d12-swap-chain.md delete mode 100644 docs/api/d3d12/d3d12-texture-get-depth.md delete mode 100644 docs/api/d3d12/d3d12-texture-get-desc.md delete mode 100644 docs/api/d3d12/d3d12-texture-get-height.md delete mode 100644 docs/api/d3d12/d3d12-texture-get-mip-levels.md delete mode 100644 docs/api/d3d12/d3d12-texture-get-resource.md delete mode 100644 docs/api/d3d12/d3d12-texture-get-state.md delete mode 100644 docs/api/d3d12/d3d12-texture-get-width.md delete mode 100644 docs/api/d3d12/d3d12-texture-initialize-depth-stencil.md delete mode 100644 docs/api/d3d12/d3d12-texture-initialize-from-data.md delete mode 100644 docs/api/d3d12/d3d12-texture-initialize-from-existing.md delete mode 100644 docs/api/d3d12/d3d12-texture-initialize.md delete mode 100644 docs/api/d3d12/d3d12-texture-set-state.md delete mode 100644 docs/api/d3d12/d3d12-texture-shutdown.md delete mode 100644 docs/api/d3d12/d3d12-texture.md delete mode 100644 docs/api/d3d12/d3d12.md delete mode 100644 docs/api/debug/consolelogsink/consolelogsink.md delete mode 100644 docs/api/debug/consolelogsink/constructor.md delete mode 100644 docs/api/debug/consolelogsink/destructor.md delete mode 100644 docs/api/debug/consolelogsink/flush.md delete mode 100644 docs/api/debug/consolelogsink/log.md delete mode 100644 docs/api/debug/consolelogsink/setcoloroutput.md delete mode 100644 docs/api/debug/consolelogsink/setminimumlevel.md delete mode 100644 docs/api/debug/debug.md delete mode 100644 docs/api/debug/filelogsink/constructor.md delete mode 100644 docs/api/debug/filelogsink/destructor.md delete mode 100644 docs/api/debug/filelogsink/filelogsink.md delete mode 100644 docs/api/debug/filelogsink/flush.md delete mode 100644 docs/api/debug/filelogsink/log.md delete mode 100644 docs/api/debug/ilogsink/flush.md delete mode 100644 docs/api/debug/ilogsink/ilogsink.md delete mode 100644 docs/api/debug/ilogsink/log.md delete mode 100644 docs/api/debug/logcategory/logcategory.md delete mode 100644 docs/api/debug/logcategory/logcategorytostring.md delete mode 100644 docs/api/debug/logentry/logentry.md delete mode 100644 docs/api/debug/logger/addsink.md delete mode 100644 docs/api/debug/logger/debug.md delete mode 100644 docs/api/debug/logger/error.md delete mode 100644 docs/api/debug/logger/fatal.md delete mode 100644 docs/api/debug/logger/get.md delete mode 100644 docs/api/debug/logger/info.md delete mode 100644 docs/api/debug/logger/initialize.md delete mode 100644 docs/api/debug/logger/log.md delete mode 100644 docs/api/debug/logger/logger.md delete mode 100644 docs/api/debug/logger/removesink.md delete mode 100644 docs/api/debug/logger/setcategoryenabled.md delete mode 100644 docs/api/debug/logger/setminimumlevel.md delete mode 100644 docs/api/debug/logger/shutdown.md delete mode 100644 docs/api/debug/logger/verbose.md delete mode 100644 docs/api/debug/logger/warning.md delete mode 100644 docs/api/debug/loglevel/loglevel.md delete mode 100644 docs/api/debug/loglevel/logleveltostring.md delete mode 100644 docs/api/debug/profiler/beginframe.md delete mode 100644 docs/api/debug/profiler/beginprofile.md delete mode 100644 docs/api/debug/profiler/endframe.md delete mode 100644 docs/api/debug/profiler/endprofile.md delete mode 100644 docs/api/debug/profiler/exportchrometracing.md delete mode 100644 docs/api/debug/profiler/get.md delete mode 100644 docs/api/debug/profiler/initialize.md delete mode 100644 docs/api/debug/profiler/markevent.md delete mode 100644 docs/api/debug/profiler/profiler.md delete mode 100644 docs/api/debug/profiler/setmarker.md delete mode 100644 docs/api/debug/profiler/shutdown.md delete mode 100644 docs/api/debug/renderdoc-capture/renderdoc-capture.md delete mode 100644 docs/api/math/aabb/aabb.md delete mode 100644 docs/api/math/aabb/intersects-obb.md delete mode 100644 docs/api/math/aabb/intersects-sphere.md delete mode 100644 docs/api/math/aabb/obb-contains.md delete mode 100644 docs/api/math/aabb/obb-getaxis.md delete mode 100644 docs/api/math/aabb/obb-getmax.md delete mode 100644 docs/api/math/aabb/obb-getmin.md delete mode 100644 docs/api/math/bounds/bounds.constructors.md delete mode 100644 docs/api/math/bounds/bounds.md delete mode 100644 docs/api/math/bounds/contains.md delete mode 100644 docs/api/math/bounds/encapsulate.md delete mode 100644 docs/api/math/bounds/expand.md delete mode 100644 docs/api/math/bounds/getclosestpoint.md delete mode 100644 docs/api/math/bounds/getmax.md delete mode 100644 docs/api/math/bounds/getmin.md delete mode 100644 docs/api/math/bounds/getvolume.md delete mode 100644 docs/api/math/bounds/intersects.md delete mode 100644 docs/api/math/bounds/setminmax.md delete mode 100644 docs/api/math/box/box.md delete mode 100644 docs/api/math/box/constructor.md delete mode 100644 docs/api/math/box/contains.md delete mode 100644 docs/api/math/box/getmax.md delete mode 100644 docs/api/math/box/getmin.md delete mode 100644 docs/api/math/box/intersects-box.md delete mode 100644 docs/api/math/box/intersects-ray.md delete mode 100644 docs/api/math/box/intersects.md delete mode 100644 docs/api/math/color/black.md delete mode 100644 docs/api/math/color/blue.md delete mode 100644 docs/api/math/color/clear.md delete mode 100644 docs/api/math/color/color.md delete mode 100644 docs/api/math/color/cyan.md delete mode 100644 docs/api/math/color/green.md delete mode 100644 docs/api/math/color/lerp.md delete mode 100644 docs/api/math/color/magenta.md delete mode 100644 docs/api/math/color/operator-add.md delete mode 100644 docs/api/math/color/operator-div.md delete mode 100644 docs/api/math/color/operator-mul.md delete mode 100644 docs/api/math/color/operator-sub.md delete mode 100644 docs/api/math/color/red.md delete mode 100644 docs/api/math/color/torgba.md delete mode 100644 docs/api/math/color/tovector3.md delete mode 100644 docs/api/math/color/tovector4.md delete mode 100644 docs/api/math/color/white.md delete mode 100644 docs/api/math/color/yellow.md delete mode 100644 docs/api/math/frustum/contains-bounds.md delete mode 100644 docs/api/math/frustum/contains-point.md delete mode 100644 docs/api/math/frustum/contains-sphere.md delete mode 100644 docs/api/math/frustum/frustum.md delete mode 100644 docs/api/math/frustum/intersects-bounds.md delete mode 100644 docs/api/math/frustum/intersects-sphere.md delete mode 100644 docs/api/math/h/deg-to-rad.md delete mode 100644 docs/api/math/h/degrees.md delete mode 100644 docs/api/math/h/epsilon.md delete mode 100644 docs/api/math/h/float-max.md delete mode 100644 docs/api/math/h/h.md delete mode 100644 docs/api/math/h/half-pi.md delete mode 100644 docs/api/math/h/pi.md delete mode 100644 docs/api/math/h/rad-to-deg.md delete mode 100644 docs/api/math/h/radians.md delete mode 100644 docs/api/math/h/two-pi.md delete mode 100644 docs/api/math/math.md delete mode 100644 docs/api/math/matrix3/determinant.md delete mode 100644 docs/api/math/matrix3/identity.md delete mode 100644 docs/api/math/matrix3/inverse.md delete mode 100644 docs/api/math/matrix3/matrix3.md delete mode 100644 docs/api/math/matrix3/operator-mul-matrix3.md delete mode 100644 docs/api/math/matrix3/operator-mul-vector3.md delete mode 100644 docs/api/math/matrix3/operator-subscript.md delete mode 100644 docs/api/math/matrix3/rotation-x.md delete mode 100644 docs/api/math/matrix3/rotation-y.md delete mode 100644 docs/api/math/matrix3/rotation-z.md delete mode 100644 docs/api/math/matrix3/scale.md delete mode 100644 docs/api/math/matrix3/transpose.md delete mode 100644 docs/api/math/matrix3/zero.md delete mode 100644 docs/api/math/matrix4/decompose.md delete mode 100644 docs/api/math/matrix4/determinant.md delete mode 100644 docs/api/math/matrix4/get-rotation.md delete mode 100644 docs/api/math/matrix4/get-scale.md delete mode 100644 docs/api/math/matrix4/get-translation.md delete mode 100644 docs/api/math/matrix4/identity.md delete mode 100644 docs/api/math/matrix4/inverse.md delete mode 100644 docs/api/math/matrix4/lookat.md delete mode 100644 docs/api/math/matrix4/matrix4.md delete mode 100644 docs/api/math/matrix4/multiplypoint.md delete mode 100644 docs/api/math/matrix4/multiplyvector.md delete mode 100644 docs/api/math/matrix4/operator_index.md delete mode 100644 docs/api/math/matrix4/operator_mul.md delete mode 100644 docs/api/math/matrix4/orthographic.md delete mode 100644 docs/api/math/matrix4/perspective.md delete mode 100644 docs/api/math/matrix4/rotation.md delete mode 100644 docs/api/math/matrix4/rotationx.md delete mode 100644 docs/api/math/matrix4/rotationy.md delete mode 100644 docs/api/math/matrix4/rotationz.md delete mode 100644 docs/api/math/matrix4/scale.md delete mode 100644 docs/api/math/matrix4/translation.md delete mode 100644 docs/api/math/matrix4/transpose.md delete mode 100644 docs/api/math/matrix4/trs.md delete mode 100644 docs/api/math/matrix4/zero.md delete mode 100644 docs/api/math/obb/contains.md delete mode 100644 docs/api/math/obb/get-axis.md delete mode 100644 docs/api/math/obb/get-max.md delete mode 100644 docs/api/math/obb/get-min.md delete mode 100644 docs/api/math/obb/intersects-obb.md delete mode 100644 docs/api/math/obb/intersects-sphere.md delete mode 100644 docs/api/math/obb/obb.md delete mode 100644 docs/api/math/plane/constructor-default.md delete mode 100644 docs/api/math/plane/constructor.md delete mode 100644 docs/api/math/plane/frompoints.md delete mode 100644 docs/api/math/plane/getclosestpoint.md delete mode 100644 docs/api/math/plane/getdistancetopoint.md delete mode 100644 docs/api/math/plane/getside.md delete mode 100644 docs/api/math/plane/intersects.md delete mode 100644 docs/api/math/plane/plane.md delete mode 100644 docs/api/math/quaternion/dot.md delete mode 100644 docs/api/math/quaternion/from-axis-angle.md delete mode 100644 docs/api/math/quaternion/from-euler-angles.md delete mode 100644 docs/api/math/quaternion/from-rotation-matrix.md delete mode 100644 docs/api/math/quaternion/identity.md delete mode 100644 docs/api/math/quaternion/inverse.md delete mode 100644 docs/api/math/quaternion/look-rotation.md delete mode 100644 docs/api/math/quaternion/magnitude.md delete mode 100644 docs/api/math/quaternion/normalize.md delete mode 100644 docs/api/math/quaternion/normalized.md delete mode 100644 docs/api/math/quaternion/operator-mul.md delete mode 100644 docs/api/math/quaternion/quaternion.md delete mode 100644 docs/api/math/quaternion/slerp.md delete mode 100644 docs/api/math/quaternion/to-euler-angles.md delete mode 100644 docs/api/math/quaternion/to-matrix4x4.md delete mode 100644 docs/api/math/ray/getpoint.md delete mode 100644 docs/api/math/ray/intersects-box.md delete mode 100644 docs/api/math/ray/intersects-plane.md delete mode 100644 docs/api/math/ray/intersects-sphere.md delete mode 100644 docs/api/math/ray/ray-constructor-default.md delete mode 100644 docs/api/math/ray/ray-constructor.md delete mode 100644 docs/api/math/ray/ray.md delete mode 100644 docs/api/math/rect/contains-float.md delete mode 100644 docs/api/math/rect/contains-vector2.md delete mode 100644 docs/api/math/rect/contains.md delete mode 100644 docs/api/math/rect/getbottom.md delete mode 100644 docs/api/math/rect/getcenter.md delete mode 100644 docs/api/math/rect/getleft.md delete mode 100644 docs/api/math/rect/getposition.md delete mode 100644 docs/api/math/rect/getright.md delete mode 100644 docs/api/math/rect/getsize.md delete mode 100644 docs/api/math/rect/gettop.md delete mode 100644 docs/api/math/rect/intersect.md delete mode 100644 docs/api/math/rect/intersects.md delete mode 100644 docs/api/math/rect/rect-overview.md delete mode 100644 docs/api/math/rect/rect.md delete mode 100644 docs/api/math/rect/set.md delete mode 100644 docs/api/math/rect/setposition-float.md delete mode 100644 docs/api/math/rect/setposition-vector2.md delete mode 100644 docs/api/math/rect/setposition.md delete mode 100644 docs/api/math/rect/union.md delete mode 100644 docs/api/math/rectint/contains.md delete mode 100644 docs/api/math/rectint/getbottom.md delete mode 100644 docs/api/math/rectint/getcenter.md delete mode 100644 docs/api/math/rectint/getleft.md delete mode 100644 docs/api/math/rectint/getposition.md delete mode 100644 docs/api/math/rectint/getright.md delete mode 100644 docs/api/math/rectint/getsize.md delete mode 100644 docs/api/math/rectint/gettop.md delete mode 100644 docs/api/math/rectint/intersects.md delete mode 100644 docs/api/math/rectint/rectint.md delete mode 100644 docs/api/math/sphere/contains.md delete mode 100644 docs/api/math/sphere/intersects.md delete mode 100644 docs/api/math/sphere/sphere-constructor.md delete mode 100644 docs/api/math/sphere/sphere-default-constructor.md delete mode 100644 docs/api/math/sphere/sphere.md delete mode 100644 docs/api/math/transform/inverse-transform-direction.md delete mode 100644 docs/api/math/transform/inverse-transform-point.md delete mode 100644 docs/api/math/transform/inverse.md delete mode 100644 docs/api/math/transform/operator-star.md delete mode 100644 docs/api/math/transform/space.md delete mode 100644 docs/api/math/transform/to-matrix.md delete mode 100644 docs/api/math/transform/transform-direction.md delete mode 100644 docs/api/math/transform/transform-point.md delete mode 100644 docs/api/math/transform/transform.md delete mode 100644 docs/api/math/vector2/cross.md delete mode 100644 docs/api/math/vector2/dot.md delete mode 100644 docs/api/math/vector2/down.md delete mode 100644 docs/api/math/vector2/left.md delete mode 100644 docs/api/math/vector2/lerp.md delete mode 100644 docs/api/math/vector2/magnitude.md delete mode 100644 docs/api/math/vector2/movetowards.md delete mode 100644 docs/api/math/vector2/normalize.md delete mode 100644 docs/api/math/vector2/normalized.md delete mode 100644 docs/api/math/vector2/one.md delete mode 100644 docs/api/math/vector2/operator-add-assign.md delete mode 100644 docs/api/math/vector2/operator-add.md delete mode 100644 docs/api/math/vector2/operator-div-assign.md delete mode 100644 docs/api/math/vector2/operator-div.md delete mode 100644 docs/api/math/vector2/operator-eq.md delete mode 100644 docs/api/math/vector2/operator-mul-assign.md delete mode 100644 docs/api/math/vector2/operator-mul.md delete mode 100644 docs/api/math/vector2/operator-neq.md delete mode 100644 docs/api/math/vector2/operator-sub-assign.md delete mode 100644 docs/api/math/vector2/operator-sub.md delete mode 100644 docs/api/math/vector2/right.md delete mode 100644 docs/api/math/vector2/sqrmagnitude.md delete mode 100644 docs/api/math/vector2/up.md delete mode 100644 docs/api/math/vector2/vector2.md delete mode 100644 docs/api/math/vector2/zero.md delete mode 100644 docs/api/math/vector3/angle.md delete mode 100644 docs/api/math/vector3/back.md delete mode 100644 docs/api/math/vector3/cross.md delete mode 100644 docs/api/math/vector3/dot.md delete mode 100644 docs/api/math/vector3/down.md delete mode 100644 docs/api/math/vector3/forward.md delete mode 100644 docs/api/math/vector3/left.md delete mode 100644 docs/api/math/vector3/lerp.md delete mode 100644 docs/api/math/vector3/magnitude-instance.md delete mode 100644 docs/api/math/vector3/magnitude.md delete mode 100644 docs/api/math/vector3/movetowards.md delete mode 100644 docs/api/math/vector3/normalize.md delete mode 100644 docs/api/math/vector3/normalized-instance.md delete mode 100644 docs/api/math/vector3/normalized.md delete mode 100644 docs/api/math/vector3/one.md delete mode 100644 docs/api/math/vector3/operator-add-assign.md delete mode 100644 docs/api/math/vector3/operator-add.md delete mode 100644 docs/api/math/vector3/operator-div-assign.md delete mode 100644 docs/api/math/vector3/operator-div.md delete mode 100644 docs/api/math/vector3/operator-eq.md delete mode 100644 docs/api/math/vector3/operator-index.md delete mode 100644 docs/api/math/vector3/operator-mul-assign.md delete mode 100644 docs/api/math/vector3/operator-mul.md delete mode 100644 docs/api/math/vector3/operator-neq.md delete mode 100644 docs/api/math/vector3/operator-sub-assign.md delete mode 100644 docs/api/math/vector3/operator-sub.md delete mode 100644 docs/api/math/vector3/project-on-plane.md delete mode 100644 docs/api/math/vector3/project.md delete mode 100644 docs/api/math/vector3/quaternion-multiply.md delete mode 100644 docs/api/math/vector3/reflect.md delete mode 100644 docs/api/math/vector3/right.md delete mode 100644 docs/api/math/vector3/sqrmagnitude-instance.md delete mode 100644 docs/api/math/vector3/sqrmagnitude.md delete mode 100644 docs/api/math/vector3/up.md delete mode 100644 docs/api/math/vector3/vector3-constructor.md delete mode 100644 docs/api/math/vector3/vector3.md delete mode 100644 docs/api/math/vector3/zero.md delete mode 100644 docs/api/math/vector4/constructor-vector3.md delete mode 100644 docs/api/math/vector4/constructor.md delete mode 100644 docs/api/math/vector4/constructor_default.md delete mode 100644 docs/api/math/vector4/dot.md delete mode 100644 docs/api/math/vector4/one.md delete mode 100644 docs/api/math/vector4/operator-add.md delete mode 100644 docs/api/math/vector4/operator-brackets.md delete mode 100644 docs/api/math/vector4/operator-eq.md delete mode 100644 docs/api/math/vector4/operator-mul.md delete mode 100644 docs/api/math/vector4/operator-ne.md delete mode 100644 docs/api/math/vector4/operator-neg.md delete mode 100644 docs/api/math/vector4/operator-sub.md delete mode 100644 docs/api/math/vector4/project.md delete mode 100644 docs/api/math/vector4/to-vector3.md delete mode 100644 docs/api/math/vector4/vector4.md delete mode 100644 docs/api/math/vector4/zero.md delete mode 100644 docs/api/math/viewport/getaspectratio.md delete mode 100644 docs/api/math/viewport/getrect.md delete mode 100644 docs/api/math/viewport/viewport.md delete mode 100644 docs/api/memory/allocator/allocate.md delete mode 100644 docs/api/memory/allocator/allocator.md delete mode 100644 docs/api/memory/allocator/free.md delete mode 100644 docs/api/memory/allocator/get-allocation-count.md delete mode 100644 docs/api/memory/allocator/get-name.md delete mode 100644 docs/api/memory/allocator/get-peak-allocated.md delete mode 100644 docs/api/memory/allocator/get-total-allocated.md delete mode 100644 docs/api/memory/allocator/get-total-freed.md delete mode 100644 docs/api/memory/allocator/reallocate.md delete mode 100644 docs/api/memory/linear-allocator/allocate.md delete mode 100644 docs/api/memory/linear-allocator/clear.md delete mode 100644 docs/api/memory/linear-allocator/constructor.md delete mode 100644 docs/api/memory/linear-allocator/free.md delete mode 100644 docs/api/memory/linear-allocator/get-allocation-count.md delete mode 100644 docs/api/memory/linear-allocator/get-capacity.md delete mode 100644 docs/api/memory/linear-allocator/get-marker.md delete mode 100644 docs/api/memory/linear-allocator/get-name.md delete mode 100644 docs/api/memory/linear-allocator/get-peak-allocated.md delete mode 100644 docs/api/memory/linear-allocator/get-total-allocated.md delete mode 100644 docs/api/memory/linear-allocator/get-total-freed.md delete mode 100644 docs/api/memory/linear-allocator/get-used-size.md delete mode 100644 docs/api/memory/linear-allocator/linear-allocator.md delete mode 100644 docs/api/memory/linear-allocator/reallocate.md delete mode 100644 docs/api/memory/linear-allocator/set-marker.md delete mode 100644 docs/api/memory/linear-allocator/~linear-allocator.md delete mode 100644 docs/api/memory/manager/create-linear-allocator.md delete mode 100644 docs/api/memory/manager/create-pool-allocator.md delete mode 100644 docs/api/memory/manager/create-proxy-allocator.md delete mode 100644 docs/api/memory/manager/dump-memory-leaks.md delete mode 100644 docs/api/memory/manager/generate-memory-report.md delete mode 100644 docs/api/memory/manager/get-system-allocator.md delete mode 100644 docs/api/memory/manager/get.md delete mode 100644 docs/api/memory/manager/initialize.md delete mode 100644 docs/api/memory/manager/manager.md delete mode 100644 docs/api/memory/manager/set-track-allocations.md delete mode 100644 docs/api/memory/manager/shutdown.md delete mode 100644 docs/api/memory/memory.md delete mode 100644 docs/api/memory/pool-allocator/allocate.md delete mode 100644 docs/api/memory/pool-allocator/constructor.md delete mode 100644 docs/api/memory/pool-allocator/contains.md delete mode 100644 docs/api/memory/pool-allocator/free.md delete mode 100644 docs/api/memory/pool-allocator/get-allocation-count.md delete mode 100644 docs/api/memory/pool-allocator/get-block-size.md delete mode 100644 docs/api/memory/pool-allocator/get-free-block-count.md delete mode 100644 docs/api/memory/pool-allocator/get-name.md delete mode 100644 docs/api/memory/pool-allocator/get-peak-allocated.md delete mode 100644 docs/api/memory/pool-allocator/get-total-allocated.md delete mode 100644 docs/api/memory/pool-allocator/get-total-block-count.md delete mode 100644 docs/api/memory/pool-allocator/get-total-freed.md delete mode 100644 docs/api/memory/pool-allocator/pool-allocator.md delete mode 100644 docs/api/memory/pool-allocator/reallocate.md delete mode 100644 docs/api/memory/pool-allocator/~pool-allocator.md delete mode 100644 docs/api/memory/proxy-allocator/allocate.md delete mode 100644 docs/api/memory/proxy-allocator/constructor.md delete mode 100644 docs/api/memory/proxy-allocator/free.md delete mode 100644 docs/api/memory/proxy-allocator/get-allocation-count.md delete mode 100644 docs/api/memory/proxy-allocator/get-name.md delete mode 100644 docs/api/memory/proxy-allocator/get-peak-allocated.md delete mode 100644 docs/api/memory/proxy-allocator/get-stats.md delete mode 100644 docs/api/memory/proxy-allocator/get-total-allocated.md delete mode 100644 docs/api/memory/proxy-allocator/get-total-freed.md delete mode 100644 docs/api/memory/proxy-allocator/proxy-allocator.md delete mode 100644 docs/api/memory/proxy-allocator/reallocate.md delete mode 100644 docs/api/memory/proxy-allocator/~proxy-allocator.md delete mode 100644 docs/api/resources/asyncloader/asyncloader.md delete mode 100644 docs/api/resources/asyncloader/cancel.md delete mode 100644 docs/api/resources/asyncloader/cancelall.md delete mode 100644 docs/api/resources/asyncloader/getpendingcount.md delete mode 100644 docs/api/resources/asyncloader/getprogress.md delete mode 100644 docs/api/resources/asyncloader/initialize.md delete mode 100644 docs/api/resources/asyncloader/isloading.md delete mode 100644 docs/api/resources/asyncloader/shutdown.md delete mode 100644 docs/api/resources/asyncloader/submit.md delete mode 100644 docs/api/resources/asyncloader/update.md delete mode 100644 docs/api/resources/audio-loader/can-load.md delete mode 100644 docs/api/resources/audio-loader/constructor.md delete mode 100644 docs/api/resources/audio-loader/destructor.md delete mode 100644 docs/api/resources/audio-loader/get-default-settings.md delete mode 100644 docs/api/resources/audio-loader/get-supported-extensions.md delete mode 100644 docs/api/resources/audio-loader/index.md delete mode 100644 docs/api/resources/audio-loader/load.md delete mode 100644 docs/api/resources/audioclip/audioclip.md delete mode 100644 docs/api/resources/audioclip/constructor.md delete mode 100644 docs/api/resources/audioclip/destructor.md delete mode 100644 docs/api/resources/audioclip/get-audio-data.md delete mode 100644 docs/api/resources/audioclip/get-audio-format.md delete mode 100644 docs/api/resources/audioclip/get-audio-type.md delete mode 100644 docs/api/resources/audioclip/get-bits-per-sample.md delete mode 100644 docs/api/resources/audioclip/get-channels.md delete mode 100644 docs/api/resources/audioclip/get-duration.md delete mode 100644 docs/api/resources/audioclip/get-guid.md delete mode 100644 docs/api/resources/audioclip/get-memory-size.md delete mode 100644 docs/api/resources/audioclip/get-name.md delete mode 100644 docs/api/resources/audioclip/get-path.md delete mode 100644 docs/api/resources/audioclip/get-rhi-resource.md delete mode 100644 docs/api/resources/audioclip/get-sample-rate.md delete mode 100644 docs/api/resources/audioclip/get-type.md delete mode 100644 docs/api/resources/audioclip/is-3d.md delete mode 100644 docs/api/resources/audioclip/is-loop.md delete mode 100644 docs/api/resources/audioclip/is-valid.md delete mode 100644 docs/api/resources/audioclip/release.md delete mode 100644 docs/api/resources/audioclip/set-audio-format.md delete mode 100644 docs/api/resources/audioclip/set-audio-type.md delete mode 100644 docs/api/resources/audioclip/set-bits-per-sample.md delete mode 100644 docs/api/resources/audioclip/set-channels.md delete mode 100644 docs/api/resources/audioclip/set-duration.md delete mode 100644 docs/api/resources/audioclip/set-is-3d.md delete mode 100644 docs/api/resources/audioclip/set-loop.md delete mode 100644 docs/api/resources/audioclip/set-rhi-resource.md delete mode 100644 docs/api/resources/audioclip/set-sample-rate.md delete mode 100644 docs/api/resources/audioclip/setaudiodata.md delete mode 100644 docs/api/resources/dependencygraph/adddependency.md delete mode 100644 docs/api/resources/dependencygraph/addnode.md delete mode 100644 docs/api/resources/dependencygraph/dependencygraph.md delete mode 100644 docs/api/resources/dependencygraph/getdependencies.md delete mode 100644 docs/api/resources/dependencygraph/hascirculardependency.md delete mode 100644 docs/api/resources/dependencygraph/topologicalsort.md delete mode 100644 docs/api/resources/filearchive/close.md delete mode 100644 docs/api/resources/filearchive/enumerate.md delete mode 100644 docs/api/resources/filearchive/exists.md delete mode 100644 docs/api/resources/filearchive/filearchive.md delete mode 100644 docs/api/resources/filearchive/getsize.md delete mode 100644 docs/api/resources/filearchive/open.md delete mode 100644 docs/api/resources/filearchive/read.md delete mode 100644 docs/api/resources/filesystem/exists.md delete mode 100644 docs/api/resources/filesystem/filesystem.md delete mode 100644 docs/api/resources/filesystem/initialize.md delete mode 100644 docs/api/resources/filesystem/readresource.md delete mode 100644 docs/api/resources/iloader/canload.md delete mode 100644 docs/api/resources/iloader/getdefaultsettings.md delete mode 100644 docs/api/resources/iloader/getresourcetype.md delete mode 100644 docs/api/resources/iloader/getsupportedextensions.md delete mode 100644 docs/api/resources/iloader/iloader.md delete mode 100644 docs/api/resources/iloader/load.md delete mode 100644 docs/api/resources/iloader/loadasync.md delete mode 100644 docs/api/resources/importsettings/importsettings.md delete mode 100644 docs/api/resources/iresource/getguid.md delete mode 100644 docs/api/resources/iresource/getmemorysize.md delete mode 100644 docs/api/resources/iresource/getname.md delete mode 100644 docs/api/resources/iresource/getpath.md delete mode 100644 docs/api/resources/iresource/gettype.md delete mode 100644 docs/api/resources/iresource/initialize.md delete mode 100644 docs/api/resources/iresource/iresource.md delete mode 100644 docs/api/resources/iresource/isvalid.md delete mode 100644 docs/api/resources/iresource/release.md delete mode 100644 docs/api/resources/iresource/setinvalid.md delete mode 100644 docs/api/resources/material-loader/index.md delete mode 100644 docs/api/resources/material-loader/methods/can-load.md delete mode 100644 docs/api/resources/material-loader/methods/constructor.md delete mode 100644 docs/api/resources/material-loader/methods/destructor.md delete mode 100644 docs/api/resources/material-loader/methods/get-default-settings.md delete mode 100644 docs/api/resources/material-loader/methods/get-resource-type.md delete mode 100644 docs/api/resources/material-loader/methods/get-supported-extensions.md delete mode 100644 docs/api/resources/material-loader/methods/load.md delete mode 100644 docs/api/resources/material/clear-all-properties.md delete mode 100644 docs/api/resources/material/get-bool.md delete mode 100644 docs/api/resources/material/get-constant-buffer-data.md delete mode 100644 docs/api/resources/material/get-float.md delete mode 100644 docs/api/resources/material/get-float2.md delete mode 100644 docs/api/resources/material/get-float3.md delete mode 100644 docs/api/resources/material/get-float4.md delete mode 100644 docs/api/resources/material/get-guid.md delete mode 100644 docs/api/resources/material/get-int.md delete mode 100644 docs/api/resources/material/get-memory-size.md delete mode 100644 docs/api/resources/material/get-name.md delete mode 100644 docs/api/resources/material/get-path.md delete mode 100644 docs/api/resources/material/get-shader.md delete mode 100644 docs/api/resources/material/get-texture.md delete mode 100644 docs/api/resources/material/get-type.md delete mode 100644 docs/api/resources/material/has-property.md delete mode 100644 docs/api/resources/material/is-valid.md delete mode 100644 docs/api/resources/material/material.md delete mode 100644 docs/api/resources/material/release.md delete mode 100644 docs/api/resources/material/remove-property.md delete mode 100644 docs/api/resources/material/set-bool.md delete mode 100644 docs/api/resources/material/set-float.md delete mode 100644 docs/api/resources/material/set-float2.md delete mode 100644 docs/api/resources/material/set-float3.md delete mode 100644 docs/api/resources/material/set-float4.md delete mode 100644 docs/api/resources/material/set-int.md delete mode 100644 docs/api/resources/material/set-shader.md delete mode 100644 docs/api/resources/material/set-texture.md delete mode 100644 docs/api/resources/material/update-constant-buffer.md delete mode 100644 docs/api/resources/mesh-import-settings/mesh-import-settings.md delete mode 100644 docs/api/resources/mesh-loader/index.md delete mode 100644 docs/api/resources/mesh-loader/methods/can-load.md delete mode 100644 docs/api/resources/mesh-loader/methods/constructor.md delete mode 100644 docs/api/resources/mesh-loader/methods/destructor.md delete mode 100644 docs/api/resources/mesh-loader/methods/get-default-settings.md delete mode 100644 docs/api/resources/mesh-loader/methods/get-resource-type.md delete mode 100644 docs/api/resources/mesh-loader/methods/get-supported-extensions.md delete mode 100644 docs/api/resources/mesh-loader/methods/load.md delete mode 100644 docs/api/resources/mesh/add-section.md delete mode 100644 docs/api/resources/mesh/constructor.md delete mode 100644 docs/api/resources/mesh/destructor.md delete mode 100644 docs/api/resources/mesh/get-guid.md delete mode 100644 docs/api/resources/mesh/get-index-count.md delete mode 100644 docs/api/resources/mesh/get-index-data-size.md delete mode 100644 docs/api/resources/mesh/get-index-data.md delete mode 100644 docs/api/resources/mesh/get-memory-size.md delete mode 100644 docs/api/resources/mesh/get-name.md delete mode 100644 docs/api/resources/mesh/get-path.md delete mode 100644 docs/api/resources/mesh/get-sections.md delete mode 100644 docs/api/resources/mesh/get-type.md delete mode 100644 docs/api/resources/mesh/get-vertex-attributes.md delete mode 100644 docs/api/resources/mesh/get-vertex-count.md delete mode 100644 docs/api/resources/mesh/get-vertex-data-size.md delete mode 100644 docs/api/resources/mesh/get-vertex-data.md delete mode 100644 docs/api/resources/mesh/get-vertex-stride.md delete mode 100644 docs/api/resources/mesh/is-use-32bit-index.md delete mode 100644 docs/api/resources/mesh/is-valid.md delete mode 100644 docs/api/resources/mesh/mesh.md delete mode 100644 docs/api/resources/mesh/meshsection.md delete mode 100644 docs/api/resources/mesh/release.md delete mode 100644 docs/api/resources/mesh/set-index-data.md delete mode 100644 docs/api/resources/mesh/set-vertex-data.md delete mode 100644 docs/api/resources/mesh/vertexattribute.md delete mode 100644 docs/api/resources/resource-dependency-graph/add-dependency.md delete mode 100644 docs/api/resources/resource-dependency-graph/add-node.md delete mode 100644 docs/api/resources/resource-dependency-graph/clear.md delete mode 100644 docs/api/resources/resource-dependency-graph/decrement-ref-count.md delete mode 100644 docs/api/resources/resource-dependency-graph/get-all-dependencies.md delete mode 100644 docs/api/resources/resource-dependency-graph/get-dependencies.md delete mode 100644 docs/api/resources/resource-dependency-graph/get-dependents.md delete mode 100644 docs/api/resources/resource-dependency-graph/get-ref-count.md delete mode 100644 docs/api/resources/resource-dependency-graph/has-circular-dependency.md delete mode 100644 docs/api/resources/resource-dependency-graph/has-node.md delete mode 100644 docs/api/resources/resource-dependency-graph/increment-ref-count.md delete mode 100644 docs/api/resources/resource-dependency-graph/index.md delete mode 100644 docs/api/resources/resource-dependency-graph/remove-dependency.md delete mode 100644 docs/api/resources/resource-dependency-graph/remove-node.md delete mode 100644 docs/api/resources/resource-dependency-graph/topological-sort.md delete mode 100644 docs/api/resources/resource-dependency-graph/unload.md delete mode 100644 docs/api/resources/resource-file-system/add-archive.md delete mode 100644 docs/api/resources/resource-file-system/add-directory.md delete mode 100644 docs/api/resources/resource-file-system/enumerate-resources.md delete mode 100644 docs/api/resources/resource-file-system/exists.md delete mode 100644 docs/api/resources/resource-file-system/find-resource.md delete mode 100644 docs/api/resources/resource-file-system/get-resource-info.md delete mode 100644 docs/api/resources/resource-file-system/get.md delete mode 100644 docs/api/resources/resource-file-system/iarchive.md delete mode 100644 docs/api/resources/resource-file-system/index.md delete mode 100644 docs/api/resources/resource-file-system/initialize.md delete mode 100644 docs/api/resources/resource-file-system/read-resource.md delete mode 100644 docs/api/resources/resource-file-system/remove-archive.md delete mode 100644 docs/api/resources/resource-file-system/resource-info.md delete mode 100644 docs/api/resources/resource-file-system/shutdown.md delete mode 100644 docs/api/resources/resource-loader/canload.md delete mode 100644 docs/api/resources/resource-loader/getdefaultsettings.md delete mode 100644 docs/api/resources/resource-loader/getresourcetype.md delete mode 100644 docs/api/resources/resource-loader/getsupportedextensions.md delete mode 100644 docs/api/resources/resource-loader/load.md delete mode 100644 docs/api/resources/resource-loader/loadasync.md delete mode 100644 docs/api/resources/resource-loader/resource-loader.md delete mode 100644 docs/api/resources/resource-manager/resource-manager.md delete mode 100644 docs/api/resources/resource-package/close.md delete mode 100644 docs/api/resources/resource-package/enumerate.md delete mode 100644 docs/api/resources/resource-package/exists.md delete mode 100644 docs/api/resources/resource-package/getinfo.md delete mode 100644 docs/api/resources/resource-package/getsize.md delete mode 100644 docs/api/resources/resource-package/index.md delete mode 100644 docs/api/resources/resource-package/isvalid.md delete mode 100644 docs/api/resources/resource-package/open.md delete mode 100644 docs/api/resources/resource-package/read.md delete mode 100644 docs/api/resources/resourcecache.md delete mode 100644 docs/api/resources/resourcehandle.md delete mode 100644 docs/api/resources/resourcepath/getdirectory.md delete mode 100644 docs/api/resources/resourcepath/getextension.md delete mode 100644 docs/api/resources/resourcepath/getfilename.md delete mode 100644 docs/api/resources/resourcepath/getfullpath.md delete mode 100644 docs/api/resources/resourcepath/getpath.md delete mode 100644 docs/api/resources/resourcepath/getrelativepath.md delete mode 100644 docs/api/resources/resourcepath/getstem.md delete mode 100644 docs/api/resources/resourcepath/hasanyextension.md delete mode 100644 docs/api/resources/resourcepath/hasextension.md delete mode 100644 docs/api/resources/resourcepath/isvalid.md delete mode 100644 docs/api/resources/resourcepath/resourcepath.md delete mode 100644 docs/api/resources/resourcepath/setpath.md delete mode 100644 docs/api/resources/resourcepath/toguid.md delete mode 100644 docs/api/resources/resources.md delete mode 100644 docs/api/resources/resourcetypes/generate.md delete mode 100644 docs/api/resources/resourcetypes/getresourcetypename.md delete mode 100644 docs/api/resources/resourcetypes/resourcetypes.md delete mode 100644 docs/api/resources/shader-loader/index.md delete mode 100644 docs/api/resources/shader-loader/methods/can-load.md delete mode 100644 docs/api/resources/shader-loader/methods/constructor.md delete mode 100644 docs/api/resources/shader-loader/methods/destructor.md delete mode 100644 docs/api/resources/shader-loader/methods/get-default-settings.md delete mode 100644 docs/api/resources/shader-loader/methods/get-resource-type.md delete mode 100644 docs/api/resources/shader-loader/methods/get-supported-extensions.md delete mode 100644 docs/api/resources/shader-loader/methods/load.md delete mode 100644 docs/api/resources/shader/addattribute.md delete mode 100644 docs/api/resources/shader/adduniform.md delete mode 100644 docs/api/resources/shader/constructor.md delete mode 100644 docs/api/resources/shader/destructor.md delete mode 100644 docs/api/resources/shader/getattributes.md delete mode 100644 docs/api/resources/shader/getcompiledbinary.md delete mode 100644 docs/api/resources/shader/getguid.md delete mode 100644 docs/api/resources/shader/getmemorysize.md delete mode 100644 docs/api/resources/shader/getname.md delete mode 100644 docs/api/resources/shader/getpath.md delete mode 100644 docs/api/resources/shader/getrhi.md delete mode 100644 docs/api/resources/shader/getshaderlanguage.md delete mode 100644 docs/api/resources/shader/getshadertype.md delete mode 100644 docs/api/resources/shader/getsourcecode.md delete mode 100644 docs/api/resources/shader/gettype.md delete mode 100644 docs/api/resources/shader/getuniforms.md delete mode 100644 docs/api/resources/shader/isvalid.md delete mode 100644 docs/api/resources/shader/release.md delete mode 100644 docs/api/resources/shader/setbinary.md delete mode 100644 docs/api/resources/shader/setrhi.md delete mode 100644 docs/api/resources/shader/setshaderlanguage.md delete mode 100644 docs/api/resources/shader/setshadertype.md delete mode 100644 docs/api/resources/shader/setsourcecode.md delete mode 100644 docs/api/resources/shader/shader.md delete mode 100644 docs/api/resources/texture-import-settings/clone.md delete mode 100644 docs/api/resources/texture-import-settings/getbordercolor.md delete mode 100644 docs/api/resources/texture-import-settings/getcompressionquality.md delete mode 100644 docs/api/resources/texture-import-settings/getfliphhorizontal.md delete mode 100644 docs/api/resources/texture-import-settings/getflipvertical.md delete mode 100644 docs/api/resources/texture-import-settings/getgeneratemipmaps.md delete mode 100644 docs/api/resources/texture-import-settings/getgeneratenormalmap.md delete mode 100644 docs/api/resources/texture-import-settings/getmaxanisotropy.md delete mode 100644 docs/api/resources/texture-import-settings/getmaxsize.md delete mode 100644 docs/api/resources/texture-import-settings/getmipmapfilter.md delete mode 100644 docs/api/resources/texture-import-settings/getnormalmapstrength.md delete mode 100644 docs/api/resources/texture-import-settings/getsrgb.md delete mode 100644 docs/api/resources/texture-import-settings/gettargetformat.md delete mode 100644 docs/api/resources/texture-import-settings/gettexturetype.md delete mode 100644 docs/api/resources/texture-import-settings/getusehardwarecompression.md delete mode 100644 docs/api/resources/texture-import-settings/loadfromjson.md delete mode 100644 docs/api/resources/texture-import-settings/savetojson.md delete mode 100644 docs/api/resources/texture-import-settings/setbordercolor.md delete mode 100644 docs/api/resources/texture-import-settings/setcompressionquality.md delete mode 100644 docs/api/resources/texture-import-settings/setfliphhorizontal.md delete mode 100644 docs/api/resources/texture-import-settings/setflipvertical.md delete mode 100644 docs/api/resources/texture-import-settings/setgeneratemipmaps.md delete mode 100644 docs/api/resources/texture-import-settings/setgeneratenormalmap.md delete mode 100644 docs/api/resources/texture-import-settings/setmaxanisotropy.md delete mode 100644 docs/api/resources/texture-import-settings/setmaxsize.md delete mode 100644 docs/api/resources/texture-import-settings/setmipmapfilter.md delete mode 100644 docs/api/resources/texture-import-settings/setnormalmapstrength.md delete mode 100644 docs/api/resources/texture-import-settings/setsrgb.md delete mode 100644 docs/api/resources/texture-import-settings/settargetformat.md delete mode 100644 docs/api/resources/texture-import-settings/settexturetype.md delete mode 100644 docs/api/resources/texture-import-settings/setusehardwarecompression.md delete mode 100644 docs/api/resources/texture-import-settings/texture-import-settings.md delete mode 100644 docs/api/resources/texture-loader/constructor.md delete mode 100644 docs/api/resources/texture-loader/destructor.md delete mode 100644 docs/api/resources/texture-loader/index.md delete mode 100644 docs/api/resources/texture/constructor.md delete mode 100644 docs/api/resources/texture/create.md delete mode 100644 docs/api/resources/texture/destructor.md delete mode 100644 docs/api/resources/texture/generatemipmaps.md delete mode 100644 docs/api/resources/texture/getarraysize.md delete mode 100644 docs/api/resources/texture/getdepth.md delete mode 100644 docs/api/resources/texture/getformat.md delete mode 100644 docs/api/resources/texture/getheight.md delete mode 100644 docs/api/resources/texture/getmiplevels.md delete mode 100644 docs/api/resources/texture/getpixeldata.md delete mode 100644 docs/api/resources/texture/getpixeldatasize.md delete mode 100644 docs/api/resources/texture/gettexturetype.md delete mode 100644 docs/api/resources/texture/getusage.md delete mode 100644 docs/api/resources/texture/getwidth.md delete mode 100644 docs/api/resources/texture/texture.md delete mode 100644 docs/api/rhi/buffer/buffer.md delete mode 100644 docs/api/rhi/buffer/constructor.md delete mode 100644 docs/api/rhi/buffer/destructor.md delete mode 100644 docs/api/rhi/buffer/get-buffer-type.md delete mode 100644 docs/api/rhi/buffer/get-name.md delete mode 100644 docs/api/rhi/buffer/get-native-handle.md delete mode 100644 docs/api/rhi/buffer/get-size.md delete mode 100644 docs/api/rhi/buffer/get-state.md delete mode 100644 docs/api/rhi/buffer/get-stride.md delete mode 100644 docs/api/rhi/buffer/map.md delete mode 100644 docs/api/rhi/buffer/set-buffer-type.md delete mode 100644 docs/api/rhi/buffer/set-data.md delete mode 100644 docs/api/rhi/buffer/set-name.md delete mode 100644 docs/api/rhi/buffer/set-state.md delete mode 100644 docs/api/rhi/buffer/set-stride.md delete mode 100644 docs/api/rhi/buffer/shutdown.md delete mode 100644 docs/api/rhi/buffer/unmap.md delete mode 100644 docs/api/rhi/capabilities/capabilities.md delete mode 100644 docs/api/rhi/command-list/clear-depth-stencil.md delete mode 100644 docs/api/rhi/command-list/clear-render-target.md delete mode 100644 docs/api/rhi/command-list/clear.md delete mode 100644 docs/api/rhi/command-list/close.md delete mode 100644 docs/api/rhi/command-list/command-list.md delete mode 100644 docs/api/rhi/command-list/constructor.md delete mode 100644 docs/api/rhi/command-list/copy-resource.md delete mode 100644 docs/api/rhi/command-list/destructor.md delete mode 100644 docs/api/rhi/command-list/dispatch.md delete mode 100644 docs/api/rhi/command-list/draw-indexed.md delete mode 100644 docs/api/rhi/command-list/draw.md delete mode 100644 docs/api/rhi/command-list/reset.md delete mode 100644 docs/api/rhi/command-list/set-blend-factor.md delete mode 100644 docs/api/rhi/command-list/set-blend-state.md delete mode 100644 docs/api/rhi/command-list/set-depth-stencil-state.md delete mode 100644 docs/api/rhi/command-list/set-index-buffer.md delete mode 100644 docs/api/rhi/command-list/set-pipeline-state.md delete mode 100644 docs/api/rhi/command-list/set-primitive-topology.md delete mode 100644 docs/api/rhi/command-list/set-render-targets.md delete mode 100644 docs/api/rhi/command-list/set-scissor-rect.md delete mode 100644 docs/api/rhi/command-list/set-scissor-rects.md delete mode 100644 docs/api/rhi/command-list/set-stencil-ref.md delete mode 100644 docs/api/rhi/command-list/set-vertex-buffer.md delete mode 100644 docs/api/rhi/command-list/set-vertex-buffers.md delete mode 100644 docs/api/rhi/command-list/set-viewport.md delete mode 100644 docs/api/rhi/command-list/set-viewports.md delete mode 100644 docs/api/rhi/command-list/shutdown.md delete mode 100644 docs/api/rhi/command-list/transition-barrier.md delete mode 100644 docs/api/rhi/command-queue/command-queue.md delete mode 100644 docs/api/rhi/command-queue/constructor.md delete mode 100644 docs/api/rhi/command-queue/destructor.md delete mode 100644 docs/api/rhi/command-queue/execute-command-lists.md delete mode 100644 docs/api/rhi/command-queue/get-completed-value.md delete mode 100644 docs/api/rhi/command-queue/get-native-handle.md delete mode 100644 docs/api/rhi/command-queue/get-timestamp-frequency.md delete mode 100644 docs/api/rhi/command-queue/get-type.md delete mode 100644 docs/api/rhi/command-queue/shutdown.md delete mode 100644 docs/api/rhi/command-queue/signal.md delete mode 100644 docs/api/rhi/command-queue/wait-for-idle.md delete mode 100644 docs/api/rhi/command-queue/wait.md delete mode 100644 docs/api/rhi/d3d12/buffer/buffer.md delete mode 100644 docs/api/rhi/d3d12/buffer/get-desc.md delete mode 100644 docs/api/rhi/d3d12/buffer/get-gpu-address.md delete mode 100644 docs/api/rhi/d3d12/buffer/get-gpu-virtual-address.md delete mode 100644 docs/api/rhi/d3d12/buffer/get-resource.md delete mode 100644 docs/api/rhi/d3d12/buffer/initialize-from-existing.md delete mode 100644 docs/api/rhi/d3d12/buffer/initialize-with-data.md delete mode 100644 docs/api/rhi/d3d12/buffer/initialize.md delete mode 100644 docs/api/rhi/d3d12/buffer/update-data.md delete mode 100644 docs/api/rhi/d3d12/command-allocator/command-allocator.md delete mode 100644 docs/api/rhi/d3d12/command-allocator/constructor.md delete mode 100644 docs/api/rhi/d3d12/command-allocator/destructor.md delete mode 100644 docs/api/rhi/d3d12/command-allocator/get-command-allocator.md delete mode 100644 docs/api/rhi/d3d12/command-allocator/initialize.md delete mode 100644 docs/api/rhi/d3d12/command-allocator/is-ready.md delete mode 100644 docs/api/rhi/d3d12/command-allocator/reset.md delete mode 100644 docs/api/rhi/d3d12/command-allocator/shutdown.md delete mode 100644 docs/api/rhi/d3d12/command-list/alias-barrier-internal.md delete mode 100644 docs/api/rhi/d3d12/command-list/alias-barrier.md delete mode 100644 docs/api/rhi/d3d12/command-list/begin-query.md delete mode 100644 docs/api/rhi/d3d12/command-list/clear-depth-stencil-view.md delete mode 100644 docs/api/rhi/d3d12/command-list/clear-depth-stencil.md delete mode 100644 docs/api/rhi/d3d12/command-list/clear-render-target-view.md delete mode 100644 docs/api/rhi/d3d12/command-list/clear-render-target.md delete mode 100644 docs/api/rhi/d3d12/command-list/clear-unordered-access-view.md delete mode 100644 docs/api/rhi/d3d12/command-list/clear.md delete mode 100644 docs/api/rhi/d3d12/command-list/close.md delete mode 100644 docs/api/rhi/d3d12/command-list/command-list.md delete mode 100644 docs/api/rhi/d3d12/command-list/constructor.md delete mode 100644 docs/api/rhi/d3d12/command-list/copy-buffer.md delete mode 100644 docs/api/rhi/d3d12/command-list/copy-resource-internal.md delete mode 100644 docs/api/rhi/d3d12/command-list/copy-resource.md delete mode 100644 docs/api/rhi/d3d12/command-list/copy-texture.md delete mode 100644 docs/api/rhi/d3d12/command-list/destructor.md delete mode 100644 docs/api/rhi/d3d12/command-list/dispatch-indirect-internal.md delete mode 100644 docs/api/rhi/d3d12/command-list/dispatch-indirect.md delete mode 100644 docs/api/rhi/d3d12/command-list/dispatch.md delete mode 100644 docs/api/rhi/d3d12/command-list/draw-indexed-instanced-indirect-internal.md delete mode 100644 docs/api/rhi/d3d12/command-list/draw-indexed-instanced-indirect.md delete mode 100644 docs/api/rhi/d3d12/command-list/draw-indexed.md delete mode 100644 docs/api/rhi/d3d12/command-list/draw-instanced-indirect-internal.md delete mode 100644 docs/api/rhi/d3d12/command-list/draw-instanced-indirect.md delete mode 100644 docs/api/rhi/d3d12/command-list/draw.md delete mode 100644 docs/api/rhi/d3d12/command-list/end-query.md delete mode 100644 docs/api/rhi/d3d12/command-list/execute-bundle.md delete mode 100644 docs/api/rhi/d3d12/command-list/get-command-list.md delete mode 100644 docs/api/rhi/d3d12/command-list/get-resource-state.md delete mode 100644 docs/api/rhi/d3d12/command-list/initialize.md delete mode 100644 docs/api/rhi/d3d12/command-list/reset.md delete mode 100644 docs/api/rhi/d3d12/command-list/resolve-query-data.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-blend-factor.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-blend-state.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-compute-descriptor-table.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-depth-bias.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-depth-stencil-state.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-descriptor-heap.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-descriptor-heaps.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-graphics-descriptor-table.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-graphics-root-32bit-constants.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-graphics-root-constant-buffer-view.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-graphics-root-descriptor-table.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-graphics-root-shader-resource-view.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-index-buffer-internal.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-index-buffer.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-pipeline-state-internal.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-pipeline-state.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-primitive-topology.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-render-targets-handle.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-render-targets-internal.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-render-targets.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-root-signature.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-scissor-rect.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-scissor-rects.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-stencil-ref.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-vertex-buffer-internal.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-vertex-buffer.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-vertex-buffers-internal.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-vertex-buffers.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-viewport.md delete mode 100644 docs/api/rhi/d3d12/command-list/set-viewports.md delete mode 100644 docs/api/rhi/d3d12/command-list/shutdown.md delete mode 100644 docs/api/rhi/d3d12/command-list/track-resource.md delete mode 100644 docs/api/rhi/d3d12/command-list/transition-barrier-internal.md delete mode 100644 docs/api/rhi/d3d12/command-list/transition-barrier.md delete mode 100644 docs/api/rhi/d3d12/command-list/uav-barrier-internal.md delete mode 100644 docs/api/rhi/d3d12/command-list/uav-barrier.md delete mode 100644 docs/api/rhi/d3d12/command-queue/command-queue.md delete mode 100644 docs/api/rhi/d3d12/command-queue/execute-command-lists.md delete mode 100644 docs/api/rhi/d3d12/command-queue/get-command-queue.md delete mode 100644 docs/api/rhi/d3d12/command-queue/get-completed-value.md delete mode 100644 docs/api/rhi/d3d12/command-queue/get-native-handle.md delete mode 100644 docs/api/rhi/d3d12/command-queue/get-timestamp-frequency.md delete mode 100644 docs/api/rhi/d3d12/command-queue/get-type.md delete mode 100644 docs/api/rhi/d3d12/command-queue/initialize.md delete mode 100644 docs/api/rhi/d3d12/command-queue/shutdown.md delete mode 100644 docs/api/rhi/d3d12/command-queue/signal-native.md delete mode 100644 docs/api/rhi/d3d12/command-queue/signal.md delete mode 100644 docs/api/rhi/d3d12/command-queue/wait-for-idle.md delete mode 100644 docs/api/rhi/d3d12/command-queue/wait-native.md delete mode 100644 docs/api/rhi/d3d12/command-queue/wait.md delete mode 100644 docs/api/rhi/d3d12/common/check-format-support.md delete mode 100644 docs/api/rhi/d3d12/common/common.md delete mode 100644 docs/api/rhi/d3d12/common/create-aliasing-barrier.md delete mode 100644 docs/api/rhi/d3d12/common/create-depth-stencil-clear-value.md delete mode 100644 docs/api/rhi/d3d12/common/create-index-buffer-view.md delete mode 100644 docs/api/rhi/d3d12/common/create-render-target-clear-value.md delete mode 100644 docs/api/rhi/d3d12/common/create-scissor-rect.md delete mode 100644 docs/api/rhi/d3d12/common/create-transition-barrier.md delete mode 100644 docs/api/rhi/d3d12/common/create-uav-barrier.md delete mode 100644 docs/api/rhi/d3d12/common/create-vertex-buffer-view.md delete mode 100644 docs/api/rhi/d3d12/common/create-viewport.md delete mode 100644 docs/api/rhi/d3d12/common/get-cbv-srv-uav-descriptor-size.md delete mode 100644 docs/api/rhi/d3d12/common/get-cpu-descriptor-handle.md delete mode 100644 docs/api/rhi/d3d12/common/get-descriptor-handle-increment-size.md delete mode 100644 docs/api/rhi/d3d12/common/get-dsv-descriptor-size.md delete mode 100644 docs/api/rhi/d3d12/common/get-gpu-descriptor-handle.md delete mode 100644 docs/api/rhi/d3d12/common/get-rtv-descriptor-size.md delete mode 100644 docs/api/rhi/d3d12/common/get-sampler-descriptor-size.md delete mode 100644 docs/api/rhi/d3d12/common/is-depth-stencil-format-supported.md delete mode 100644 docs/api/rhi/d3d12/common/is-render-target-format-supported.md delete mode 100644 docs/api/rhi/d3d12/common/is-shader-resource-format-supported.md delete mode 100644 docs/api/rhi/d3d12/common/is-texture-format-supported.md delete mode 100644 docs/api/rhi/d3d12/constant-buffer-view/constant-buffer-view.md delete mode 100644 docs/api/rhi/d3d12/constant-buffer-view/constructor.md delete mode 100644 docs/api/rhi/d3d12/constant-buffer-view/destructor.md delete mode 100644 docs/api/rhi/d3d12/constant-buffer-view/get-cpu-descriptor-handle.md delete mode 100644 docs/api/rhi/d3d12/constant-buffer-view/initialize.md delete mode 100644 docs/api/rhi/d3d12/constant-buffer-view/shutdown.md delete mode 100644 docs/api/rhi/d3d12/d3d12.md delete mode 100644 docs/api/rhi/d3d12/depth-stencil-view/constructor.md delete mode 100644 docs/api/rhi/d3d12/depth-stencil-view/create-desc.md delete mode 100644 docs/api/rhi/d3d12/depth-stencil-view/depth-stencil-view.md delete mode 100644 docs/api/rhi/d3d12/depth-stencil-view/destructor.md delete mode 100644 docs/api/rhi/d3d12/depth-stencil-view/get-cpu-descriptor-handle.md delete mode 100644 docs/api/rhi/d3d12/depth-stencil-view/initialize-at.md delete mode 100644 docs/api/rhi/d3d12/depth-stencil-view/initialize.md delete mode 100644 docs/api/rhi/d3d12/depth-stencil-view/shutdown.md delete mode 100644 docs/api/rhi/d3d12/descriptor-heap/constructor.md delete mode 100644 docs/api/rhi/d3d12/descriptor-heap/create-desc.md delete mode 100644 docs/api/rhi/d3d12/descriptor-heap/descriptor-heap.md delete mode 100644 docs/api/rhi/d3d12/descriptor-heap/get-cpu-descriptor-handle-for-heap-start.md delete mode 100644 docs/api/rhi/d3d12/descriptor-heap/get-cpu-descriptor-handle.md delete mode 100644 docs/api/rhi/d3d12/descriptor-heap/get-descriptor-count.md delete mode 100644 docs/api/rhi/d3d12/descriptor-heap/get-descriptor-heap.md delete mode 100644 docs/api/rhi/d3d12/descriptor-heap/get-descriptor-size.md delete mode 100644 docs/api/rhi/d3d12/descriptor-heap/get-gpu-descriptor-handle-for-heap-start.md delete mode 100644 docs/api/rhi/d3d12/descriptor-heap/get-gpu-descriptor-handle.md delete mode 100644 docs/api/rhi/d3d12/descriptor-heap/get-native-handle.md delete mode 100644 docs/api/rhi/d3d12/descriptor-heap/get-type.md delete mode 100644 docs/api/rhi/d3d12/descriptor-heap/initialize-device.md delete mode 100644 docs/api/rhi/d3d12/descriptor-heap/initialize-from-desc.md delete mode 100644 docs/api/rhi/d3d12/descriptor-heap/shutdown.md delete mode 100644 docs/api/rhi/d3d12/device/check-feature-support.md delete mode 100644 docs/api/rhi/d3d12/device/compile-shader.md delete mode 100644 docs/api/rhi/d3d12/device/constructor.md delete mode 100644 docs/api/rhi/d3d12/device/create-buffer.md delete mode 100644 docs/api/rhi/d3d12/device/create-command-list.md delete mode 100644 docs/api/rhi/d3d12/device/create-command-queue.md delete mode 100644 docs/api/rhi/d3d12/device/create-fence.md delete mode 100644 docs/api/rhi/d3d12/device/create-pipeline-state.md delete mode 100644 docs/api/rhi/d3d12/device/create-sampler.md delete mode 100644 docs/api/rhi/d3d12/device/create-swap-chain.md delete mode 100644 docs/api/rhi/d3d12/device/create-texture.md delete mode 100644 docs/api/rhi/d3d12/device/destructor.md delete mode 100644 docs/api/rhi/d3d12/device/device.md delete mode 100644 docs/api/rhi/d3d12/device/enumerate-adapters.md delete mode 100644 docs/api/rhi/d3d12/device/get-adapter-info.md delete mode 100644 docs/api/rhi/d3d12/device/get-capabilities.md delete mode 100644 docs/api/rhi/d3d12/device/get-descriptor-handle-increment-size.md delete mode 100644 docs/api/rhi/d3d12/device/get-device-info.md delete mode 100644 docs/api/rhi/d3d12/device/get-device.md delete mode 100644 docs/api/rhi/d3d12/device/get-factory.md delete mode 100644 docs/api/rhi/d3d12/device/get-native-device.md delete mode 100644 docs/api/rhi/d3d12/device/get-native-handle.md delete mode 100644 docs/api/rhi/d3d12/device/initialize.md delete mode 100644 docs/api/rhi/d3d12/device/is-device-removed.md delete mode 100644 docs/api/rhi/d3d12/device/set-device-removed.md delete mode 100644 docs/api/rhi/d3d12/device/shutdown.md delete mode 100644 docs/api/rhi/d3d12/enums/enums.md delete mode 100644 docs/api/rhi/d3d12/fence/constructor.md delete mode 100644 docs/api/rhi/d3d12/fence/destructor.md delete mode 100644 docs/api/rhi/d3d12/fence/fence.md delete mode 100644 docs/api/rhi/d3d12/fence/get-completed-value.md delete mode 100644 docs/api/rhi/d3d12/fence/get-event-handle.md delete mode 100644 docs/api/rhi/d3d12/fence/get-fence.md delete mode 100644 docs/api/rhi/d3d12/fence/get-native-handle.md delete mode 100644 docs/api/rhi/d3d12/fence/index.md delete mode 100644 docs/api/rhi/d3d12/fence/initialize.md delete mode 100644 docs/api/rhi/d3d12/fence/is-signaled.md delete mode 100644 docs/api/rhi/d3d12/fence/shutdown.md delete mode 100644 docs/api/rhi/d3d12/fence/signal.md delete mode 100644 docs/api/rhi/d3d12/fence/wait.md delete mode 100644 docs/api/rhi/d3d12/pipeline-state/bind.md delete mode 100644 docs/api/rhi/d3d12/pipeline-state/create-desc.md delete mode 100644 docs/api/rhi/d3d12/pipeline-state/create-input-element.md delete mode 100644 docs/api/rhi/d3d12/pipeline-state/get-native-handle.md delete mode 100644 docs/api/rhi/d3d12/pipeline-state/get-pipeline-state.md delete mode 100644 docs/api/rhi/d3d12/pipeline-state/get-type.md delete mode 100644 docs/api/rhi/d3d12/pipeline-state/initialize.md delete mode 100644 docs/api/rhi/d3d12/pipeline-state/pipeline-state.md delete mode 100644 docs/api/rhi/d3d12/pipeline-state/shutdown.md delete mode 100644 docs/api/rhi/d3d12/pipeline-state/unbind.md delete mode 100644 docs/api/rhi/d3d12/query-heap/constructor.md delete mode 100644 docs/api/rhi/d3d12/query-heap/destructor.md delete mode 100644 docs/api/rhi/d3d12/query-heap/get-count.md delete mode 100644 docs/api/rhi/d3d12/query-heap/get-native-handle.md delete mode 100644 docs/api/rhi/d3d12/query-heap/get-query-heap.md delete mode 100644 docs/api/rhi/d3d12/query-heap/get-type.md delete mode 100644 docs/api/rhi/d3d12/query-heap/initialize.md delete mode 100644 docs/api/rhi/d3d12/query-heap/query-heap.md delete mode 100644 docs/api/rhi/d3d12/query-heap/shutdown.md delete mode 100644 docs/api/rhi/d3d12/render-target-view/constructor.md delete mode 100644 docs/api/rhi/d3d12/render-target-view/create-desc.md delete mode 100644 docs/api/rhi/d3d12/render-target-view/destructor.md delete mode 100644 docs/api/rhi/d3d12/render-target-view/get-cpu-descriptor-handle.md delete mode 100644 docs/api/rhi/d3d12/render-target-view/initialize-at.md delete mode 100644 docs/api/rhi/d3d12/render-target-view/initialize.md delete mode 100644 docs/api/rhi/d3d12/render-target-view/render-target-view.md delete mode 100644 docs/api/rhi/d3d12/render-target-view/shutdown.md delete mode 100644 docs/api/rhi/d3d12/root-signature/constructor.md delete mode 100644 docs/api/rhi/d3d12/root-signature/create-32bit-constants.md delete mode 100644 docs/api/rhi/d3d12/root-signature/create-cbv.md delete mode 100644 docs/api/rhi/d3d12/root-signature/create-desc.md delete mode 100644 docs/api/rhi/d3d12/root-signature/create-descriptor-range.md delete mode 100644 docs/api/rhi/d3d12/root-signature/create-descriptor-table.md delete mode 100644 docs/api/rhi/d3d12/root-signature/create-sampler-desc.md delete mode 100644 docs/api/rhi/d3d12/root-signature/create-srv.md delete mode 100644 docs/api/rhi/d3d12/root-signature/create-static-sampler.md delete mode 100644 docs/api/rhi/d3d12/root-signature/create-uav.md delete mode 100644 docs/api/rhi/d3d12/root-signature/destructor.md delete mode 100644 docs/api/rhi/d3d12/root-signature/get-native-handle.md delete mode 100644 docs/api/rhi/d3d12/root-signature/get-parameter-count.md delete mode 100644 docs/api/rhi/d3d12/root-signature/get-root-signature.md delete mode 100644 docs/api/rhi/d3d12/root-signature/initialize.md delete mode 100644 docs/api/rhi/d3d12/root-signature/root-signature.md delete mode 100644 docs/api/rhi/d3d12/root-signature/shutdown.md delete mode 100644 docs/api/rhi/d3d12/sampler/bind.md delete mode 100644 docs/api/rhi/d3d12/sampler/constructor.md delete mode 100644 docs/api/rhi/d3d12/sampler/destructor.md delete mode 100644 docs/api/rhi/d3d12/sampler/get-desc.md delete mode 100644 docs/api/rhi/d3d12/sampler/get-id.md delete mode 100644 docs/api/rhi/d3d12/sampler/get-native-handle.md delete mode 100644 docs/api/rhi/d3d12/sampler/index.md delete mode 100644 docs/api/rhi/d3d12/sampler/initialize.md delete mode 100644 docs/api/rhi/d3d12/sampler/sampler.md delete mode 100644 docs/api/rhi/d3d12/sampler/shutdown.md delete mode 100644 docs/api/rhi/d3d12/sampler/unbind.md delete mode 100644 docs/api/rhi/d3d12/screenshot/capture.md delete mode 100644 docs/api/rhi/d3d12/screenshot/copy-to-readback-and-save.md delete mode 100644 docs/api/rhi/d3d12/screenshot/screenshot.md delete mode 100644 docs/api/rhi/d3d12/shader-resource-view/constructor.md delete mode 100644 docs/api/rhi/d3d12/shader-resource-view/create-desc.md delete mode 100644 docs/api/rhi/d3d12/shader-resource-view/destructor.md delete mode 100644 docs/api/rhi/d3d12/shader-resource-view/get-cpu-descriptor-handle.md delete mode 100644 docs/api/rhi/d3d12/shader-resource-view/initialize-at.md delete mode 100644 docs/api/rhi/d3d12/shader-resource-view/initialize.md delete mode 100644 docs/api/rhi/d3d12/shader-resource-view/shader-resource-view.md delete mode 100644 docs/api/rhi/d3d12/shader-resource-view/shutdown.md delete mode 100644 docs/api/rhi/d3d12/shader/get-bytecode-size.md delete mode 100644 docs/api/rhi/d3d12/shader/get-bytecode.md delete mode 100644 docs/api/rhi/d3d12/shader/get-d3d12-bytecode.md delete mode 100644 docs/api/rhi/d3d12/shader/get-input-layout.md delete mode 100644 docs/api/rhi/d3d12/shader/set-float.md delete mode 100644 docs/api/rhi/d3d12/shader/set-int.md delete mode 100644 docs/api/rhi/d3d12/shader/set-mat4.md delete mode 100644 docs/api/rhi/d3d12/shader/set-vec3.md delete mode 100644 docs/api/rhi/d3d12/shader/set-vec4.md delete mode 100644 docs/api/rhi/d3d12/shader/shader.md delete mode 100644 docs/api/rhi/d3d12/swap-chain/constructor.md delete mode 100644 docs/api/rhi/d3d12/swap-chain/destructor.md delete mode 100644 docs/api/rhi/d3d12/swap-chain/get-back-buffer.md delete mode 100644 docs/api/rhi/d3d12/swap-chain/get-current-back-buffer-index.md delete mode 100644 docs/api/rhi/d3d12/swap-chain/get-current-back-buffer.md delete mode 100644 docs/api/rhi/d3d12/swap-chain/get-native-handle.md delete mode 100644 docs/api/rhi/d3d12/swap-chain/get-swap-chain.md delete mode 100644 docs/api/rhi/d3d12/swap-chain/initialize-from-factory.md delete mode 100644 docs/api/rhi/d3d12/swap-chain/initialize-from-swapchain.md delete mode 100644 docs/api/rhi/d3d12/swap-chain/is-fullscreen.md delete mode 100644 docs/api/rhi/d3d12/swap-chain/poll-events.md delete mode 100644 docs/api/rhi/d3d12/swap-chain/present.md delete mode 100644 docs/api/rhi/d3d12/swap-chain/resize.md delete mode 100644 docs/api/rhi/d3d12/swap-chain/set-fullscreen.md delete mode 100644 docs/api/rhi/d3d12/swap-chain/set-should-close.md delete mode 100644 docs/api/rhi/d3d12/swap-chain/should-close.md delete mode 100644 docs/api/rhi/d3d12/swap-chain/shutdown.md delete mode 100644 docs/api/rhi/d3d12/swap-chain/swap-chain.md delete mode 100644 docs/api/rhi/d3d12/texture/constructor.md delete mode 100644 docs/api/rhi/d3d12/texture/destructor.md delete mode 100644 docs/api/rhi/d3d12/texture/get-array-size.md delete mode 100644 docs/api/rhi/d3d12/texture/get-depth.md delete mode 100644 docs/api/rhi/d3d12/texture/get-desc.md delete mode 100644 docs/api/rhi/d3d12/texture/get-format.md delete mode 100644 docs/api/rhi/d3d12/texture/get-gpu-address.md delete mode 100644 docs/api/rhi/d3d12/texture/get-height.md delete mode 100644 docs/api/rhi/d3d12/texture/get-mip-levels.md delete mode 100644 docs/api/rhi/d3d12/texture/get-name.md delete mode 100644 docs/api/rhi/d3d12/texture/get-native-handle.md delete mode 100644 docs/api/rhi/d3d12/texture/get-resource.md delete mode 100644 docs/api/rhi/d3d12/texture/get-size.md delete mode 100644 docs/api/rhi/d3d12/texture/get-state.md delete mode 100644 docs/api/rhi/d3d12/texture/get-texture-type.md delete mode 100644 docs/api/rhi/d3d12/texture/get-width.md delete mode 100644 docs/api/rhi/d3d12/texture/initialize-depth-stencil.md delete mode 100644 docs/api/rhi/d3d12/texture/initialize-from-data.md delete mode 100644 docs/api/rhi/d3d12/texture/initialize-from-existing.md delete mode 100644 docs/api/rhi/d3d12/texture/initialize.md delete mode 100644 docs/api/rhi/d3d12/texture/owns-resource.md delete mode 100644 docs/api/rhi/d3d12/texture/set-name.md delete mode 100644 docs/api/rhi/d3d12/texture/set-state.md delete mode 100644 docs/api/rhi/d3d12/texture/shutdown.md delete mode 100644 docs/api/rhi/d3d12/texture/texture.md delete mode 100644 docs/api/rhi/d3d12/types/to-d3d12-buffer-desc.md delete mode 100644 docs/api/rhi/d3d12/types/to-d3d12-clear-value.md delete mode 100644 docs/api/rhi/d3d12/types/to-d3d12-command-queue-desc.md delete mode 100644 docs/api/rhi/d3d12/types/to-d3d12-depth-stencil.md delete mode 100644 docs/api/rhi/d3d12/types/to-d3d12-descriptor-heap-desc.md delete mode 100644 docs/api/rhi/d3d12/types/to-d3d12-heap-properties.md delete mode 100644 docs/api/rhi/d3d12/types/to-d3d12-rect.md delete mode 100644 docs/api/rhi/d3d12/types/to-d3d12-texture-desc.md delete mode 100644 docs/api/rhi/d3d12/types/to-d3d12-viewport.md delete mode 100644 docs/api/rhi/d3d12/types/types.md delete mode 100644 docs/api/rhi/d3d12/unordered-access-view/constructor.md delete mode 100644 docs/api/rhi/d3d12/unordered-access-view/destructor.md delete mode 100644 docs/api/rhi/d3d12/unordered-access-view/get-cpu-descriptor-handle.md delete mode 100644 docs/api/rhi/d3d12/unordered-access-view/index.md delete mode 100644 docs/api/rhi/d3d12/unordered-access-view/initialize.md delete mode 100644 docs/api/rhi/d3d12/unordered-access-view/shutdown.md delete mode 100644 docs/api/rhi/d3d12/unordered-access-view/unordered-access-view.md delete mode 100644 docs/api/rhi/descriptor-pool/descriptor-pool.md delete mode 100644 docs/api/rhi/descriptor-pool/destructor.md delete mode 100644 docs/api/rhi/descriptor-pool/get-descriptor-count.md delete mode 100644 docs/api/rhi/descriptor-pool/get-native-handle.md delete mode 100644 docs/api/rhi/descriptor-pool/get-type.md delete mode 100644 docs/api/rhi/descriptor-pool/initialize.md delete mode 100644 docs/api/rhi/descriptor-pool/shutdown.md delete mode 100644 docs/api/rhi/device/compile-shader.md delete mode 100644 docs/api/rhi/device/constructor.md delete mode 100644 docs/api/rhi/device/create-buffer.md delete mode 100644 docs/api/rhi/device/create-command-list.md delete mode 100644 docs/api/rhi/device/create-command-queue.md delete mode 100644 docs/api/rhi/device/create-fence.md delete mode 100644 docs/api/rhi/device/create-pipeline-state.md delete mode 100644 docs/api/rhi/device/create-sampler.md delete mode 100644 docs/api/rhi/device/create-shader.md delete mode 100644 docs/api/rhi/device/create-swap-chain.md delete mode 100644 docs/api/rhi/device/create-texture.md delete mode 100644 docs/api/rhi/device/destructor.md delete mode 100644 docs/api/rhi/device/device.md delete mode 100644 docs/api/rhi/device/get-capabilities.md delete mode 100644 docs/api/rhi/device/get-device-info.md delete mode 100644 docs/api/rhi/device/get-native-device.md delete mode 100644 docs/api/rhi/device/initialize.md delete mode 100644 docs/api/rhi/device/shutdown.md delete mode 100644 docs/api/rhi/enums/blend-factor.md delete mode 100644 docs/api/rhi/enums/blend-op.md delete mode 100644 docs/api/rhi/enums/border-color.md delete mode 100644 docs/api/rhi/enums/buffer-type.md delete mode 100644 docs/api/rhi/enums/color-write-mask.md delete mode 100644 docs/api/rhi/enums/command-queue-type.md delete mode 100644 docs/api/rhi/enums/comparison-func.md delete mode 100644 docs/api/rhi/enums/cull-mode.md delete mode 100644 docs/api/rhi/enums/descriptor-heap-type.md delete mode 100644 docs/api/rhi/enums/descriptor-type.md delete mode 100644 docs/api/rhi/enums/enums.md delete mode 100644 docs/api/rhi/enums/fill-mode.md delete mode 100644 docs/api/rhi/enums/filter-mode.md delete mode 100644 docs/api/rhi/enums/format.md delete mode 100644 docs/api/rhi/enums/heap-type.md delete mode 100644 docs/api/rhi/enums/load-action.md delete mode 100644 docs/api/rhi/enums/logic-op.md delete mode 100644 docs/api/rhi/enums/pipeline-type.md delete mode 100644 docs/api/rhi/enums/present-flags.md delete mode 100644 docs/api/rhi/enums/primitive-topology.md delete mode 100644 docs/api/rhi/enums/query-type.md delete mode 100644 docs/api/rhi/enums/resource-states.md delete mode 100644 docs/api/rhi/enums/rhi-type.md delete mode 100644 docs/api/rhi/enums/root-parameter-type.md delete mode 100644 docs/api/rhi/enums/shader-type.md delete mode 100644 docs/api/rhi/enums/shader-visibility.md delete mode 100644 docs/api/rhi/enums/stencil-op.md delete mode 100644 docs/api/rhi/enums/store-action.md delete mode 100644 docs/api/rhi/enums/texture-address-mode.md delete mode 100644 docs/api/rhi/enums/texture-type.md delete mode 100644 docs/api/rhi/factory/create-rhi-device-string.md delete mode 100644 docs/api/rhi/factory/create-rhi-device-type.md delete mode 100644 docs/api/rhi/factory/destructor.md delete mode 100644 docs/api/rhi/factory/factory.md delete mode 100644 docs/api/rhi/fence/constructor.md delete mode 100644 docs/api/rhi/fence/destructor.md delete mode 100644 docs/api/rhi/fence/fence.md delete mode 100644 docs/api/rhi/fence/get-completed-value.md delete mode 100644 docs/api/rhi/fence/get-native-handle.md delete mode 100644 docs/api/rhi/fence/is-signaled.md delete mode 100644 docs/api/rhi/fence/shutdown.md delete mode 100644 docs/api/rhi/fence/signal-value.md delete mode 100644 docs/api/rhi/fence/signal.md delete mode 100644 docs/api/rhi/fence/wait.md delete mode 100644 docs/api/rhi/framebuffer/framebuffer.md delete mode 100644 docs/api/rhi/framebuffer/get-height.md delete mode 100644 docs/api/rhi/framebuffer/get-native-handle.md delete mode 100644 docs/api/rhi/framebuffer/get-width.md delete mode 100644 docs/api/rhi/framebuffer/initialize.md delete mode 100644 docs/api/rhi/framebuffer/is-valid.md delete mode 100644 docs/api/rhi/framebuffer/shutdown.md delete mode 100644 docs/api/rhi/opengl/README.md delete mode 100644 docs/api/rhi/opengl/buffer/bind-base.md delete mode 100644 docs/api/rhi/opengl/buffer/bind.md delete mode 100644 docs/api/rhi/opengl/buffer/buffer.md delete mode 100644 docs/api/rhi/opengl/buffer/get-id.md delete mode 100644 docs/api/rhi/opengl/buffer/get-type.md delete mode 100644 docs/api/rhi/opengl/buffer/initialize-index-buffer.md delete mode 100644 docs/api/rhi/opengl/buffer/initialize-vertex-buffer.md delete mode 100644 docs/api/rhi/opengl/buffer/initialize.md delete mode 100644 docs/api/rhi/opengl/buffer/is-dynamic.md delete mode 100644 docs/api/rhi/opengl/buffer/map.md delete mode 100644 docs/api/rhi/opengl/buffer/set-data.md delete mode 100644 docs/api/rhi/opengl/buffer/unbind.md delete mode 100644 docs/api/rhi/opengl/buffer/unmap.md delete mode 100644 docs/api/rhi/opengl/command-list/clear-color.md delete mode 100644 docs/api/rhi/opengl/command-list/clear-depth-stencil.md delete mode 100644 docs/api/rhi/opengl/command-list/clear-depth.md delete mode 100644 docs/api/rhi/opengl/command-list/clear-render-target.md delete mode 100644 docs/api/rhi/opengl/command-list/clear-stencil.md delete mode 100644 docs/api/rhi/opengl/command-list/clear.md delete mode 100644 docs/api/rhi/opengl/command-list/command-list.md delete mode 100644 docs/api/rhi/opengl/command-list/copy-resource.md delete mode 100644 docs/api/rhi/opengl/command-list/dispatch.md delete mode 100644 docs/api/rhi/opengl/command-list/draw-indexed.md delete mode 100644 docs/api/rhi/opengl/command-list/draw.md delete mode 100644 docs/api/rhi/opengl/command-list/opengl-methods.md delete mode 100644 docs/api/rhi/opengl/command-list/set-blend-factor.md delete mode 100644 docs/api/rhi/opengl/command-list/set-blend-state.md delete mode 100644 docs/api/rhi/opengl/command-list/set-depth-stencil-state.md delete mode 100644 docs/api/rhi/opengl/command-list/set-index-buffer.md delete mode 100644 docs/api/rhi/opengl/command-list/set-pipeline-state.md delete mode 100644 docs/api/rhi/opengl/command-list/set-primitive-topology.md delete mode 100644 docs/api/rhi/opengl/command-list/set-render-targets.md delete mode 100644 docs/api/rhi/opengl/command-list/set-scissor-rect.md delete mode 100644 docs/api/rhi/opengl/command-list/set-scissor-rects.md delete mode 100644 docs/api/rhi/opengl/command-list/set-stencil-ref.md delete mode 100644 docs/api/rhi/opengl/command-list/set-vertex-buffer.md delete mode 100644 docs/api/rhi/opengl/command-list/set-vertex-buffers.md delete mode 100644 docs/api/rhi/opengl/command-list/set-viewport.md delete mode 100644 docs/api/rhi/opengl/command-list/set-viewports.md delete mode 100644 docs/api/rhi/opengl/command-list/transition-barrier.md delete mode 100644 docs/api/rhi/opengl/command-queue/command-queue.md delete mode 100644 docs/api/rhi/opengl/command-queue/execute-command-lists.md delete mode 100644 docs/api/rhi/opengl/command-queue/get-completed-value.md delete mode 100644 docs/api/rhi/opengl/command-queue/get-native-handle.md delete mode 100644 docs/api/rhi/opengl/command-queue/get-timestamp-frequency.md delete mode 100644 docs/api/rhi/opengl/command-queue/get-type.md delete mode 100644 docs/api/rhi/opengl/command-queue/shutdown.md delete mode 100644 docs/api/rhi/opengl/command-queue/signal.md delete mode 100644 docs/api/rhi/opengl/command-queue/wait-for-idle.md delete mode 100644 docs/api/rhi/opengl/command-queue/wait.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/bind-framebuffer.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/bind.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/clear-depth-stencil.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/clear-depth.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/clear-stencil.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/constructor.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/depth-stencil-format.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/depth-stencil-type.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/depth-stencil-view.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/destructor.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/get-framebuffer.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/get-mip-level.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/get-size.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/get-texture.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/initialize-cubemap.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/initialize.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/openGLDepthStencilViewDesc.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/shutdown.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/unbind-framebuffer.md delete mode 100644 docs/api/rhi/opengl/depth-stencil-view/unbind.md delete mode 100644 docs/api/rhi/opengl/device/compile-shader.md delete mode 100644 docs/api/rhi/opengl/device/constructor.md delete mode 100644 docs/api/rhi/opengl/device/create-buffer.md delete mode 100644 docs/api/rhi/opengl/device/create-command-list.md delete mode 100644 docs/api/rhi/opengl/device/create-command-queue.md delete mode 100644 docs/api/rhi/opengl/device/create-fence.md delete mode 100644 docs/api/rhi/opengl/device/create-pipeline-state.md delete mode 100644 docs/api/rhi/opengl/device/create-render-window.md delete mode 100644 docs/api/rhi/opengl/device/create-sampler.md delete mode 100644 docs/api/rhi/opengl/device/create-swap-chain.md delete mode 100644 docs/api/rhi/opengl/device/create-texture.md delete mode 100644 docs/api/rhi/opengl/device/destructor.md delete mode 100644 docs/api/rhi/opengl/device/device.md delete mode 100644 docs/api/rhi/opengl/device/get-capabilities.md delete mode 100644 docs/api/rhi/opengl/device/get-context.md delete mode 100644 docs/api/rhi/opengl/device/get-dc.md delete mode 100644 docs/api/rhi/opengl/device/get-device-info-impl.md delete mode 100644 docs/api/rhi/opengl/device/get-device-info.md delete mode 100644 docs/api/rhi/opengl/device/get-native-context.md delete mode 100644 docs/api/rhi/opengl/device/get-native-device.md delete mode 100644 docs/api/rhi/opengl/device/get-native-handle.md delete mode 100644 docs/api/rhi/opengl/device/get-window.md delete mode 100644 docs/api/rhi/opengl/device/initialize-with-existing-window.md delete mode 100644 docs/api/rhi/opengl/device/initialize.md delete mode 100644 docs/api/rhi/opengl/device/make-context-current.md delete mode 100644 docs/api/rhi/opengl/device/poll-events.md delete mode 100644 docs/api/rhi/opengl/device/set-should-close.md delete mode 100644 docs/api/rhi/opengl/device/should-close.md delete mode 100644 docs/api/rhi/opengl/device/shutdown.md delete mode 100644 docs/api/rhi/opengl/device/swap-buffers.md delete mode 100644 docs/api/rhi/opengl/fence/fence.md delete mode 100644 docs/api/rhi/opengl/fence/get-completed-value.md delete mode 100644 docs/api/rhi/opengl/fence/get-current-value.md delete mode 100644 docs/api/rhi/opengl/fence/get-native-handle.md delete mode 100644 docs/api/rhi/opengl/fence/get-status.md delete mode 100644 docs/api/rhi/opengl/fence/initialize.md delete mode 100644 docs/api/rhi/opengl/fence/is-signaled.md delete mode 100644 docs/api/rhi/opengl/fence/reset.md delete mode 100644 docs/api/rhi/opengl/fence/shutdown.md delete mode 100644 docs/api/rhi/opengl/fence/signal.md delete mode 100644 docs/api/rhi/opengl/fence/wait.md delete mode 100644 docs/api/rhi/opengl/opengl.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/apply-blend.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/apply-depth-stencil.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/apply-rasterizer.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/apply-scissor.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/apply-viewport.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/apply.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/attach-shader.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/bind.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/clear.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/constructor.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/destructor.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/detach-shader.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/get-blend-state.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/get-depth-stencil-state.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/get-native-handle.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/get-rasterizer-state.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/get-type.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/pipeline-state.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/set-blend-state.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/set-clear-color.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/set-depth-stencil-state.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/set-logical-operation.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/set-rasterizer-state.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/set-scissor.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/set-viewport.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/shutdown.md delete mode 100644 docs/api/rhi/opengl/pipeline-state/unbind.md delete mode 100644 docs/api/rhi/opengl/render-target-view/bind-framebuffer.md delete mode 100644 docs/api/rhi/opengl/render-target-view/bind.md delete mode 100644 docs/api/rhi/opengl/render-target-view/clear.md delete mode 100644 docs/api/rhi/opengl/render-target-view/get-framebuffer.md delete mode 100644 docs/api/rhi/opengl/render-target-view/get-height.md delete mode 100644 docs/api/rhi/opengl/render-target-view/get-mip-level.md delete mode 100644 docs/api/rhi/opengl/render-target-view/get-size.md delete mode 100644 docs/api/rhi/opengl/render-target-view/get-texture.md delete mode 100644 docs/api/rhi/opengl/render-target-view/initialize-cubemap.md delete mode 100644 docs/api/rhi/opengl/render-target-view/initialize.md delete mode 100644 docs/api/rhi/opengl/render-target-view/render-target-view.md delete mode 100644 docs/api/rhi/opengl/render-target-view/shutdown.md delete mode 100644 docs/api/rhi/opengl/render-target-view/unbind-framebuffer.md delete mode 100644 docs/api/rhi/opengl/render-target-view/unbind.md delete mode 100644 docs/api/rhi/opengl/sampler/bind.md delete mode 100644 docs/api/rhi/opengl/sampler/constructor.md delete mode 100644 docs/api/rhi/opengl/sampler/get-id.md delete mode 100644 docs/api/rhi/opengl/sampler/initialize.md delete mode 100644 docs/api/rhi/opengl/sampler/sampler.md delete mode 100644 docs/api/rhi/opengl/sampler/shutdown.md delete mode 100644 docs/api/rhi/opengl/sampler/unbind.md delete mode 100644 docs/api/rhi/opengl/shader/compile-compute.md delete mode 100644 docs/api/rhi/opengl/shader/compile-from-file-vs-fs.md delete mode 100644 docs/api/rhi/opengl/shader/compile-from-file-vs-gs-fs.md delete mode 100644 docs/api/rhi/opengl/shader/compile-type.md delete mode 100644 docs/api/rhi/opengl/shader/compile-vs-fs.md delete mode 100644 docs/api/rhi/opengl/shader/get-id.md delete mode 100644 docs/api/rhi/opengl/shader/get-uniform-location.md delete mode 100644 docs/api/rhi/opengl/shader/set-float-array.md delete mode 100644 docs/api/rhi/opengl/shader/set-int-array.md delete mode 100644 docs/api/rhi/opengl/shader/set-mat2.md delete mode 100644 docs/api/rhi/opengl/shader/set-mat3.md delete mode 100644 docs/api/rhi/opengl/shader/set-mat4-array.md delete mode 100644 docs/api/rhi/opengl/shader/set-vec3-array.md delete mode 100644 docs/api/rhi/opengl/shader/set-vec4-array.md delete mode 100644 docs/api/rhi/opengl/shader/shader.md delete mode 100644 docs/api/rhi/opengl/shader/use.md delete mode 100644 docs/api/rhi/opengl/swap-chain/constructor.md delete mode 100644 docs/api/rhi/opengl/swap-chain/destructor.md delete mode 100644 docs/api/rhi/opengl/swap-chain/get-current-back-buffer-index.md delete mode 100644 docs/api/rhi/opengl/swap-chain/get-current-back-buffer.md delete mode 100644 docs/api/rhi/opengl/swap-chain/get-framebuffer-height.md delete mode 100644 docs/api/rhi/opengl/swap-chain/get-framebuffer-width.md delete mode 100644 docs/api/rhi/opengl/swap-chain/get-height.md delete mode 100644 docs/api/rhi/opengl/swap-chain/get-native-handle.md delete mode 100644 docs/api/rhi/opengl/swap-chain/get-width.md delete mode 100644 docs/api/rhi/opengl/swap-chain/get-window.md delete mode 100644 docs/api/rhi/opengl/swap-chain/initialize-mode.md delete mode 100644 docs/api/rhi/opengl/swap-chain/initialize.md delete mode 100644 docs/api/rhi/opengl/swap-chain/is-fullscreen.md delete mode 100644 docs/api/rhi/opengl/swap-chain/is-vsync.md delete mode 100644 docs/api/rhi/opengl/swap-chain/poll-events.md delete mode 100644 docs/api/rhi/opengl/swap-chain/present-mode.md delete mode 100644 docs/api/rhi/opengl/swap-chain/present.md delete mode 100644 docs/api/rhi/opengl/swap-chain/resize.md delete mode 100644 docs/api/rhi/opengl/swap-chain/set-framebuffer-size.md delete mode 100644 docs/api/rhi/opengl/swap-chain/set-fullscreen.md delete mode 100644 docs/api/rhi/opengl/swap-chain/set-should-close.md delete mode 100644 docs/api/rhi/opengl/swap-chain/set-vsync.md delete mode 100644 docs/api/rhi/opengl/swap-chain/should-close.md delete mode 100644 docs/api/rhi/opengl/swap-chain/shutdown.md delete mode 100644 docs/api/rhi/opengl/swap-chain/surface-format.md delete mode 100644 docs/api/rhi/opengl/swap-chain/swap-buffers.md delete mode 100644 docs/api/rhi/opengl/swap-chain/swap-chain.md delete mode 100644 docs/api/rhi/opengl/texture/bind-image.md delete mode 100644 docs/api/rhi/opengl/texture/bind.md delete mode 100644 docs/api/rhi/opengl/texture/constructors.md delete mode 100644 docs/api/rhi/opengl/texture/generate-mipmap.md delete mode 100644 docs/api/rhi/opengl/texture/get-id.md delete mode 100644 docs/api/rhi/opengl/texture/get-opengl-type.md delete mode 100644 docs/api/rhi/opengl/texture/initialize-2d.md delete mode 100644 docs/api/rhi/opengl/texture/initialize-cube-map.md delete mode 100644 docs/api/rhi/opengl/texture/initialize.md delete mode 100644 docs/api/rhi/opengl/texture/load-from-file.md delete mode 100644 docs/api/rhi/opengl/texture/set-filtering.md delete mode 100644 docs/api/rhi/opengl/texture/set-format.md delete mode 100644 docs/api/rhi/opengl/texture/set-wrapping.md delete mode 100644 docs/api/rhi/opengl/texture/texture.md delete mode 100644 docs/api/rhi/opengl/texture/unbind.md delete mode 100644 docs/api/rhi/opengl/vertex-array/add-vertex-buffer.md delete mode 100644 docs/api/rhi/opengl/vertex-array/bind.md delete mode 100644 docs/api/rhi/opengl/vertex-array/constructor.md delete mode 100644 docs/api/rhi/opengl/vertex-array/destructor.md delete mode 100644 docs/api/rhi/opengl/vertex-array/get-id.md delete mode 100644 docs/api/rhi/opengl/vertex-array/get-index-buffer.md delete mode 100644 docs/api/rhi/opengl/vertex-array/get-index-count.md delete mode 100644 docs/api/rhi/opengl/vertex-array/initialize.md delete mode 100644 docs/api/rhi/opengl/vertex-array/set-index-buffer.md delete mode 100644 docs/api/rhi/opengl/vertex-array/shutdown.md delete mode 100644 docs/api/rhi/opengl/vertex-array/unbind.md delete mode 100644 docs/api/rhi/opengl/vertex-array/vertex-array.md delete mode 100644 docs/api/rhi/opengl/vertex-array/vertex-attribute.md delete mode 100644 docs/api/rhi/pipeline-layout/constructor.md delete mode 100644 docs/api/rhi/pipeline-layout/destructor.md delete mode 100644 docs/api/rhi/pipeline-layout/get-native-handle.md delete mode 100644 docs/api/rhi/pipeline-layout/initialize.md delete mode 100644 docs/api/rhi/pipeline-layout/pipeline-layout.md delete mode 100644 docs/api/rhi/pipeline-layout/shutdown.md delete mode 100644 docs/api/rhi/pipeline-state/bind.md delete mode 100644 docs/api/rhi/pipeline-state/constructor.md delete mode 100644 docs/api/rhi/pipeline-state/destructor.md delete mode 100644 docs/api/rhi/pipeline-state/get-native-handle.md delete mode 100644 docs/api/rhi/pipeline-state/get-type.md delete mode 100644 docs/api/rhi/pipeline-state/pipeline-state.md delete mode 100644 docs/api/rhi/pipeline-state/shutdown.md delete mode 100644 docs/api/rhi/pipeline-state/unbind.md delete mode 100644 docs/api/rhi/render-pass/get-color-attachment-count.md delete mode 100644 docs/api/rhi/render-pass/get-color-attachments.md delete mode 100644 docs/api/rhi/render-pass/get-depth-stencil-attachment.md delete mode 100644 docs/api/rhi/render-pass/get-native-handle.md delete mode 100644 docs/api/rhi/render-pass/initialize.md delete mode 100644 docs/api/rhi/render-pass/render-pass.md delete mode 100644 docs/api/rhi/render-pass/shutdown.md delete mode 100644 docs/api/rhi/rhi.md delete mode 100644 docs/api/rhi/sampler/bind.md delete mode 100644 docs/api/rhi/sampler/constructor.md delete mode 100644 docs/api/rhi/sampler/destructor.md delete mode 100644 docs/api/rhi/sampler/get-id.md delete mode 100644 docs/api/rhi/sampler/get-native-handle.md delete mode 100644 docs/api/rhi/sampler/sampler.md delete mode 100644 docs/api/rhi/sampler/shutdown.md delete mode 100644 docs/api/rhi/sampler/unbind.md delete mode 100644 docs/api/rhi/shader/bind.md delete mode 100644 docs/api/rhi/shader/compile-from-file.md delete mode 100644 docs/api/rhi/shader/compile.md delete mode 100644 docs/api/rhi/shader/constructor.md delete mode 100644 docs/api/rhi/shader/destructor.md delete mode 100644 docs/api/rhi/shader/get-native-handle.md delete mode 100644 docs/api/rhi/shader/get-type.md delete mode 100644 docs/api/rhi/shader/is-valid.md delete mode 100644 docs/api/rhi/shader/set-float.md delete mode 100644 docs/api/rhi/shader/set-int.md delete mode 100644 docs/api/rhi/shader/set-mat4.md delete mode 100644 docs/api/rhi/shader/set-vec3.md delete mode 100644 docs/api/rhi/shader/set-vec4.md delete mode 100644 docs/api/rhi/shader/shader.md delete mode 100644 docs/api/rhi/shader/shutdown.md delete mode 100644 docs/api/rhi/shader/unbind.md delete mode 100644 docs/api/rhi/swap-chain/constructor.md delete mode 100644 docs/api/rhi/swap-chain/destructor.md delete mode 100644 docs/api/rhi/swap-chain/get-current-back-buffer-index.md delete mode 100644 docs/api/rhi/swap-chain/get-current-back-buffer.md delete mode 100644 docs/api/rhi/swap-chain/get-native-handle.md delete mode 100644 docs/api/rhi/swap-chain/is-fullscreen.md delete mode 100644 docs/api/rhi/swap-chain/poll-events.md delete mode 100644 docs/api/rhi/swap-chain/present.md delete mode 100644 docs/api/rhi/swap-chain/resize.md delete mode 100644 docs/api/rhi/swap-chain/set-fullscreen.md delete mode 100644 docs/api/rhi/swap-chain/set-should-close.md delete mode 100644 docs/api/rhi/swap-chain/should-close.md delete mode 100644 docs/api/rhi/swap-chain/shutdown.md delete mode 100644 docs/api/rhi/swap-chain/swap-chain.md delete mode 100644 docs/api/rhi/texture/constructor.md delete mode 100644 docs/api/rhi/texture/destructor.md delete mode 100644 docs/api/rhi/texture/get-depth.md delete mode 100644 docs/api/rhi/texture/get-format.md delete mode 100644 docs/api/rhi/texture/get-height.md delete mode 100644 docs/api/rhi/texture/get-mip-levels.md delete mode 100644 docs/api/rhi/texture/get-name.md delete mode 100644 docs/api/rhi/texture/get-native-handle.md delete mode 100644 docs/api/rhi/texture/get-state.md delete mode 100644 docs/api/rhi/texture/get-texture-type.md delete mode 100644 docs/api/rhi/texture/get-width.md delete mode 100644 docs/api/rhi/texture/set-name.md delete mode 100644 docs/api/rhi/texture/set-state.md delete mode 100644 docs/api/rhi/texture/shutdown.md delete mode 100644 docs/api/rhi/texture/texture.md delete mode 100644 docs/api/rhi/types/types.md delete mode 100644 docs/api/scene/scene-manager/create-scene.md delete mode 100644 docs/api/scene/scene-manager/get-active-scene.md delete mode 100644 docs/api/scene/scene-manager/get-all-scenes.md delete mode 100644 docs/api/scene/scene-manager/get-scene.md delete mode 100644 docs/api/scene/scene-manager/get.md delete mode 100644 docs/api/scene/scene-manager/load-scene-async.md delete mode 100644 docs/api/scene/scene-manager/load-scene.md delete mode 100644 docs/api/scene/scene-manager/on-active-scene-changed.md delete mode 100644 docs/api/scene/scene-manager/on-scene-loaded.md delete mode 100644 docs/api/scene/scene-manager/on-scene-unloaded.md delete mode 100644 docs/api/scene/scene-manager/scene-manager.md delete mode 100644 docs/api/scene/scene-manager/set-active-scene.md delete mode 100644 docs/api/scene/scene-manager/unload-scene.md delete mode 100644 docs/api/scene/scene.md delete mode 100644 docs/api/scene/scene/create-game-object.md delete mode 100644 docs/api/scene/scene/deserialize-from-string.md delete mode 100644 docs/api/scene/scene/destroy-game-object.md delete mode 100644 docs/api/scene/scene/find-by-id.md delete mode 100644 docs/api/scene/scene/find-game-object-with-tag.md delete mode 100644 docs/api/scene/scene/find.md delete mode 100644 docs/api/scene/scene/fixed-update.md delete mode 100644 docs/api/scene/scene/get-name.md delete mode 100644 docs/api/scene/scene/get-root-game-objects.md delete mode 100644 docs/api/scene/scene/is-active.md delete mode 100644 docs/api/scene/scene/late-update.md delete mode 100644 docs/api/scene/scene/load.md delete mode 100644 docs/api/scene/scene/on-game-object-created.md delete mode 100644 docs/api/scene/scene/on-game-object-destroyed.md delete mode 100644 docs/api/scene/scene/save.md delete mode 100644 docs/api/scene/scene/scene.md delete mode 100644 docs/api/scene/scene/serialize-to-string.md delete mode 100644 docs/api/scene/scene/set-active.md delete mode 100644 docs/api/scene/scene/set-name.md delete mode 100644 docs/api/scene/scene/update.md delete mode 100644 docs/api/threading/lambda-task/constructor.md delete mode 100644 docs/api/threading/lambda-task/execute.md delete mode 100644 docs/api/threading/lambda-task/lambda-task.md delete mode 100644 docs/api/threading/mutex/lock-const.md delete mode 100644 docs/api/threading/mutex/lock.md delete mode 100644 docs/api/threading/mutex/mutex.md delete mode 100644 docs/api/threading/mutex/try-lock-const.md delete mode 100644 docs/api/threading/mutex/try_lock.md delete mode 100644 docs/api/threading/mutex/trylock.md delete mode 100644 docs/api/threading/mutex/unlock-const.md delete mode 100644 docs/api/threading/mutex/unlock.md delete mode 100644 docs/api/threading/read-write-lock/constructor.md delete mode 100644 docs/api/threading/read-write-lock/destructor.md delete mode 100644 docs/api/threading/read-write-lock/read-write-lock.md delete mode 100644 docs/api/threading/read-write-lock/readlock.md delete mode 100644 docs/api/threading/read-write-lock/readunlock.md delete mode 100644 docs/api/threading/read-write-lock/writelock.md delete mode 100644 docs/api/threading/read-write-lock/writeunlock.md delete mode 100644 docs/api/threading/spinlock/lock-stl.md delete mode 100644 docs/api/threading/spinlock/lock.md delete mode 100644 docs/api/threading/spinlock/spinlock.md delete mode 100644 docs/api/threading/spinlock/try-lock.md delete mode 100644 docs/api/threading/spinlock/trylock.md delete mode 100644 docs/api/threading/spinlock/unlock-stl.md delete mode 100644 docs/api/threading/spinlock/unlock.md delete mode 100644 docs/api/threading/task-group/add-dependency.md delete mode 100644 docs/api/threading/task-group/add-task-callback.md delete mode 100644 docs/api/threading/task-group/add-task.md delete mode 100644 docs/api/threading/task-group/cancel.md delete mode 100644 docs/api/threading/task-group/constructor.md delete mode 100644 docs/api/threading/task-group/destructor.md delete mode 100644 docs/api/threading/task-group/get-progress.md delete mode 100644 docs/api/threading/task-group/is-complete.md delete mode 100644 docs/api/threading/task-group/set-complete-callback.md delete mode 100644 docs/api/threading/task-group/task-group.md delete mode 100644 docs/api/threading/task-group/task-priority.md delete mode 100644 docs/api/threading/task-group/wait-for.md delete mode 100644 docs/api/threading/task-group/wait.md delete mode 100644 docs/api/threading/task-system-config/enable-task-profiling.md delete mode 100644 docs/api/threading/task-system-config/max-task-queue-size.md delete mode 100644 docs/api/threading/task-system-config/steal-tasks.md delete mode 100644 docs/api/threading/task-system-config/task-system-config.md delete mode 100644 docs/api/threading/task-system-config/thread-stack-size.md delete mode 100644 docs/api/threading/task-system-config/worker-thread-count.md delete mode 100644 docs/api/threading/task-system/create-task-group.md delete mode 100644 docs/api/threading/task-system/destroy-task-group.md delete mode 100644 docs/api/threading/task-system/get-worker-thread-count.md delete mode 100644 docs/api/threading/task-system/get.md delete mode 100644 docs/api/threading/task-system/initialize.md delete mode 100644 docs/api/threading/task-system/parallelfor.md delete mode 100644 docs/api/threading/task-system/runonmainthread.md delete mode 100644 docs/api/threading/task-system/shutdown.md delete mode 100644 docs/api/threading/task-system/submit.md delete mode 100644 docs/api/threading/task-system/task-system.md delete mode 100644 docs/api/threading/task-system/update.md delete mode 100644 docs/api/threading/task-system/wait.md delete mode 100644 docs/api/threading/task/add-ref.md delete mode 100644 docs/api/threading/task/execute.md delete mode 100644 docs/api/threading/task/get-id.md delete mode 100644 docs/api/threading/task/get-priority.md delete mode 100644 docs/api/threading/task/get-status.md delete mode 100644 docs/api/threading/task/on-cancel.md delete mode 100644 docs/api/threading/task/on-complete.md delete mode 100644 docs/api/threading/task/release.md delete mode 100644 docs/api/threading/task/set-id.md delete mode 100644 docs/api/threading/task/set-priority.md delete mode 100644 docs/api/threading/task/set-status.md delete mode 100644 docs/api/threading/task/task.md delete mode 100644 docs/api/threading/thread/detach.md delete mode 100644 docs/api/threading/thread/get-current-id.md delete mode 100644 docs/api/threading/thread/get-id.md delete mode 100644 docs/api/threading/thread/get-name.md delete mode 100644 docs/api/threading/thread/join.md delete mode 100644 docs/api/threading/thread/sleep.md delete mode 100644 docs/api/threading/thread/start.md delete mode 100644 docs/api/threading/thread/thread.md delete mode 100644 docs/api/threading/thread/yield.md delete mode 100644 docs/api/threading/threading.md diff --git a/docs/api-skill.md b/docs/api-skill.md index 040b6530..e4b22275 100644 --- a/docs/api-skill.md +++ b/docs/api-skill.md @@ -1,450 +1,277 @@ -# XCEngine API 文档编写与校验 Skill +# XCEngine API Documentation Skill -## 用途 +## 目标 -根据 XCEngine C++ 引擎源码生成符合规范的 API 文档,并进行格式校验和查漏补缺。 +本规范用于为 `XCEngine` 生成和维护一套唯一的 canonical API 文档。 -在开始编写任何文档之前,必须先完整阅读并深刻理解对应的源码上下文——包括设计目的、 -实现细节、边界条件、线程安全约定、与其他模块的依赖关系等。切忌在未读懂源码的情况下 -仅凭方法签名或猜测来编写文档。 +硬性要求: ---- +1. `docs/api/XCEngine/**` 必须与 `engine/include/XCEngine/**` 严格平行。 +2. 模块、子模块、类型、方法的命名必须稳定并贴近源码符号名。 +3. 不保留第二套正式文档树。历史文档只允许作为迁移过程中的临时材料,迁移完成后必须删除。 -## 文档目录结构 +在编写任何 API 文档之前,必须先阅读对应头文件与相关实现,理解职责、边界、生命周期、线程语义、错误条件和依赖关系。禁止只根据函数名猜测含义。 -``` +## Canonical 目录结构 + +```text docs/api/ -├── main.md # 总索引 -├── {module}/ -│ ├── {module}.md # 模块总览页 -│ ├── {class}/ -│ │ ├── {class}.md # 类/结构体/枚举总览页 -│ │ ├── {method}.md # 方法详情页 -│ │ └── ... +├── main.md +├── XCEngine/ +│ ├── XCEngine.md +│ ├── Debug/ +│ │ ├── Debug.md +│ │ ├── Logger/ +│ │ │ ├── Logger.md +│ │ │ ├── Log.md +│ │ │ ├── SetLevel.md +│ │ │ ├── Constructor.md +│ │ │ └── Destructor.md +│ │ └── RenderDocCapture/ +│ │ ├── RenderDocCapture.md +│ │ └── TriggerCapture.md +│ ├── Core/ +│ │ ├── Core.md +│ │ ├── Asset/ +│ │ │ ├── Asset.md +│ │ │ └── ResourceManager/ +│ │ │ ├── ResourceManager.md +│ │ │ └── Load.md +│ │ └── Math/ +│ │ └── Math.md │ └── ... -└── ... +├── _meta/ +└── _tools/ ``` -**命名规则:** +## 强制命名规则 -- 模块总览:`{module}/{module}.md`(如 `threading/threading.md`) -- 类/结构体文件夹:`{class-name}/`(小写,如 `task-group/`) -- 类总览页:`{class-name}/{class-name}.md` -- 方法详情页:`{class-name}/{method-name}.md` -- 构造函数/析构函数:`constructor.md`、`destructor.md`、`~typename.md` -- 运算符重载:`operator-assign.md`、`operator-plus.md`、`operator-subscript.md` -- 枚举详情页(单独文件夹时):`{enum-name}/{enum-name}.md` +### 1. 目录总览页 ---- +- 根目录总览页必须是 `docs/api/XCEngine/XCEngine.md` +- 模块总览页必须使用 `{ModuleName}.md` +- 子模块总览页必须使用 `{SubmoduleName}.md` +- canonical 目录下禁止使用 `README.md` 作为模块或子模块总览页 -## 页面类型与模板 +示例: -### 1. 模块总览页 +- `docs/api/XCEngine/Debug/Debug.md` +- `docs/api/XCEngine/Core/Core.md` +- `docs/api/XCEngine/Core/Asset/Asset.md` +- `docs/api/XCEngine/RHI/D3D12/D3D12.md` + +### 2. 类型目录 + +- 每个 public 类型或以 header 为单位的主声明,都必须是一个独立文件夹 +- 文件夹名必须与源码中的类型名或 header stem 保持一致 +- 保留原始大小写 + +示例: + +- `docs/api/XCEngine/Debug/Logger/` +- `docs/api/XCEngine/Core/Asset/ResourceManager/` +- `docs/api/XCEngine/RHI/D3D12/D3D12Device/` + +### 3. 类型总览页 + +- 类型总览页固定为 `{TypeName}/{TypeName}.md` +- 不允许把类型总览页直接平铺在模块目录下 + +### 4. 方法详情页 + +- 方法详情页必须放在所属类型文件夹内 +- 方法页文件名优先使用原函数名 +- 保留 PascalCase / camelCase / 全大写缩写 +- 禁止改成 lowercase kebab-case +- 同名重载共用一个方法页 + +示例: + +- `Get.md` +- `CreateBuffer.md` +- `SetRenderTarget.md` +- `LoadSceneAsync.md` +- `GetCPUHandle.md` + +### 5. 特殊方法命名 + +- 构造函数使用 `Constructor.md` +- 析构函数使用 `Destructor.md` +- 运算符重载使用可读的 PascalCase 名称 + +推荐映射: + +- `operator=` -> `OperatorAssign.md` +- `operator+=` -> `OperatorPlusAssign.md` +- `operator[]` -> `OperatorSubscript.md` +- `operator()` -> `OperatorCall.md` +- `operator bool` -> `OperatorBool.md` + +## 页面职责 + +### 1. 目录总览页 + +负责: + +- 说明模块或子模块的职责边界 +- 列出直接子目录 +- 列出当前目录下的 public headers 对应类型入口 +- 提供父级目录和 `docs/api/main.md` 的导航 + +不负责: + +- 展开详细方法级说明 +- 复制头文件全部声明 +- 保留迁移说明、旧入口跳转或双轨文档提示 + +### 2. 类型总览页 + +负责: + +- 标识命名空间、类型、头文件、职责 +- 给出声明概览 +- 列出公开字段、枚举值或公开方法 +- 作为该类型所有方法详情页的稳定入口 + +### 3. 方法详情页 + +负责: + +- 给出准确签名 +- 按重载分节 +- 说明参数、返回值、生命周期、线程语义和关键约束 +- 给出最小但可信的示例 + +## 推荐页面模板 + +### 1. 目录总览页模板 ```markdown -# {ModuleName} 模块概览 +# {DirName} -**命名空间**: `{namespace}` +**命名空间**: `{Namespace}` -**类型**: `module` +**类型**: `module` / `submodule` / `module-root` -**描述**: {模块一句话描述} +**描述**: {一句话说明当前目录职责} -## 概述 +## 概览 -{模块功能详细介绍} +{说明该目录在整个引擎中的职责边界、使用场景和与相邻模块的关系} -## 模块内容 +## 子目录 -### {子分类名} +- [ChildA](ChildA/ChildA.md) +- [ChildB](ChildB/ChildB.md) -| 组件 | 文件 | 描述 | -|------|------|------| -| [{ComponentName}](component/component.md) | `{Header.h}` | {描述} | -... +## 头文件 -## {可选:对标/对比表格} - -| 选项 | 适用场景 | 特点 | -|------|----------|------| -| `Foo` | 场景A | 特点X | - -## 使用示例 - -```cpp -{完整可运行代码} -``` +- [TypeA](TypeA/TypeA.md) - `TypeA.h` +- [TypeB](TypeB/TypeB.md) - `TypeB.h` ## 相关文档 -- [{DocName}](../{module}/{doc}.md) - {描述} +- [上级目录](../{ParentDir}.md) +- [API 总索引](../../main.md) ``` -### 2. 类总览页 +### 2. 类型总览页模板 ```markdown -# {ClassName} +# {TypeName} -**命名空间**: `{namespace}` +**命名空间**: `{Namespace}` -**类型**: `class` / `class (abstract)` / `class (singleton)` +**类型**: `class` / `class (abstract)` / `class (singleton)` / `struct` / `enum class` -**头文件**: `XCEngine/Path/Header.h` +**头文件**: `XCEngine/.../{Header}.h` -**描述**: {一句话功能描述} +**描述**: {一句话说明} -## 概述 +## 概览 -{类的详细介绍} +{描述该类型的职责、拥有关系、状态约束、典型使用方式} -## {可选章节} +## 声明概览 -### 类型别名 - -| 别名 | 类型 | 描述 | +| 声明 | 类型 | 说明 | |------|------|------| -| `SizeType` | `size_t` | 大小类型 | - -### 常量 - -| 常量 | 值 | 描述 | -|------|-----|------| -| `static constexpr SizeType npos` | `-1` | 无效位置标识 | +| `{TypeName}` | `class` | {说明} | ## 公共方法 | 方法 | 描述 | |------|------| -| [{MethodName}](method-name.md) | {描述} | -| `virtual ~ClassName()` | 虚析构函数 | - -## 受保护方法(如有) - -| 方法 | 描述 | -|------|------| -| `ClassName()` | 默认构造函数 | - -## 使用示例 - -```cpp -{完整可运行代码} -``` +| [Initialize](Initialize.md) | {描述} | +| [Shutdown](Shutdown.md) | {描述} | ## 相关文档 -- [{RelatedClass}](../module/class.md) - {描述} +- [当前目录](../{DirName}.md) ``` -### 3. Struct 总览页 +### 3. 方法详情页模板 ```markdown -# {StructName} +# {TypeName}::{MethodName} -**命名空间**: `{namespace}` - -**类型**: `struct` - -**头文件**: `XCEngine/Path/Header.h` - -**描述**: {一句话功能描述} - -## 结构体成员 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| [{memberName}](membername.md) | `type` | {描述} | {默认值} | - -## 使用示例 +{一句话说明方法职责} ```cpp -{完整可运行代码} +{完整签名} ``` -## 相关文档 +{方法行为说明,包括前置条件、后置条件、副作用和失败语义} -- [{RelatedDoc}](../module/doc.md) - {描述} -``` - -### 4. Enum 总览页 - -```markdown -# {EnumName} - -**命名空间**: `{namespace}` - -**类型**: `enum class` - -**头文件**: `XCEngine/Path/Header.h` - -## 概述 - -{枚举用途描述} - -## 枚举值 - -| 枚举值 | 数值 | 描述 | -|--------|------|------| -| `ValueName` | {N} | {描述} | -... - -## 使用示例 - -```cpp -{完整可运行代码} -``` - -## 相关文档 - -- [{RelatedDoc}](../module/doc.md) - {描述} -``` - -### 5. 方法详情页(单重载) - -```markdown -# {ClassName}::{MethodName} - -{一句话描述方法功能} - -```cpp -{完整方法签名} -``` - -{详细描述,包括设计目的和使用场景} - -**参数:** -- `paramName` - {参数描述} - -**返回:** {返回值类型} - {返回值含义} - -**线程安全:** ✅ / ❌ {可选说明} - -**复杂度:** O(n) {可选} - -**注意:** {可选,重要警告或注意事项} - -**示例:** - -```cpp -{完整可运行代码} -``` - -## 相关文档 - -- [{ClassName} 总览](class-name.md) -- [{RelatedMethod}](related-method.md) -``` - -### 6. 方法详情页(多重载) - -当方法有多个重载时,使用 `## 重载 N:` 分节: - -```markdown -# {ClassName}::{MethodName} - -{一句话描述方法功能} - -## 重载 1: {简短描述} - -```cpp -{签名1} -``` - -{描述} - -**参数:** +**参数** - `param` - {描述} -**返回:** {类型} - {含义} +**返回** +- `{Type}` - {描述} -**复杂度:** O(n) +**线程语义** +- {线程安全 / 只能主线程 / 调用方同步等} -## 重载 2: {简短描述} +**示例** ```cpp -{签名2} -``` - -... - -**线程安全:** ✅ - -**示例:** - -```cpp -{完整可运行代码} +{最小可信示例} ``` ## 相关文档 -- [{ClassName} 总览](class-name.md) +- [返回类型总览]({TypeName}.md) +- [返回模块目录](../{DirName}.md) ``` ---- +## 文风与质量要求 -## 元信息字段规范 +- 使用工程化、可审阅、可维护的描述,不写空话 +- 描述职责边界,而不是复述函数名 +- 线程、生命周期、资源所有权、错误条件必须明确 +- 示例必须与当前 public API 一致,不允许伪代码式胡写 +- 信息应放在正确层级,避免模块页和类型页职责混淆 +- 禁止生成双轨入口或保留旧目录跳转 -| 字段 | 必需 | 适用页面 | 说明 | -|------|------|----------|------| -| `**命名空间**` | 是 | 所有 | C++ 命名空间 | -| `**类型**` | 是 | 所有 | `class`、`struct`、`enum class`、`module` 等;class 可加修饰如 `(abstract)`、`(singleton)` | -| `**描述**` | 是 | 所有 | 一句话功能描述 | -| `**头文件**` | 是 | 类/struct/enum | 相对路径形式,如 `XCEngine/Threading/Task.h` | +## 重构与生成流程 ---- +1. 扫描 `engine/include/XCEngine/**` +2. 建立与源码平行的 `docs/api/XCEngine/**` 目录树 +3. 为每个源码目录生成 `{DirName}.md` 目录总览页 +4. 为每个 public header 生成 `{TypeName}/{TypeName}.md` +5. 为每个公开方法生成 `{TypeName}/{MethodName}.md` +6. 清理旧的 lowercase kebab-case 方法页和旧的 flat header 页面 +7. 删除迁移完成后的历史文档 +8. 审计链接、头文件引用覆盖率和目录索引完整性 -## 必需章节规范 +## 验收清单 -### 模块总览页 - -1. `## 概述` — 模块功能介绍 -2. `## 模块内容` — 分类表格(含组件名、文件、描述三列) -3. `## 使用示例` — 完整代码 -4. `## 相关文档` — 交叉引用 - -### 类总览页 - -1. `## 概述` — 类功能介绍 -2. `## 公共方法` — 方法列表(纯虚方法加标注 `(pure virtual)`) -3. `## 受保护方法` — 如有 -4. `## 使用示例` — 完整代码 -5. `## 相关文档` — 交叉引用 - -### Struct 总览页 - -1. `## 结构体成员` — 成员表格(含类型、描述、默认值三列) -2. `## 使用示例` — 完整代码 -3. `## 相关文档` — 交叉引用 - -### Enum 总览页 - -1. `## 枚举值` — 枚举值表格(含枚举值、数值、描述三列) -2. `## 使用示例` — 完整代码 -3. `## 相关文档` — 交叉引用 - -### 方法详情页 - -1. **方法签名** — 完整 `cpp` 代码块 -2. **详细描述** — 语义和使用场景 -3. **参数列表** — 每个参数的含义 -4. **返回值** — 类型和含义 -5. **示例代码** — 完整可运行代码 -6. **相关文档** — 返回类总览的链接 - ---- - -## 链接规范 - -- 同一类文件夹内跳转:`[MethodName](method-name.md)` -- 指向类总览:`[ClassName 总览](class-name.md)` -- 指向模块总览:`[../module.md](../module.md)` 或 `[模块名](../module.md)` -- 跨模块跳转:`[{DocName}](../module/class.md)` -- 链接文本使用中文(如"返回类总览")而非英文 - ---- - -## 特殊章节 - -### Singleton 类 - -Singleton 类在 `## 公共方法` 后可加 `## 单例访问` 章节: - -```markdown -## 单例访问 - -| 方法 | 描述 | -|------|------| -| `static ClassName& Get()` | 获取单例实例 | -``` - -### std::hash 特化 - -String 等需要 hash 的类,在方法列表后加: - -```markdown -## std::hash 特化 - -```cpp -namespace std { - template<> - struct hash { - size_t operator()(const XCEngine::Containers::String& str) const noexcept; - }; -} -``` - -{描述 hash 算法细节} -``` - -### 构造函数详细表 - -某些类(如 ConsoleLogSink)在类总览页末尾用表格记录构造函数参数默认值: - -```markdown -## 构造函数详细 - -| 属性 | 值 | -|------|-----| -| 默认 `m_colorOutput` | `true` | -``` - ---- - -## 代码示例规范 - -- 语言标签:`cpp` -- 包含必要的 `#include` -- 示例完整可运行(不是代码片段) -- 代码注释使用中文 - ---- - -## 线程安全标注 - -- `✅` — 线程安全 -- `❌` — 非线程安全 -- 可附加括号说明:`✅ (内部使用 mutex 保护)` - ---- - -## 文档一致性检查 - -生成或修改文档时,需检查: - -1. **元信息完整性** — 每页都有命名空间、类型、描述、头文件(类/struct/enum) -2. **链接有效性** — 所有相对链接指向的文件确实存在 -3. **内容无重复** — 同一页面中不要出现重复的描述、参数、示例等 -4. **类型匹配** — `**类型**` 字段与实际 C++ 类型一致 -5. **枚举数值** — enum 页面包含数值列 -6. **默认值** — struct 页面成员表格包含默认值列 -7. **命名一致** — 页面文件名与 H1 标题一致 - ---- - -## 生成流程 - -> **核心原则:在动手写文档之前,必须先完整阅读并深刻理解源码上下文。** - -1. **阅读源码**:完整阅读目标类的头文件(.h)和实现文件(.cpp),理解设计意图、数据成员、 - 工作流程、边界条件、线程安全约定、与其他模块的依赖关系。不要只看签名就写文档。 -2. **扫描提取**:在充分理解的基础上,系统性提取方法签名、成员变量、枚举值、文档注释等信息。 -3. **创建结构**:为每个类创建文件夹,生成类总览页和方法详情页。 -4. **检查一致性**:运行链接检查、字段完整性检查。 -5. **补充缺失**:对照源码,检查现有文档是否完整,如有缺失的 .md 文件(类总览页、方法详情页等) - 必须自行创建;如现有文档中缺少示例、枚举值说明、参数描述等内容,也要自行补充完整,不要留空。 -6. **输出报告**:列出生成文件列表、缺失内容、发现的问题。 - ---- - -## 使用示例 - -用户输入: -``` -完善 docs/api 文档,检查并修复错误 -``` - -AI 执行: -1. 扫描指定源码目录 -2. 识别所有头文件中的 class/struct/enum -3. 对比现有文档,找出缺失文件和错误引用 -4. 生成或修复 Markdown 文档 -5. 输出生成报告和问题列表 +- `docs/api/XCEngine/**` 与 `engine/include/XCEngine/**` 目录结构平行 +- canonical 目录下没有模块级 `README.md` +- 每个类型都是一个独立文件夹 +- 每个类型总览页都是 `{TypeName}/{TypeName}.md` +- 方法页文件名使用原函数名或规范化运算符名 +- `docs/api/main.md` 指向 `docs/api/XCEngine/XCEngine.md` +- 所有 canonical `.md` 链接可解析 +- 所有 public headers 都有对应 canonical 文档入口 +- 仓库中不存在第二套正式 API 文档树 diff --git a/docs/api/XCEngine/Audio/Audio.md b/docs/api/XCEngine/Audio/Audio.md new file mode 100644 index 00000000..8f69e351 --- /dev/null +++ b/docs/api/XCEngine/Audio/Audio.md @@ -0,0 +1,30 @@ +# Audio + +**命名空间**: `XCEngine::Audio` + +**类型**: `module` + +**描述**: 音频系统、混音器、效果器与后端接口。 + +## 概览 + +该目录与 `XCEngine/Audio` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 头文件 + +- [AudioConfig](AudioConfig/AudioConfig.md) - `AudioConfig.h` +- [AudioMixer](AudioMixer/AudioMixer.md) - `AudioMixer.h` +- [AudioSystem](AudioSystem/AudioSystem.md) - `AudioSystem.h` +- [AudioTypes](AudioTypes/AudioTypes.md) - `AudioTypes.h` +- [Equalizer](Equalizer/Equalizer.md) - `Equalizer.h` +- [FFTFilter](FFTFilter/FFTFilter.md) - `FFTFilter.h` +- [HRTF](HRTF/HRTF.md) - `HRTF.h` +- [IAudioBackend](IAudioBackend/IAudioBackend.md) - `IAudioBackend.h` +- [IAudioEffect](IAudioEffect/IAudioEffect.md) - `IAudioEffect.h` +- [Reverbation](Reverbation/Reverbation.md) - `Reverbation.h` +- [WindowsAudioBackend](WindowsAudioBackend/WindowsAudioBackend.md) - `WindowsAudioBackend.h` + +## 相关文档 + +- [上级目录](../XCEngine.md) +- [API 总索引](../../main.md) diff --git a/docs/api/XCEngine/Audio/AudioConfig/AudioConfig.md b/docs/api/XCEngine/Audio/AudioConfig/AudioConfig.md new file mode 100644 index 00000000..a64f5fd6 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioConfig/AudioConfig.md @@ -0,0 +1,35 @@ +# AudioConfig + +**命名空间**: `XCEngine::Audio` + +**类型**: `struct` + +**头文件**: `XCEngine/Audio/AudioConfig.h` + +**描述**: 定义 `XCEngine/Audio` 子目录中的 `AudioConfig` public API。 + +## 概述 + +`AudioConfig.h` 是 `XCEngine/Audio` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `AudioConfig` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `sampleRate` | `uint32_t` | 结构体公开字段。 | `48000` | +| `channels` | `uint16` | 结构体公开字段。 | `2` | +| `bitsPerSample` | `uint16` | 结构体公开字段。 | `16` | +| `speakerMode` | `SpeakerMode` | 结构体公开字段。 | `SpeakerMode::Stereo` | +| `bufferSize` | `uint32` | 结构体公开字段。 | `8192` | +| `bufferCount` | `uint32` | 结构体公开字段。 | `2` | + +## 相关文档 + +- [当前目录](../Audio.md) - 返回 `Audio` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Audio/AudioMixer/AddEffect.md b/docs/api/XCEngine/Audio/AudioMixer/AddEffect.md new file mode 100644 index 00000000..d66f8685 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioMixer/AddEffect.md @@ -0,0 +1,31 @@ +# AudioMixer::AddEffect + +添加元素或建立关联。 + +```cpp +void AddEffect(IAudioEffect* effect); +``` + +该方法声明于 `XCEngine/Audio/AudioMixer.h`,当前页面用于固定 `AudioMixer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `effect` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioMixer object; + // 根据上下文补齐参数后调用 AudioMixer::AddEffect(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioMixer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioMixer/AudioMixer.md b/docs/api/XCEngine/Audio/AudioMixer/AudioMixer.md new file mode 100644 index 00000000..5f74562f --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioMixer/AudioMixer.md @@ -0,0 +1,45 @@ +# AudioMixer + +**命名空间**: `XCEngine::Audio` + +**类型**: `class` + +**头文件**: `XCEngine/Audio/AudioMixer.h` + +**描述**: 定义 `XCEngine/Audio` 子目录中的 `AudioMixer` public API。 + +## 概述 + +`AudioMixer.h` 是 `XCEngine/Audio` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `AudioMixer` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [AudioMixer()](Constructor.md) | 构造对象。 | +| [~AudioMixer()](Destructor.md) | 销毁对象并释放相关资源。 | +| [SetVolume](SetVolume.md) | 设置相关状态或配置。 | +| [GetVolume](GetVolume.md) | 获取相关状态或对象。 | +| [SetMute](SetMute.md) | 设置相关状态或配置。 | +| [IsMute](IsMute.md) | 查询当前状态。 | +| [AddEffect](AddEffect.md) | 添加元素或建立关联。 | +| [RemoveEffect](RemoveEffect.md) | 移除元素或解除关联。 | +| [ClearEffects](ClearEffects.md) | 清空内部数据。 | +| [ProcessAudio](ProcessAudio.md) | 公开方法,详见头文件声明。 | +| [SetOutputMixer](SetOutputMixer.md) | 设置相关状态或配置。 | +| [GetOutputMixer](GetOutputMixer.md) | 获取相关状态或对象。 | +| [Set3DParams](Set3DParams.md) | 设置相关状态或配置。 | +| [Get3DParams](Get3DParams.md) | 获取相关状态或对象。 | +| [SetChannelVolume](SetChannelVolume.md) | 设置相关状态或配置。 | +| [GetChannelVolume](GetChannelVolume.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Audio.md) - 返回 `Audio` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Audio/AudioMixer/ClearEffects.md b/docs/api/XCEngine/Audio/AudioMixer/ClearEffects.md new file mode 100644 index 00000000..ce94279e --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioMixer/ClearEffects.md @@ -0,0 +1,30 @@ +# AudioMixer::ClearEffects + +清空内部数据。 + +```cpp +void ClearEffects(); +``` + +该方法声明于 `XCEngine/Audio/AudioMixer.h`,当前页面用于固定 `AudioMixer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioMixer object; + // 根据上下文补齐参数后调用 AudioMixer::ClearEffects(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioMixer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioMixer/Constructor.md b/docs/api/XCEngine/Audio/AudioMixer/Constructor.md new file mode 100644 index 00000000..1778ef76 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioMixer/Constructor.md @@ -0,0 +1,28 @@ +# AudioMixer::AudioMixer() + +构造对象。 + +```cpp +AudioMixer(); +``` + +该方法声明于 `XCEngine/Audio/AudioMixer.h`,当前页面用于固定 `AudioMixer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioMixer object; +} +``` + +## 相关文档 + +- [返回类总览](AudioMixer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioMixer/Destructor.md b/docs/api/XCEngine/Audio/AudioMixer/Destructor.md new file mode 100644 index 00000000..64bb8edd --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioMixer/Destructor.md @@ -0,0 +1,29 @@ +# AudioMixer::~AudioMixer() + +销毁对象并释放相关资源。 + +```cpp +~AudioMixer(); +``` + +该方法声明于 `XCEngine/Audio/AudioMixer.h`,当前页面用于固定 `AudioMixer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioMixer object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](AudioMixer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioMixer/Get3DParams.md b/docs/api/XCEngine/Audio/AudioMixer/Get3DParams.md new file mode 100644 index 00000000..090626d7 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioMixer/Get3DParams.md @@ -0,0 +1,30 @@ +# AudioMixer::Get3DParams + +获取相关状态或对象。 + +```cpp +const Audio3DParams& Get3DParams() const; +``` + +该方法声明于 `XCEngine/Audio/AudioMixer.h`,当前页面用于固定 `AudioMixer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Audio3DParams&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioMixer object; + // 根据上下文补齐参数后调用 AudioMixer::Get3DParams(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioMixer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioMixer/GetChannelVolume.md b/docs/api/XCEngine/Audio/AudioMixer/GetChannelVolume.md new file mode 100644 index 00000000..088f045d --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioMixer/GetChannelVolume.md @@ -0,0 +1,31 @@ +# AudioMixer::GetChannelVolume + +获取相关状态或对象。 + +```cpp +float GetChannelVolume(AudioChannel channel) const; +``` + +该方法声明于 `XCEngine/Audio/AudioMixer.h`,当前页面用于固定 `AudioMixer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `channel` - 参数语义详见头文件声明。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioMixer object; + // 根据上下文补齐参数后调用 AudioMixer::GetChannelVolume(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioMixer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioMixer/GetOutputMixer.md b/docs/api/XCEngine/Audio/AudioMixer/GetOutputMixer.md new file mode 100644 index 00000000..1400dc05 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioMixer/GetOutputMixer.md @@ -0,0 +1,30 @@ +# AudioMixer::GetOutputMixer + +获取相关状态或对象。 + +```cpp +AudioMixer* GetOutputMixer() const; +``` + +该方法声明于 `XCEngine/Audio/AudioMixer.h`,当前页面用于固定 `AudioMixer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `AudioMixer*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioMixer object; + // 根据上下文补齐参数后调用 AudioMixer::GetOutputMixer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioMixer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioMixer/GetVolume.md b/docs/api/XCEngine/Audio/AudioMixer/GetVolume.md new file mode 100644 index 00000000..6ecc92b4 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioMixer/GetVolume.md @@ -0,0 +1,30 @@ +# AudioMixer::GetVolume + +获取相关状态或对象。 + +```cpp +float GetVolume() const; +``` + +该方法声明于 `XCEngine/Audio/AudioMixer.h`,当前页面用于固定 `AudioMixer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioMixer object; + // 根据上下文补齐参数后调用 AudioMixer::GetVolume(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioMixer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioMixer/IsMute.md b/docs/api/XCEngine/Audio/AudioMixer/IsMute.md new file mode 100644 index 00000000..16773b74 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioMixer/IsMute.md @@ -0,0 +1,30 @@ +# AudioMixer::IsMute + +查询当前状态。 + +```cpp +bool IsMute() const; +``` + +该方法声明于 `XCEngine/Audio/AudioMixer.h`,当前页面用于固定 `AudioMixer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioMixer object; + // 根据上下文补齐参数后调用 AudioMixer::IsMute(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioMixer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioMixer/ProcessAudio.md b/docs/api/XCEngine/Audio/AudioMixer/ProcessAudio.md new file mode 100644 index 00000000..bd08df4c --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioMixer/ProcessAudio.md @@ -0,0 +1,33 @@ +# AudioMixer::ProcessAudio + +公开方法,详见头文件声明。 + +```cpp +void ProcessAudio(float* buffer, uint32 sampleCount, uint32 channels); +``` + +该方法声明于 `XCEngine/Audio/AudioMixer.h`,当前页面用于固定 `AudioMixer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `sampleCount` - 参数语义详见头文件声明。 +- `channels` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioMixer object; + // 根据上下文补齐参数后调用 AudioMixer::ProcessAudio(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioMixer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioMixer/RemoveEffect.md b/docs/api/XCEngine/Audio/AudioMixer/RemoveEffect.md new file mode 100644 index 00000000..7c8191d9 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioMixer/RemoveEffect.md @@ -0,0 +1,31 @@ +# AudioMixer::RemoveEffect + +移除元素或解除关联。 + +```cpp +void RemoveEffect(IAudioEffect* effect); +``` + +该方法声明于 `XCEngine/Audio/AudioMixer.h`,当前页面用于固定 `AudioMixer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `effect` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioMixer object; + // 根据上下文补齐参数后调用 AudioMixer::RemoveEffect(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioMixer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioMixer/Set3DParams.md b/docs/api/XCEngine/Audio/AudioMixer/Set3DParams.md new file mode 100644 index 00000000..94ba3fa7 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioMixer/Set3DParams.md @@ -0,0 +1,31 @@ +# AudioMixer::Set3DParams + +设置相关状态或配置。 + +```cpp +void Set3DParams(const Audio3DParams& params); +``` + +该方法声明于 `XCEngine/Audio/AudioMixer.h`,当前页面用于固定 `AudioMixer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `params` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioMixer object; + // 根据上下文补齐参数后调用 AudioMixer::Set3DParams(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioMixer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioMixer/SetChannelVolume.md b/docs/api/XCEngine/Audio/AudioMixer/SetChannelVolume.md new file mode 100644 index 00000000..28d8591e --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioMixer/SetChannelVolume.md @@ -0,0 +1,32 @@ +# AudioMixer::SetChannelVolume + +设置相关状态或配置。 + +```cpp +void SetChannelVolume(AudioChannel channel, float volume); +``` + +该方法声明于 `XCEngine/Audio/AudioMixer.h`,当前页面用于固定 `AudioMixer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `channel` - 参数语义详见头文件声明。 +- `volume` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioMixer object; + // 根据上下文补齐参数后调用 AudioMixer::SetChannelVolume(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioMixer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioMixer/SetMute.md b/docs/api/XCEngine/Audio/AudioMixer/SetMute.md new file mode 100644 index 00000000..0f18e8b8 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioMixer/SetMute.md @@ -0,0 +1,31 @@ +# AudioMixer::SetMute + +设置相关状态或配置。 + +```cpp +void SetMute(bool mute); +``` + +该方法声明于 `XCEngine/Audio/AudioMixer.h`,当前页面用于固定 `AudioMixer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `mute` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioMixer object; + // 根据上下文补齐参数后调用 AudioMixer::SetMute(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioMixer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioMixer/SetOutputMixer.md b/docs/api/XCEngine/Audio/AudioMixer/SetOutputMixer.md new file mode 100644 index 00000000..f216edf5 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioMixer/SetOutputMixer.md @@ -0,0 +1,31 @@ +# AudioMixer::SetOutputMixer + +设置相关状态或配置。 + +```cpp +void SetOutputMixer(AudioMixer* mixer); +``` + +该方法声明于 `XCEngine/Audio/AudioMixer.h`,当前页面用于固定 `AudioMixer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `mixer` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioMixer object; + // 根据上下文补齐参数后调用 AudioMixer::SetOutputMixer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioMixer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioMixer/SetVolume.md b/docs/api/XCEngine/Audio/AudioMixer/SetVolume.md new file mode 100644 index 00000000..ac716d0b --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioMixer/SetVolume.md @@ -0,0 +1,31 @@ +# AudioMixer::SetVolume + +设置相关状态或配置。 + +```cpp +void SetVolume(float volume); +``` + +该方法声明于 `XCEngine/Audio/AudioMixer.h`,当前页面用于固定 `AudioMixer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `volume` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioMixer object; + // 根据上下文补齐参数后调用 AudioMixer::SetVolume(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioMixer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/AudioSystem.md b/docs/api/XCEngine/Audio/AudioSystem/AudioSystem.md new file mode 100644 index 00000000..8b26af15 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/AudioSystem.md @@ -0,0 +1,51 @@ +# AudioSystem + +**命名空间**: `XCEngine::Audio` + +**类型**: `class (singleton)` + +**头文件**: `XCEngine/Audio/AudioSystem.h` + +**描述**: 定义 `XCEngine/Audio` 子目录中的 `AudioSystem` public API。 + +## 概述 + +`AudioSystem.h` 是 `XCEngine/Audio` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `AudioSystem` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Get](Get.md) | 获取相关状态或对象。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Update](Update.md) | 更新运行时状态。 | +| [SetBackend](SetBackend.md) | 设置相关状态或配置。 | +| [GetBackend](GetBackend.md) | 获取相关状态或对象。 | +| [GetCurrentDevice](GetCurrentDevice.md) | 获取相关状态或对象。 | +| [SetDevice](SetDevice.md) | 设置相关状态或配置。 | +| [GetAvailableDevices](GetAvailableDevices.md) | 获取相关状态或对象。 | +| [GetMasterVolume](GetMasterVolume.md) | 获取相关状态或对象。 | +| [SetMasterVolume](SetMasterVolume.md) | 设置相关状态或配置。 | +| [IsMuted](IsMuted.md) | 查询当前状态。 | +| [SetMuted](SetMuted.md) | 设置相关状态或配置。 | +| [ProcessAudio](ProcessAudio.md) | 公开方法,详见头文件声明。 | +| [SetListenerTransform](SetListenerTransform.md) | 设置相关状态或配置。 | +| [SetListenerVelocity](SetListenerVelocity.md) | 设置相关状态或配置。 | +| [GetListenerPosition](GetListenerPosition.md) | 获取相关状态或对象。 | +| [GetListenerRotation](GetListenerRotation.md) | 获取相关状态或对象。 | +| [GetListenerVelocity](GetListenerVelocity.md) | 获取相关状态或对象。 | +| [RegisterSource](RegisterSource.md) | 注册对象、回调或映射。 | +| [UnregisterSource](UnregisterSource.md) | 取消注册对象、回调或映射。 | +| [GetStats](GetStats.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Audio.md) - 返回 `Audio` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Audio/AudioSystem/Get.md b/docs/api/XCEngine/Audio/AudioSystem/Get.md new file mode 100644 index 00000000..441a07d7 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/Get.md @@ -0,0 +1,29 @@ +# AudioSystem::Get + +获取相关状态或对象。 + +```cpp +static AudioSystem& Get(); +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `AudioSystem&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + auto& instance = XCEngine::Audio::AudioSystem::Get(); + (void)instance; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/GetAvailableDevices.md b/docs/api/XCEngine/Audio/AudioSystem/GetAvailableDevices.md new file mode 100644 index 00000000..2fbe5fdb --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/GetAvailableDevices.md @@ -0,0 +1,31 @@ +# AudioSystem::GetAvailableDevices + +获取相关状态或对象。 + +```cpp +void GetAvailableDevices(std::vector& devices); +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `devices` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::GetAvailableDevices(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/GetBackend.md b/docs/api/XCEngine/Audio/AudioSystem/GetBackend.md new file mode 100644 index 00000000..4459a81d --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/GetBackend.md @@ -0,0 +1,30 @@ +# AudioSystem::GetBackend + +获取相关状态或对象。 + +```cpp +IAudioBackend* GetBackend() const; +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `IAudioBackend*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::GetBackend(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/GetCurrentDevice.md b/docs/api/XCEngine/Audio/AudioSystem/GetCurrentDevice.md new file mode 100644 index 00000000..3bc80b76 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/GetCurrentDevice.md @@ -0,0 +1,30 @@ +# AudioSystem::GetCurrentDevice + +获取相关状态或对象。 + +```cpp +std::string GetCurrentDevice() const; +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::string` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::GetCurrentDevice(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/GetListenerPosition.md b/docs/api/XCEngine/Audio/AudioSystem/GetListenerPosition.md new file mode 100644 index 00000000..b4675eef --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/GetListenerPosition.md @@ -0,0 +1,30 @@ +# AudioSystem::GetListenerPosition + +获取相关状态或对象。 + +```cpp +const Math::Vector3& GetListenerPosition() const; +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Math::Vector3&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::GetListenerPosition(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/GetListenerRotation.md b/docs/api/XCEngine/Audio/AudioSystem/GetListenerRotation.md new file mode 100644 index 00000000..1a24bc65 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/GetListenerRotation.md @@ -0,0 +1,30 @@ +# AudioSystem::GetListenerRotation + +获取相关状态或对象。 + +```cpp +const Math::Quaternion& GetListenerRotation() const; +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Math::Quaternion&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::GetListenerRotation(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/GetListenerVelocity.md b/docs/api/XCEngine/Audio/AudioSystem/GetListenerVelocity.md new file mode 100644 index 00000000..b87db94b --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/GetListenerVelocity.md @@ -0,0 +1,30 @@ +# AudioSystem::GetListenerVelocity + +获取相关状态或对象。 + +```cpp +const Math::Vector3& GetListenerVelocity() const; +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Math::Vector3&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::GetListenerVelocity(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/GetMasterVolume.md b/docs/api/XCEngine/Audio/AudioSystem/GetMasterVolume.md new file mode 100644 index 00000000..ed86cb6e --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/GetMasterVolume.md @@ -0,0 +1,30 @@ +# AudioSystem::GetMasterVolume + +获取相关状态或对象。 + +```cpp +float GetMasterVolume() const; +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::GetMasterVolume(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/GetStats.md b/docs/api/XCEngine/Audio/AudioSystem/GetStats.md new file mode 100644 index 00000000..ec8d7bda --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/GetStats.md @@ -0,0 +1,30 @@ +# AudioSystem::GetStats + +获取相关状态或对象。 + +```cpp +const Stats& GetStats() const; +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Stats&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::GetStats(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/Initialize.md b/docs/api/XCEngine/Audio/AudioSystem/Initialize.md new file mode 100644 index 00000000..034a499c --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/Initialize.md @@ -0,0 +1,31 @@ +# AudioSystem::Initialize + +初始化内部状态。 + +```cpp +void Initialize(const AudioConfig& config); +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `config` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/IsMuted.md b/docs/api/XCEngine/Audio/AudioSystem/IsMuted.md new file mode 100644 index 00000000..02ddd391 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/IsMuted.md @@ -0,0 +1,30 @@ +# AudioSystem::IsMuted + +查询当前状态。 + +```cpp +bool IsMuted() const; +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::IsMuted(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/ProcessAudio.md b/docs/api/XCEngine/Audio/AudioSystem/ProcessAudio.md new file mode 100644 index 00000000..e52cdc59 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/ProcessAudio.md @@ -0,0 +1,33 @@ +# AudioSystem::ProcessAudio + +公开方法,详见头文件声明。 + +```cpp +void ProcessAudio(float* buffer, uint32 sampleCount, uint32 channels); +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `sampleCount` - 参数语义详见头文件声明。 +- `channels` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::ProcessAudio(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/RegisterSource.md b/docs/api/XCEngine/Audio/AudioSystem/RegisterSource.md new file mode 100644 index 00000000..7a038527 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/RegisterSource.md @@ -0,0 +1,31 @@ +# AudioSystem::RegisterSource + +注册对象、回调或映射。 + +```cpp +void RegisterSource(Components::AudioSourceComponent* source); +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `source` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::RegisterSource(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/SetBackend.md b/docs/api/XCEngine/Audio/AudioSystem/SetBackend.md new file mode 100644 index 00000000..444cdc20 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/SetBackend.md @@ -0,0 +1,31 @@ +# AudioSystem::SetBackend + +设置相关状态或配置。 + +```cpp +void SetBackend(std::unique_ptr backend); +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `backend` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::SetBackend(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/SetDevice.md b/docs/api/XCEngine/Audio/AudioSystem/SetDevice.md new file mode 100644 index 00000000..89639fc1 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/SetDevice.md @@ -0,0 +1,31 @@ +# AudioSystem::SetDevice + +设置相关状态或配置。 + +```cpp +void SetDevice(const std::string& deviceName); +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `deviceName` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::SetDevice(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/SetListenerTransform.md b/docs/api/XCEngine/Audio/AudioSystem/SetListenerTransform.md new file mode 100644 index 00000000..2d85c242 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/SetListenerTransform.md @@ -0,0 +1,32 @@ +# AudioSystem::SetListenerTransform + +设置相关状态或配置。 + +```cpp +void SetListenerTransform(const Math::Vector3& position, const Math::Quaternion& rotation); +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `position` - 参数语义详见头文件声明。 +- `rotation` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::SetListenerTransform(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/SetListenerVelocity.md b/docs/api/XCEngine/Audio/AudioSystem/SetListenerVelocity.md new file mode 100644 index 00000000..dba94b3f --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/SetListenerVelocity.md @@ -0,0 +1,31 @@ +# AudioSystem::SetListenerVelocity + +设置相关状态或配置。 + +```cpp +void SetListenerVelocity(const Math::Vector3& velocity); +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `velocity` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::SetListenerVelocity(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/SetMasterVolume.md b/docs/api/XCEngine/Audio/AudioSystem/SetMasterVolume.md new file mode 100644 index 00000000..f4313fb5 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/SetMasterVolume.md @@ -0,0 +1,31 @@ +# AudioSystem::SetMasterVolume + +设置相关状态或配置。 + +```cpp +void SetMasterVolume(float volume); +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `volume` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::SetMasterVolume(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/SetMuted.md b/docs/api/XCEngine/Audio/AudioSystem/SetMuted.md new file mode 100644 index 00000000..46befc70 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/SetMuted.md @@ -0,0 +1,31 @@ +# AudioSystem::SetMuted + +设置相关状态或配置。 + +```cpp +void SetMuted(bool muted); +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `muted` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::SetMuted(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/Shutdown.md b/docs/api/XCEngine/Audio/AudioSystem/Shutdown.md new file mode 100644 index 00000000..9bc983b6 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/Shutdown.md @@ -0,0 +1,30 @@ +# AudioSystem::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown(); +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/UnregisterSource.md b/docs/api/XCEngine/Audio/AudioSystem/UnregisterSource.md new file mode 100644 index 00000000..e405cfb8 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/UnregisterSource.md @@ -0,0 +1,31 @@ +# AudioSystem::UnregisterSource + +取消注册对象、回调或映射。 + +```cpp +void UnregisterSource(Components::AudioSourceComponent* source); +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `source` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::UnregisterSource(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioSystem/Update.md b/docs/api/XCEngine/Audio/AudioSystem/Update.md new file mode 100644 index 00000000..d9cce1a2 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioSystem/Update.md @@ -0,0 +1,31 @@ +# AudioSystem::Update + +更新运行时状态。 + +```cpp +void Update(float deltaTime); +``` + +该方法声明于 `XCEngine/Audio/AudioSystem.h`,当前页面用于固定 `AudioSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `deltaTime` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::AudioSystem object; + // 根据上下文补齐参数后调用 AudioSystem::Update(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSystem.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/AudioTypes/AudioTypes.md b/docs/api/XCEngine/Audio/AudioTypes/AudioTypes.md new file mode 100644 index 00000000..db4b8837 --- /dev/null +++ b/docs/api/XCEngine/Audio/AudioTypes/AudioTypes.md @@ -0,0 +1,43 @@ +# AudioTypes + +**命名空间**: `XCEngine::Audio` + +**类型**: `enum class` + +**头文件**: `XCEngine/Audio/AudioTypes.h` + +**描述**: 定义 `XCEngine/Audio` 子目录中的 `AudioTypes` public API。 + +## 概述 + +`AudioTypes.h` 是 `XCEngine/Audio` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `AudioResourceType` | `enum class` | 头文件中的公开声明。 | +| `AudioLoadState` | `enum class` | 头文件中的公开声明。 | +| `AudioFormat` | `enum class` | 头文件中的公开声明。 | +| `SpeakerMode` | `enum class` | 头文件中的公开声明。 | +| `AudioChannel` | `enum class` | 头文件中的公开声明。 | +| `PlayState` | `enum class` | 头文件中的公开声明。 | +| `StopMode` | `enum class` | 头文件中的公开声明。 | +| `PanMode` | `enum class` | 头文件中的公开声明。 | +| `VolumeSource` | `enum class` | 头文件中的公开声明。 | +| `Audio3DParams` | `struct` | 头文件中的公开声明。 | +| `AudioBufferDesc` | `struct` | 头文件中的公开声明。 | +| `SpatializerParams` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `AudioClip` | - | 枚举项。 | +| `AudioMixer` | - | 枚举项。 | +| `AudioBank` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Audio.md) - 返回 `Audio` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Audio/Equalizer/Constructor.md b/docs/api/XCEngine/Audio/Equalizer/Constructor.md new file mode 100644 index 00000000..bc38d862 --- /dev/null +++ b/docs/api/XCEngine/Audio/Equalizer/Constructor.md @@ -0,0 +1,28 @@ +# Equalizer::Equalizer() + +构造对象。 + +```cpp +Equalizer(); +``` + +该方法声明于 `XCEngine/Audio/Equalizer.h`,当前页面用于固定 `Equalizer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Equalizer object; +} +``` + +## 相关文档 + +- [返回类总览](Equalizer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Equalizer/Destructor.md b/docs/api/XCEngine/Audio/Equalizer/Destructor.md new file mode 100644 index 00000000..8340fe7d --- /dev/null +++ b/docs/api/XCEngine/Audio/Equalizer/Destructor.md @@ -0,0 +1,29 @@ +# Equalizer::~Equalizer() + +销毁对象并释放相关资源。 + +```cpp +~Equalizer() override; +``` + +该方法声明于 `XCEngine/Audio/Equalizer.h`,当前页面用于固定 `Equalizer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Equalizer object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](Equalizer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Equalizer/Equalizer.md b/docs/api/XCEngine/Audio/Equalizer/Equalizer.md new file mode 100644 index 00000000..e790474c --- /dev/null +++ b/docs/api/XCEngine/Audio/Equalizer/Equalizer.md @@ -0,0 +1,44 @@ +# Equalizer + +**命名空间**: `XCEngine::Audio` + +**类型**: `class` + +**头文件**: `XCEngine/Audio/Equalizer.h` + +**描述**: 定义 `XCEngine/Audio` 子目录中的 `Equalizer` public API。 + +## 概述 + +`Equalizer.h` 是 `XCEngine/Audio` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Equalizer` | `class` | 继承自 `IAudioEffect` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Equalizer()](Constructor.md) | 构造对象。 | +| [~Equalizer()](Destructor.md) | 销毁对象并释放相关资源。 | +| [ProcessAudio](ProcessAudio.md) | 公开方法,详见头文件声明。 | +| [SetBandCount](SetBandCount.md) | 设置相关状态或配置。 | +| [GetBandCount](GetBandCount.md) | 获取相关状态或对象。 | +| [SetBandFrequency](SetBandFrequency.md) | 设置相关状态或配置。 | +| [GetBandFrequency](GetBandFrequency.md) | 获取相关状态或对象。 | +| [SetBandGain](SetBandGain.md) | 设置相关状态或配置。 | +| [GetBandGain](GetBandGain.md) | 获取相关状态或对象。 | +| [SetBandQ](SetBandQ.md) | 设置相关状态或配置。 | +| [GetBandQ](GetBandQ.md) | 获取相关状态或对象。 | +| [SetEnabled](SetEnabled.md) | 设置相关状态或配置。 | +| [IsEnabled](IsEnabled.md) | 查询当前状态。 | +| [SetWetMix](SetWetMix.md) | 设置相关状态或配置。 | +| [GetWetMix](GetWetMix.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Audio.md) - 返回 `Audio` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Audio/Equalizer/GetBandCount.md b/docs/api/XCEngine/Audio/Equalizer/GetBandCount.md new file mode 100644 index 00000000..7397d19d --- /dev/null +++ b/docs/api/XCEngine/Audio/Equalizer/GetBandCount.md @@ -0,0 +1,30 @@ +# Equalizer::GetBandCount + +获取相关状态或对象。 + +```cpp +uint32 GetBandCount() const; +``` + +该方法声明于 `XCEngine/Audio/Equalizer.h`,当前页面用于固定 `Equalizer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Equalizer object; + // 根据上下文补齐参数后调用 Equalizer::GetBandCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Equalizer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Equalizer/GetBandFrequency.md b/docs/api/XCEngine/Audio/Equalizer/GetBandFrequency.md new file mode 100644 index 00000000..9c24c7e6 --- /dev/null +++ b/docs/api/XCEngine/Audio/Equalizer/GetBandFrequency.md @@ -0,0 +1,31 @@ +# Equalizer::GetBandFrequency + +获取相关状态或对象。 + +```cpp +float GetBandFrequency(uint32 band) const; +``` + +该方法声明于 `XCEngine/Audio/Equalizer.h`,当前页面用于固定 `Equalizer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `band` - 参数语义详见头文件声明。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Equalizer object; + // 根据上下文补齐参数后调用 Equalizer::GetBandFrequency(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Equalizer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Equalizer/GetBandGain.md b/docs/api/XCEngine/Audio/Equalizer/GetBandGain.md new file mode 100644 index 00000000..37136cb1 --- /dev/null +++ b/docs/api/XCEngine/Audio/Equalizer/GetBandGain.md @@ -0,0 +1,31 @@ +# Equalizer::GetBandGain + +获取相关状态或对象。 + +```cpp +float GetBandGain(uint32 band) const; +``` + +该方法声明于 `XCEngine/Audio/Equalizer.h`,当前页面用于固定 `Equalizer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `band` - 参数语义详见头文件声明。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Equalizer object; + // 根据上下文补齐参数后调用 Equalizer::GetBandGain(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Equalizer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Equalizer/GetBandQ.md b/docs/api/XCEngine/Audio/Equalizer/GetBandQ.md new file mode 100644 index 00000000..f2690d7d --- /dev/null +++ b/docs/api/XCEngine/Audio/Equalizer/GetBandQ.md @@ -0,0 +1,31 @@ +# Equalizer::GetBandQ + +获取相关状态或对象。 + +```cpp +float GetBandQ(uint32 band) const; +``` + +该方法声明于 `XCEngine/Audio/Equalizer.h`,当前页面用于固定 `Equalizer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `band` - 参数语义详见头文件声明。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Equalizer object; + // 根据上下文补齐参数后调用 Equalizer::GetBandQ(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Equalizer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Equalizer/GetWetMix.md b/docs/api/XCEngine/Audio/Equalizer/GetWetMix.md new file mode 100644 index 00000000..9795613d --- /dev/null +++ b/docs/api/XCEngine/Audio/Equalizer/GetWetMix.md @@ -0,0 +1,30 @@ +# Equalizer::GetWetMix + +获取相关状态或对象。 + +```cpp +float GetWetMix() const override; +``` + +该方法声明于 `XCEngine/Audio/Equalizer.h`,当前页面用于固定 `Equalizer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Equalizer object; + // 根据上下文补齐参数后调用 Equalizer::GetWetMix(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Equalizer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Equalizer/IsEnabled.md b/docs/api/XCEngine/Audio/Equalizer/IsEnabled.md new file mode 100644 index 00000000..db7bf901 --- /dev/null +++ b/docs/api/XCEngine/Audio/Equalizer/IsEnabled.md @@ -0,0 +1,30 @@ +# Equalizer::IsEnabled + +查询当前状态。 + +```cpp +bool IsEnabled() const override; +``` + +该方法声明于 `XCEngine/Audio/Equalizer.h`,当前页面用于固定 `Equalizer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Equalizer object; + // 根据上下文补齐参数后调用 Equalizer::IsEnabled(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Equalizer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Equalizer/ProcessAudio.md b/docs/api/XCEngine/Audio/Equalizer/ProcessAudio.md new file mode 100644 index 00000000..22be17f0 --- /dev/null +++ b/docs/api/XCEngine/Audio/Equalizer/ProcessAudio.md @@ -0,0 +1,33 @@ +# Equalizer::ProcessAudio + +公开方法,详见头文件声明。 + +```cpp +void ProcessAudio(float* buffer, uint32 sampleCount, uint32 channels) override; +``` + +该方法声明于 `XCEngine/Audio/Equalizer.h`,当前页面用于固定 `Equalizer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `sampleCount` - 参数语义详见头文件声明。 +- `channels` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Equalizer object; + // 根据上下文补齐参数后调用 Equalizer::ProcessAudio(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Equalizer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Equalizer/SetBandCount.md b/docs/api/XCEngine/Audio/Equalizer/SetBandCount.md new file mode 100644 index 00000000..17ae33ed --- /dev/null +++ b/docs/api/XCEngine/Audio/Equalizer/SetBandCount.md @@ -0,0 +1,31 @@ +# Equalizer::SetBandCount + +设置相关状态或配置。 + +```cpp +void SetBandCount(uint32 count); +``` + +该方法声明于 `XCEngine/Audio/Equalizer.h`,当前页面用于固定 `Equalizer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Equalizer object; + // 根据上下文补齐参数后调用 Equalizer::SetBandCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Equalizer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Equalizer/SetBandFrequency.md b/docs/api/XCEngine/Audio/Equalizer/SetBandFrequency.md new file mode 100644 index 00000000..a74c0c07 --- /dev/null +++ b/docs/api/XCEngine/Audio/Equalizer/SetBandFrequency.md @@ -0,0 +1,32 @@ +# Equalizer::SetBandFrequency + +设置相关状态或配置。 + +```cpp +void SetBandFrequency(uint32 band, float frequency); +``` + +该方法声明于 `XCEngine/Audio/Equalizer.h`,当前页面用于固定 `Equalizer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `band` - 参数语义详见头文件声明。 +- `frequency` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Equalizer object; + // 根据上下文补齐参数后调用 Equalizer::SetBandFrequency(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Equalizer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Equalizer/SetBandGain.md b/docs/api/XCEngine/Audio/Equalizer/SetBandGain.md new file mode 100644 index 00000000..f4f3c81e --- /dev/null +++ b/docs/api/XCEngine/Audio/Equalizer/SetBandGain.md @@ -0,0 +1,32 @@ +# Equalizer::SetBandGain + +设置相关状态或配置。 + +```cpp +void SetBandGain(uint32 band, float gainDb); +``` + +该方法声明于 `XCEngine/Audio/Equalizer.h`,当前页面用于固定 `Equalizer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `band` - 参数语义详见头文件声明。 +- `gainDb` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Equalizer object; + // 根据上下文补齐参数后调用 Equalizer::SetBandGain(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Equalizer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Equalizer/SetBandQ.md b/docs/api/XCEngine/Audio/Equalizer/SetBandQ.md new file mode 100644 index 00000000..681d4b8d --- /dev/null +++ b/docs/api/XCEngine/Audio/Equalizer/SetBandQ.md @@ -0,0 +1,32 @@ +# Equalizer::SetBandQ + +设置相关状态或配置。 + +```cpp +void SetBandQ(uint32 band, float q); +``` + +该方法声明于 `XCEngine/Audio/Equalizer.h`,当前页面用于固定 `Equalizer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `band` - 参数语义详见头文件声明。 +- `q` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Equalizer object; + // 根据上下文补齐参数后调用 Equalizer::SetBandQ(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Equalizer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Equalizer/SetEnabled.md b/docs/api/XCEngine/Audio/Equalizer/SetEnabled.md new file mode 100644 index 00000000..4c311095 --- /dev/null +++ b/docs/api/XCEngine/Audio/Equalizer/SetEnabled.md @@ -0,0 +1,31 @@ +# Equalizer::SetEnabled + +设置相关状态或配置。 + +```cpp +void SetEnabled(bool enabled) override; +``` + +该方法声明于 `XCEngine/Audio/Equalizer.h`,当前页面用于固定 `Equalizer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `enabled` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Equalizer object; + // 根据上下文补齐参数后调用 Equalizer::SetEnabled(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Equalizer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Equalizer/SetWetMix.md b/docs/api/XCEngine/Audio/Equalizer/SetWetMix.md new file mode 100644 index 00000000..8c2aa48f --- /dev/null +++ b/docs/api/XCEngine/Audio/Equalizer/SetWetMix.md @@ -0,0 +1,31 @@ +# Equalizer::SetWetMix + +设置相关状态或配置。 + +```cpp +void SetWetMix(float wetMix) override; +``` + +该方法声明于 `XCEngine/Audio/Equalizer.h`,当前页面用于固定 `Equalizer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `wetMix` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Equalizer object; + // 根据上下文补齐参数后调用 Equalizer::SetWetMix(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Equalizer.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/FFTFilter/Constructor.md b/docs/api/XCEngine/Audio/FFTFilter/Constructor.md new file mode 100644 index 00000000..120e0b84 --- /dev/null +++ b/docs/api/XCEngine/Audio/FFTFilter/Constructor.md @@ -0,0 +1,41 @@ +# FFTFilter::FFTFilter() + +构造对象。 + +该方法在 `XCEngine/Audio/FFTFilter.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +FFTFilter(); +``` + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +explicit FFTFilter(uint32 fftSize); +``` + +**参数:** +- `fftSize` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::FFTFilter object; +} +``` + +## 相关文档 + +- [返回类总览](FFTFilter.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/FFTFilter/Destructor.md b/docs/api/XCEngine/Audio/FFTFilter/Destructor.md new file mode 100644 index 00000000..100abd9f --- /dev/null +++ b/docs/api/XCEngine/Audio/FFTFilter/Destructor.md @@ -0,0 +1,29 @@ +# FFTFilter::~FFTFilter() + +销毁对象并释放相关资源。 + +```cpp +~FFTFilter() override; +``` + +该方法声明于 `XCEngine/Audio/FFTFilter.h`,当前页面用于固定 `FFTFilter` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::FFTFilter object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](FFTFilter.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/FFTFilter/FFTFilter.md b/docs/api/XCEngine/Audio/FFTFilter/FFTFilter.md new file mode 100644 index 00000000..4dc1317b --- /dev/null +++ b/docs/api/XCEngine/Audio/FFTFilter/FFTFilter.md @@ -0,0 +1,38 @@ +# FFTFilter + +**命名空间**: `XCEngine::Audio` + +**类型**: `class` + +**头文件**: `XCEngine/Audio/FFTFilter.h` + +**描述**: 定义 `XCEngine/Audio` 子目录中的 `FFTFilter` public API。 + +## 概述 + +`FFTFilter.h` 是 `XCEngine/Audio` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `FFTFilter` | `class` | 继承自 `IAudioEffect` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [FFTFilter()](Constructor.md) | 构造对象。 | +| [~FFTFilter()](Destructor.md) | 销毁对象并释放相关资源。 | +| [ProcessAudio](ProcessAudio.md) | 公开方法,详见头文件声明。 | +| [SetFFTSize](SetFFTSize.md) | 设置相关状态或配置。 | +| [GetFFTSize](GetFFTSize.md) | 获取相关状态或对象。 | +| [SetSmoothingFactor](SetSmoothingFactor.md) | 设置相关状态或配置。 | +| [GetSmoothingFactor](GetSmoothingFactor.md) | 获取相关状态或对象。 | +| [GetSpectrumData](GetSpectrumData.md) | 获取相关状态或对象。 | +| [GetSpectrumSize](GetSpectrumSize.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Audio.md) - 返回 `Audio` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Audio/FFTFilter/GetFFTSize.md b/docs/api/XCEngine/Audio/FFTFilter/GetFFTSize.md new file mode 100644 index 00000000..2a1d2b08 --- /dev/null +++ b/docs/api/XCEngine/Audio/FFTFilter/GetFFTSize.md @@ -0,0 +1,30 @@ +# FFTFilter::GetFFTSize + +获取相关状态或对象。 + +```cpp +uint32 GetFFTSize() const; +``` + +该方法声明于 `XCEngine/Audio/FFTFilter.h`,当前页面用于固定 `FFTFilter` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::FFTFilter object; + // 根据上下文补齐参数后调用 FFTFilter::GetFFTSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FFTFilter.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/FFTFilter/GetSmoothingFactor.md b/docs/api/XCEngine/Audio/FFTFilter/GetSmoothingFactor.md new file mode 100644 index 00000000..e9813c99 --- /dev/null +++ b/docs/api/XCEngine/Audio/FFTFilter/GetSmoothingFactor.md @@ -0,0 +1,30 @@ +# FFTFilter::GetSmoothingFactor + +获取相关状态或对象。 + +```cpp +float GetSmoothingFactor() const; +``` + +该方法声明于 `XCEngine/Audio/FFTFilter.h`,当前页面用于固定 `FFTFilter` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::FFTFilter object; + // 根据上下文补齐参数后调用 FFTFilter::GetSmoothingFactor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FFTFilter.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/FFTFilter/GetSpectrumData.md b/docs/api/XCEngine/Audio/FFTFilter/GetSpectrumData.md new file mode 100644 index 00000000..c5aad642 --- /dev/null +++ b/docs/api/XCEngine/Audio/FFTFilter/GetSpectrumData.md @@ -0,0 +1,30 @@ +# FFTFilter::GetSpectrumData + +获取相关状态或对象。 + +```cpp +const float* GetSpectrumData() const; +``` + +该方法声明于 `XCEngine/Audio/FFTFilter.h`,当前页面用于固定 `FFTFilter` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const float*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::FFTFilter object; + // 根据上下文补齐参数后调用 FFTFilter::GetSpectrumData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FFTFilter.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/FFTFilter/GetSpectrumSize.md b/docs/api/XCEngine/Audio/FFTFilter/GetSpectrumSize.md new file mode 100644 index 00000000..a9b5c37b --- /dev/null +++ b/docs/api/XCEngine/Audio/FFTFilter/GetSpectrumSize.md @@ -0,0 +1,30 @@ +# FFTFilter::GetSpectrumSize + +获取相关状态或对象。 + +```cpp +size_t GetSpectrumSize() const; +``` + +该方法声明于 `XCEngine/Audio/FFTFilter.h`,当前页面用于固定 `FFTFilter` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::FFTFilter object; + // 根据上下文补齐参数后调用 FFTFilter::GetSpectrumSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FFTFilter.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/FFTFilter/ProcessAudio.md b/docs/api/XCEngine/Audio/FFTFilter/ProcessAudio.md new file mode 100644 index 00000000..683aa41b --- /dev/null +++ b/docs/api/XCEngine/Audio/FFTFilter/ProcessAudio.md @@ -0,0 +1,33 @@ +# FFTFilter::ProcessAudio + +公开方法,详见头文件声明。 + +```cpp +void ProcessAudio(float* buffer, uint32 sampleCount, uint32 channels) override; +``` + +该方法声明于 `XCEngine/Audio/FFTFilter.h`,当前页面用于固定 `FFTFilter` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `sampleCount` - 参数语义详见头文件声明。 +- `channels` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::FFTFilter object; + // 根据上下文补齐参数后调用 FFTFilter::ProcessAudio(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FFTFilter.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/FFTFilter/SetFFTSize.md b/docs/api/XCEngine/Audio/FFTFilter/SetFFTSize.md new file mode 100644 index 00000000..443217b1 --- /dev/null +++ b/docs/api/XCEngine/Audio/FFTFilter/SetFFTSize.md @@ -0,0 +1,31 @@ +# FFTFilter::SetFFTSize + +设置相关状态或配置。 + +```cpp +void SetFFTSize(uint32 size); +``` + +该方法声明于 `XCEngine/Audio/FFTFilter.h`,当前页面用于固定 `FFTFilter` 类目录下的方法级 canonical 路径。 + +**参数:** +- `size` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::FFTFilter object; + // 根据上下文补齐参数后调用 FFTFilter::SetFFTSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FFTFilter.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/FFTFilter/SetSmoothingFactor.md b/docs/api/XCEngine/Audio/FFTFilter/SetSmoothingFactor.md new file mode 100644 index 00000000..dcf69866 --- /dev/null +++ b/docs/api/XCEngine/Audio/FFTFilter/SetSmoothingFactor.md @@ -0,0 +1,31 @@ +# FFTFilter::SetSmoothingFactor + +设置相关状态或配置。 + +```cpp +void SetSmoothingFactor(float factor); +``` + +该方法声明于 `XCEngine/Audio/FFTFilter.h`,当前页面用于固定 `FFTFilter` 类目录下的方法级 canonical 路径。 + +**参数:** +- `factor` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::FFTFilter object; + // 根据上下文补齐参数后调用 FFTFilter::SetSmoothingFactor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FFTFilter.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/HRTF/Constructor.md b/docs/api/XCEngine/Audio/HRTF/Constructor.md new file mode 100644 index 00000000..7dcb47af --- /dev/null +++ b/docs/api/XCEngine/Audio/HRTF/Constructor.md @@ -0,0 +1,28 @@ +# HRTF::HRTF() + +构造对象。 + +```cpp +HRTF(); +``` + +该方法声明于 `XCEngine/Audio/HRTF.h`,当前页面用于固定 `HRTF` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::HRTF object; +} +``` + +## 相关文档 + +- [返回类总览](HRTF.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/HRTF/Destructor.md b/docs/api/XCEngine/Audio/HRTF/Destructor.md new file mode 100644 index 00000000..a11e7bee --- /dev/null +++ b/docs/api/XCEngine/Audio/HRTF/Destructor.md @@ -0,0 +1,29 @@ +# HRTF::~HRTF() + +销毁对象并释放相关资源。 + +```cpp +~HRTF(); +``` + +该方法声明于 `XCEngine/Audio/HRTF.h`,当前页面用于固定 `HRTF` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::HRTF object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](HRTF.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/HRTF/GetCrossFeed.md b/docs/api/XCEngine/Audio/HRTF/GetCrossFeed.md new file mode 100644 index 00000000..a4da6788 --- /dev/null +++ b/docs/api/XCEngine/Audio/HRTF/GetCrossFeed.md @@ -0,0 +1,30 @@ +# HRTF::GetCrossFeed + +获取相关状态或对象。 + +```cpp +float GetCrossFeed() const; +``` + +该方法声明于 `XCEngine/Audio/HRTF.h`,当前页面用于固定 `HRTF` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::HRTF object; + // 根据上下文补齐参数后调用 HRTF::GetCrossFeed(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HRTF.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/HRTF/GetQualityLevel.md b/docs/api/XCEngine/Audio/HRTF/GetQualityLevel.md new file mode 100644 index 00000000..4ee2d9fb --- /dev/null +++ b/docs/api/XCEngine/Audio/HRTF/GetQualityLevel.md @@ -0,0 +1,30 @@ +# HRTF::GetQualityLevel + +获取相关状态或对象。 + +```cpp +uint32 GetQualityLevel() const; +``` + +该方法声明于 `XCEngine/Audio/HRTF.h`,当前页面用于固定 `HRTF` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::HRTF object; + // 根据上下文补齐参数后调用 HRTF::GetQualityLevel(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HRTF.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/HRTF/GetSpeedOfSound.md b/docs/api/XCEngine/Audio/HRTF/GetSpeedOfSound.md new file mode 100644 index 00000000..48cd7510 --- /dev/null +++ b/docs/api/XCEngine/Audio/HRTF/GetSpeedOfSound.md @@ -0,0 +1,30 @@ +# HRTF::GetSpeedOfSound + +获取相关状态或对象。 + +```cpp +float GetSpeedOfSound() const; +``` + +该方法声明于 `XCEngine/Audio/HRTF.h`,当前页面用于固定 `HRTF` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::HRTF object; + // 根据上下文补齐参数后调用 HRTF::GetSpeedOfSound(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HRTF.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/HRTF/HRTF.md b/docs/api/XCEngine/Audio/HRTF/HRTF.md new file mode 100644 index 00000000..575291ef --- /dev/null +++ b/docs/api/XCEngine/Audio/HRTF/HRTF.md @@ -0,0 +1,45 @@ +# HRTF + +**命名空间**: `XCEngine::Audio` + +**类型**: `class` + +**头文件**: `XCEngine/Audio/HRTF.h` + +**描述**: 定义 `XCEngine/Audio` 子目录中的 `HRTF` public API。 + +## 概述 + +`HRTF.h` 是 `XCEngine/Audio` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `HRTFParams` | `struct` | 头文件中的公开声明。 | +| `HRTF` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [HRTF()](Constructor.md) | 构造对象。 | +| [~HRTF()](Destructor.md) | 销毁对象并释放相关资源。 | +| [ProcessAudio](ProcessAudio.md) | 公开方法,详见头文件声明。 | +| [SetEnabled](SetEnabled.md) | 设置相关状态或配置。 | +| [IsEnabled](IsEnabled.md) | 查询当前状态。 | +| [SetHRTFEnabled](SetHRTFEnabled.md) | 设置相关状态或配置。 | +| [IsHRTFEnabled](IsHRTFEnabled.md) | 查询当前状态。 | +| [SetQualityLevel](SetQualityLevel.md) | 设置相关状态或配置。 | +| [GetQualityLevel](GetQualityLevel.md) | 获取相关状态或对象。 | +| [SetCrossFeed](SetCrossFeed.md) | 设置相关状态或配置。 | +| [GetCrossFeed](GetCrossFeed.md) | 获取相关状态或对象。 | +| [SetDopplerShiftEnabled](SetDopplerShiftEnabled.md) | 设置相关状态或配置。 | +| [IsDopplerShiftEnabled](IsDopplerShiftEnabled.md) | 查询当前状态。 | +| [SetSpeedOfSound](SetSpeedOfSound.md) | 设置相关状态或配置。 | +| [GetSpeedOfSound](GetSpeedOfSound.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Audio.md) - 返回 `Audio` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Audio/HRTF/IsDopplerShiftEnabled.md b/docs/api/XCEngine/Audio/HRTF/IsDopplerShiftEnabled.md new file mode 100644 index 00000000..7a5a9534 --- /dev/null +++ b/docs/api/XCEngine/Audio/HRTF/IsDopplerShiftEnabled.md @@ -0,0 +1,30 @@ +# HRTF::IsDopplerShiftEnabled + +查询当前状态。 + +```cpp +bool IsDopplerShiftEnabled() const; +``` + +该方法声明于 `XCEngine/Audio/HRTF.h`,当前页面用于固定 `HRTF` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::HRTF object; + // 根据上下文补齐参数后调用 HRTF::IsDopplerShiftEnabled(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HRTF.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/HRTF/IsEnabled.md b/docs/api/XCEngine/Audio/HRTF/IsEnabled.md new file mode 100644 index 00000000..b8ff02f1 --- /dev/null +++ b/docs/api/XCEngine/Audio/HRTF/IsEnabled.md @@ -0,0 +1,30 @@ +# HRTF::IsEnabled + +查询当前状态。 + +```cpp +bool IsEnabled() const; +``` + +该方法声明于 `XCEngine/Audio/HRTF.h`,当前页面用于固定 `HRTF` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::HRTF object; + // 根据上下文补齐参数后调用 HRTF::IsEnabled(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HRTF.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/HRTF/IsHRTFEnabled.md b/docs/api/XCEngine/Audio/HRTF/IsHRTFEnabled.md new file mode 100644 index 00000000..d7873f79 --- /dev/null +++ b/docs/api/XCEngine/Audio/HRTF/IsHRTFEnabled.md @@ -0,0 +1,30 @@ +# HRTF::IsHRTFEnabled + +查询当前状态。 + +```cpp +bool IsHRTFEnabled() const; +``` + +该方法声明于 `XCEngine/Audio/HRTF.h`,当前页面用于固定 `HRTF` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::HRTF object; + // 根据上下文补齐参数后调用 HRTF::IsHRTFEnabled(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HRTF.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/HRTF/ProcessAudio.md b/docs/api/XCEngine/Audio/HRTF/ProcessAudio.md new file mode 100644 index 00000000..eee2bebe --- /dev/null +++ b/docs/api/XCEngine/Audio/HRTF/ProcessAudio.md @@ -0,0 +1,36 @@ +# HRTF::ProcessAudio + +公开方法,详见头文件声明。 + +```cpp +void ProcessAudio(float* buffer, uint32 sampleCount, uint32 channels, const Math::Vector3& sourcePosition, const Math::Vector3& listenerPosition, const Math::Quaternion& listenerRotation); +``` + +该方法声明于 `XCEngine/Audio/HRTF.h`,当前页面用于固定 `HRTF` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `sampleCount` - 参数语义详见头文件声明。 +- `channels` - 参数语义详见头文件声明。 +- `sourcePosition` - 参数语义详见头文件声明。 +- `listenerPosition` - 参数语义详见头文件声明。 +- `listenerRotation` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::HRTF object; + // 根据上下文补齐参数后调用 HRTF::ProcessAudio(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HRTF.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/HRTF/SetCrossFeed.md b/docs/api/XCEngine/Audio/HRTF/SetCrossFeed.md new file mode 100644 index 00000000..646c0da5 --- /dev/null +++ b/docs/api/XCEngine/Audio/HRTF/SetCrossFeed.md @@ -0,0 +1,31 @@ +# HRTF::SetCrossFeed + +设置相关状态或配置。 + +```cpp +void SetCrossFeed(float crossFeed); +``` + +该方法声明于 `XCEngine/Audio/HRTF.h`,当前页面用于固定 `HRTF` 类目录下的方法级 canonical 路径。 + +**参数:** +- `crossFeed` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::HRTF object; + // 根据上下文补齐参数后调用 HRTF::SetCrossFeed(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HRTF.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/HRTF/SetDopplerShiftEnabled.md b/docs/api/XCEngine/Audio/HRTF/SetDopplerShiftEnabled.md new file mode 100644 index 00000000..545f8104 --- /dev/null +++ b/docs/api/XCEngine/Audio/HRTF/SetDopplerShiftEnabled.md @@ -0,0 +1,31 @@ +# HRTF::SetDopplerShiftEnabled + +设置相关状态或配置。 + +```cpp +void SetDopplerShiftEnabled(bool enabled); +``` + +该方法声明于 `XCEngine/Audio/HRTF.h`,当前页面用于固定 `HRTF` 类目录下的方法级 canonical 路径。 + +**参数:** +- `enabled` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::HRTF object; + // 根据上下文补齐参数后调用 HRTF::SetDopplerShiftEnabled(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HRTF.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/HRTF/SetEnabled.md b/docs/api/XCEngine/Audio/HRTF/SetEnabled.md new file mode 100644 index 00000000..d924b7ee --- /dev/null +++ b/docs/api/XCEngine/Audio/HRTF/SetEnabled.md @@ -0,0 +1,31 @@ +# HRTF::SetEnabled + +设置相关状态或配置。 + +```cpp +void SetEnabled(bool enabled); +``` + +该方法声明于 `XCEngine/Audio/HRTF.h`,当前页面用于固定 `HRTF` 类目录下的方法级 canonical 路径。 + +**参数:** +- `enabled` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::HRTF object; + // 根据上下文补齐参数后调用 HRTF::SetEnabled(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HRTF.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/HRTF/SetHRTFEnabled.md b/docs/api/XCEngine/Audio/HRTF/SetHRTFEnabled.md new file mode 100644 index 00000000..872ff33d --- /dev/null +++ b/docs/api/XCEngine/Audio/HRTF/SetHRTFEnabled.md @@ -0,0 +1,31 @@ +# HRTF::SetHRTFEnabled + +设置相关状态或配置。 + +```cpp +void SetHRTFEnabled(bool enabled); +``` + +该方法声明于 `XCEngine/Audio/HRTF.h`,当前页面用于固定 `HRTF` 类目录下的方法级 canonical 路径。 + +**参数:** +- `enabled` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::HRTF object; + // 根据上下文补齐参数后调用 HRTF::SetHRTFEnabled(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HRTF.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/HRTF/SetQualityLevel.md b/docs/api/XCEngine/Audio/HRTF/SetQualityLevel.md new file mode 100644 index 00000000..dbe54a8e --- /dev/null +++ b/docs/api/XCEngine/Audio/HRTF/SetQualityLevel.md @@ -0,0 +1,31 @@ +# HRTF::SetQualityLevel + +设置相关状态或配置。 + +```cpp +void SetQualityLevel(uint32 level); +``` + +该方法声明于 `XCEngine/Audio/HRTF.h`,当前页面用于固定 `HRTF` 类目录下的方法级 canonical 路径。 + +**参数:** +- `level` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::HRTF object; + // 根据上下文补齐参数后调用 HRTF::SetQualityLevel(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HRTF.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/HRTF/SetSpeedOfSound.md b/docs/api/XCEngine/Audio/HRTF/SetSpeedOfSound.md new file mode 100644 index 00000000..237a53e4 --- /dev/null +++ b/docs/api/XCEngine/Audio/HRTF/SetSpeedOfSound.md @@ -0,0 +1,31 @@ +# HRTF::SetSpeedOfSound + +设置相关状态或配置。 + +```cpp +void SetSpeedOfSound(float speed); +``` + +该方法声明于 `XCEngine/Audio/HRTF.h`,当前页面用于固定 `HRTF` 类目录下的方法级 canonical 路径。 + +**参数:** +- `speed` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::HRTF object; + // 根据上下文补齐参数后调用 HRTF::SetSpeedOfSound(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HRTF.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioBackend/Destructor.md b/docs/api/XCEngine/Audio/IAudioBackend/Destructor.md new file mode 100644 index 00000000..a9508980 --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioBackend/Destructor.md @@ -0,0 +1,29 @@ +# IAudioBackend::~IAudioBackend() + +销毁对象并释放相关资源。 + +```cpp +virtual ~IAudioBackend() = default; +``` + +该方法声明于 `XCEngine/Audio/IAudioBackend.h`,当前页面用于固定 `IAudioBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioBackend object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](IAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioBackend/GetAvailableDevices.md b/docs/api/XCEngine/Audio/IAudioBackend/GetAvailableDevices.md new file mode 100644 index 00000000..4ab712e8 --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioBackend/GetAvailableDevices.md @@ -0,0 +1,31 @@ +# IAudioBackend::GetAvailableDevices + +获取相关状态或对象。 + +```cpp +virtual void GetAvailableDevices(std::vector& devices) = 0; +``` + +该方法声明于 `XCEngine/Audio/IAudioBackend.h`,当前页面用于固定 `IAudioBackend` 类目录下的方法级 canonical 路径。 + +**参数:** +- `devices` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioBackend object; + // 根据上下文补齐参数后调用 IAudioBackend::GetAvailableDevices(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioBackend/GetConfig.md b/docs/api/XCEngine/Audio/IAudioBackend/GetConfig.md new file mode 100644 index 00000000..b1531dd2 --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioBackend/GetConfig.md @@ -0,0 +1,30 @@ +# IAudioBackend::GetConfig + +获取相关状态或对象。 + +```cpp +virtual AudioConfig GetConfig() const = 0; +``` + +该方法声明于 `XCEngine/Audio/IAudioBackend.h`,当前页面用于固定 `IAudioBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `AudioConfig` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioBackend object; + // 根据上下文补齐参数后调用 IAudioBackend::GetConfig(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioBackend/GetDeviceName.md b/docs/api/XCEngine/Audio/IAudioBackend/GetDeviceName.md new file mode 100644 index 00000000..e0b6508b --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioBackend/GetDeviceName.md @@ -0,0 +1,30 @@ +# IAudioBackend::GetDeviceName + +获取相关状态或对象。 + +```cpp +virtual std::string GetDeviceName() const = 0; +``` + +该方法声明于 `XCEngine/Audio/IAudioBackend.h`,当前页面用于固定 `IAudioBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::string` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioBackend object; + // 根据上下文补齐参数后调用 IAudioBackend::GetDeviceName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioBackend/GetMasterVolume.md b/docs/api/XCEngine/Audio/IAudioBackend/GetMasterVolume.md new file mode 100644 index 00000000..dcd8aab7 --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioBackend/GetMasterVolume.md @@ -0,0 +1,30 @@ +# IAudioBackend::GetMasterVolume + +获取相关状态或对象。 + +```cpp +virtual float GetMasterVolume() const = 0; +``` + +该方法声明于 `XCEngine/Audio/IAudioBackend.h`,当前页面用于固定 `IAudioBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioBackend object; + // 根据上下文补齐参数后调用 IAudioBackend::GetMasterVolume(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioBackend/IAudioBackend.md b/docs/api/XCEngine/Audio/IAudioBackend/IAudioBackend.md new file mode 100644 index 00000000..bdbe0f67 --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioBackend/IAudioBackend.md @@ -0,0 +1,46 @@ +# IAudioBackend + +**命名空间**: `XCEngine::Audio` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/Audio/IAudioBackend.h` + +**描述**: 定义 `XCEngine/Audio` 子目录中的 `IAudioBackend` public API。 + +## 概述 + +`IAudioBackend.h` 是 `XCEngine/Audio` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `IAudioBackend` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~IAudioBackend()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetDeviceName](GetDeviceName.md) | 获取相关状态或对象。 | +| [GetAvailableDevices](GetAvailableDevices.md) | 获取相关状态或对象。 | +| [SetDevice](SetDevice.md) | 设置相关状态或配置。 | +| [GetMasterVolume](GetMasterVolume.md) | 获取相关状态或对象。 | +| [SetMasterVolume](SetMasterVolume.md) | 设置相关状态或配置。 | +| [IsMuted](IsMuted.md) | 查询当前状态。 | +| [SetMuted](SetMuted.md) | 设置相关状态或配置。 | +| [Start](Start.md) | 公开方法,详见头文件声明。 | +| [Stop](Stop.md) | 公开方法,详见头文件声明。 | +| [Suspend](Suspend.md) | 公开方法,详见头文件声明。 | +| [Resume](Resume.md) | 公开方法,详见头文件声明。 | +| [ProcessAudio](ProcessAudio.md) | 公开方法,详见头文件声明。 | +| [IsRunning](IsRunning.md) | 查询当前状态。 | +| [GetConfig](GetConfig.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Audio.md) - 返回 `Audio` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Audio/IAudioBackend/Initialize.md b/docs/api/XCEngine/Audio/IAudioBackend/Initialize.md new file mode 100644 index 00000000..d478da5a --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioBackend/Initialize.md @@ -0,0 +1,31 @@ +# IAudioBackend::Initialize + +初始化内部状态。 + +```cpp +virtual bool Initialize(const AudioConfig& config) = 0; +``` + +该方法声明于 `XCEngine/Audio/IAudioBackend.h`,当前页面用于固定 `IAudioBackend` 类目录下的方法级 canonical 路径。 + +**参数:** +- `config` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioBackend object; + // 根据上下文补齐参数后调用 IAudioBackend::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioBackend/IsMuted.md b/docs/api/XCEngine/Audio/IAudioBackend/IsMuted.md new file mode 100644 index 00000000..29faf0ec --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioBackend/IsMuted.md @@ -0,0 +1,30 @@ +# IAudioBackend::IsMuted + +查询当前状态。 + +```cpp +virtual bool IsMuted() const = 0; +``` + +该方法声明于 `XCEngine/Audio/IAudioBackend.h`,当前页面用于固定 `IAudioBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioBackend object; + // 根据上下文补齐参数后调用 IAudioBackend::IsMuted(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioBackend/IsRunning.md b/docs/api/XCEngine/Audio/IAudioBackend/IsRunning.md new file mode 100644 index 00000000..cfb9b15e --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioBackend/IsRunning.md @@ -0,0 +1,30 @@ +# IAudioBackend::IsRunning + +查询当前状态。 + +```cpp +virtual bool IsRunning() const = 0; +``` + +该方法声明于 `XCEngine/Audio/IAudioBackend.h`,当前页面用于固定 `IAudioBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioBackend object; + // 根据上下文补齐参数后调用 IAudioBackend::IsRunning(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioBackend/ProcessAudio.md b/docs/api/XCEngine/Audio/IAudioBackend/ProcessAudio.md new file mode 100644 index 00000000..87f903fb --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioBackend/ProcessAudio.md @@ -0,0 +1,34 @@ +# IAudioBackend::ProcessAudio + +公开方法,详见头文件声明。 + +```cpp +virtual void ProcessAudio(float* buffer, uint32 bufferSize, uint32 channels, uint32 sampleRate) = 0; +``` + +该方法声明于 `XCEngine/Audio/IAudioBackend.h`,当前页面用于固定 `IAudioBackend` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `bufferSize` - 参数语义详见头文件声明。 +- `channels` - 参数语义详见头文件声明。 +- `sampleRate` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioBackend object; + // 根据上下文补齐参数后调用 IAudioBackend::ProcessAudio(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioBackend/Resume.md b/docs/api/XCEngine/Audio/IAudioBackend/Resume.md new file mode 100644 index 00000000..12df546b --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioBackend/Resume.md @@ -0,0 +1,30 @@ +# IAudioBackend::Resume + +公开方法,详见头文件声明。 + +```cpp +virtual void Resume() = 0; +``` + +该方法声明于 `XCEngine/Audio/IAudioBackend.h`,当前页面用于固定 `IAudioBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioBackend object; + // 根据上下文补齐参数后调用 IAudioBackend::Resume(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioBackend/SetDevice.md b/docs/api/XCEngine/Audio/IAudioBackend/SetDevice.md new file mode 100644 index 00000000..d66f26b5 --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioBackend/SetDevice.md @@ -0,0 +1,31 @@ +# IAudioBackend::SetDevice + +设置相关状态或配置。 + +```cpp +virtual bool SetDevice(const std::string& deviceName) = 0; +``` + +该方法声明于 `XCEngine/Audio/IAudioBackend.h`,当前页面用于固定 `IAudioBackend` 类目录下的方法级 canonical 路径。 + +**参数:** +- `deviceName` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioBackend object; + // 根据上下文补齐参数后调用 IAudioBackend::SetDevice(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioBackend/SetMasterVolume.md b/docs/api/XCEngine/Audio/IAudioBackend/SetMasterVolume.md new file mode 100644 index 00000000..c634dc1c --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioBackend/SetMasterVolume.md @@ -0,0 +1,31 @@ +# IAudioBackend::SetMasterVolume + +设置相关状态或配置。 + +```cpp +virtual void SetMasterVolume(float volume) = 0; +``` + +该方法声明于 `XCEngine/Audio/IAudioBackend.h`,当前页面用于固定 `IAudioBackend` 类目录下的方法级 canonical 路径。 + +**参数:** +- `volume` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioBackend object; + // 根据上下文补齐参数后调用 IAudioBackend::SetMasterVolume(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioBackend/SetMuted.md b/docs/api/XCEngine/Audio/IAudioBackend/SetMuted.md new file mode 100644 index 00000000..371b2704 --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioBackend/SetMuted.md @@ -0,0 +1,31 @@ +# IAudioBackend::SetMuted + +设置相关状态或配置。 + +```cpp +virtual void SetMuted(bool muted) = 0; +``` + +该方法声明于 `XCEngine/Audio/IAudioBackend.h`,当前页面用于固定 `IAudioBackend` 类目录下的方法级 canonical 路径。 + +**参数:** +- `muted` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioBackend object; + // 根据上下文补齐参数后调用 IAudioBackend::SetMuted(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioBackend/Shutdown.md b/docs/api/XCEngine/Audio/IAudioBackend/Shutdown.md new file mode 100644 index 00000000..09350e8c --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioBackend/Shutdown.md @@ -0,0 +1,30 @@ +# IAudioBackend::Shutdown + +关闭并清理内部状态。 + +```cpp +virtual void Shutdown() = 0; +``` + +该方法声明于 `XCEngine/Audio/IAudioBackend.h`,当前页面用于固定 `IAudioBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioBackend object; + // 根据上下文补齐参数后调用 IAudioBackend::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioBackend/Start.md b/docs/api/XCEngine/Audio/IAudioBackend/Start.md new file mode 100644 index 00000000..d35b2057 --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioBackend/Start.md @@ -0,0 +1,30 @@ +# IAudioBackend::Start + +公开方法,详见头文件声明。 + +```cpp +virtual void Start() = 0; +``` + +该方法声明于 `XCEngine/Audio/IAudioBackend.h`,当前页面用于固定 `IAudioBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioBackend object; + // 根据上下文补齐参数后调用 IAudioBackend::Start(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioBackend/Stop.md b/docs/api/XCEngine/Audio/IAudioBackend/Stop.md new file mode 100644 index 00000000..5db349fa --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioBackend/Stop.md @@ -0,0 +1,30 @@ +# IAudioBackend::Stop + +公开方法,详见头文件声明。 + +```cpp +virtual void Stop() = 0; +``` + +该方法声明于 `XCEngine/Audio/IAudioBackend.h`,当前页面用于固定 `IAudioBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioBackend object; + // 根据上下文补齐参数后调用 IAudioBackend::Stop(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioBackend/Suspend.md b/docs/api/XCEngine/Audio/IAudioBackend/Suspend.md new file mode 100644 index 00000000..749fccd7 --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioBackend/Suspend.md @@ -0,0 +1,30 @@ +# IAudioBackend::Suspend + +公开方法,详见头文件声明。 + +```cpp +virtual void Suspend() = 0; +``` + +该方法声明于 `XCEngine/Audio/IAudioBackend.h`,当前页面用于固定 `IAudioBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioBackend object; + // 根据上下文补齐参数后调用 IAudioBackend::Suspend(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioEffect/Destructor.md b/docs/api/XCEngine/Audio/IAudioEffect/Destructor.md new file mode 100644 index 00000000..3ab55bfe --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioEffect/Destructor.md @@ -0,0 +1,29 @@ +# IAudioEffect::~IAudioEffect() + +销毁对象并释放相关资源。 + +```cpp +virtual ~IAudioEffect() = default; +``` + +该方法声明于 `XCEngine/Audio/IAudioEffect.h`,当前页面用于固定 `IAudioEffect` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioEffect object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](IAudioEffect.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioEffect/GetWetMix.md b/docs/api/XCEngine/Audio/IAudioEffect/GetWetMix.md new file mode 100644 index 00000000..4b1e6a7d --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioEffect/GetWetMix.md @@ -0,0 +1,30 @@ +# IAudioEffect::GetWetMix + +获取相关状态或对象。 + +```cpp +virtual float GetWetMix() const; +``` + +该方法声明于 `XCEngine/Audio/IAudioEffect.h`,当前页面用于固定 `IAudioEffect` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioEffect object; + // 根据上下文补齐参数后调用 IAudioEffect::GetWetMix(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioEffect.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioEffect/IAudioEffect.md b/docs/api/XCEngine/Audio/IAudioEffect/IAudioEffect.md new file mode 100644 index 00000000..ab33e7d4 --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioEffect/IAudioEffect.md @@ -0,0 +1,35 @@ +# IAudioEffect + +**命名空间**: `XCEngine::Audio` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/Audio/IAudioEffect.h` + +**描述**: 定义 `XCEngine/Audio` 子目录中的 `IAudioEffect` public API。 + +## 概述 + +`IAudioEffect.h` 是 `XCEngine/Audio` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `IAudioEffect` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~IAudioEffect()](Destructor.md) | 销毁对象并释放相关资源。 | +| [ProcessAudio](ProcessAudio.md) | 公开方法,详见头文件声明。 | +| [SetEnabled](SetEnabled.md) | 设置相关状态或配置。 | +| [IsEnabled](IsEnabled.md) | 查询当前状态。 | +| [SetWetMix](SetWetMix.md) | 设置相关状态或配置。 | +| [GetWetMix](GetWetMix.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Audio.md) - 返回 `Audio` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Audio/IAudioEffect/IsEnabled.md b/docs/api/XCEngine/Audio/IAudioEffect/IsEnabled.md new file mode 100644 index 00000000..30fea140 --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioEffect/IsEnabled.md @@ -0,0 +1,30 @@ +# IAudioEffect::IsEnabled + +查询当前状态。 + +```cpp +virtual bool IsEnabled() const; +``` + +该方法声明于 `XCEngine/Audio/IAudioEffect.h`,当前页面用于固定 `IAudioEffect` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioEffect object; + // 根据上下文补齐参数后调用 IAudioEffect::IsEnabled(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioEffect.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioEffect/ProcessAudio.md b/docs/api/XCEngine/Audio/IAudioEffect/ProcessAudio.md new file mode 100644 index 00000000..4da17c28 --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioEffect/ProcessAudio.md @@ -0,0 +1,33 @@ +# IAudioEffect::ProcessAudio + +公开方法,详见头文件声明。 + +```cpp +virtual void ProcessAudio(float* buffer, uint32 sampleCount, uint32 channels) = 0; +``` + +该方法声明于 `XCEngine/Audio/IAudioEffect.h`,当前页面用于固定 `IAudioEffect` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `sampleCount` - 参数语义详见头文件声明。 +- `channels` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioEffect object; + // 根据上下文补齐参数后调用 IAudioEffect::ProcessAudio(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioEffect.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioEffect/SetEnabled.md b/docs/api/XCEngine/Audio/IAudioEffect/SetEnabled.md new file mode 100644 index 00000000..58715330 --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioEffect/SetEnabled.md @@ -0,0 +1,31 @@ +# IAudioEffect::SetEnabled + +设置相关状态或配置。 + +```cpp +virtual void SetEnabled(bool enabled); +``` + +该方法声明于 `XCEngine/Audio/IAudioEffect.h`,当前页面用于固定 `IAudioEffect` 类目录下的方法级 canonical 路径。 + +**参数:** +- `enabled` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioEffect object; + // 根据上下文补齐参数后调用 IAudioEffect::SetEnabled(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioEffect.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/IAudioEffect/SetWetMix.md b/docs/api/XCEngine/Audio/IAudioEffect/SetWetMix.md new file mode 100644 index 00000000..8b6f6759 --- /dev/null +++ b/docs/api/XCEngine/Audio/IAudioEffect/SetWetMix.md @@ -0,0 +1,31 @@ +# IAudioEffect::SetWetMix + +设置相关状态或配置。 + +```cpp +virtual void SetWetMix(float wetMix); +``` + +该方法声明于 `XCEngine/Audio/IAudioEffect.h`,当前页面用于固定 `IAudioEffect` 类目录下的方法级 canonical 路径。 + +**参数:** +- `wetMix` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::IAudioEffect object; + // 根据上下文补齐参数后调用 IAudioEffect::SetWetMix(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IAudioEffect.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Reverbation/Constructor.md b/docs/api/XCEngine/Audio/Reverbation/Constructor.md new file mode 100644 index 00000000..873417f3 --- /dev/null +++ b/docs/api/XCEngine/Audio/Reverbation/Constructor.md @@ -0,0 +1,28 @@ +# Reverbation::Reverbation() + +构造对象。 + +```cpp +Reverbation(); +``` + +该方法声明于 `XCEngine/Audio/Reverbation.h`,当前页面用于固定 `Reverbation` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Reverbation object; +} +``` + +## 相关文档 + +- [返回类总览](Reverbation.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Reverbation/Destructor.md b/docs/api/XCEngine/Audio/Reverbation/Destructor.md new file mode 100644 index 00000000..64a705d4 --- /dev/null +++ b/docs/api/XCEngine/Audio/Reverbation/Destructor.md @@ -0,0 +1,29 @@ +# Reverbation::~Reverbation() + +销毁对象并释放相关资源。 + +```cpp +~Reverbation() override; +``` + +该方法声明于 `XCEngine/Audio/Reverbation.h`,当前页面用于固定 `Reverbation` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Reverbation object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](Reverbation.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Reverbation/GetDamping.md b/docs/api/XCEngine/Audio/Reverbation/GetDamping.md new file mode 100644 index 00000000..8223497a --- /dev/null +++ b/docs/api/XCEngine/Audio/Reverbation/GetDamping.md @@ -0,0 +1,30 @@ +# Reverbation::GetDamping + +获取相关状态或对象。 + +```cpp +float GetDamping() const; +``` + +该方法声明于 `XCEngine/Audio/Reverbation.h`,当前页面用于固定 `Reverbation` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Reverbation object; + // 根据上下文补齐参数后调用 Reverbation::GetDamping(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Reverbation.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Reverbation/GetDryMix.md b/docs/api/XCEngine/Audio/Reverbation/GetDryMix.md new file mode 100644 index 00000000..809b585e --- /dev/null +++ b/docs/api/XCEngine/Audio/Reverbation/GetDryMix.md @@ -0,0 +1,30 @@ +# Reverbation::GetDryMix + +获取相关状态或对象。 + +```cpp +float GetDryMix() const; +``` + +该方法声明于 `XCEngine/Audio/Reverbation.h`,当前页面用于固定 `Reverbation` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Reverbation object; + // 根据上下文补齐参数后调用 Reverbation::GetDryMix(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Reverbation.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Reverbation/GetRoomSize.md b/docs/api/XCEngine/Audio/Reverbation/GetRoomSize.md new file mode 100644 index 00000000..822f902e --- /dev/null +++ b/docs/api/XCEngine/Audio/Reverbation/GetRoomSize.md @@ -0,0 +1,30 @@ +# Reverbation::GetRoomSize + +获取相关状态或对象。 + +```cpp +float GetRoomSize() const; +``` + +该方法声明于 `XCEngine/Audio/Reverbation.h`,当前页面用于固定 `Reverbation` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Reverbation object; + // 根据上下文补齐参数后调用 Reverbation::GetRoomSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Reverbation.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Reverbation/GetWetMix.md b/docs/api/XCEngine/Audio/Reverbation/GetWetMix.md new file mode 100644 index 00000000..98ca33e0 --- /dev/null +++ b/docs/api/XCEngine/Audio/Reverbation/GetWetMix.md @@ -0,0 +1,30 @@ +# Reverbation::GetWetMix + +获取相关状态或对象。 + +```cpp +float GetWetMix() const override; +``` + +该方法声明于 `XCEngine/Audio/Reverbation.h`,当前页面用于固定 `Reverbation` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Reverbation object; + // 根据上下文补齐参数后调用 Reverbation::GetWetMix(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Reverbation.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Reverbation/GetWidth.md b/docs/api/XCEngine/Audio/Reverbation/GetWidth.md new file mode 100644 index 00000000..e2e6fac7 --- /dev/null +++ b/docs/api/XCEngine/Audio/Reverbation/GetWidth.md @@ -0,0 +1,30 @@ +# Reverbation::GetWidth + +获取相关状态或对象。 + +```cpp +float GetWidth() const; +``` + +该方法声明于 `XCEngine/Audio/Reverbation.h`,当前页面用于固定 `Reverbation` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Reverbation object; + // 根据上下文补齐参数后调用 Reverbation::GetWidth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Reverbation.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Reverbation/IsFreeze.md b/docs/api/XCEngine/Audio/Reverbation/IsFreeze.md new file mode 100644 index 00000000..e3e78a1f --- /dev/null +++ b/docs/api/XCEngine/Audio/Reverbation/IsFreeze.md @@ -0,0 +1,30 @@ +# Reverbation::IsFreeze + +查询当前状态。 + +```cpp +bool IsFreeze() const; +``` + +该方法声明于 `XCEngine/Audio/Reverbation.h`,当前页面用于固定 `Reverbation` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Reverbation object; + // 根据上下文补齐参数后调用 Reverbation::IsFreeze(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Reverbation.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Reverbation/ProcessAudio.md b/docs/api/XCEngine/Audio/Reverbation/ProcessAudio.md new file mode 100644 index 00000000..6bc281bf --- /dev/null +++ b/docs/api/XCEngine/Audio/Reverbation/ProcessAudio.md @@ -0,0 +1,33 @@ +# Reverbation::ProcessAudio + +公开方法,详见头文件声明。 + +```cpp +void ProcessAudio(float* buffer, uint32 sampleCount, uint32 channels) override; +``` + +该方法声明于 `XCEngine/Audio/Reverbation.h`,当前页面用于固定 `Reverbation` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `sampleCount` - 参数语义详见头文件声明。 +- `channels` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Reverbation object; + // 根据上下文补齐参数后调用 Reverbation::ProcessAudio(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Reverbation.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Reverbation/Reverbation.md b/docs/api/XCEngine/Audio/Reverbation/Reverbation.md new file mode 100644 index 00000000..c1b3424e --- /dev/null +++ b/docs/api/XCEngine/Audio/Reverbation/Reverbation.md @@ -0,0 +1,44 @@ +# Reverbation + +**命名空间**: `XCEngine::Audio` + +**类型**: `class` + +**头文件**: `XCEngine/Audio/Reverbation.h` + +**描述**: 定义 `XCEngine/Audio` 子目录中的 `Reverbation` public API。 + +## 概述 + +`Reverbation.h` 是 `XCEngine/Audio` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Reverbation` | `class` | 继承自 `IAudioEffect` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Reverbation()](Constructor.md) | 构造对象。 | +| [~Reverbation()](Destructor.md) | 销毁对象并释放相关资源。 | +| [ProcessAudio](ProcessAudio.md) | 公开方法,详见头文件声明。 | +| [SetRoomSize](SetRoomSize.md) | 设置相关状态或配置。 | +| [GetRoomSize](GetRoomSize.md) | 获取相关状态或对象。 | +| [SetDamping](SetDamping.md) | 设置相关状态或配置。 | +| [GetDamping](GetDamping.md) | 获取相关状态或对象。 | +| [SetWetMix](SetWetMix.md) | 设置相关状态或配置。 | +| [GetWetMix](GetWetMix.md) | 获取相关状态或对象。 | +| [SetDryMix](SetDryMix.md) | 设置相关状态或配置。 | +| [GetDryMix](GetDryMix.md) | 获取相关状态或对象。 | +| [SetWidth](SetWidth.md) | 设置相关状态或配置。 | +| [GetWidth](GetWidth.md) | 获取相关状态或对象。 | +| [SetFreeze](SetFreeze.md) | 设置相关状态或配置。 | +| [IsFreeze](IsFreeze.md) | 查询当前状态。 | + +## 相关文档 + +- [当前目录](../Audio.md) - 返回 `Audio` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Audio/Reverbation/SetDamping.md b/docs/api/XCEngine/Audio/Reverbation/SetDamping.md new file mode 100644 index 00000000..d24b4d06 --- /dev/null +++ b/docs/api/XCEngine/Audio/Reverbation/SetDamping.md @@ -0,0 +1,31 @@ +# Reverbation::SetDamping + +设置相关状态或配置。 + +```cpp +void SetDamping(float damping); +``` + +该方法声明于 `XCEngine/Audio/Reverbation.h`,当前页面用于固定 `Reverbation` 类目录下的方法级 canonical 路径。 + +**参数:** +- `damping` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Reverbation object; + // 根据上下文补齐参数后调用 Reverbation::SetDamping(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Reverbation.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Reverbation/SetDryMix.md b/docs/api/XCEngine/Audio/Reverbation/SetDryMix.md new file mode 100644 index 00000000..bd526654 --- /dev/null +++ b/docs/api/XCEngine/Audio/Reverbation/SetDryMix.md @@ -0,0 +1,31 @@ +# Reverbation::SetDryMix + +设置相关状态或配置。 + +```cpp +void SetDryMix(float dryMix); +``` + +该方法声明于 `XCEngine/Audio/Reverbation.h`,当前页面用于固定 `Reverbation` 类目录下的方法级 canonical 路径。 + +**参数:** +- `dryMix` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Reverbation object; + // 根据上下文补齐参数后调用 Reverbation::SetDryMix(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Reverbation.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Reverbation/SetFreeze.md b/docs/api/XCEngine/Audio/Reverbation/SetFreeze.md new file mode 100644 index 00000000..ac746edf --- /dev/null +++ b/docs/api/XCEngine/Audio/Reverbation/SetFreeze.md @@ -0,0 +1,31 @@ +# Reverbation::SetFreeze + +设置相关状态或配置。 + +```cpp +void SetFreeze(bool freeze); +``` + +该方法声明于 `XCEngine/Audio/Reverbation.h`,当前页面用于固定 `Reverbation` 类目录下的方法级 canonical 路径。 + +**参数:** +- `freeze` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Reverbation object; + // 根据上下文补齐参数后调用 Reverbation::SetFreeze(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Reverbation.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Reverbation/SetRoomSize.md b/docs/api/XCEngine/Audio/Reverbation/SetRoomSize.md new file mode 100644 index 00000000..28aa6b77 --- /dev/null +++ b/docs/api/XCEngine/Audio/Reverbation/SetRoomSize.md @@ -0,0 +1,31 @@ +# Reverbation::SetRoomSize + +设置相关状态或配置。 + +```cpp +void SetRoomSize(float size); +``` + +该方法声明于 `XCEngine/Audio/Reverbation.h`,当前页面用于固定 `Reverbation` 类目录下的方法级 canonical 路径。 + +**参数:** +- `size` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Reverbation object; + // 根据上下文补齐参数后调用 Reverbation::SetRoomSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Reverbation.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Reverbation/SetWetMix.md b/docs/api/XCEngine/Audio/Reverbation/SetWetMix.md new file mode 100644 index 00000000..ffc57d90 --- /dev/null +++ b/docs/api/XCEngine/Audio/Reverbation/SetWetMix.md @@ -0,0 +1,31 @@ +# Reverbation::SetWetMix + +设置相关状态或配置。 + +```cpp +void SetWetMix(float wetMix) override; +``` + +该方法声明于 `XCEngine/Audio/Reverbation.h`,当前页面用于固定 `Reverbation` 类目录下的方法级 canonical 路径。 + +**参数:** +- `wetMix` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Reverbation object; + // 根据上下文补齐参数后调用 Reverbation::SetWetMix(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Reverbation.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/Reverbation/SetWidth.md b/docs/api/XCEngine/Audio/Reverbation/SetWidth.md new file mode 100644 index 00000000..a74f877e --- /dev/null +++ b/docs/api/XCEngine/Audio/Reverbation/SetWidth.md @@ -0,0 +1,31 @@ +# Reverbation::SetWidth + +设置相关状态或配置。 + +```cpp +void SetWidth(float width); +``` + +该方法声明于 `XCEngine/Audio/Reverbation.h`,当前页面用于固定 `Reverbation` 类目录下的方法级 canonical 路径。 + +**参数:** +- `width` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::Reverbation object; + // 根据上下文补齐参数后调用 Reverbation::SetWidth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Reverbation.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/WindowsAudioBackend/Constructor.md b/docs/api/XCEngine/Audio/WindowsAudioBackend/Constructor.md new file mode 100644 index 00000000..d4903adb --- /dev/null +++ b/docs/api/XCEngine/Audio/WindowsAudioBackend/Constructor.md @@ -0,0 +1,28 @@ +# WASAPIBackend::WASAPIBackend() + +构造对象。 + +```cpp +WASAPIBackend(); +``` + +该方法声明于 `XCEngine/Audio/WindowsAudioBackend.h`,当前页面用于固定 `WASAPIBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::WASAPI::WASAPIBackend object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/WindowsAudioBackend/Destructor.md b/docs/api/XCEngine/Audio/WindowsAudioBackend/Destructor.md new file mode 100644 index 00000000..e45b2c34 --- /dev/null +++ b/docs/api/XCEngine/Audio/WindowsAudioBackend/Destructor.md @@ -0,0 +1,29 @@ +# WASAPIBackend::~WASAPIBackend() + +销毁对象并释放相关资源。 + +```cpp +~WASAPIBackend() override; +``` + +该方法声明于 `XCEngine/Audio/WindowsAudioBackend.h`,当前页面用于固定 `WASAPIBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::WASAPI::WASAPIBackend object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](WindowsAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/WindowsAudioBackend/GetAvailableDevices.md b/docs/api/XCEngine/Audio/WindowsAudioBackend/GetAvailableDevices.md new file mode 100644 index 00000000..42966523 --- /dev/null +++ b/docs/api/XCEngine/Audio/WindowsAudioBackend/GetAvailableDevices.md @@ -0,0 +1,31 @@ +# WASAPIBackend::GetAvailableDevices + +获取相关状态或对象。 + +```cpp +void GetAvailableDevices(std::vector& devices) override; +``` + +该方法声明于 `XCEngine/Audio/WindowsAudioBackend.h`,当前页面用于固定 `WASAPIBackend` 类目录下的方法级 canonical 路径。 + +**参数:** +- `devices` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::WASAPI::WASAPIBackend object; + // 根据上下文补齐参数后调用 WASAPIBackend::GetAvailableDevices(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/WindowsAudioBackend/GetConfig.md b/docs/api/XCEngine/Audio/WindowsAudioBackend/GetConfig.md new file mode 100644 index 00000000..eb75440e --- /dev/null +++ b/docs/api/XCEngine/Audio/WindowsAudioBackend/GetConfig.md @@ -0,0 +1,30 @@ +# WASAPIBackend::GetConfig + +获取相关状态或对象。 + +```cpp +AudioConfig GetConfig() const override; +``` + +该方法声明于 `XCEngine/Audio/WindowsAudioBackend.h`,当前页面用于固定 `WASAPIBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `AudioConfig` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::WASAPI::WASAPIBackend object; + // 根据上下文补齐参数后调用 WASAPIBackend::GetConfig(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/WindowsAudioBackend/GetDeviceName.md b/docs/api/XCEngine/Audio/WindowsAudioBackend/GetDeviceName.md new file mode 100644 index 00000000..4e30b818 --- /dev/null +++ b/docs/api/XCEngine/Audio/WindowsAudioBackend/GetDeviceName.md @@ -0,0 +1,30 @@ +# WASAPIBackend::GetDeviceName + +获取相关状态或对象。 + +```cpp +std::string GetDeviceName() const override; +``` + +该方法声明于 `XCEngine/Audio/WindowsAudioBackend.h`,当前页面用于固定 `WASAPIBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::string` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::WASAPI::WASAPIBackend object; + // 根据上下文补齐参数后调用 WASAPIBackend::GetDeviceName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/WindowsAudioBackend/GetMasterVolume.md b/docs/api/XCEngine/Audio/WindowsAudioBackend/GetMasterVolume.md new file mode 100644 index 00000000..e4d54a81 --- /dev/null +++ b/docs/api/XCEngine/Audio/WindowsAudioBackend/GetMasterVolume.md @@ -0,0 +1,30 @@ +# WASAPIBackend::GetMasterVolume + +获取相关状态或对象。 + +```cpp +float GetMasterVolume() const override; +``` + +该方法声明于 `XCEngine/Audio/WindowsAudioBackend.h`,当前页面用于固定 `WASAPIBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::WASAPI::WASAPIBackend object; + // 根据上下文补齐参数后调用 WASAPIBackend::GetMasterVolume(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/WindowsAudioBackend/Initialize.md b/docs/api/XCEngine/Audio/WindowsAudioBackend/Initialize.md new file mode 100644 index 00000000..893a14a6 --- /dev/null +++ b/docs/api/XCEngine/Audio/WindowsAudioBackend/Initialize.md @@ -0,0 +1,31 @@ +# WASAPIBackend::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(const AudioConfig& config) override; +``` + +该方法声明于 `XCEngine/Audio/WindowsAudioBackend.h`,当前页面用于固定 `WASAPIBackend` 类目录下的方法级 canonical 路径。 + +**参数:** +- `config` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::WASAPI::WASAPIBackend object; + // 根据上下文补齐参数后调用 WASAPIBackend::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/WindowsAudioBackend/IsMuted.md b/docs/api/XCEngine/Audio/WindowsAudioBackend/IsMuted.md new file mode 100644 index 00000000..40abffde --- /dev/null +++ b/docs/api/XCEngine/Audio/WindowsAudioBackend/IsMuted.md @@ -0,0 +1,30 @@ +# WASAPIBackend::IsMuted + +查询当前状态。 + +```cpp +bool IsMuted() const override; +``` + +该方法声明于 `XCEngine/Audio/WindowsAudioBackend.h`,当前页面用于固定 `WASAPIBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::WASAPI::WASAPIBackend object; + // 根据上下文补齐参数后调用 WASAPIBackend::IsMuted(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/WindowsAudioBackend/IsRunning.md b/docs/api/XCEngine/Audio/WindowsAudioBackend/IsRunning.md new file mode 100644 index 00000000..9f7cca30 --- /dev/null +++ b/docs/api/XCEngine/Audio/WindowsAudioBackend/IsRunning.md @@ -0,0 +1,30 @@ +# WASAPIBackend::IsRunning + +查询当前状态。 + +```cpp +bool IsRunning() const override; +``` + +该方法声明于 `XCEngine/Audio/WindowsAudioBackend.h`,当前页面用于固定 `WASAPIBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::WASAPI::WASAPIBackend object; + // 根据上下文补齐参数后调用 WASAPIBackend::IsRunning(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/WindowsAudioBackend/ProcessAudio.md b/docs/api/XCEngine/Audio/WindowsAudioBackend/ProcessAudio.md new file mode 100644 index 00000000..5d8f28d8 --- /dev/null +++ b/docs/api/XCEngine/Audio/WindowsAudioBackend/ProcessAudio.md @@ -0,0 +1,34 @@ +# WASAPIBackend::ProcessAudio + +公开方法,详见头文件声明。 + +```cpp +void ProcessAudio(float* buffer, uint32 bufferSize, uint32 channels, uint32 sampleRate) override; +``` + +该方法声明于 `XCEngine/Audio/WindowsAudioBackend.h`,当前页面用于固定 `WASAPIBackend` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `bufferSize` - 参数语义详见头文件声明。 +- `channels` - 参数语义详见头文件声明。 +- `sampleRate` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::WASAPI::WASAPIBackend object; + // 根据上下文补齐参数后调用 WASAPIBackend::ProcessAudio(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/WindowsAudioBackend/Resume.md b/docs/api/XCEngine/Audio/WindowsAudioBackend/Resume.md new file mode 100644 index 00000000..2fcd1179 --- /dev/null +++ b/docs/api/XCEngine/Audio/WindowsAudioBackend/Resume.md @@ -0,0 +1,30 @@ +# WASAPIBackend::Resume + +公开方法,详见头文件声明。 + +```cpp +void Resume() override; +``` + +该方法声明于 `XCEngine/Audio/WindowsAudioBackend.h`,当前页面用于固定 `WASAPIBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::WASAPI::WASAPIBackend object; + // 根据上下文补齐参数后调用 WASAPIBackend::Resume(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/WindowsAudioBackend/SetDevice.md b/docs/api/XCEngine/Audio/WindowsAudioBackend/SetDevice.md new file mode 100644 index 00000000..6f6afed2 --- /dev/null +++ b/docs/api/XCEngine/Audio/WindowsAudioBackend/SetDevice.md @@ -0,0 +1,31 @@ +# WASAPIBackend::SetDevice + +设置相关状态或配置。 + +```cpp +bool SetDevice(const std::string& deviceName) override; +``` + +该方法声明于 `XCEngine/Audio/WindowsAudioBackend.h`,当前页面用于固定 `WASAPIBackend` 类目录下的方法级 canonical 路径。 + +**参数:** +- `deviceName` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::WASAPI::WASAPIBackend object; + // 根据上下文补齐参数后调用 WASAPIBackend::SetDevice(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/WindowsAudioBackend/SetMasterVolume.md b/docs/api/XCEngine/Audio/WindowsAudioBackend/SetMasterVolume.md new file mode 100644 index 00000000..89d4a227 --- /dev/null +++ b/docs/api/XCEngine/Audio/WindowsAudioBackend/SetMasterVolume.md @@ -0,0 +1,31 @@ +# WASAPIBackend::SetMasterVolume + +设置相关状态或配置。 + +```cpp +void SetMasterVolume(float volume) override; +``` + +该方法声明于 `XCEngine/Audio/WindowsAudioBackend.h`,当前页面用于固定 `WASAPIBackend` 类目录下的方法级 canonical 路径。 + +**参数:** +- `volume` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::WASAPI::WASAPIBackend object; + // 根据上下文补齐参数后调用 WASAPIBackend::SetMasterVolume(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/WindowsAudioBackend/SetMuted.md b/docs/api/XCEngine/Audio/WindowsAudioBackend/SetMuted.md new file mode 100644 index 00000000..c48209e9 --- /dev/null +++ b/docs/api/XCEngine/Audio/WindowsAudioBackend/SetMuted.md @@ -0,0 +1,31 @@ +# WASAPIBackend::SetMuted + +设置相关状态或配置。 + +```cpp +void SetMuted(bool muted) override; +``` + +该方法声明于 `XCEngine/Audio/WindowsAudioBackend.h`,当前页面用于固定 `WASAPIBackend` 类目录下的方法级 canonical 路径。 + +**参数:** +- `muted` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::WASAPI::WASAPIBackend object; + // 根据上下文补齐参数后调用 WASAPIBackend::SetMuted(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/WindowsAudioBackend/Shutdown.md b/docs/api/XCEngine/Audio/WindowsAudioBackend/Shutdown.md new file mode 100644 index 00000000..e40ce5f3 --- /dev/null +++ b/docs/api/XCEngine/Audio/WindowsAudioBackend/Shutdown.md @@ -0,0 +1,30 @@ +# WASAPIBackend::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/Audio/WindowsAudioBackend.h`,当前页面用于固定 `WASAPIBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::WASAPI::WASAPIBackend object; + // 根据上下文补齐参数后调用 WASAPIBackend::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/WindowsAudioBackend/Start.md b/docs/api/XCEngine/Audio/WindowsAudioBackend/Start.md new file mode 100644 index 00000000..37a91daf --- /dev/null +++ b/docs/api/XCEngine/Audio/WindowsAudioBackend/Start.md @@ -0,0 +1,30 @@ +# WASAPIBackend::Start + +公开方法,详见头文件声明。 + +```cpp +void Start() override; +``` + +该方法声明于 `XCEngine/Audio/WindowsAudioBackend.h`,当前页面用于固定 `WASAPIBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::WASAPI::WASAPIBackend object; + // 根据上下文补齐参数后调用 WASAPIBackend::Start(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/WindowsAudioBackend/Stop.md b/docs/api/XCEngine/Audio/WindowsAudioBackend/Stop.md new file mode 100644 index 00000000..9ad31275 --- /dev/null +++ b/docs/api/XCEngine/Audio/WindowsAudioBackend/Stop.md @@ -0,0 +1,30 @@ +# WASAPIBackend::Stop + +公开方法,详见头文件声明。 + +```cpp +void Stop() override; +``` + +该方法声明于 `XCEngine/Audio/WindowsAudioBackend.h`,当前页面用于固定 `WASAPIBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::WASAPI::WASAPIBackend object; + // 根据上下文补齐参数后调用 WASAPIBackend::Stop(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/WindowsAudioBackend/Suspend.md b/docs/api/XCEngine/Audio/WindowsAudioBackend/Suspend.md new file mode 100644 index 00000000..e47a2a07 --- /dev/null +++ b/docs/api/XCEngine/Audio/WindowsAudioBackend/Suspend.md @@ -0,0 +1,30 @@ +# WASAPIBackend::Suspend + +公开方法,详见头文件声明。 + +```cpp +void Suspend() override; +``` + +该方法声明于 `XCEngine/Audio/WindowsAudioBackend.h`,当前页面用于固定 `WASAPIBackend` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Audio::WASAPI::WASAPIBackend object; + // 根据上下文补齐参数后调用 WASAPIBackend::Suspend(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsAudioBackend.md) +- [返回模块目录](../Audio.md) diff --git a/docs/api/XCEngine/Audio/WindowsAudioBackend/WindowsAudioBackend.md b/docs/api/XCEngine/Audio/WindowsAudioBackend/WindowsAudioBackend.md new file mode 100644 index 00000000..d00038fd --- /dev/null +++ b/docs/api/XCEngine/Audio/WindowsAudioBackend/WindowsAudioBackend.md @@ -0,0 +1,47 @@ +# WindowsAudioBackend + +**命名空间**: `XCEngine::Audio::WASAPI` + +**类型**: `class` + +**头文件**: `XCEngine/Audio/WindowsAudioBackend.h` + +**描述**: 定义 `XCEngine/Audio` 子目录中的 `WindowsAudioBackend` public API。 + +## 概述 + +`WindowsAudioBackend.h` 是 `XCEngine/Audio` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `WASAPIBackend` | `class` | 继承自 `IAudioBackend` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [WASAPIBackend()](Constructor.md) | 构造对象。 | +| [~WASAPIBackend()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetDeviceName](GetDeviceName.md) | 获取相关状态或对象。 | +| [GetAvailableDevices](GetAvailableDevices.md) | 获取相关状态或对象。 | +| [SetDevice](SetDevice.md) | 设置相关状态或配置。 | +| [GetMasterVolume](GetMasterVolume.md) | 获取相关状态或对象。 | +| [SetMasterVolume](SetMasterVolume.md) | 设置相关状态或配置。 | +| [IsMuted](IsMuted.md) | 查询当前状态。 | +| [SetMuted](SetMuted.md) | 设置相关状态或配置。 | +| [Start](Start.md) | 公开方法,详见头文件声明。 | +| [Stop](Stop.md) | 公开方法,详见头文件声明。 | +| [Suspend](Suspend.md) | 公开方法,详见头文件声明。 | +| [Resume](Resume.md) | 公开方法,详见头文件声明。 | +| [ProcessAudio](ProcessAudio.md) | 公开方法,详见头文件声明。 | +| [IsRunning](IsRunning.md) | 查询当前状态。 | +| [GetConfig](GetConfig.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Audio.md) - 返回 `Audio` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/AudioListenerComponent.md b/docs/api/XCEngine/Components/AudioListenerComponent/AudioListenerComponent.md new file mode 100644 index 00000000..b3711436 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/AudioListenerComponent.md @@ -0,0 +1,48 @@ +# AudioListenerComponent + +**命名空间**: `XCEngine::Components` + +**类型**: `class` + +**头文件**: `XCEngine/Components/AudioListenerComponent.h` + +**描述**: 定义 `XCEngine/Components` 子目录中的 `AudioListenerComponent` public API。 + +## 概述 + +`AudioListenerComponent.h` 是 `XCEngine/Components` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `AudioListenerComponent` | `class` | 继承自 `Component` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [AudioListenerComponent()](Constructor.md) | 构造对象。 | +| [~AudioListenerComponent()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetEnergy](GetEnergy.md) | 获取相关状态或对象。 | +| [GetFrequencyData](GetFrequencyData.md) | 获取相关状态或对象。 | +| [GetFrequencyDataSize](GetFrequencyDataSize.md) | 获取相关状态或对象。 | +| [SetMasterVolume](SetMasterVolume.md) | 设置相关状态或配置。 | +| [GetMasterVolume](GetMasterVolume.md) | 获取相关状态或对象。 | +| [SetMute](SetMute.md) | 设置相关状态或配置。 | +| [IsMute](IsMute.md) | 查询当前状态。 | +| [SetDopplerLevel](SetDopplerLevel.md) | 设置相关状态或配置。 | +| [GetDopplerLevel](GetDopplerLevel.md) | 获取相关状态或对象。 | +| [SetSpeedOfSound](SetSpeedOfSound.md) | 设置相关状态或配置。 | +| [GetSpeedOfSound](GetSpeedOfSound.md) | 获取相关状态或对象。 | +| [SetReverbLevel](SetReverbLevel.md) | 设置相关状态或配置。 | +| [GetReverbLevel](GetReverbLevel.md) | 获取相关状态或对象。 | +| [SetReverb](SetReverb.md) | 设置相关状态或配置。 | +| [GetReverb](GetReverb.md) | 获取相关状态或对象。 | +| [Update](Update.md) | 更新运行时状态。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Components.md) - 返回 `Components` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/Constructor.md b/docs/api/XCEngine/Components/AudioListenerComponent/Constructor.md new file mode 100644 index 00000000..dda9afb2 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/Constructor.md @@ -0,0 +1,28 @@ +# AudioListenerComponent::AudioListenerComponent() + +构造对象。 + +```cpp +AudioListenerComponent(); +``` + +该方法声明于 `XCEngine/Components/AudioListenerComponent.h`,当前页面用于固定 `AudioListenerComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioListenerComponent object; +} +``` + +## 相关文档 + +- [返回类总览](AudioListenerComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/Destructor.md b/docs/api/XCEngine/Components/AudioListenerComponent/Destructor.md new file mode 100644 index 00000000..bfbd3905 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/Destructor.md @@ -0,0 +1,29 @@ +# AudioListenerComponent::~AudioListenerComponent() + +销毁对象并释放相关资源。 + +```cpp +~AudioListenerComponent() override; +``` + +该方法声明于 `XCEngine/Components/AudioListenerComponent.h`,当前页面用于固定 `AudioListenerComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioListenerComponent object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](AudioListenerComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/GetDopplerLevel.md b/docs/api/XCEngine/Components/AudioListenerComponent/GetDopplerLevel.md new file mode 100644 index 00000000..46edcc07 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/GetDopplerLevel.md @@ -0,0 +1,30 @@ +# AudioListenerComponent::GetDopplerLevel + +获取相关状态或对象。 + +```cpp +float GetDopplerLevel() const; +``` + +该方法声明于 `XCEngine/Components/AudioListenerComponent.h`,当前页面用于固定 `AudioListenerComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioListenerComponent object; + // 根据上下文补齐参数后调用 AudioListenerComponent::GetDopplerLevel(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioListenerComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/GetEnergy.md b/docs/api/XCEngine/Components/AudioListenerComponent/GetEnergy.md new file mode 100644 index 00000000..94f612ea --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/GetEnergy.md @@ -0,0 +1,30 @@ +# AudioListenerComponent::GetEnergy + +获取相关状态或对象。 + +```cpp +float GetEnergy() const; +``` + +该方法声明于 `XCEngine/Components/AudioListenerComponent.h`,当前页面用于固定 `AudioListenerComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioListenerComponent object; + // 根据上下文补齐参数后调用 AudioListenerComponent::GetEnergy(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioListenerComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/GetFrequencyData.md b/docs/api/XCEngine/Components/AudioListenerComponent/GetFrequencyData.md new file mode 100644 index 00000000..631a0b9d --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/GetFrequencyData.md @@ -0,0 +1,30 @@ +# AudioListenerComponent::GetFrequencyData + +获取相关状态或对象。 + +```cpp +const float* GetFrequencyData() const; +``` + +该方法声明于 `XCEngine/Components/AudioListenerComponent.h`,当前页面用于固定 `AudioListenerComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const float*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioListenerComponent object; + // 根据上下文补齐参数后调用 AudioListenerComponent::GetFrequencyData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioListenerComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/GetFrequencyDataSize.md b/docs/api/XCEngine/Components/AudioListenerComponent/GetFrequencyDataSize.md new file mode 100644 index 00000000..62dc555a --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/GetFrequencyDataSize.md @@ -0,0 +1,30 @@ +# AudioListenerComponent::GetFrequencyDataSize + +获取相关状态或对象。 + +```cpp +size_t GetFrequencyDataSize() const; +``` + +该方法声明于 `XCEngine/Components/AudioListenerComponent.h`,当前页面用于固定 `AudioListenerComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioListenerComponent object; + // 根据上下文补齐参数后调用 AudioListenerComponent::GetFrequencyDataSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioListenerComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/GetMasterVolume.md b/docs/api/XCEngine/Components/AudioListenerComponent/GetMasterVolume.md new file mode 100644 index 00000000..46a7ee58 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/GetMasterVolume.md @@ -0,0 +1,30 @@ +# AudioListenerComponent::GetMasterVolume + +获取相关状态或对象。 + +```cpp +float GetMasterVolume() const; +``` + +该方法声明于 `XCEngine/Components/AudioListenerComponent.h`,当前页面用于固定 `AudioListenerComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioListenerComponent object; + // 根据上下文补齐参数后调用 AudioListenerComponent::GetMasterVolume(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioListenerComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/GetName.md b/docs/api/XCEngine/Components/AudioListenerComponent/GetName.md new file mode 100644 index 00000000..e34d45b1 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/GetName.md @@ -0,0 +1,30 @@ +# AudioListenerComponent::GetName + +获取相关状态或对象。 + +```cpp +std::string GetName() const override; +``` + +该方法声明于 `XCEngine/Components/AudioListenerComponent.h`,当前页面用于固定 `AudioListenerComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::string` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioListenerComponent object; + // 根据上下文补齐参数后调用 AudioListenerComponent::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioListenerComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/GetReverb.md b/docs/api/XCEngine/Components/AudioListenerComponent/GetReverb.md new file mode 100644 index 00000000..1a159f4e --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/GetReverb.md @@ -0,0 +1,30 @@ +# AudioListenerComponent::GetReverb + +获取相关状态或对象。 + +```cpp +Audio::AudioMixer* GetReverb() const; +``` + +该方法声明于 `XCEngine/Components/AudioListenerComponent.h`,当前页面用于固定 `AudioListenerComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Audio::AudioMixer*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioListenerComponent object; + // 根据上下文补齐参数后调用 AudioListenerComponent::GetReverb(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioListenerComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/GetReverbLevel.md b/docs/api/XCEngine/Components/AudioListenerComponent/GetReverbLevel.md new file mode 100644 index 00000000..271962b2 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/GetReverbLevel.md @@ -0,0 +1,30 @@ +# AudioListenerComponent::GetReverbLevel + +获取相关状态或对象。 + +```cpp +float GetReverbLevel() const; +``` + +该方法声明于 `XCEngine/Components/AudioListenerComponent.h`,当前页面用于固定 `AudioListenerComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioListenerComponent object; + // 根据上下文补齐参数后调用 AudioListenerComponent::GetReverbLevel(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioListenerComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/GetSpeedOfSound.md b/docs/api/XCEngine/Components/AudioListenerComponent/GetSpeedOfSound.md new file mode 100644 index 00000000..a851dd5c --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/GetSpeedOfSound.md @@ -0,0 +1,30 @@ +# AudioListenerComponent::GetSpeedOfSound + +获取相关状态或对象。 + +```cpp +float GetSpeedOfSound() const; +``` + +该方法声明于 `XCEngine/Components/AudioListenerComponent.h`,当前页面用于固定 `AudioListenerComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioListenerComponent object; + // 根据上下文补齐参数后调用 AudioListenerComponent::GetSpeedOfSound(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioListenerComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/IsMute.md b/docs/api/XCEngine/Components/AudioListenerComponent/IsMute.md new file mode 100644 index 00000000..43f9071a --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/IsMute.md @@ -0,0 +1,30 @@ +# AudioListenerComponent::IsMute + +查询当前状态。 + +```cpp +bool IsMute() const; +``` + +该方法声明于 `XCEngine/Components/AudioListenerComponent.h`,当前页面用于固定 `AudioListenerComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioListenerComponent object; + // 根据上下文补齐参数后调用 AudioListenerComponent::IsMute(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioListenerComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/SetDopplerLevel.md b/docs/api/XCEngine/Components/AudioListenerComponent/SetDopplerLevel.md new file mode 100644 index 00000000..933a39d5 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/SetDopplerLevel.md @@ -0,0 +1,31 @@ +# AudioListenerComponent::SetDopplerLevel + +设置相关状态或配置。 + +```cpp +void SetDopplerLevel(float level); +``` + +该方法声明于 `XCEngine/Components/AudioListenerComponent.h`,当前页面用于固定 `AudioListenerComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `level` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioListenerComponent object; + // 根据上下文补齐参数后调用 AudioListenerComponent::SetDopplerLevel(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioListenerComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/SetMasterVolume.md b/docs/api/XCEngine/Components/AudioListenerComponent/SetMasterVolume.md new file mode 100644 index 00000000..db856417 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/SetMasterVolume.md @@ -0,0 +1,31 @@ +# AudioListenerComponent::SetMasterVolume + +设置相关状态或配置。 + +```cpp +void SetMasterVolume(float volume); +``` + +该方法声明于 `XCEngine/Components/AudioListenerComponent.h`,当前页面用于固定 `AudioListenerComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `volume` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioListenerComponent object; + // 根据上下文补齐参数后调用 AudioListenerComponent::SetMasterVolume(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioListenerComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/SetMute.md b/docs/api/XCEngine/Components/AudioListenerComponent/SetMute.md new file mode 100644 index 00000000..d831104e --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/SetMute.md @@ -0,0 +1,31 @@ +# AudioListenerComponent::SetMute + +设置相关状态或配置。 + +```cpp +void SetMute(bool mute); +``` + +该方法声明于 `XCEngine/Components/AudioListenerComponent.h`,当前页面用于固定 `AudioListenerComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `mute` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioListenerComponent object; + // 根据上下文补齐参数后调用 AudioListenerComponent::SetMute(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioListenerComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/SetReverb.md b/docs/api/XCEngine/Components/AudioListenerComponent/SetReverb.md new file mode 100644 index 00000000..b6664260 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/SetReverb.md @@ -0,0 +1,31 @@ +# AudioListenerComponent::SetReverb + +设置相关状态或配置。 + +```cpp +void SetReverb(Audio::AudioMixer* reverb); +``` + +该方法声明于 `XCEngine/Components/AudioListenerComponent.h`,当前页面用于固定 `AudioListenerComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `reverb` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioListenerComponent object; + // 根据上下文补齐参数后调用 AudioListenerComponent::SetReverb(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioListenerComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/SetReverbLevel.md b/docs/api/XCEngine/Components/AudioListenerComponent/SetReverbLevel.md new file mode 100644 index 00000000..df573dc7 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/SetReverbLevel.md @@ -0,0 +1,31 @@ +# AudioListenerComponent::SetReverbLevel + +设置相关状态或配置。 + +```cpp +void SetReverbLevel(float level); +``` + +该方法声明于 `XCEngine/Components/AudioListenerComponent.h`,当前页面用于固定 `AudioListenerComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `level` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioListenerComponent object; + // 根据上下文补齐参数后调用 AudioListenerComponent::SetReverbLevel(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioListenerComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/SetSpeedOfSound.md b/docs/api/XCEngine/Components/AudioListenerComponent/SetSpeedOfSound.md new file mode 100644 index 00000000..ea294e4c --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/SetSpeedOfSound.md @@ -0,0 +1,31 @@ +# AudioListenerComponent::SetSpeedOfSound + +设置相关状态或配置。 + +```cpp +void SetSpeedOfSound(float metersPerSecond); +``` + +该方法声明于 `XCEngine/Components/AudioListenerComponent.h`,当前页面用于固定 `AudioListenerComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `metersPerSecond` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioListenerComponent object; + // 根据上下文补齐参数后调用 AudioListenerComponent::SetSpeedOfSound(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioListenerComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioListenerComponent/Update.md b/docs/api/XCEngine/Components/AudioListenerComponent/Update.md new file mode 100644 index 00000000..c082610a --- /dev/null +++ b/docs/api/XCEngine/Components/AudioListenerComponent/Update.md @@ -0,0 +1,31 @@ +# AudioListenerComponent::Update + +更新运行时状态。 + +```cpp +void Update(float deltaTime) override; +``` + +该方法声明于 `XCEngine/Components/AudioListenerComponent.h`,当前页面用于固定 `AudioListenerComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `deltaTime` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioListenerComponent object; + // 根据上下文补齐参数后调用 AudioListenerComponent::Update(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioListenerComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/AudioSourceComponent.md b/docs/api/XCEngine/Components/AudioSourceComponent/AudioSourceComponent.md new file mode 100644 index 00000000..5ba58dee --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/AudioSourceComponent.md @@ -0,0 +1,71 @@ +# AudioSourceComponent + +**命名空间**: `XCEngine::Components` + +**类型**: `class` + +**头文件**: `XCEngine/Components/AudioSourceComponent.h` + +**描述**: 定义 `XCEngine/Components` 子目录中的 `AudioSourceComponent` public API。 + +## 概述 + +`AudioSourceComponent.h` 是 `XCEngine/Components` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `AudioSourceComponent` | `class` | 继承自 `Component` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [AudioSourceComponent()](Constructor.md) | 构造对象。 | +| [~AudioSourceComponent()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Play](Play.md) | 公开方法,详见头文件声明。 | +| [Pause](Pause.md) | 公开方法,详见头文件声明。 | +| [Stop](Stop.md) | 公开方法,详见头文件声明。 | +| [IsPlaying](IsPlaying.md) | 查询当前状态。 | +| [IsPaused](IsPaused.md) | 查询当前状态。 | +| [SetClip](SetClip.md) | 设置相关状态或配置。 | +| [GetClip](GetClip.md) | 获取相关状态或对象。 | +| [SetVolume](SetVolume.md) | 设置相关状态或配置。 | +| [GetVolume](GetVolume.md) | 获取相关状态或对象。 | +| [SetPitch](SetPitch.md) | 设置相关状态或配置。 | +| [GetPitch](GetPitch.md) | 获取相关状态或对象。 | +| [SetPan](SetPan.md) | 设置相关状态或配置。 | +| [GetPan](GetPan.md) | 获取相关状态或对象。 | +| [SetLooping](SetLooping.md) | 设置相关状态或配置。 | +| [IsLooping](IsLooping.md) | 查询当前状态。 | +| [SetSpatialize](SetSpatialize.md) | 设置相关状态或配置。 | +| [IsSpatialize](IsSpatialize.md) | 查询当前状态。 | +| [Set3DParams](Set3DParams.md) | 设置相关状态或配置。 | +| [Get3DParams](Get3DParams.md) | 获取相关状态或对象。 | +| [SetDopplerLevel](SetDopplerLevel.md) | 设置相关状态或配置。 | +| [GetDopplerLevel](GetDopplerLevel.md) | 获取相关状态或对象。 | +| [SetSpread](SetSpread.md) | 设置相关状态或配置。 | +| [GetSpread](GetSpread.md) | 获取相关状态或对象。 | +| [SetReverbZoneMix](SetReverbZoneMix.md) | 设置相关状态或配置。 | +| [GetReverbZoneMix](GetReverbZoneMix.md) | 获取相关状态或对象。 | +| [SetOutputMixer](SetOutputMixer.md) | 设置相关状态或配置。 | +| [GetOutputMixer](GetOutputMixer.md) | 获取相关状态或对象。 | +| [SetTime](SetTime.md) | 设置相关状态或配置。 | +| [GetTime](GetTime.md) | 获取相关状态或对象。 | +| [GetDuration](GetDuration.md) | 获取相关状态或对象。 | +| [GetEnergy](GetEnergy.md) | 获取相关状态或对象。 | +| [StartEnergyDetect](StartEnergyDetect.md) | 公开方法,详见头文件声明。 | +| [StopEnergyDetect](StopEnergyDetect.md) | 公开方法,详见头文件声明。 | +| [IsEnergyDetecting](IsEnergyDetecting.md) | 查询当前状态。 | +| [Update](Update.md) | 更新运行时状态。 | +| [OnEnable](OnEnable.md) | 公开方法,详见头文件声明。 | +| [OnDisable](OnDisable.md) | 公开方法,详见头文件声明。 | +| [OnDestroy](OnDestroy.md) | 公开方法,详见头文件声明。 | +| [ProcessAudio](ProcessAudio.md) | 公开方法,详见头文件声明。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Components.md) - 返回 `Components` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/Constructor.md b/docs/api/XCEngine/Components/AudioSourceComponent/Constructor.md new file mode 100644 index 00000000..3405ca2e --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/Constructor.md @@ -0,0 +1,28 @@ +# AudioSourceComponent::AudioSourceComponent() + +构造对象。 + +```cpp +AudioSourceComponent(); +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/Destructor.md b/docs/api/XCEngine/Components/AudioSourceComponent/Destructor.md new file mode 100644 index 00000000..f67339a4 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/Destructor.md @@ -0,0 +1,29 @@ +# AudioSourceComponent::~AudioSourceComponent() + +销毁对象并释放相关资源。 + +```cpp +~AudioSourceComponent() override; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/Get3DParams.md b/docs/api/XCEngine/Components/AudioSourceComponent/Get3DParams.md new file mode 100644 index 00000000..10278e81 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/Get3DParams.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::Get3DParams + +获取相关状态或对象。 + +```cpp +const Audio::Audio3DParams& Get3DParams() const; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Audio::Audio3DParams&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::Get3DParams(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/GetClip.md b/docs/api/XCEngine/Components/AudioSourceComponent/GetClip.md new file mode 100644 index 00000000..529a3c2e --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/GetClip.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::GetClip + +获取相关状态或对象。 + +```cpp +Resources::AudioClip* GetClip() const; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Resources::AudioClip*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::GetClip(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/GetDopplerLevel.md b/docs/api/XCEngine/Components/AudioSourceComponent/GetDopplerLevel.md new file mode 100644 index 00000000..008e0bb5 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/GetDopplerLevel.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::GetDopplerLevel + +获取相关状态或对象。 + +```cpp +float GetDopplerLevel() const; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::GetDopplerLevel(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/GetDuration.md b/docs/api/XCEngine/Components/AudioSourceComponent/GetDuration.md new file mode 100644 index 00000000..5ee01a58 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/GetDuration.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::GetDuration + +获取相关状态或对象。 + +```cpp +float GetDuration() const; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::GetDuration(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/GetEnergy.md b/docs/api/XCEngine/Components/AudioSourceComponent/GetEnergy.md new file mode 100644 index 00000000..bc9cb4a5 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/GetEnergy.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::GetEnergy + +获取相关状态或对象。 + +```cpp +float GetEnergy() const; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::GetEnergy(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/GetName.md b/docs/api/XCEngine/Components/AudioSourceComponent/GetName.md new file mode 100644 index 00000000..61f44cb0 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/GetName.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::GetName + +获取相关状态或对象。 + +```cpp +std::string GetName() const override; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::string` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/GetOutputMixer.md b/docs/api/XCEngine/Components/AudioSourceComponent/GetOutputMixer.md new file mode 100644 index 00000000..ebc28e25 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/GetOutputMixer.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::GetOutputMixer + +获取相关状态或对象。 + +```cpp +Audio::AudioMixer* GetOutputMixer() const; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Audio::AudioMixer*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::GetOutputMixer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/GetPan.md b/docs/api/XCEngine/Components/AudioSourceComponent/GetPan.md new file mode 100644 index 00000000..9b8e7369 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/GetPan.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::GetPan + +获取相关状态或对象。 + +```cpp +float GetPan() const; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::GetPan(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/GetPitch.md b/docs/api/XCEngine/Components/AudioSourceComponent/GetPitch.md new file mode 100644 index 00000000..2d864f42 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/GetPitch.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::GetPitch + +获取相关状态或对象。 + +```cpp +float GetPitch() const; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::GetPitch(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/GetReverbZoneMix.md b/docs/api/XCEngine/Components/AudioSourceComponent/GetReverbZoneMix.md new file mode 100644 index 00000000..67d55d9b --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/GetReverbZoneMix.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::GetReverbZoneMix + +获取相关状态或对象。 + +```cpp +float GetReverbZoneMix() const; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::GetReverbZoneMix(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/GetSpread.md b/docs/api/XCEngine/Components/AudioSourceComponent/GetSpread.md new file mode 100644 index 00000000..1457ab1d --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/GetSpread.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::GetSpread + +获取相关状态或对象。 + +```cpp +float GetSpread() const; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::GetSpread(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/GetTime.md b/docs/api/XCEngine/Components/AudioSourceComponent/GetTime.md new file mode 100644 index 00000000..356cfde3 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/GetTime.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::GetTime + +获取相关状态或对象。 + +```cpp +float GetTime() const; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::GetTime(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/GetVolume.md b/docs/api/XCEngine/Components/AudioSourceComponent/GetVolume.md new file mode 100644 index 00000000..90f3b170 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/GetVolume.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::GetVolume + +获取相关状态或对象。 + +```cpp +float GetVolume() const; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::GetVolume(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/IsEnergyDetecting.md b/docs/api/XCEngine/Components/AudioSourceComponent/IsEnergyDetecting.md new file mode 100644 index 00000000..b00bb9f9 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/IsEnergyDetecting.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::IsEnergyDetecting + +查询当前状态。 + +```cpp +bool IsEnergyDetecting() const; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::IsEnergyDetecting(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/IsLooping.md b/docs/api/XCEngine/Components/AudioSourceComponent/IsLooping.md new file mode 100644 index 00000000..acc385a1 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/IsLooping.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::IsLooping + +查询当前状态。 + +```cpp +bool IsLooping() const; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::IsLooping(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/IsPaused.md b/docs/api/XCEngine/Components/AudioSourceComponent/IsPaused.md new file mode 100644 index 00000000..1bf7c7f7 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/IsPaused.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::IsPaused + +查询当前状态。 + +```cpp +bool IsPaused() const; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::IsPaused(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/IsPlaying.md b/docs/api/XCEngine/Components/AudioSourceComponent/IsPlaying.md new file mode 100644 index 00000000..881afed2 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/IsPlaying.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::IsPlaying + +查询当前状态。 + +```cpp +bool IsPlaying() const; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::IsPlaying(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/IsSpatialize.md b/docs/api/XCEngine/Components/AudioSourceComponent/IsSpatialize.md new file mode 100644 index 00000000..a12d7ce6 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/IsSpatialize.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::IsSpatialize + +查询当前状态。 + +```cpp +bool IsSpatialize() const; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::IsSpatialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/OnDestroy.md b/docs/api/XCEngine/Components/AudioSourceComponent/OnDestroy.md new file mode 100644 index 00000000..0b76f5ee --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/OnDestroy.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::OnDestroy + +公开方法,详见头文件声明。 + +```cpp +void OnDestroy() override; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::OnDestroy(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/OnDisable.md b/docs/api/XCEngine/Components/AudioSourceComponent/OnDisable.md new file mode 100644 index 00000000..69bdce32 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/OnDisable.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::OnDisable + +公开方法,详见头文件声明。 + +```cpp +void OnDisable() override; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::OnDisable(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/OnEnable.md b/docs/api/XCEngine/Components/AudioSourceComponent/OnEnable.md new file mode 100644 index 00000000..7550ec5e --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/OnEnable.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::OnEnable + +公开方法,详见头文件声明。 + +```cpp +void OnEnable() override; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::OnEnable(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/Pause.md b/docs/api/XCEngine/Components/AudioSourceComponent/Pause.md new file mode 100644 index 00000000..b4a64e91 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/Pause.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::Pause + +公开方法,详见头文件声明。 + +```cpp +void Pause(); +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::Pause(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/Play.md b/docs/api/XCEngine/Components/AudioSourceComponent/Play.md new file mode 100644 index 00000000..82d4bd67 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/Play.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::Play + +公开方法,详见头文件声明。 + +```cpp +void Play(); +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::Play(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/ProcessAudio.md b/docs/api/XCEngine/Components/AudioSourceComponent/ProcessAudio.md new file mode 100644 index 00000000..fa164816 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/ProcessAudio.md @@ -0,0 +1,35 @@ +# AudioSourceComponent::ProcessAudio + +公开方法,详见头文件声明。 + +```cpp +void ProcessAudio(float* buffer, Audio::uint32 sampleCount, Audio::uint32 channels, const Math::Vector3& listenerPosition, const Math::Quaternion& listenerRotation); +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `sampleCount` - 参数语义详见头文件声明。 +- `channels` - 参数语义详见头文件声明。 +- `listenerPosition` - 参数语义详见头文件声明。 +- `listenerRotation` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::ProcessAudio(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/Set3DParams.md b/docs/api/XCEngine/Components/AudioSourceComponent/Set3DParams.md new file mode 100644 index 00000000..e912c2ba --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/Set3DParams.md @@ -0,0 +1,31 @@ +# AudioSourceComponent::Set3DParams + +设置相关状态或配置。 + +```cpp +void Set3DParams(const Audio::Audio3DParams& params); +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `params` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::Set3DParams(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/SetClip.md b/docs/api/XCEngine/Components/AudioSourceComponent/SetClip.md new file mode 100644 index 00000000..59355308 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/SetClip.md @@ -0,0 +1,31 @@ +# AudioSourceComponent::SetClip + +设置相关状态或配置。 + +```cpp +void SetClip(Resources::AudioClip* clip); +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `clip` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::SetClip(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/SetDopplerLevel.md b/docs/api/XCEngine/Components/AudioSourceComponent/SetDopplerLevel.md new file mode 100644 index 00000000..6e2436fc --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/SetDopplerLevel.md @@ -0,0 +1,31 @@ +# AudioSourceComponent::SetDopplerLevel + +设置相关状态或配置。 + +```cpp +void SetDopplerLevel(float level); +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `level` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::SetDopplerLevel(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/SetLooping.md b/docs/api/XCEngine/Components/AudioSourceComponent/SetLooping.md new file mode 100644 index 00000000..8ed1265b --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/SetLooping.md @@ -0,0 +1,31 @@ +# AudioSourceComponent::SetLooping + +设置相关状态或配置。 + +```cpp +void SetLooping(bool loop); +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `loop` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::SetLooping(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/SetOutputMixer.md b/docs/api/XCEngine/Components/AudioSourceComponent/SetOutputMixer.md new file mode 100644 index 00000000..8323ba5e --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/SetOutputMixer.md @@ -0,0 +1,31 @@ +# AudioSourceComponent::SetOutputMixer + +设置相关状态或配置。 + +```cpp +void SetOutputMixer(Audio::AudioMixer* mixer); +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `mixer` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::SetOutputMixer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/SetPan.md b/docs/api/XCEngine/Components/AudioSourceComponent/SetPan.md new file mode 100644 index 00000000..04ea5503 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/SetPan.md @@ -0,0 +1,31 @@ +# AudioSourceComponent::SetPan + +设置相关状态或配置。 + +```cpp +void SetPan(float pan); +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `pan` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::SetPan(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/SetPitch.md b/docs/api/XCEngine/Components/AudioSourceComponent/SetPitch.md new file mode 100644 index 00000000..acb0aaf6 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/SetPitch.md @@ -0,0 +1,31 @@ +# AudioSourceComponent::SetPitch + +设置相关状态或配置。 + +```cpp +void SetPitch(float pitch); +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `pitch` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::SetPitch(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/SetReverbZoneMix.md b/docs/api/XCEngine/Components/AudioSourceComponent/SetReverbZoneMix.md new file mode 100644 index 00000000..27295bb5 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/SetReverbZoneMix.md @@ -0,0 +1,31 @@ +# AudioSourceComponent::SetReverbZoneMix + +设置相关状态或配置。 + +```cpp +void SetReverbZoneMix(float mix); +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `mix` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::SetReverbZoneMix(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/SetSpatialize.md b/docs/api/XCEngine/Components/AudioSourceComponent/SetSpatialize.md new file mode 100644 index 00000000..c7dafb08 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/SetSpatialize.md @@ -0,0 +1,31 @@ +# AudioSourceComponent::SetSpatialize + +设置相关状态或配置。 + +```cpp +void SetSpatialize(bool spatialize); +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `spatialize` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::SetSpatialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/SetSpread.md b/docs/api/XCEngine/Components/AudioSourceComponent/SetSpread.md new file mode 100644 index 00000000..d5a0fb3a --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/SetSpread.md @@ -0,0 +1,31 @@ +# AudioSourceComponent::SetSpread + +设置相关状态或配置。 + +```cpp +void SetSpread(float spread); +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `spread` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::SetSpread(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/SetTime.md b/docs/api/XCEngine/Components/AudioSourceComponent/SetTime.md new file mode 100644 index 00000000..f50d3e08 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/SetTime.md @@ -0,0 +1,31 @@ +# AudioSourceComponent::SetTime + +设置相关状态或配置。 + +```cpp +void SetTime(float seconds); +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `seconds` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::SetTime(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/SetVolume.md b/docs/api/XCEngine/Components/AudioSourceComponent/SetVolume.md new file mode 100644 index 00000000..9402dba8 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/SetVolume.md @@ -0,0 +1,31 @@ +# AudioSourceComponent::SetVolume + +设置相关状态或配置。 + +```cpp +void SetVolume(float volume); +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `volume` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::SetVolume(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/StartEnergyDetect.md b/docs/api/XCEngine/Components/AudioSourceComponent/StartEnergyDetect.md new file mode 100644 index 00000000..014b0e24 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/StartEnergyDetect.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::StartEnergyDetect + +公开方法,详见头文件声明。 + +```cpp +void StartEnergyDetect(); +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::StartEnergyDetect(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/Stop.md b/docs/api/XCEngine/Components/AudioSourceComponent/Stop.md new file mode 100644 index 00000000..636535e2 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/Stop.md @@ -0,0 +1,31 @@ +# AudioSourceComponent::Stop + +公开方法,详见头文件声明。 + +```cpp +void Stop(Audio::StopMode mode = Audio::StopMode::Immediate); +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `mode` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::Stop(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/StopEnergyDetect.md b/docs/api/XCEngine/Components/AudioSourceComponent/StopEnergyDetect.md new file mode 100644 index 00000000..e9beafa8 --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/StopEnergyDetect.md @@ -0,0 +1,30 @@ +# AudioSourceComponent::StopEnergyDetect + +公开方法,详见头文件声明。 + +```cpp +void StopEnergyDetect(); +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::StopEnergyDetect(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/AudioSourceComponent/Update.md b/docs/api/XCEngine/Components/AudioSourceComponent/Update.md new file mode 100644 index 00000000..81404e0a --- /dev/null +++ b/docs/api/XCEngine/Components/AudioSourceComponent/Update.md @@ -0,0 +1,31 @@ +# AudioSourceComponent::Update + +更新运行时状态。 + +```cpp +void Update(float deltaTime) override; +``` + +该方法声明于 `XCEngine/Components/AudioSourceComponent.h`,当前页面用于固定 `AudioSourceComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `deltaTime` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::AudioSourceComponent object; + // 根据上下文补齐参数后调用 AudioSourceComponent::Update(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioSourceComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/CameraComponent/CameraComponent.md b/docs/api/XCEngine/Components/CameraComponent/CameraComponent.md new file mode 100644 index 00000000..1cfbb821 --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/CameraComponent.md @@ -0,0 +1,49 @@ +# CameraComponent + +**命名空间**: `XCEngine::Components` + +**类型**: `class` + +**头文件**: `XCEngine/Components/CameraComponent.h` + +**描述**: 定义 `XCEngine/Components` 子目录中的 `CameraComponent` public API。 + +## 概述 + +`CameraComponent.h` 是 `XCEngine/Components` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `CameraProjectionType` | `enum class` | 头文件中的公开声明。 | +| `CameraComponent` | `class` | 继承自 `Component` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [GetProjectionType](GetProjectionType.md) | 获取相关状态或对象。 | +| [SetProjectionType](SetProjectionType.md) | 设置相关状态或配置。 | +| [GetFieldOfView](GetFieldOfView.md) | 获取相关状态或对象。 | +| [SetFieldOfView](SetFieldOfView.md) | 设置相关状态或配置。 | +| [GetOrthographicSize](GetOrthographicSize.md) | 获取相关状态或对象。 | +| [SetOrthographicSize](SetOrthographicSize.md) | 设置相关状态或配置。 | +| [GetNearClipPlane](GetNearClipPlane.md) | 获取相关状态或对象。 | +| [SetNearClipPlane](SetNearClipPlane.md) | 设置相关状态或配置。 | +| [GetFarClipPlane](GetFarClipPlane.md) | 获取相关状态或对象。 | +| [SetFarClipPlane](SetFarClipPlane.md) | 设置相关状态或配置。 | +| [GetDepth](GetDepth.md) | 获取相关状态或对象。 | +| [SetDepth](SetDepth.md) | 设置相关状态或配置。 | +| [IsPrimary](IsPrimary.md) | 查询当前状态。 | +| [SetPrimary](SetPrimary.md) | 设置相关状态或配置。 | +| [GetClearColor](GetClearColor.md) | 获取相关状态或对象。 | +| [SetClearColor](SetClearColor.md) | 设置相关状态或配置。 | +| [Serialize](Serialize.md) | 公开方法,详见头文件声明。 | +| [Deserialize](Deserialize.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Components.md) - 返回 `Components` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Components/CameraComponent/Deserialize.md b/docs/api/XCEngine/Components/CameraComponent/Deserialize.md new file mode 100644 index 00000000..3b19ec2d --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/Deserialize.md @@ -0,0 +1,31 @@ +# CameraComponent::Deserialize + +公开方法,详见头文件声明。 + +```cpp +void Deserialize(std::istream& is) override; +``` + +该方法声明于 `XCEngine/Components/CameraComponent.h`,当前页面用于固定 `CameraComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `is` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::CameraComponent object; + // 根据上下文补齐参数后调用 CameraComponent::Deserialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](CameraComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/CameraComponent/GetClearColor.md b/docs/api/XCEngine/Components/CameraComponent/GetClearColor.md new file mode 100644 index 00000000..e7d41a06 --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/GetClearColor.md @@ -0,0 +1,30 @@ +# CameraComponent::GetClearColor + +获取相关状态或对象。 + +```cpp +const Math::Color& GetClearColor() const; +``` + +该方法声明于 `XCEngine/Components/CameraComponent.h`,当前页面用于固定 `CameraComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Math::Color&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::CameraComponent object; + // 根据上下文补齐参数后调用 CameraComponent::GetClearColor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](CameraComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/CameraComponent/GetDepth.md b/docs/api/XCEngine/Components/CameraComponent/GetDepth.md new file mode 100644 index 00000000..f54bcf94 --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/GetDepth.md @@ -0,0 +1,30 @@ +# CameraComponent::GetDepth + +获取相关状态或对象。 + +```cpp +float GetDepth() const; +``` + +该方法声明于 `XCEngine/Components/CameraComponent.h`,当前页面用于固定 `CameraComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::CameraComponent object; + // 根据上下文补齐参数后调用 CameraComponent::GetDepth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](CameraComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/CameraComponent/GetFarClipPlane.md b/docs/api/XCEngine/Components/CameraComponent/GetFarClipPlane.md new file mode 100644 index 00000000..72f1d19c --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/GetFarClipPlane.md @@ -0,0 +1,30 @@ +# CameraComponent::GetFarClipPlane + +获取相关状态或对象。 + +```cpp +float GetFarClipPlane() const; +``` + +该方法声明于 `XCEngine/Components/CameraComponent.h`,当前页面用于固定 `CameraComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::CameraComponent object; + // 根据上下文补齐参数后调用 CameraComponent::GetFarClipPlane(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](CameraComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/CameraComponent/GetFieldOfView.md b/docs/api/XCEngine/Components/CameraComponent/GetFieldOfView.md new file mode 100644 index 00000000..8fbea413 --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/GetFieldOfView.md @@ -0,0 +1,30 @@ +# CameraComponent::GetFieldOfView + +获取相关状态或对象。 + +```cpp +float GetFieldOfView() const; +``` + +该方法声明于 `XCEngine/Components/CameraComponent.h`,当前页面用于固定 `CameraComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::CameraComponent object; + // 根据上下文补齐参数后调用 CameraComponent::GetFieldOfView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](CameraComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/CameraComponent/GetName.md b/docs/api/XCEngine/Components/CameraComponent/GetName.md new file mode 100644 index 00000000..9817c9d0 --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/GetName.md @@ -0,0 +1,30 @@ +# CameraComponent::GetName + +获取相关状态或对象。 + +```cpp +std::string GetName() const override; +``` + +该方法声明于 `XCEngine/Components/CameraComponent.h`,当前页面用于固定 `CameraComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::string` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::CameraComponent object; + // 根据上下文补齐参数后调用 CameraComponent::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](CameraComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/CameraComponent/GetNearClipPlane.md b/docs/api/XCEngine/Components/CameraComponent/GetNearClipPlane.md new file mode 100644 index 00000000..34e90f18 --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/GetNearClipPlane.md @@ -0,0 +1,30 @@ +# CameraComponent::GetNearClipPlane + +获取相关状态或对象。 + +```cpp +float GetNearClipPlane() const; +``` + +该方法声明于 `XCEngine/Components/CameraComponent.h`,当前页面用于固定 `CameraComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::CameraComponent object; + // 根据上下文补齐参数后调用 CameraComponent::GetNearClipPlane(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](CameraComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/CameraComponent/GetOrthographicSize.md b/docs/api/XCEngine/Components/CameraComponent/GetOrthographicSize.md new file mode 100644 index 00000000..ee80ed1f --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/GetOrthographicSize.md @@ -0,0 +1,30 @@ +# CameraComponent::GetOrthographicSize + +获取相关状态或对象。 + +```cpp +float GetOrthographicSize() const; +``` + +该方法声明于 `XCEngine/Components/CameraComponent.h`,当前页面用于固定 `CameraComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::CameraComponent object; + // 根据上下文补齐参数后调用 CameraComponent::GetOrthographicSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](CameraComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/CameraComponent/GetProjectionType.md b/docs/api/XCEngine/Components/CameraComponent/GetProjectionType.md new file mode 100644 index 00000000..919e59e0 --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/GetProjectionType.md @@ -0,0 +1,30 @@ +# CameraComponent::GetProjectionType + +获取相关状态或对象。 + +```cpp +CameraProjectionType GetProjectionType() const; +``` + +该方法声明于 `XCEngine/Components/CameraComponent.h`,当前页面用于固定 `CameraComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `CameraProjectionType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::CameraComponent object; + // 根据上下文补齐参数后调用 CameraComponent::GetProjectionType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](CameraComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/CameraComponent/IsPrimary.md b/docs/api/XCEngine/Components/CameraComponent/IsPrimary.md new file mode 100644 index 00000000..2671e3df --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/IsPrimary.md @@ -0,0 +1,30 @@ +# CameraComponent::IsPrimary + +查询当前状态。 + +```cpp +bool IsPrimary() const; +``` + +该方法声明于 `XCEngine/Components/CameraComponent.h`,当前页面用于固定 `CameraComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::CameraComponent object; + // 根据上下文补齐参数后调用 CameraComponent::IsPrimary(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](CameraComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/CameraComponent/Serialize.md b/docs/api/XCEngine/Components/CameraComponent/Serialize.md new file mode 100644 index 00000000..37c5d842 --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/Serialize.md @@ -0,0 +1,31 @@ +# CameraComponent::Serialize + +公开方法,详见头文件声明。 + +```cpp +void Serialize(std::ostream& os) const override; +``` + +该方法声明于 `XCEngine/Components/CameraComponent.h`,当前页面用于固定 `CameraComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `os` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::CameraComponent object; + // 根据上下文补齐参数后调用 CameraComponent::Serialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](CameraComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/CameraComponent/SetClearColor.md b/docs/api/XCEngine/Components/CameraComponent/SetClearColor.md new file mode 100644 index 00000000..39b1fdc9 --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/SetClearColor.md @@ -0,0 +1,31 @@ +# CameraComponent::SetClearColor + +设置相关状态或配置。 + +```cpp +void SetClearColor(const Math::Color& value); +``` + +该方法声明于 `XCEngine/Components/CameraComponent.h`,当前页面用于固定 `CameraComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::CameraComponent object; + // 根据上下文补齐参数后调用 CameraComponent::SetClearColor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](CameraComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/CameraComponent/SetDepth.md b/docs/api/XCEngine/Components/CameraComponent/SetDepth.md new file mode 100644 index 00000000..6fd837f6 --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/SetDepth.md @@ -0,0 +1,31 @@ +# CameraComponent::SetDepth + +设置相关状态或配置。 + +```cpp +void SetDepth(float value); +``` + +该方法声明于 `XCEngine/Components/CameraComponent.h`,当前页面用于固定 `CameraComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::CameraComponent object; + // 根据上下文补齐参数后调用 CameraComponent::SetDepth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](CameraComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/CameraComponent/SetFarClipPlane.md b/docs/api/XCEngine/Components/CameraComponent/SetFarClipPlane.md new file mode 100644 index 00000000..d4b52bc9 --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/SetFarClipPlane.md @@ -0,0 +1,31 @@ +# CameraComponent::SetFarClipPlane + +设置相关状态或配置。 + +```cpp +void SetFarClipPlane(float value); +``` + +该方法声明于 `XCEngine/Components/CameraComponent.h`,当前页面用于固定 `CameraComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::CameraComponent object; + // 根据上下文补齐参数后调用 CameraComponent::SetFarClipPlane(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](CameraComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/CameraComponent/SetFieldOfView.md b/docs/api/XCEngine/Components/CameraComponent/SetFieldOfView.md new file mode 100644 index 00000000..a836fcad --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/SetFieldOfView.md @@ -0,0 +1,31 @@ +# CameraComponent::SetFieldOfView + +设置相关状态或配置。 + +```cpp +void SetFieldOfView(float value); +``` + +该方法声明于 `XCEngine/Components/CameraComponent.h`,当前页面用于固定 `CameraComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::CameraComponent object; + // 根据上下文补齐参数后调用 CameraComponent::SetFieldOfView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](CameraComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/CameraComponent/SetNearClipPlane.md b/docs/api/XCEngine/Components/CameraComponent/SetNearClipPlane.md new file mode 100644 index 00000000..27244e15 --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/SetNearClipPlane.md @@ -0,0 +1,31 @@ +# CameraComponent::SetNearClipPlane + +设置相关状态或配置。 + +```cpp +void SetNearClipPlane(float value); +``` + +该方法声明于 `XCEngine/Components/CameraComponent.h`,当前页面用于固定 `CameraComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::CameraComponent object; + // 根据上下文补齐参数后调用 CameraComponent::SetNearClipPlane(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](CameraComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/CameraComponent/SetOrthographicSize.md b/docs/api/XCEngine/Components/CameraComponent/SetOrthographicSize.md new file mode 100644 index 00000000..59aecf9e --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/SetOrthographicSize.md @@ -0,0 +1,31 @@ +# CameraComponent::SetOrthographicSize + +设置相关状态或配置。 + +```cpp +void SetOrthographicSize(float value); +``` + +该方法声明于 `XCEngine/Components/CameraComponent.h`,当前页面用于固定 `CameraComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::CameraComponent object; + // 根据上下文补齐参数后调用 CameraComponent::SetOrthographicSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](CameraComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/CameraComponent/SetPrimary.md b/docs/api/XCEngine/Components/CameraComponent/SetPrimary.md new file mode 100644 index 00000000..135e188e --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/SetPrimary.md @@ -0,0 +1,31 @@ +# CameraComponent::SetPrimary + +设置相关状态或配置。 + +```cpp +void SetPrimary(bool value); +``` + +该方法声明于 `XCEngine/Components/CameraComponent.h`,当前页面用于固定 `CameraComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::CameraComponent object; + // 根据上下文补齐参数后调用 CameraComponent::SetPrimary(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](CameraComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/CameraComponent/SetProjectionType.md b/docs/api/XCEngine/Components/CameraComponent/SetProjectionType.md new file mode 100644 index 00000000..f4bde4ab --- /dev/null +++ b/docs/api/XCEngine/Components/CameraComponent/SetProjectionType.md @@ -0,0 +1,31 @@ +# CameraComponent::SetProjectionType + +设置相关状态或配置。 + +```cpp +void SetProjectionType(CameraProjectionType type); +``` + +该方法声明于 `XCEngine/Components/CameraComponent.h`,当前页面用于固定 `CameraComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::CameraComponent object; + // 根据上下文补齐参数后调用 CameraComponent::SetProjectionType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](CameraComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/Component/Awake.md b/docs/api/XCEngine/Components/Component/Awake.md new file mode 100644 index 00000000..24328632 --- /dev/null +++ b/docs/api/XCEngine/Components/Component/Awake.md @@ -0,0 +1,30 @@ +# Component::Awake + +公开方法,详见头文件声明。 + +```cpp +virtual void Awake(); +``` + +该方法声明于 `XCEngine/Components/Component.h`,当前页面用于固定 `Component` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Component object; + // 根据上下文补齐参数后调用 Component::Awake(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Component.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/Component/Component.md b/docs/api/XCEngine/Components/Component/Component.md new file mode 100644 index 00000000..fa9b3046 --- /dev/null +++ b/docs/api/XCEngine/Components/Component/Component.md @@ -0,0 +1,46 @@ +# Component + +**命名空间**: `XCEngine::Components` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/Components/Component.h` + +**描述**: 定义 `XCEngine/Components` 子目录中的 `Component` public API。 + +## 概述 + +`Component.h` 是 `XCEngine/Components` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Component` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~Component()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Awake](Awake.md) | 公开方法,详见头文件声明。 | +| [Start](Start.md) | 公开方法,详见头文件声明。 | +| [Update](Update.md) | 更新运行时状态。 | +| [FixedUpdate](FixedUpdate.md) | 公开方法,详见头文件声明。 | +| [LateUpdate](LateUpdate.md) | 公开方法,详见头文件声明。 | +| [OnEnable](OnEnable.md) | 公开方法,详见头文件声明。 | +| [OnDisable](OnDisable.md) | 公开方法,详见头文件声明。 | +| [OnDestroy](OnDestroy.md) | 公开方法,详见头文件声明。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [Serialize](Serialize.md) | 公开方法,详见头文件声明。 | +| [Deserialize](Deserialize.md) | 公开方法,详见头文件声明。 | +| [GetGameObject](GetGameObject.md) | 获取相关状态或对象。 | +| [transform](transform.md) | 公开方法,详见头文件声明。 | +| [GetScene](GetScene.md) | 获取相关状态或对象。 | +| [IsEnabled](IsEnabled.md) | 查询当前状态。 | +| [SetEnabled](SetEnabled.md) | 设置相关状态或配置。 | + +## 相关文档 + +- [当前目录](../Components.md) - 返回 `Components` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Components/Component/Deserialize.md b/docs/api/XCEngine/Components/Component/Deserialize.md new file mode 100644 index 00000000..8b53cfc0 --- /dev/null +++ b/docs/api/XCEngine/Components/Component/Deserialize.md @@ -0,0 +1,31 @@ +# Component::Deserialize + +公开方法,详见头文件声明。 + +```cpp +virtual void Deserialize(std::istream& is); +``` + +该方法声明于 `XCEngine/Components/Component.h`,当前页面用于固定 `Component` 类目录下的方法级 canonical 路径。 + +**参数:** +- `is` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Component object; + // 根据上下文补齐参数后调用 Component::Deserialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Component.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/Component/Destructor.md b/docs/api/XCEngine/Components/Component/Destructor.md new file mode 100644 index 00000000..c6b91952 --- /dev/null +++ b/docs/api/XCEngine/Components/Component/Destructor.md @@ -0,0 +1,29 @@ +# Component::~Component() + +销毁对象并释放相关资源。 + +```cpp +virtual ~Component() = default; +``` + +该方法声明于 `XCEngine/Components/Component.h`,当前页面用于固定 `Component` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Component object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](Component.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/Component/FixedUpdate.md b/docs/api/XCEngine/Components/Component/FixedUpdate.md new file mode 100644 index 00000000..15acd69e --- /dev/null +++ b/docs/api/XCEngine/Components/Component/FixedUpdate.md @@ -0,0 +1,30 @@ +# Component::FixedUpdate + +公开方法,详见头文件声明。 + +```cpp +virtual void FixedUpdate(); +``` + +该方法声明于 `XCEngine/Components/Component.h`,当前页面用于固定 `Component` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Component object; + // 根据上下文补齐参数后调用 Component::FixedUpdate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Component.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/Component/GetGameObject.md b/docs/api/XCEngine/Components/Component/GetGameObject.md new file mode 100644 index 00000000..e2fba288 --- /dev/null +++ b/docs/api/XCEngine/Components/Component/GetGameObject.md @@ -0,0 +1,30 @@ +# Component::GetGameObject + +获取相关状态或对象。 + +```cpp +GameObject* GetGameObject() const; +``` + +该方法声明于 `XCEngine/Components/Component.h`,当前页面用于固定 `Component` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `GameObject*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Component object; + // 根据上下文补齐参数后调用 Component::GetGameObject(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Component.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/Component/GetName.md b/docs/api/XCEngine/Components/Component/GetName.md new file mode 100644 index 00000000..fa1e8d69 --- /dev/null +++ b/docs/api/XCEngine/Components/Component/GetName.md @@ -0,0 +1,30 @@ +# Component::GetName + +获取相关状态或对象。 + +```cpp +virtual std::string GetName() const = 0; +``` + +该方法声明于 `XCEngine/Components/Component.h`,当前页面用于固定 `Component` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::string` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Component object; + // 根据上下文补齐参数后调用 Component::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Component.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/Component/GetScene.md b/docs/api/XCEngine/Components/Component/GetScene.md new file mode 100644 index 00000000..d7521e64 --- /dev/null +++ b/docs/api/XCEngine/Components/Component/GetScene.md @@ -0,0 +1,30 @@ +# Component::GetScene + +获取相关状态或对象。 + +```cpp +Scene* GetScene() const; +``` + +该方法声明于 `XCEngine/Components/Component.h`,当前页面用于固定 `Component` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Scene*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Component object; + // 根据上下文补齐参数后调用 Component::GetScene(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Component.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/Component/IsEnabled.md b/docs/api/XCEngine/Components/Component/IsEnabled.md new file mode 100644 index 00000000..e691c3b5 --- /dev/null +++ b/docs/api/XCEngine/Components/Component/IsEnabled.md @@ -0,0 +1,30 @@ +# Component::IsEnabled + +查询当前状态。 + +```cpp +bool IsEnabled() const; +``` + +该方法声明于 `XCEngine/Components/Component.h`,当前页面用于固定 `Component` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Component object; + // 根据上下文补齐参数后调用 Component::IsEnabled(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Component.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/Component/LateUpdate.md b/docs/api/XCEngine/Components/Component/LateUpdate.md new file mode 100644 index 00000000..2402ca09 --- /dev/null +++ b/docs/api/XCEngine/Components/Component/LateUpdate.md @@ -0,0 +1,31 @@ +# Component::LateUpdate + +公开方法,详见头文件声明。 + +```cpp +virtual void LateUpdate(float deltaTime); +``` + +该方法声明于 `XCEngine/Components/Component.h`,当前页面用于固定 `Component` 类目录下的方法级 canonical 路径。 + +**参数:** +- `deltaTime` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Component object; + // 根据上下文补齐参数后调用 Component::LateUpdate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Component.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/Component/OnDestroy.md b/docs/api/XCEngine/Components/Component/OnDestroy.md new file mode 100644 index 00000000..4b5333d7 --- /dev/null +++ b/docs/api/XCEngine/Components/Component/OnDestroy.md @@ -0,0 +1,30 @@ +# Component::OnDestroy + +公开方法,详见头文件声明。 + +```cpp +virtual void OnDestroy(); +``` + +该方法声明于 `XCEngine/Components/Component.h`,当前页面用于固定 `Component` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Component object; + // 根据上下文补齐参数后调用 Component::OnDestroy(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Component.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/Component/OnDisable.md b/docs/api/XCEngine/Components/Component/OnDisable.md new file mode 100644 index 00000000..6a1e8301 --- /dev/null +++ b/docs/api/XCEngine/Components/Component/OnDisable.md @@ -0,0 +1,30 @@ +# Component::OnDisable + +公开方法,详见头文件声明。 + +```cpp +virtual void OnDisable(); +``` + +该方法声明于 `XCEngine/Components/Component.h`,当前页面用于固定 `Component` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Component object; + // 根据上下文补齐参数后调用 Component::OnDisable(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Component.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/Component/OnEnable.md b/docs/api/XCEngine/Components/Component/OnEnable.md new file mode 100644 index 00000000..f5765c9b --- /dev/null +++ b/docs/api/XCEngine/Components/Component/OnEnable.md @@ -0,0 +1,30 @@ +# Component::OnEnable + +公开方法,详见头文件声明。 + +```cpp +virtual void OnEnable(); +``` + +该方法声明于 `XCEngine/Components/Component.h`,当前页面用于固定 `Component` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Component object; + // 根据上下文补齐参数后调用 Component::OnEnable(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Component.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/Component/Serialize.md b/docs/api/XCEngine/Components/Component/Serialize.md new file mode 100644 index 00000000..c1fc78bc --- /dev/null +++ b/docs/api/XCEngine/Components/Component/Serialize.md @@ -0,0 +1,31 @@ +# Component::Serialize + +公开方法,详见头文件声明。 + +```cpp +virtual void Serialize(std::ostream& os) const; +``` + +该方法声明于 `XCEngine/Components/Component.h`,当前页面用于固定 `Component` 类目录下的方法级 canonical 路径。 + +**参数:** +- `os` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Component object; + // 根据上下文补齐参数后调用 Component::Serialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Component.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/Component/SetEnabled.md b/docs/api/XCEngine/Components/Component/SetEnabled.md new file mode 100644 index 00000000..a4c031e5 --- /dev/null +++ b/docs/api/XCEngine/Components/Component/SetEnabled.md @@ -0,0 +1,31 @@ +# Component::SetEnabled + +设置相关状态或配置。 + +```cpp +void SetEnabled(bool enabled); +``` + +该方法声明于 `XCEngine/Components/Component.h`,当前页面用于固定 `Component` 类目录下的方法级 canonical 路径。 + +**参数:** +- `enabled` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Component object; + // 根据上下文补齐参数后调用 Component::SetEnabled(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Component.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/Component/Start.md b/docs/api/XCEngine/Components/Component/Start.md new file mode 100644 index 00000000..0552db2e --- /dev/null +++ b/docs/api/XCEngine/Components/Component/Start.md @@ -0,0 +1,30 @@ +# Component::Start + +公开方法,详见头文件声明。 + +```cpp +virtual void Start(); +``` + +该方法声明于 `XCEngine/Components/Component.h`,当前页面用于固定 `Component` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Component object; + // 根据上下文补齐参数后调用 Component::Start(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Component.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/Component/Update.md b/docs/api/XCEngine/Components/Component/Update.md new file mode 100644 index 00000000..56525d95 --- /dev/null +++ b/docs/api/XCEngine/Components/Component/Update.md @@ -0,0 +1,31 @@ +# Component::Update + +更新运行时状态。 + +```cpp +virtual void Update(float deltaTime); +``` + +该方法声明于 `XCEngine/Components/Component.h`,当前页面用于固定 `Component` 类目录下的方法级 canonical 路径。 + +**参数:** +- `deltaTime` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Component object; + // 根据上下文补齐参数后调用 Component::Update(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Component.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/Component/transform.md b/docs/api/XCEngine/Components/Component/transform.md new file mode 100644 index 00000000..2320adb8 --- /dev/null +++ b/docs/api/XCEngine/Components/Component/transform.md @@ -0,0 +1,30 @@ +# Component::transform + +公开方法,详见头文件声明。 + +```cpp +TransformComponent& transform() const; +``` + +该方法声明于 `XCEngine/Components/Component.h`,当前页面用于固定 `Component` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `TransformComponent&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Component object; + // 根据上下文补齐参数后调用 Component::transform(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Component.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/ComponentFactoryRegistry/ComponentFactoryRegistry.md b/docs/api/XCEngine/Components/ComponentFactoryRegistry/ComponentFactoryRegistry.md new file mode 100644 index 00000000..cfb0c361 --- /dev/null +++ b/docs/api/XCEngine/Components/ComponentFactoryRegistry/ComponentFactoryRegistry.md @@ -0,0 +1,34 @@ +# ComponentFactoryRegistry + +**命名空间**: `XCEngine::Components` + +**类型**: `class (singleton)` + +**头文件**: `XCEngine/Components/ComponentFactoryRegistry.h` + +**描述**: 定义 `XCEngine/Components` 子目录中的 `ComponentFactoryRegistry` public API。 + +## 概述 + +`ComponentFactoryRegistry.h` 是 `XCEngine/Components` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `ComponentFactoryRegistry` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Get](Get.md) | 获取相关状态或对象。 | +| [RegisterFactory](RegisterFactory.md) | 注册对象、回调或映射。 | +| [CreateComponent](CreateComponent.md) | 创建新对象或资源。 | +| [IsRegistered](IsRegistered.md) | 查询当前状态。 | +| [GetRegisteredTypes](GetRegisteredTypes.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Components.md) - 返回 `Components` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Components/ComponentFactoryRegistry/CreateComponent.md b/docs/api/XCEngine/Components/ComponentFactoryRegistry/CreateComponent.md new file mode 100644 index 00000000..9e595a76 --- /dev/null +++ b/docs/api/XCEngine/Components/ComponentFactoryRegistry/CreateComponent.md @@ -0,0 +1,32 @@ +# ComponentFactoryRegistry::CreateComponent + +创建新对象或资源。 + +```cpp +Component* CreateComponent(GameObject* gameObject, const std::string& typeName) const; +``` + +该方法声明于 `XCEngine/Components/ComponentFactoryRegistry.h`,当前页面用于固定 `ComponentFactoryRegistry` 类目录下的方法级 canonical 路径。 + +**参数:** +- `gameObject` - 参数语义详见头文件声明。 +- `typeName` - 参数语义详见头文件声明。 + +**返回:** `Component*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::ComponentFactoryRegistry object; + // 根据上下文补齐参数后调用 ComponentFactoryRegistry::CreateComponent(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ComponentFactoryRegistry.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/ComponentFactoryRegistry/Get.md b/docs/api/XCEngine/Components/ComponentFactoryRegistry/Get.md new file mode 100644 index 00000000..0653594e --- /dev/null +++ b/docs/api/XCEngine/Components/ComponentFactoryRegistry/Get.md @@ -0,0 +1,29 @@ +# ComponentFactoryRegistry::Get + +获取相关状态或对象。 + +```cpp +static ComponentFactoryRegistry& Get(); +``` + +该方法声明于 `XCEngine/Components/ComponentFactoryRegistry.h`,当前页面用于固定 `ComponentFactoryRegistry` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ComponentFactoryRegistry&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + auto& instance = XCEngine::Components::ComponentFactoryRegistry::Get(); + (void)instance; +} +``` + +## 相关文档 + +- [返回类总览](ComponentFactoryRegistry.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/ComponentFactoryRegistry/GetRegisteredTypes.md b/docs/api/XCEngine/Components/ComponentFactoryRegistry/GetRegisteredTypes.md new file mode 100644 index 00000000..824edfd1 --- /dev/null +++ b/docs/api/XCEngine/Components/ComponentFactoryRegistry/GetRegisteredTypes.md @@ -0,0 +1,30 @@ +# ComponentFactoryRegistry::GetRegisteredTypes + +获取相关状态或对象。 + +```cpp +const std::vector& GetRegisteredTypes() const; +``` + +该方法声明于 `XCEngine/Components/ComponentFactoryRegistry.h`,当前页面用于固定 `ComponentFactoryRegistry` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const std::vector&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::ComponentFactoryRegistry object; + // 根据上下文补齐参数后调用 ComponentFactoryRegistry::GetRegisteredTypes(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ComponentFactoryRegistry.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/ComponentFactoryRegistry/IsRegistered.md b/docs/api/XCEngine/Components/ComponentFactoryRegistry/IsRegistered.md new file mode 100644 index 00000000..a3a2011f --- /dev/null +++ b/docs/api/XCEngine/Components/ComponentFactoryRegistry/IsRegistered.md @@ -0,0 +1,31 @@ +# ComponentFactoryRegistry::IsRegistered + +查询当前状态。 + +```cpp +bool IsRegistered(const std::string& typeName) const; +``` + +该方法声明于 `XCEngine/Components/ComponentFactoryRegistry.h`,当前页面用于固定 `ComponentFactoryRegistry` 类目录下的方法级 canonical 路径。 + +**参数:** +- `typeName` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::ComponentFactoryRegistry object; + // 根据上下文补齐参数后调用 ComponentFactoryRegistry::IsRegistered(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ComponentFactoryRegistry.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/ComponentFactoryRegistry/RegisterFactory.md b/docs/api/XCEngine/Components/ComponentFactoryRegistry/RegisterFactory.md new file mode 100644 index 00000000..c923f0b5 --- /dev/null +++ b/docs/api/XCEngine/Components/ComponentFactoryRegistry/RegisterFactory.md @@ -0,0 +1,32 @@ +# ComponentFactoryRegistry::RegisterFactory + +注册对象、回调或映射。 + +```cpp +void RegisterFactory(const std::string& typeName, CreateComponentFn createFn); +``` + +该方法声明于 `XCEngine/Components/ComponentFactoryRegistry.h`,当前页面用于固定 `ComponentFactoryRegistry` 类目录下的方法级 canonical 路径。 + +**参数:** +- `typeName` - 参数语义详见头文件声明。 +- `createFn` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::ComponentFactoryRegistry object; + // 根据上下文补齐参数后调用 ComponentFactoryRegistry::RegisterFactory(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ComponentFactoryRegistry.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/Components.md b/docs/api/XCEngine/Components/Components.md new file mode 100644 index 00000000..975a8638 --- /dev/null +++ b/docs/api/XCEngine/Components/Components.md @@ -0,0 +1,27 @@ +# Components + +**命名空间**: `XCEngine::Components` + +**类型**: `module` + +**描述**: 组件系统与游戏对象 API。 + +## 概览 + +该目录与 `XCEngine/Components` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 头文件 + +- [AudioListenerComponent](AudioListenerComponent/AudioListenerComponent.md) - `AudioListenerComponent.h` +- [AudioSourceComponent](AudioSourceComponent/AudioSourceComponent.md) - `AudioSourceComponent.h` +- [CameraComponent](CameraComponent/CameraComponent.md) - `CameraComponent.h` +- [Component](Component/Component.md) - `Component.h` +- [ComponentFactoryRegistry](ComponentFactoryRegistry/ComponentFactoryRegistry.md) - `ComponentFactoryRegistry.h` +- [GameObject](GameObject/GameObject.md) - `GameObject.h` +- [LightComponent](LightComponent/LightComponent.md) - `LightComponent.h` +- [TransformComponent](TransformComponent/TransformComponent.md) - `TransformComponent.h` + +## 相关文档 + +- [上级目录](../XCEngine.md) +- [API 总索引](../../main.md) diff --git a/docs/api/XCEngine/Components/GameObject/AddComponent.md b/docs/api/XCEngine/Components/GameObject/AddComponent.md new file mode 100644 index 00000000..6a418099 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/AddComponent.md @@ -0,0 +1,31 @@ +# GameObject::AddComponent + +添加元素或建立关联。 + +```cpp +template T* AddComponent(Args&&... args); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** +- `args` - 参数语义详见头文件声明。 + +**返回:** `template T*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::AddComponent(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/Awake.md b/docs/api/XCEngine/Components/GameObject/Awake.md new file mode 100644 index 00000000..6ef2484c --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/Awake.md @@ -0,0 +1,30 @@ +# GameObject::Awake + +公开方法,详见头文件声明。 + +```cpp +void Awake(); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::Awake(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/Constructor.md b/docs/api/XCEngine/Components/GameObject/Constructor.md new file mode 100644 index 00000000..a819ab56 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/Constructor.md @@ -0,0 +1,41 @@ +# GameObject::GameObject() + +构造对象。 + +该方法在 `XCEngine/Components/GameObject.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +GameObject(); +``` + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +explicit GameObject(const std::string& name); +``` + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/Deserialize.md b/docs/api/XCEngine/Components/GameObject/Deserialize.md new file mode 100644 index 00000000..bcd6f835 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/Deserialize.md @@ -0,0 +1,31 @@ +# GameObject::Deserialize + +公开方法,详见头文件声明。 + +```cpp +void Deserialize(std::istream& is); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** +- `is` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::Deserialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/Destroy.md b/docs/api/XCEngine/Components/GameObject/Destroy.md new file mode 100644 index 00000000..4cd003ce --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/Destroy.md @@ -0,0 +1,30 @@ +# GameObject::Destroy + +公开方法,详见头文件声明。 + +```cpp +void Destroy(); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::Destroy(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/Destructor.md b/docs/api/XCEngine/Components/GameObject/Destructor.md new file mode 100644 index 00000000..82fd4782 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/Destructor.md @@ -0,0 +1,29 @@ +# GameObject::~GameObject() + +销毁对象并释放相关资源。 + +```cpp +~GameObject(); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/DetachChildren.md b/docs/api/XCEngine/Components/GameObject/DetachChildren.md new file mode 100644 index 00000000..af4860ff --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/DetachChildren.md @@ -0,0 +1,30 @@ +# GameObject::DetachChildren + +公开方法,详见头文件声明。 + +```cpp +void DetachChildren(); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::DetachChildren(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/DetachFromParent.md b/docs/api/XCEngine/Components/GameObject/DetachFromParent.md new file mode 100644 index 00000000..59247cef --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/DetachFromParent.md @@ -0,0 +1,30 @@ +# GameObject::DetachFromParent + +公开方法,详见头文件声明。 + +```cpp +void DetachFromParent(); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::DetachFromParent(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/Find.md b/docs/api/XCEngine/Components/GameObject/Find.md new file mode 100644 index 00000000..fdc2cefd --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/Find.md @@ -0,0 +1,31 @@ +# GameObject::Find + +查找并返回匹配对象。 + +```cpp +static GameObject* Find(const std::string& name); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `GameObject*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::Find(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/FindGameObjectsWithTag.md b/docs/api/XCEngine/Components/GameObject/FindGameObjectsWithTag.md new file mode 100644 index 00000000..c74b59c5 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/FindGameObjectsWithTag.md @@ -0,0 +1,31 @@ +# GameObject::FindGameObjectsWithTag + +查找并返回匹配对象。 + +```cpp +static std::vector FindGameObjectsWithTag(const std::string& tag); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** +- `tag` - 参数语义详见头文件声明。 + +**返回:** `std::vector` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::FindGameObjectsWithTag(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/FindObjectsOfType.md b/docs/api/XCEngine/Components/GameObject/FindObjectsOfType.md new file mode 100644 index 00000000..3650cacc --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/FindObjectsOfType.md @@ -0,0 +1,30 @@ +# GameObject::FindObjectsOfType + +查找并返回匹配对象。 + +```cpp +static std::vector FindObjectsOfType(); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::vector` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::FindObjectsOfType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/FixedUpdate.md b/docs/api/XCEngine/Components/GameObject/FixedUpdate.md new file mode 100644 index 00000000..d0b560b5 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/FixedUpdate.md @@ -0,0 +1,30 @@ +# GameObject::FixedUpdate + +公开方法,详见头文件声明。 + +```cpp +void FixedUpdate(); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::FixedUpdate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/GameObject.md b/docs/api/XCEngine/Components/GameObject/GameObject.md new file mode 100644 index 00000000..bd9dc647 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/GameObject.md @@ -0,0 +1,66 @@ +# GameObject + +**命名空间**: `XCEngine::Components` + +**类型**: `class` + +**头文件**: `XCEngine/Components/GameObject.h` + +**描述**: 定义 `XCEngine/Components` 子目录中的 `GameObject` public API。 + +## 概述 + +`GameObject.h` 是 `XCEngine/Components` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `GameObject` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [GameObject()](Constructor.md) | 构造对象。 | +| [~GameObject()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetID](GetID.md) | 获取相关状态或对象。 | +| [GetUUID](GetUUID.md) | 获取相关状态或对象。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [SetName](SetName.md) | 设置相关状态或配置。 | +| [DetachFromParent](DetachFromParent.md) | 公开方法,详见头文件声明。 | +| [GetScene](GetScene.md) | 获取相关状态或对象。 | +| [GetTransform](GetTransform.md) | 获取相关状态或对象。 | +| [AddComponent](AddComponent.md) | 添加元素或建立关联。 | +| [GetComponent](GetComponent.md) | 获取相关状态或对象。 | +| [GetComponents](GetComponents.md) | 获取相关状态或对象。 | +| [RemoveComponent](RemoveComponent.md) | 移除元素或解除关联。 | +| [GetComponentInChildren](GetComponentInChildren.md) | 获取相关状态或对象。 | +| [GetComponentInParent](GetComponentInParent.md) | 获取相关状态或对象。 | +| [GetComponentsInChildren](GetComponentsInChildren.md) | 获取相关状态或对象。 | +| [GetParent](GetParent.md) | 获取相关状态或对象。 | +| [SetParent](SetParent.md) | 设置相关状态或配置。 | +| [GetChildCount](GetChildCount.md) | 获取相关状态或对象。 | +| [GetChild](GetChild.md) | 获取相关状态或对象。 | +| [GetChildren](GetChildren.md) | 获取相关状态或对象。 | +| [DetachChildren](DetachChildren.md) | 公开方法,详见头文件声明。 | +| [IsActive](IsActive.md) | 查询当前状态。 | +| [SetActive](SetActive.md) | 设置相关状态或配置。 | +| [IsActiveInHierarchy](IsActiveInHierarchy.md) | 查询当前状态。 | +| [Find](Find.md) | 查找并返回匹配对象。 | +| [FindObjectsOfType](FindObjectsOfType.md) | 查找并返回匹配对象。 | +| [FindGameObjectsWithTag](FindGameObjectsWithTag.md) | 查找并返回匹配对象。 | +| [Awake](Awake.md) | 公开方法,详见头文件声明。 | +| [Start](Start.md) | 公开方法,详见头文件声明。 | +| [Update](Update.md) | 更新运行时状态。 | +| [FixedUpdate](FixedUpdate.md) | 公开方法,详见头文件声明。 | +| [LateUpdate](LateUpdate.md) | 公开方法,详见头文件声明。 | +| [OnDestroy](OnDestroy.md) | 公开方法,详见头文件声明。 | +| [Destroy](Destroy.md) | 公开方法,详见头文件声明。 | +| [Serialize](Serialize.md) | 公开方法,详见头文件声明。 | +| [Deserialize](Deserialize.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Components.md) - 返回 `Components` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Components/GameObject/GetChild.md b/docs/api/XCEngine/Components/GameObject/GetChild.md new file mode 100644 index 00000000..23757881 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/GetChild.md @@ -0,0 +1,31 @@ +# GameObject::GetChild + +获取相关状态或对象。 + +```cpp +GameObject* GetChild(size_t index) const; +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `GameObject*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::GetChild(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/GetChildCount.md b/docs/api/XCEngine/Components/GameObject/GetChildCount.md new file mode 100644 index 00000000..2e102c8f --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/GetChildCount.md @@ -0,0 +1,30 @@ +# GameObject::GetChildCount + +获取相关状态或对象。 + +```cpp +size_t GetChildCount() const; +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::GetChildCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/GetChildren.md b/docs/api/XCEngine/Components/GameObject/GetChildren.md new file mode 100644 index 00000000..7fa4f3e9 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/GetChildren.md @@ -0,0 +1,30 @@ +# GameObject::GetChildren + +获取相关状态或对象。 + +```cpp +std::vector GetChildren() const; +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::vector` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::GetChildren(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/GetComponent.md b/docs/api/XCEngine/Components/GameObject/GetComponent.md new file mode 100644 index 00000000..9fea52d6 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/GetComponent.md @@ -0,0 +1,42 @@ +# GameObject::GetComponent + +获取相关状态或对象。 + +该方法在 `XCEngine/Components/GameObject.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +template T* GetComponent(); +``` + +**参数:** 无。 + +**返回:** `template T*` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +template const T* GetComponent() const; +``` + +**参数:** 无。 + +**返回:** `template const T*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::GetComponent(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/GetComponentInChildren.md b/docs/api/XCEngine/Components/GameObject/GetComponentInChildren.md new file mode 100644 index 00000000..f2e9d410 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/GetComponentInChildren.md @@ -0,0 +1,30 @@ +# GameObject::GetComponentInChildren + +获取相关状态或对象。 + +```cpp +template T* GetComponentInChildren(); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `template T*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::GetComponentInChildren(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/GetComponentInParent.md b/docs/api/XCEngine/Components/GameObject/GetComponentInParent.md new file mode 100644 index 00000000..966c79c4 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/GetComponentInParent.md @@ -0,0 +1,30 @@ +# GameObject::GetComponentInParent + +获取相关状态或对象。 + +```cpp +template T* GetComponentInParent(); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `template T*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::GetComponentInParent(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/GetComponents.md b/docs/api/XCEngine/Components/GameObject/GetComponents.md new file mode 100644 index 00000000..5d5bf85a --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/GetComponents.md @@ -0,0 +1,42 @@ +# GameObject::GetComponents + +获取相关状态或对象。 + +该方法在 `XCEngine/Components/GameObject.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +template std::vector GetComponents(); +``` + +**参数:** 无。 + +**返回:** `template std::vector` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +template std::vector GetComponents() const; +``` + +**参数:** 无。 + +**返回:** `template std::vector` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::GetComponents(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/GetComponentsInChildren.md b/docs/api/XCEngine/Components/GameObject/GetComponentsInChildren.md new file mode 100644 index 00000000..4aee34eb --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/GetComponentsInChildren.md @@ -0,0 +1,30 @@ +# GameObject::GetComponentsInChildren + +获取相关状态或对象。 + +```cpp +template std::vector GetComponentsInChildren(); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `template std::vector` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::GetComponentsInChildren(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/GetID.md b/docs/api/XCEngine/Components/GameObject/GetID.md new file mode 100644 index 00000000..d4545193 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/GetID.md @@ -0,0 +1,30 @@ +# GameObject::GetID + +获取相关状态或对象。 + +```cpp +ID GetID() const; +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ID` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::GetID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/GetName.md b/docs/api/XCEngine/Components/GameObject/GetName.md new file mode 100644 index 00000000..23971b88 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/GetName.md @@ -0,0 +1,30 @@ +# GameObject::GetName + +获取相关状态或对象。 + +```cpp +const std::string& GetName() const; +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const std::string&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/GetParent.md b/docs/api/XCEngine/Components/GameObject/GetParent.md new file mode 100644 index 00000000..4910c0ae --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/GetParent.md @@ -0,0 +1,30 @@ +# GameObject::GetParent + +获取相关状态或对象。 + +```cpp +GameObject* GetParent() const; +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `GameObject*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::GetParent(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/GetScene.md b/docs/api/XCEngine/Components/GameObject/GetScene.md new file mode 100644 index 00000000..22f14357 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/GetScene.md @@ -0,0 +1,30 @@ +# GameObject::GetScene + +获取相关状态或对象。 + +```cpp +Scene* GetScene() const; +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Scene*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::GetScene(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/GetTransform.md b/docs/api/XCEngine/Components/GameObject/GetTransform.md new file mode 100644 index 00000000..983af1be --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/GetTransform.md @@ -0,0 +1,42 @@ +# GameObject::GetTransform + +获取相关状态或对象。 + +该方法在 `XCEngine/Components/GameObject.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +TransformComponent* GetTransform(); +``` + +**参数:** 无。 + +**返回:** `TransformComponent*` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +const TransformComponent* GetTransform() const; +``` + +**参数:** 无。 + +**返回:** `const TransformComponent*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::GetTransform(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/GetUUID.md b/docs/api/XCEngine/Components/GameObject/GetUUID.md new file mode 100644 index 00000000..b86503a1 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/GetUUID.md @@ -0,0 +1,30 @@ +# GameObject::GetUUID + +获取相关状态或对象。 + +```cpp +uint64_t GetUUID() const; +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::GetUUID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/IsActive.md b/docs/api/XCEngine/Components/GameObject/IsActive.md new file mode 100644 index 00000000..028f6c3f --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/IsActive.md @@ -0,0 +1,30 @@ +# GameObject::IsActive + +查询当前状态。 + +```cpp +bool IsActive() const; +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::IsActive(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/IsActiveInHierarchy.md b/docs/api/XCEngine/Components/GameObject/IsActiveInHierarchy.md new file mode 100644 index 00000000..cfb18593 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/IsActiveInHierarchy.md @@ -0,0 +1,30 @@ +# GameObject::IsActiveInHierarchy + +查询当前状态。 + +```cpp +bool IsActiveInHierarchy() const; +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::IsActiveInHierarchy(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/LateUpdate.md b/docs/api/XCEngine/Components/GameObject/LateUpdate.md new file mode 100644 index 00000000..a5969d2c --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/LateUpdate.md @@ -0,0 +1,31 @@ +# GameObject::LateUpdate + +公开方法,详见头文件声明。 + +```cpp +void LateUpdate(float deltaTime); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** +- `deltaTime` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::LateUpdate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/OnDestroy.md b/docs/api/XCEngine/Components/GameObject/OnDestroy.md new file mode 100644 index 00000000..5a182cfa --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/OnDestroy.md @@ -0,0 +1,30 @@ +# GameObject::OnDestroy + +公开方法,详见头文件声明。 + +```cpp +void OnDestroy(); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::OnDestroy(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/RemoveComponent.md b/docs/api/XCEngine/Components/GameObject/RemoveComponent.md new file mode 100644 index 00000000..1afdfd93 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/RemoveComponent.md @@ -0,0 +1,43 @@ +# GameObject::RemoveComponent + +移除元素或解除关联。 + +该方法在 `XCEngine/Components/GameObject.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +template void RemoveComponent(); +``` + +**参数:** 无。 + +**返回:** `template void` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +bool RemoveComponent(Component* component); +``` + +**参数:** +- `component` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::RemoveComponent(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/Serialize.md b/docs/api/XCEngine/Components/GameObject/Serialize.md new file mode 100644 index 00000000..cb460a75 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/Serialize.md @@ -0,0 +1,31 @@ +# GameObject::Serialize + +公开方法,详见头文件声明。 + +```cpp +void Serialize(std::ostream& os) const; +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** +- `os` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::Serialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/SetActive.md b/docs/api/XCEngine/Components/GameObject/SetActive.md new file mode 100644 index 00000000..dcc7adf1 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/SetActive.md @@ -0,0 +1,31 @@ +# GameObject::SetActive + +设置相关状态或配置。 + +```cpp +void SetActive(bool active); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** +- `active` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::SetActive(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/SetName.md b/docs/api/XCEngine/Components/GameObject/SetName.md new file mode 100644 index 00000000..258d75a6 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/SetName.md @@ -0,0 +1,31 @@ +# GameObject::SetName + +设置相关状态或配置。 + +```cpp +void SetName(const std::string& name); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::SetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/SetParent.md b/docs/api/XCEngine/Components/GameObject/SetParent.md new file mode 100644 index 00000000..83fb94a9 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/SetParent.md @@ -0,0 +1,45 @@ +# GameObject::SetParent + +设置相关状态或配置。 + +该方法在 `XCEngine/Components/GameObject.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void SetParent(GameObject* parent); +``` + +**参数:** +- `parent` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void SetParent(GameObject* parent, bool worldPositionStays); +``` + +**参数:** +- `parent` - 参数语义详见头文件声明。 +- `worldPositionStays` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::SetParent(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/Start.md b/docs/api/XCEngine/Components/GameObject/Start.md new file mode 100644 index 00000000..463310d7 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/Start.md @@ -0,0 +1,30 @@ +# GameObject::Start + +公开方法,详见头文件声明。 + +```cpp +void Start(); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::Start(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/GameObject/Update.md b/docs/api/XCEngine/Components/GameObject/Update.md new file mode 100644 index 00000000..3a42f391 --- /dev/null +++ b/docs/api/XCEngine/Components/GameObject/Update.md @@ -0,0 +1,31 @@ +# GameObject::Update + +更新运行时状态。 + +```cpp +void Update(float deltaTime); +``` + +该方法声明于 `XCEngine/Components/GameObject.h`,当前页面用于固定 `GameObject` 类目录下的方法级 canonical 路径。 + +**参数:** +- `deltaTime` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::GameObject object; + // 根据上下文补齐参数后调用 GameObject::Update(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](GameObject.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/LightComponent/Deserialize.md b/docs/api/XCEngine/Components/LightComponent/Deserialize.md new file mode 100644 index 00000000..4dd7ff5a --- /dev/null +++ b/docs/api/XCEngine/Components/LightComponent/Deserialize.md @@ -0,0 +1,31 @@ +# LightComponent::Deserialize + +公开方法,详见头文件声明。 + +```cpp +void Deserialize(std::istream& is) override; +``` + +该方法声明于 `XCEngine/Components/LightComponent.h`,当前页面用于固定 `LightComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `is` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::LightComponent object; + // 根据上下文补齐参数后调用 LightComponent::Deserialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LightComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/LightComponent/GetCastsShadows.md b/docs/api/XCEngine/Components/LightComponent/GetCastsShadows.md new file mode 100644 index 00000000..bd74b986 --- /dev/null +++ b/docs/api/XCEngine/Components/LightComponent/GetCastsShadows.md @@ -0,0 +1,30 @@ +# LightComponent::GetCastsShadows + +获取相关状态或对象。 + +```cpp +bool GetCastsShadows() const; +``` + +该方法声明于 `XCEngine/Components/LightComponent.h`,当前页面用于固定 `LightComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::LightComponent object; + // 根据上下文补齐参数后调用 LightComponent::GetCastsShadows(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LightComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/LightComponent/GetColor.md b/docs/api/XCEngine/Components/LightComponent/GetColor.md new file mode 100644 index 00000000..5803e391 --- /dev/null +++ b/docs/api/XCEngine/Components/LightComponent/GetColor.md @@ -0,0 +1,30 @@ +# LightComponent::GetColor + +获取相关状态或对象。 + +```cpp +const Math::Color& GetColor() const; +``` + +该方法声明于 `XCEngine/Components/LightComponent.h`,当前页面用于固定 `LightComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Math::Color&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::LightComponent object; + // 根据上下文补齐参数后调用 LightComponent::GetColor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LightComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/LightComponent/GetIntensity.md b/docs/api/XCEngine/Components/LightComponent/GetIntensity.md new file mode 100644 index 00000000..4d7ae9d8 --- /dev/null +++ b/docs/api/XCEngine/Components/LightComponent/GetIntensity.md @@ -0,0 +1,30 @@ +# LightComponent::GetIntensity + +获取相关状态或对象。 + +```cpp +float GetIntensity() const; +``` + +该方法声明于 `XCEngine/Components/LightComponent.h`,当前页面用于固定 `LightComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::LightComponent object; + // 根据上下文补齐参数后调用 LightComponent::GetIntensity(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LightComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/LightComponent/GetLightType.md b/docs/api/XCEngine/Components/LightComponent/GetLightType.md new file mode 100644 index 00000000..5923abe5 --- /dev/null +++ b/docs/api/XCEngine/Components/LightComponent/GetLightType.md @@ -0,0 +1,30 @@ +# LightComponent::GetLightType + +获取相关状态或对象。 + +```cpp +LightType GetLightType() const; +``` + +该方法声明于 `XCEngine/Components/LightComponent.h`,当前页面用于固定 `LightComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `LightType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::LightComponent object; + // 根据上下文补齐参数后调用 LightComponent::GetLightType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LightComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/LightComponent/GetName.md b/docs/api/XCEngine/Components/LightComponent/GetName.md new file mode 100644 index 00000000..c7f5d459 --- /dev/null +++ b/docs/api/XCEngine/Components/LightComponent/GetName.md @@ -0,0 +1,30 @@ +# LightComponent::GetName + +获取相关状态或对象。 + +```cpp +std::string GetName() const override; +``` + +该方法声明于 `XCEngine/Components/LightComponent.h`,当前页面用于固定 `LightComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::string` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::LightComponent object; + // 根据上下文补齐参数后调用 LightComponent::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LightComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/LightComponent/GetRange.md b/docs/api/XCEngine/Components/LightComponent/GetRange.md new file mode 100644 index 00000000..31f95e62 --- /dev/null +++ b/docs/api/XCEngine/Components/LightComponent/GetRange.md @@ -0,0 +1,30 @@ +# LightComponent::GetRange + +获取相关状态或对象。 + +```cpp +float GetRange() const; +``` + +该方法声明于 `XCEngine/Components/LightComponent.h`,当前页面用于固定 `LightComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::LightComponent object; + // 根据上下文补齐参数后调用 LightComponent::GetRange(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LightComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/LightComponent/GetSpotAngle.md b/docs/api/XCEngine/Components/LightComponent/GetSpotAngle.md new file mode 100644 index 00000000..d167274b --- /dev/null +++ b/docs/api/XCEngine/Components/LightComponent/GetSpotAngle.md @@ -0,0 +1,30 @@ +# LightComponent::GetSpotAngle + +获取相关状态或对象。 + +```cpp +float GetSpotAngle() const; +``` + +该方法声明于 `XCEngine/Components/LightComponent.h`,当前页面用于固定 `LightComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::LightComponent object; + // 根据上下文补齐参数后调用 LightComponent::GetSpotAngle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LightComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/LightComponent/LightComponent.md b/docs/api/XCEngine/Components/LightComponent/LightComponent.md new file mode 100644 index 00000000..8bf26ccf --- /dev/null +++ b/docs/api/XCEngine/Components/LightComponent/LightComponent.md @@ -0,0 +1,45 @@ +# LightComponent + +**命名空间**: `XCEngine::Components` + +**类型**: `class` + +**头文件**: `XCEngine/Components/LightComponent.h` + +**描述**: 定义 `XCEngine/Components` 子目录中的 `LightComponent` public API。 + +## 概述 + +`LightComponent.h` 是 `XCEngine/Components` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `LightType` | `enum class` | 头文件中的公开声明。 | +| `LightComponent` | `class` | 继承自 `Component` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [GetLightType](GetLightType.md) | 获取相关状态或对象。 | +| [SetLightType](SetLightType.md) | 设置相关状态或配置。 | +| [GetColor](GetColor.md) | 获取相关状态或对象。 | +| [SetColor](SetColor.md) | 设置相关状态或配置。 | +| [GetIntensity](GetIntensity.md) | 获取相关状态或对象。 | +| [SetIntensity](SetIntensity.md) | 设置相关状态或配置。 | +| [GetRange](GetRange.md) | 获取相关状态或对象。 | +| [SetRange](SetRange.md) | 设置相关状态或配置。 | +| [GetSpotAngle](GetSpotAngle.md) | 获取相关状态或对象。 | +| [SetSpotAngle](SetSpotAngle.md) | 设置相关状态或配置。 | +| [GetCastsShadows](GetCastsShadows.md) | 获取相关状态或对象。 | +| [SetCastsShadows](SetCastsShadows.md) | 设置相关状态或配置。 | +| [Serialize](Serialize.md) | 公开方法,详见头文件声明。 | +| [Deserialize](Deserialize.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Components.md) - 返回 `Components` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Components/LightComponent/Serialize.md b/docs/api/XCEngine/Components/LightComponent/Serialize.md new file mode 100644 index 00000000..c5f6771f --- /dev/null +++ b/docs/api/XCEngine/Components/LightComponent/Serialize.md @@ -0,0 +1,31 @@ +# LightComponent::Serialize + +公开方法,详见头文件声明。 + +```cpp +void Serialize(std::ostream& os) const override; +``` + +该方法声明于 `XCEngine/Components/LightComponent.h`,当前页面用于固定 `LightComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `os` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::LightComponent object; + // 根据上下文补齐参数后调用 LightComponent::Serialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LightComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/LightComponent/SetCastsShadows.md b/docs/api/XCEngine/Components/LightComponent/SetCastsShadows.md new file mode 100644 index 00000000..66b54bb0 --- /dev/null +++ b/docs/api/XCEngine/Components/LightComponent/SetCastsShadows.md @@ -0,0 +1,31 @@ +# LightComponent::SetCastsShadows + +设置相关状态或配置。 + +```cpp +void SetCastsShadows(bool value); +``` + +该方法声明于 `XCEngine/Components/LightComponent.h`,当前页面用于固定 `LightComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::LightComponent object; + // 根据上下文补齐参数后调用 LightComponent::SetCastsShadows(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LightComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/LightComponent/SetColor.md b/docs/api/XCEngine/Components/LightComponent/SetColor.md new file mode 100644 index 00000000..de967d90 --- /dev/null +++ b/docs/api/XCEngine/Components/LightComponent/SetColor.md @@ -0,0 +1,31 @@ +# LightComponent::SetColor + +设置相关状态或配置。 + +```cpp +void SetColor(const Math::Color& value); +``` + +该方法声明于 `XCEngine/Components/LightComponent.h`,当前页面用于固定 `LightComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::LightComponent object; + // 根据上下文补齐参数后调用 LightComponent::SetColor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LightComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/LightComponent/SetIntensity.md b/docs/api/XCEngine/Components/LightComponent/SetIntensity.md new file mode 100644 index 00000000..148c2c28 --- /dev/null +++ b/docs/api/XCEngine/Components/LightComponent/SetIntensity.md @@ -0,0 +1,31 @@ +# LightComponent::SetIntensity + +设置相关状态或配置。 + +```cpp +void SetIntensity(float value); +``` + +该方法声明于 `XCEngine/Components/LightComponent.h`,当前页面用于固定 `LightComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::LightComponent object; + // 根据上下文补齐参数后调用 LightComponent::SetIntensity(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LightComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/LightComponent/SetLightType.md b/docs/api/XCEngine/Components/LightComponent/SetLightType.md new file mode 100644 index 00000000..725f9009 --- /dev/null +++ b/docs/api/XCEngine/Components/LightComponent/SetLightType.md @@ -0,0 +1,31 @@ +# LightComponent::SetLightType + +设置相关状态或配置。 + +```cpp +void SetLightType(LightType value); +``` + +该方法声明于 `XCEngine/Components/LightComponent.h`,当前页面用于固定 `LightComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::LightComponent object; + // 根据上下文补齐参数后调用 LightComponent::SetLightType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LightComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/LightComponent/SetRange.md b/docs/api/XCEngine/Components/LightComponent/SetRange.md new file mode 100644 index 00000000..b1a1d683 --- /dev/null +++ b/docs/api/XCEngine/Components/LightComponent/SetRange.md @@ -0,0 +1,31 @@ +# LightComponent::SetRange + +设置相关状态或配置。 + +```cpp +void SetRange(float value); +``` + +该方法声明于 `XCEngine/Components/LightComponent.h`,当前页面用于固定 `LightComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::LightComponent object; + // 根据上下文补齐参数后调用 LightComponent::SetRange(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LightComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/LightComponent/SetSpotAngle.md b/docs/api/XCEngine/Components/LightComponent/SetSpotAngle.md new file mode 100644 index 00000000..875fcdf2 --- /dev/null +++ b/docs/api/XCEngine/Components/LightComponent/SetSpotAngle.md @@ -0,0 +1,31 @@ +# LightComponent::SetSpotAngle + +设置相关状态或配置。 + +```cpp +void SetSpotAngle(float value); +``` + +该方法声明于 `XCEngine/Components/LightComponent.h`,当前页面用于固定 `LightComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::LightComponent object; + // 根据上下文补齐参数后调用 LightComponent::SetSpotAngle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LightComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/Constructor.md b/docs/api/XCEngine/Components/TransformComponent/Constructor.md new file mode 100644 index 00000000..12862c0e --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/Constructor.md @@ -0,0 +1,28 @@ +# TransformComponent::TransformComponent() + +构造对象。 + +```cpp +TransformComponent(); +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/Deserialize.md b/docs/api/XCEngine/Components/TransformComponent/Deserialize.md new file mode 100644 index 00000000..6c00d189 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/Deserialize.md @@ -0,0 +1,31 @@ +# TransformComponent::Deserialize + +公开方法,详见头文件声明。 + +```cpp +void Deserialize(std::istream& is) override; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `is` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::Deserialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/Destructor.md b/docs/api/XCEngine/Components/TransformComponent/Destructor.md new file mode 100644 index 00000000..4f38ca55 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/Destructor.md @@ -0,0 +1,29 @@ +# TransformComponent::~TransformComponent() + +销毁对象并释放相关资源。 + +```cpp +~TransformComponent() override = default; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/DetachChildren.md b/docs/api/XCEngine/Components/TransformComponent/DetachChildren.md new file mode 100644 index 00000000..2e71143d --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/DetachChildren.md @@ -0,0 +1,30 @@ +# TransformComponent::DetachChildren + +公开方法,详见头文件声明。 + +```cpp +void DetachChildren(); +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::DetachChildren(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/Find.md b/docs/api/XCEngine/Components/TransformComponent/Find.md new file mode 100644 index 00000000..deb2cacd --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/Find.md @@ -0,0 +1,31 @@ +# TransformComponent::Find + +查找并返回匹配对象。 + +```cpp +TransformComponent* Find(const std::string& name) const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `TransformComponent*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::Find(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/GetChild.md b/docs/api/XCEngine/Components/TransformComponent/GetChild.md new file mode 100644 index 00000000..cc3d5f0c --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/GetChild.md @@ -0,0 +1,31 @@ +# TransformComponent::GetChild + +获取相关状态或对象。 + +```cpp +TransformComponent* GetChild(size_t index) const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `TransformComponent*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::GetChild(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/GetChildCount.md b/docs/api/XCEngine/Components/TransformComponent/GetChildCount.md new file mode 100644 index 00000000..09d345b8 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/GetChildCount.md @@ -0,0 +1,30 @@ +# TransformComponent::GetChildCount + +获取相关状态或对象。 + +```cpp +size_t GetChildCount() const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::GetChildCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/GetForward.md b/docs/api/XCEngine/Components/TransformComponent/GetForward.md new file mode 100644 index 00000000..fac6b7c0 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/GetForward.md @@ -0,0 +1,30 @@ +# TransformComponent::GetForward + +获取相关状态或对象。 + +```cpp +Math::Vector3 GetForward() const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Math::Vector3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::GetForward(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/GetLocalEulerAngles.md b/docs/api/XCEngine/Components/TransformComponent/GetLocalEulerAngles.md new file mode 100644 index 00000000..7aa2eaa0 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/GetLocalEulerAngles.md @@ -0,0 +1,30 @@ +# TransformComponent::GetLocalEulerAngles + +获取相关状态或对象。 + +```cpp +Math::Vector3 GetLocalEulerAngles() const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Math::Vector3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::GetLocalEulerAngles(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/GetLocalPosition.md b/docs/api/XCEngine/Components/TransformComponent/GetLocalPosition.md new file mode 100644 index 00000000..e0ef9af6 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/GetLocalPosition.md @@ -0,0 +1,30 @@ +# TransformComponent::GetLocalPosition + +获取相关状态或对象。 + +```cpp +const Math::Vector3& GetLocalPosition() const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Math::Vector3&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::GetLocalPosition(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/GetLocalRotation.md b/docs/api/XCEngine/Components/TransformComponent/GetLocalRotation.md new file mode 100644 index 00000000..64a0f1a9 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/GetLocalRotation.md @@ -0,0 +1,30 @@ +# TransformComponent::GetLocalRotation + +获取相关状态或对象。 + +```cpp +const Math::Quaternion& GetLocalRotation() const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Math::Quaternion&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::GetLocalRotation(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/GetLocalScale.md b/docs/api/XCEngine/Components/TransformComponent/GetLocalScale.md new file mode 100644 index 00000000..9f34764e --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/GetLocalScale.md @@ -0,0 +1,30 @@ +# TransformComponent::GetLocalScale + +获取相关状态或对象。 + +```cpp +const Math::Vector3& GetLocalScale() const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Math::Vector3&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::GetLocalScale(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/GetLocalToWorldMatrix.md b/docs/api/XCEngine/Components/TransformComponent/GetLocalToWorldMatrix.md new file mode 100644 index 00000000..07e74fd6 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/GetLocalToWorldMatrix.md @@ -0,0 +1,30 @@ +# TransformComponent::GetLocalToWorldMatrix + +获取相关状态或对象。 + +```cpp +const Math::Matrix4x4& GetLocalToWorldMatrix() const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Math::Matrix4x4&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::GetLocalToWorldMatrix(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/GetName.md b/docs/api/XCEngine/Components/TransformComponent/GetName.md new file mode 100644 index 00000000..609a8ce9 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/GetName.md @@ -0,0 +1,30 @@ +# TransformComponent::GetName + +获取相关状态或对象。 + +```cpp +std::string GetName() const override; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::string` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/GetParent.md b/docs/api/XCEngine/Components/TransformComponent/GetParent.md new file mode 100644 index 00000000..54c806ce --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/GetParent.md @@ -0,0 +1,30 @@ +# TransformComponent::GetParent + +获取相关状态或对象。 + +```cpp +TransformComponent* GetParent() const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `TransformComponent*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::GetParent(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/GetPosition.md b/docs/api/XCEngine/Components/TransformComponent/GetPosition.md new file mode 100644 index 00000000..24f8da1f --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/GetPosition.md @@ -0,0 +1,30 @@ +# TransformComponent::GetPosition + +获取相关状态或对象。 + +```cpp +Math::Vector3 GetPosition() const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Math::Vector3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::GetPosition(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/GetRight.md b/docs/api/XCEngine/Components/TransformComponent/GetRight.md new file mode 100644 index 00000000..81567c79 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/GetRight.md @@ -0,0 +1,30 @@ +# TransformComponent::GetRight + +获取相关状态或对象。 + +```cpp +Math::Vector3 GetRight() const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Math::Vector3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::GetRight(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/GetRotation.md b/docs/api/XCEngine/Components/TransformComponent/GetRotation.md new file mode 100644 index 00000000..55c196eb --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/GetRotation.md @@ -0,0 +1,30 @@ +# TransformComponent::GetRotation + +获取相关状态或对象。 + +```cpp +Math::Quaternion GetRotation() const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Math::Quaternion` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::GetRotation(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/GetScale.md b/docs/api/XCEngine/Components/TransformComponent/GetScale.md new file mode 100644 index 00000000..1c846d86 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/GetScale.md @@ -0,0 +1,30 @@ +# TransformComponent::GetScale + +获取相关状态或对象。 + +```cpp +Math::Vector3 GetScale() const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Math::Vector3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::GetScale(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/GetSiblingIndex.md b/docs/api/XCEngine/Components/TransformComponent/GetSiblingIndex.md new file mode 100644 index 00000000..9b4a28a7 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/GetSiblingIndex.md @@ -0,0 +1,30 @@ +# TransformComponent::GetSiblingIndex + +获取相关状态或对象。 + +```cpp +int GetSiblingIndex() const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::GetSiblingIndex(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/GetUp.md b/docs/api/XCEngine/Components/TransformComponent/GetUp.md new file mode 100644 index 00000000..107a194d --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/GetUp.md @@ -0,0 +1,30 @@ +# TransformComponent::GetUp + +获取相关状态或对象。 + +```cpp +Math::Vector3 GetUp() const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Math::Vector3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::GetUp(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/GetWorldToLocalMatrix.md b/docs/api/XCEngine/Components/TransformComponent/GetWorldToLocalMatrix.md new file mode 100644 index 00000000..5c76b011 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/GetWorldToLocalMatrix.md @@ -0,0 +1,30 @@ +# TransformComponent::GetWorldToLocalMatrix + +获取相关状态或对象。 + +```cpp +Math::Matrix4x4 GetWorldToLocalMatrix() const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Math::Matrix4x4` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::GetWorldToLocalMatrix(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/InverseTransformDirection.md b/docs/api/XCEngine/Components/TransformComponent/InverseTransformDirection.md new file mode 100644 index 00000000..d25c7344 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/InverseTransformDirection.md @@ -0,0 +1,31 @@ +# TransformComponent::InverseTransformDirection + +公开方法,详见头文件声明。 + +```cpp +Math::Vector3 InverseTransformDirection(const Math::Vector3& direction) const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `direction` - 参数语义详见头文件声明。 + +**返回:** `Math::Vector3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::InverseTransformDirection(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/InverseTransformPoint.md b/docs/api/XCEngine/Components/TransformComponent/InverseTransformPoint.md new file mode 100644 index 00000000..7171fd34 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/InverseTransformPoint.md @@ -0,0 +1,31 @@ +# TransformComponent::InverseTransformPoint + +公开方法,详见头文件声明。 + +```cpp +Math::Vector3 InverseTransformPoint(const Math::Vector3& point) const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `point` - 参数语义详见头文件声明。 + +**返回:** `Math::Vector3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::InverseTransformPoint(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/LookAt.md b/docs/api/XCEngine/Components/TransformComponent/LookAt.md new file mode 100644 index 00000000..9c748d6a --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/LookAt.md @@ -0,0 +1,45 @@ +# TransformComponent::LookAt + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Components/TransformComponent.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void LookAt(const Math::Vector3& target); +``` + +**参数:** +- `target` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void LookAt(const Math::Vector3& target, const Math::Vector3& up); +``` + +**参数:** +- `target` - 参数语义详见头文件声明。 +- `up` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::LookAt(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/NotifyHierarchyChanged.md b/docs/api/XCEngine/Components/TransformComponent/NotifyHierarchyChanged.md new file mode 100644 index 00000000..1534b43b --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/NotifyHierarchyChanged.md @@ -0,0 +1,30 @@ +# TransformComponent::NotifyHierarchyChanged + +公开方法,详见头文件声明。 + +```cpp +void NotifyHierarchyChanged(); +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::NotifyHierarchyChanged(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/Rotate.md b/docs/api/XCEngine/Components/TransformComponent/Rotate.md new file mode 100644 index 00000000..ee43075a --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/Rotate.md @@ -0,0 +1,47 @@ +# TransformComponent::Rotate + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Components/TransformComponent.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void Rotate(const Math::Vector3& eulers, Space relativeTo = Space::Self); +``` + +**参数:** +- `eulers` - 参数语义详见头文件声明。 +- `relativeTo` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void Rotate(const Math::Vector3& axis, float angle, Space relativeTo = Space::Self); +``` + +**参数:** +- `axis` - 参数语义详见头文件声明。 +- `angle` - 参数语义详见头文件声明。 +- `relativeTo` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::Rotate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/Serialize.md b/docs/api/XCEngine/Components/TransformComponent/Serialize.md new file mode 100644 index 00000000..4680f41c --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/Serialize.md @@ -0,0 +1,31 @@ +# TransformComponent::Serialize + +公开方法,详见头文件声明。 + +```cpp +void Serialize(std::ostream& os) const override; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `os` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::Serialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/SetAsFirstSibling.md b/docs/api/XCEngine/Components/TransformComponent/SetAsFirstSibling.md new file mode 100644 index 00000000..ae60a66c --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/SetAsFirstSibling.md @@ -0,0 +1,30 @@ +# TransformComponent::SetAsFirstSibling + +设置相关状态或配置。 + +```cpp +void SetAsFirstSibling(); +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::SetAsFirstSibling(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/SetAsLastSibling.md b/docs/api/XCEngine/Components/TransformComponent/SetAsLastSibling.md new file mode 100644 index 00000000..5164f601 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/SetAsLastSibling.md @@ -0,0 +1,30 @@ +# TransformComponent::SetAsLastSibling + +设置相关状态或配置。 + +```cpp +void SetAsLastSibling(); +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::SetAsLastSibling(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/SetDirty.md b/docs/api/XCEngine/Components/TransformComponent/SetDirty.md new file mode 100644 index 00000000..8d7d722b --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/SetDirty.md @@ -0,0 +1,30 @@ +# TransformComponent::SetDirty + +设置相关状态或配置。 + +```cpp +void SetDirty(); +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::SetDirty(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/SetLocalEulerAngles.md b/docs/api/XCEngine/Components/TransformComponent/SetLocalEulerAngles.md new file mode 100644 index 00000000..25f871d9 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/SetLocalEulerAngles.md @@ -0,0 +1,31 @@ +# TransformComponent::SetLocalEulerAngles + +设置相关状态或配置。 + +```cpp +void SetLocalEulerAngles(const Math::Vector3& eulers); +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `eulers` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::SetLocalEulerAngles(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/SetLocalPosition.md b/docs/api/XCEngine/Components/TransformComponent/SetLocalPosition.md new file mode 100644 index 00000000..20da498d --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/SetLocalPosition.md @@ -0,0 +1,31 @@ +# TransformComponent::SetLocalPosition + +设置相关状态或配置。 + +```cpp +void SetLocalPosition(const Math::Vector3& position); +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `position` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::SetLocalPosition(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/SetLocalRotation.md b/docs/api/XCEngine/Components/TransformComponent/SetLocalRotation.md new file mode 100644 index 00000000..7e415b05 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/SetLocalRotation.md @@ -0,0 +1,31 @@ +# TransformComponent::SetLocalRotation + +设置相关状态或配置。 + +```cpp +void SetLocalRotation(const Math::Quaternion& rotation); +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `rotation` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::SetLocalRotation(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/SetLocalScale.md b/docs/api/XCEngine/Components/TransformComponent/SetLocalScale.md new file mode 100644 index 00000000..5fcdcdf2 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/SetLocalScale.md @@ -0,0 +1,31 @@ +# TransformComponent::SetLocalScale + +设置相关状态或配置。 + +```cpp +void SetLocalScale(const Math::Vector3& scale); +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `scale` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::SetLocalScale(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/SetParent.md b/docs/api/XCEngine/Components/TransformComponent/SetParent.md new file mode 100644 index 00000000..2fe2208c --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/SetParent.md @@ -0,0 +1,32 @@ +# TransformComponent::SetParent + +设置相关状态或配置。 + +```cpp +void SetParent(TransformComponent* parent, bool worldPositionStays = true); +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `parent` - 参数语义详见头文件声明。 +- `worldPositionStays` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::SetParent(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/SetPosition.md b/docs/api/XCEngine/Components/TransformComponent/SetPosition.md new file mode 100644 index 00000000..0820a2e7 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/SetPosition.md @@ -0,0 +1,31 @@ +# TransformComponent::SetPosition + +设置相关状态或配置。 + +```cpp +void SetPosition(const Math::Vector3& position); +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `position` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::SetPosition(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/SetRotation.md b/docs/api/XCEngine/Components/TransformComponent/SetRotation.md new file mode 100644 index 00000000..0f3e919e --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/SetRotation.md @@ -0,0 +1,31 @@ +# TransformComponent::SetRotation + +设置相关状态或配置。 + +```cpp +void SetRotation(const Math::Quaternion& rotation); +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `rotation` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::SetRotation(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/SetScale.md b/docs/api/XCEngine/Components/TransformComponent/SetScale.md new file mode 100644 index 00000000..45974231 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/SetScale.md @@ -0,0 +1,31 @@ +# TransformComponent::SetScale + +设置相关状态或配置。 + +```cpp +void SetScale(const Math::Vector3& scale); +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `scale` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::SetScale(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/SetSiblingIndex.md b/docs/api/XCEngine/Components/TransformComponent/SetSiblingIndex.md new file mode 100644 index 00000000..562d8b38 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/SetSiblingIndex.md @@ -0,0 +1,31 @@ +# TransformComponent::SetSiblingIndex + +设置相关状态或配置。 + +```cpp +void SetSiblingIndex(int index); +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::SetSiblingIndex(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/TransformComponent.md b/docs/api/XCEngine/Components/TransformComponent/TransformComponent.md new file mode 100644 index 00000000..304f0c93 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/TransformComponent.md @@ -0,0 +1,74 @@ +# TransformComponent + +**命名空间**: `XCEngine::Components` + +**类型**: `class` + +**头文件**: `XCEngine/Components/TransformComponent.h` + +**描述**: 定义 `XCEngine/Components` 子目录中的 `TransformComponent` public API。 + +## 概述 + +`TransformComponent.h` 是 `XCEngine/Components` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Space` | `enum class` | 头文件中的公开声明。 | +| `TransformComponent` | `class` | 继承自 `Component` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [TransformComponent()](Constructor.md) | 构造对象。 | +| [~TransformComponent()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [Serialize](Serialize.md) | 公开方法,详见头文件声明。 | +| [Deserialize](Deserialize.md) | 公开方法,详见头文件声明。 | +| [GetLocalPosition](GetLocalPosition.md) | 获取相关状态或对象。 | +| [SetLocalPosition](SetLocalPosition.md) | 设置相关状态或配置。 | +| [GetLocalRotation](GetLocalRotation.md) | 获取相关状态或对象。 | +| [SetLocalRotation](SetLocalRotation.md) | 设置相关状态或配置。 | +| [GetLocalScale](GetLocalScale.md) | 获取相关状态或对象。 | +| [SetLocalScale](SetLocalScale.md) | 设置相关状态或配置。 | +| [GetLocalEulerAngles](GetLocalEulerAngles.md) | 获取相关状态或对象。 | +| [SetLocalEulerAngles](SetLocalEulerAngles.md) | 设置相关状态或配置。 | +| [GetPosition](GetPosition.md) | 获取相关状态或对象。 | +| [SetPosition](SetPosition.md) | 设置相关状态或配置。 | +| [GetRotation](GetRotation.md) | 获取相关状态或对象。 | +| [SetRotation](SetRotation.md) | 设置相关状态或配置。 | +| [GetScale](GetScale.md) | 获取相关状态或对象。 | +| [SetScale](SetScale.md) | 设置相关状态或配置。 | +| [GetForward](GetForward.md) | 获取相关状态或对象。 | +| [GetRight](GetRight.md) | 获取相关状态或对象。 | +| [GetUp](GetUp.md) | 获取相关状态或对象。 | +| [GetLocalToWorldMatrix](GetLocalToWorldMatrix.md) | 获取相关状态或对象。 | +| [GetWorldToLocalMatrix](GetWorldToLocalMatrix.md) | 获取相关状态或对象。 | +| [GetParent](GetParent.md) | 获取相关状态或对象。 | +| [SetParent](SetParent.md) | 设置相关状态或配置。 | +| [GetChildCount](GetChildCount.md) | 获取相关状态或对象。 | +| [GetChild](GetChild.md) | 获取相关状态或对象。 | +| [Find](Find.md) | 查找并返回匹配对象。 | +| [DetachChildren](DetachChildren.md) | 公开方法,详见头文件声明。 | +| [GetSiblingIndex](GetSiblingIndex.md) | 获取相关状态或对象。 | +| [SetSiblingIndex](SetSiblingIndex.md) | 设置相关状态或配置。 | +| [SetAsFirstSibling](SetAsFirstSibling.md) | 设置相关状态或配置。 | +| [SetAsLastSibling](SetAsLastSibling.md) | 设置相关状态或配置。 | +| [LookAt](LookAt.md) | 公开方法,详见头文件声明。 | +| [Rotate](Rotate.md) | 公开方法,详见头文件声明。 | +| [Translate](Translate.md) | 公开方法,详见头文件声明。 | +| [TransformPoint](TransformPoint.md) | 公开方法,详见头文件声明。 | +| [InverseTransformPoint](InverseTransformPoint.md) | 公开方法,详见头文件声明。 | +| [TransformDirection](TransformDirection.md) | 公开方法,详见头文件声明。 | +| [InverseTransformDirection](InverseTransformDirection.md) | 公开方法,详见头文件声明。 | +| [SetDirty](SetDirty.md) | 设置相关状态或配置。 | +| [UpdateWorldTransform](UpdateWorldTransform.md) | 更新运行时状态。 | +| [NotifyHierarchyChanged](NotifyHierarchyChanged.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Components.md) - 返回 `Components` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Components/TransformComponent/TransformDirection.md b/docs/api/XCEngine/Components/TransformComponent/TransformDirection.md new file mode 100644 index 00000000..9f5619c3 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/TransformDirection.md @@ -0,0 +1,31 @@ +# TransformComponent::TransformDirection + +公开方法,详见头文件声明。 + +```cpp +Math::Vector3 TransformDirection(const Math::Vector3& direction) const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `direction` - 参数语义详见头文件声明。 + +**返回:** `Math::Vector3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::TransformDirection(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/TransformPoint.md b/docs/api/XCEngine/Components/TransformComponent/TransformPoint.md new file mode 100644 index 00000000..3f348430 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/TransformPoint.md @@ -0,0 +1,31 @@ +# TransformComponent::TransformPoint + +公开方法,详见头文件声明。 + +```cpp +Math::Vector3 TransformPoint(const Math::Vector3& point) const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `point` - 参数语义详见头文件声明。 + +**返回:** `Math::Vector3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::TransformPoint(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/Translate.md b/docs/api/XCEngine/Components/TransformComponent/Translate.md new file mode 100644 index 00000000..4385f692 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/Translate.md @@ -0,0 +1,32 @@ +# TransformComponent::Translate + +公开方法,详见头文件声明。 + +```cpp +void Translate(const Math::Vector3& translation, Space relativeTo = Space::Self); +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** +- `translation` - 参数语义详见头文件声明。 +- `relativeTo` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::Translate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Components/TransformComponent/UpdateWorldTransform.md b/docs/api/XCEngine/Components/TransformComponent/UpdateWorldTransform.md new file mode 100644 index 00000000..dde87117 --- /dev/null +++ b/docs/api/XCEngine/Components/TransformComponent/UpdateWorldTransform.md @@ -0,0 +1,30 @@ +# TransformComponent::UpdateWorldTransform + +更新运行时状态。 + +```cpp +void UpdateWorldTransform() const; +``` + +该方法声明于 `XCEngine/Components/TransformComponent.h`,当前页面用于固定 `TransformComponent` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::TransformComponent object; + // 根据上下文补齐参数后调用 TransformComponent::UpdateWorldTransform(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TransformComponent.md) +- [返回模块目录](../Components.md) diff --git a/docs/api/XCEngine/Core/Asset/Asset.md b/docs/api/XCEngine/Core/Asset/Asset.md new file mode 100644 index 00000000..1cb7dae5 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/Asset.md @@ -0,0 +1,27 @@ +# Asset + +**命名空间**: `XCEngine::Core::Asset` + +**类型**: `submodule` + +**描述**: 资源句柄、资源管理器、异步加载与依赖图。 + +## 概览 + +该目录与 `XCEngine/Core/Asset` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 头文件 + +- [AsyncLoader](AsyncLoader/AsyncLoader.md) - `AsyncLoader.h` +- [ImportSettings](ImportSettings/ImportSettings.md) - `ImportSettings.h` +- [IResource](IResource/IResource.md) - `IResource.h` +- [ResourceCache](ResourceCache/ResourceCache.md) - `ResourceCache.h` +- [ResourceDependencyGraph](ResourceDependencyGraph/ResourceDependencyGraph.md) - `ResourceDependencyGraph.h` +- [ResourceHandle](ResourceHandle/ResourceHandle.md) - `ResourceHandle.h` +- [ResourceManager](ResourceManager/ResourceManager.md) - `ResourceManager.h` +- [ResourceTypes](ResourceTypes/ResourceTypes.md) - `ResourceTypes.h` + +## 相关文档 + +- [上级目录](../Core.md) +- [API 总索引](../../../main.md) diff --git a/docs/api/XCEngine/Core/Asset/AsyncLoader/AsyncLoader.md b/docs/api/XCEngine/Core/Asset/AsyncLoader/AsyncLoader.md new file mode 100644 index 00000000..749b72fa --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/AsyncLoader/AsyncLoader.md @@ -0,0 +1,42 @@ +# AsyncLoader + +**命名空间**: `XCEngine::Resources` + +**类型**: `class (singleton)` + +**头文件**: `XCEngine/Core/Asset/AsyncLoader.h` + +**描述**: 定义 `XCEngine/Core/Asset` 子目录中的 `AsyncLoader` public API。 + +## 概述 + +`AsyncLoader.h` 是 `XCEngine/Core/Asset` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `LoadRequest` | `struct` | 头文件中的公开声明。 | +| `AsyncLoader` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Get](Get.md) | 获取相关状态或对象。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Submit](Submit.md) | 公开方法,详见头文件声明。 | +| [Update](Update.md) | 更新运行时状态。 | +| [IsLoading](IsLoading.md) | 查询当前状态。 | +| [GetPendingCount](GetPendingCount.md) | 获取相关状态或对象。 | +| [GetProgress](GetProgress.md) | 获取相关状态或对象。 | +| [CancelAll](CancelAll.md) | 判断当前条件下是否可执行。 | +| [Cancel](Cancel.md) | 判断当前条件下是否可执行。 | +| [~AsyncLoader()](Destructor.md) | 销毁对象并释放相关资源。 | +| [AsyncLoader()](Constructor.md) | 构造对象。 | + +## 相关文档 + +- [当前目录](../Asset.md) - 返回 `Asset` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Asset/AsyncLoader/Cancel.md b/docs/api/XCEngine/Core/Asset/AsyncLoader/Cancel.md new file mode 100644 index 00000000..ec7f0891 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/AsyncLoader/Cancel.md @@ -0,0 +1,31 @@ +# AsyncLoader::Cancel + +判断当前条件下是否可执行。 + +```cpp +void Cancel(Core::uint64 requestId); +``` + +该方法声明于 `XCEngine/Core/Asset/AsyncLoader.h`,当前页面用于固定 `AsyncLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `requestId` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AsyncLoader object; + // 根据上下文补齐参数后调用 AsyncLoader::Cancel(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AsyncLoader.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/AsyncLoader/CancelAll.md b/docs/api/XCEngine/Core/Asset/AsyncLoader/CancelAll.md new file mode 100644 index 00000000..149def89 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/AsyncLoader/CancelAll.md @@ -0,0 +1,30 @@ +# AsyncLoader::CancelAll + +判断当前条件下是否可执行。 + +```cpp +void CancelAll(); +``` + +该方法声明于 `XCEngine/Core/Asset/AsyncLoader.h`,当前页面用于固定 `AsyncLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AsyncLoader object; + // 根据上下文补齐参数后调用 AsyncLoader::CancelAll(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AsyncLoader.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/AsyncLoader/Constructor.md b/docs/api/XCEngine/Core/Asset/AsyncLoader/Constructor.md new file mode 100644 index 00000000..7b32716f --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/AsyncLoader/Constructor.md @@ -0,0 +1,28 @@ +# AsyncLoader::AsyncLoader() + +构造对象。 + +```cpp +AsyncLoader() = default; +``` + +该方法声明于 `XCEngine/Core/Asset/AsyncLoader.h`,当前页面用于固定 `AsyncLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AsyncLoader object; +} +``` + +## 相关文档 + +- [返回类总览](AsyncLoader.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/AsyncLoader/Destructor.md b/docs/api/XCEngine/Core/Asset/AsyncLoader/Destructor.md new file mode 100644 index 00000000..9021fff8 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/AsyncLoader/Destructor.md @@ -0,0 +1,29 @@ +# AsyncLoader::~AsyncLoader() + +销毁对象并释放相关资源。 + +```cpp +~AsyncLoader() = default; +``` + +该方法声明于 `XCEngine/Core/Asset/AsyncLoader.h`,当前页面用于固定 `AsyncLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AsyncLoader object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](AsyncLoader.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/AsyncLoader/Get.md b/docs/api/XCEngine/Core/Asset/AsyncLoader/Get.md new file mode 100644 index 00000000..2d399fb4 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/AsyncLoader/Get.md @@ -0,0 +1,29 @@ +# AsyncLoader::Get + +获取相关状态或对象。 + +```cpp +static AsyncLoader& Get(); +``` + +该方法声明于 `XCEngine/Core/Asset/AsyncLoader.h`,当前页面用于固定 `AsyncLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `AsyncLoader&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + auto& instance = XCEngine::Resources::AsyncLoader::Get(); + (void)instance; +} +``` + +## 相关文档 + +- [返回类总览](AsyncLoader.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/AsyncLoader/GetPendingCount.md b/docs/api/XCEngine/Core/Asset/AsyncLoader/GetPendingCount.md new file mode 100644 index 00000000..dc90163f --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/AsyncLoader/GetPendingCount.md @@ -0,0 +1,30 @@ +# AsyncLoader::GetPendingCount + +获取相关状态或对象。 + +```cpp +Core::uint32 GetPendingCount() const; +``` + +该方法声明于 `XCEngine/Core/Asset/AsyncLoader.h`,当前页面用于固定 `AsyncLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AsyncLoader object; + // 根据上下文补齐参数后调用 AsyncLoader::GetPendingCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AsyncLoader.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/AsyncLoader/GetProgress.md b/docs/api/XCEngine/Core/Asset/AsyncLoader/GetProgress.md new file mode 100644 index 00000000..a3200f74 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/AsyncLoader/GetProgress.md @@ -0,0 +1,30 @@ +# AsyncLoader::GetProgress + +获取相关状态或对象。 + +```cpp +float GetProgress() const; +``` + +该方法声明于 `XCEngine/Core/Asset/AsyncLoader.h`,当前页面用于固定 `AsyncLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AsyncLoader object; + // 根据上下文补齐参数后调用 AsyncLoader::GetProgress(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AsyncLoader.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/AsyncLoader/Initialize.md b/docs/api/XCEngine/Core/Asset/AsyncLoader/Initialize.md new file mode 100644 index 00000000..5a2af6de --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/AsyncLoader/Initialize.md @@ -0,0 +1,31 @@ +# AsyncLoader::Initialize + +初始化内部状态。 + +```cpp +void Initialize(Core::uint32 workerThreadCount = 2); +``` + +该方法声明于 `XCEngine/Core/Asset/AsyncLoader.h`,当前页面用于固定 `AsyncLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `workerThreadCount` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AsyncLoader object; + // 根据上下文补齐参数后调用 AsyncLoader::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AsyncLoader.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/AsyncLoader/IsLoading.md b/docs/api/XCEngine/Core/Asset/AsyncLoader/IsLoading.md new file mode 100644 index 00000000..afbaf70b --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/AsyncLoader/IsLoading.md @@ -0,0 +1,30 @@ +# AsyncLoader::IsLoading + +查询当前状态。 + +```cpp +bool IsLoading() const; +``` + +该方法声明于 `XCEngine/Core/Asset/AsyncLoader.h`,当前页面用于固定 `AsyncLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AsyncLoader object; + // 根据上下文补齐参数后调用 AsyncLoader::IsLoading(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AsyncLoader.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/AsyncLoader/Shutdown.md b/docs/api/XCEngine/Core/Asset/AsyncLoader/Shutdown.md new file mode 100644 index 00000000..a6bd00b9 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/AsyncLoader/Shutdown.md @@ -0,0 +1,30 @@ +# AsyncLoader::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown(); +``` + +该方法声明于 `XCEngine/Core/Asset/AsyncLoader.h`,当前页面用于固定 `AsyncLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AsyncLoader object; + // 根据上下文补齐参数后调用 AsyncLoader::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AsyncLoader.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/AsyncLoader/Submit.md b/docs/api/XCEngine/Core/Asset/AsyncLoader/Submit.md new file mode 100644 index 00000000..b6c56a85 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/AsyncLoader/Submit.md @@ -0,0 +1,49 @@ +# AsyncLoader::Submit + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Asset/AsyncLoader.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void Submit(const Containers::String& path, ResourceType type, std::function callback); +``` + +**参数:** +- `path` - 参数语义详见头文件声明。 +- `type` - 参数语义详见头文件声明。 +- `callback` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void Submit(const Containers::String& path, ResourceType type, ImportSettings* settings, std::function callback); +``` + +**参数:** +- `path` - 参数语义详见头文件声明。 +- `type` - 参数语义详见头文件声明。 +- `settings` - 参数语义详见头文件声明。 +- `callback` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AsyncLoader object; + // 根据上下文补齐参数后调用 AsyncLoader::Submit(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AsyncLoader.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/AsyncLoader/Update.md b/docs/api/XCEngine/Core/Asset/AsyncLoader/Update.md new file mode 100644 index 00000000..680e824c --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/AsyncLoader/Update.md @@ -0,0 +1,30 @@ +# AsyncLoader::Update + +更新运行时状态。 + +```cpp +void Update(); +``` + +该方法声明于 `XCEngine/Core/Asset/AsyncLoader.h`,当前页面用于固定 `AsyncLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AsyncLoader object; + // 根据上下文补齐参数后调用 AsyncLoader::Update(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AsyncLoader.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/IResource/Destructor.md b/docs/api/XCEngine/Core/Asset/IResource/Destructor.md new file mode 100644 index 00000000..38a66e18 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/IResource/Destructor.md @@ -0,0 +1,29 @@ +# IResource::~IResource() + +销毁对象并释放相关资源。 + +```cpp +virtual ~IResource() = default; +``` + +该方法声明于 `XCEngine/Core/Asset/IResource.h`,当前页面用于固定 `IResource` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::IResource object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](IResource.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/IResource/GetGUID.md b/docs/api/XCEngine/Core/Asset/IResource/GetGUID.md new file mode 100644 index 00000000..8ba83e13 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/IResource/GetGUID.md @@ -0,0 +1,30 @@ +# IResource::GetGUID + +获取相关状态或对象。 + +```cpp +virtual ResourceGUID GetGUID() const = 0; +``` + +该方法声明于 `XCEngine/Core/Asset/IResource.h`,当前页面用于固定 `IResource` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceGUID` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::IResource object; + // 根据上下文补齐参数后调用 IResource::GetGUID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IResource.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/IResource/GetMemorySize.md b/docs/api/XCEngine/Core/Asset/IResource/GetMemorySize.md new file mode 100644 index 00000000..7c48ead4 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/IResource/GetMemorySize.md @@ -0,0 +1,30 @@ +# IResource::GetMemorySize + +获取相关状态或对象。 + +```cpp +virtual size_t GetMemorySize() const = 0; +``` + +该方法声明于 `XCEngine/Core/Asset/IResource.h`,当前页面用于固定 `IResource` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::IResource object; + // 根据上下文补齐参数后调用 IResource::GetMemorySize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IResource.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/IResource/GetName.md b/docs/api/XCEngine/Core/Asset/IResource/GetName.md new file mode 100644 index 00000000..fd21dbb4 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/IResource/GetName.md @@ -0,0 +1,30 @@ +# IResource::GetName + +获取相关状态或对象。 + +```cpp +virtual const Containers::String& GetName() const = 0; +``` + +该方法声明于 `XCEngine/Core/Asset/IResource.h`,当前页面用于固定 `IResource` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::IResource object; + // 根据上下文补齐参数后调用 IResource::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IResource.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/IResource/GetPath.md b/docs/api/XCEngine/Core/Asset/IResource/GetPath.md new file mode 100644 index 00000000..926ed162 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/IResource/GetPath.md @@ -0,0 +1,30 @@ +# IResource::GetPath + +获取相关状态或对象。 + +```cpp +virtual const Containers::String& GetPath() const = 0; +``` + +该方法声明于 `XCEngine/Core/Asset/IResource.h`,当前页面用于固定 `IResource` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::IResource object; + // 根据上下文补齐参数后调用 IResource::GetPath(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IResource.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/IResource/GetType.md b/docs/api/XCEngine/Core/Asset/IResource/GetType.md new file mode 100644 index 00000000..2eb7e7d4 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/IResource/GetType.md @@ -0,0 +1,30 @@ +# IResource::GetType + +获取相关状态或对象。 + +```cpp +virtual ResourceType GetType() const = 0; +``` + +该方法声明于 `XCEngine/Core/Asset/IResource.h`,当前页面用于固定 `IResource` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::IResource object; + // 根据上下文补齐参数后调用 IResource::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IResource.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/IResource/IResource.md b/docs/api/XCEngine/Core/Asset/IResource/IResource.md new file mode 100644 index 00000000..c110b79c --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/IResource/IResource.md @@ -0,0 +1,39 @@ +# IResource + +**命名空间**: `XCEngine::Resources` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/Core/Asset/IResource.h` + +**描述**: 定义 `XCEngine/Core/Asset` 子目录中的 `IResource` public API。 + +## 概述 + +`IResource.h` 是 `XCEngine/Core/Asset` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `IResource` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~IResource()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [GetPath](GetPath.md) | 获取相关状态或对象。 | +| [GetGUID](GetGUID.md) | 获取相关状态或对象。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [GetMemorySize](GetMemorySize.md) | 获取相关状态或对象。 | +| [Release](Release.md) | 释放引用或底层资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [SetInvalid](SetInvalid.md) | 设置相关状态或配置。 | + +## 相关文档 + +- [当前目录](../Asset.md) - 返回 `Asset` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Asset/IResource/Initialize.md b/docs/api/XCEngine/Core/Asset/IResource/Initialize.md new file mode 100644 index 00000000..668b05dc --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/IResource/Initialize.md @@ -0,0 +1,31 @@ +# IResource::Initialize + +初始化内部状态。 + +```cpp +void Initialize(const ConstructParams& params); +``` + +该方法声明于 `XCEngine/Core/Asset/IResource.h`,当前页面用于固定 `IResource` 类目录下的方法级 canonical 路径。 + +**参数:** +- `params` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::IResource object; + // 根据上下文补齐参数后调用 IResource::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IResource.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/IResource/IsValid.md b/docs/api/XCEngine/Core/Asset/IResource/IsValid.md new file mode 100644 index 00000000..0ae42685 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/IResource/IsValid.md @@ -0,0 +1,30 @@ +# IResource::IsValid + +查询当前状态。 + +```cpp +virtual bool IsValid() const = 0; +``` + +该方法声明于 `XCEngine/Core/Asset/IResource.h`,当前页面用于固定 `IResource` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::IResource object; + // 根据上下文补齐参数后调用 IResource::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IResource.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/IResource/Release.md b/docs/api/XCEngine/Core/Asset/IResource/Release.md new file mode 100644 index 00000000..06caf96c --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/IResource/Release.md @@ -0,0 +1,30 @@ +# IResource::Release + +释放引用或底层资源。 + +```cpp +virtual void Release() = 0; +``` + +该方法声明于 `XCEngine/Core/Asset/IResource.h`,当前页面用于固定 `IResource` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::IResource object; + // 根据上下文补齐参数后调用 IResource::Release(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IResource.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/IResource/SetInvalid.md b/docs/api/XCEngine/Core/Asset/IResource/SetInvalid.md new file mode 100644 index 00000000..5b1dc797 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/IResource/SetInvalid.md @@ -0,0 +1,30 @@ +# IResource::SetInvalid + +设置相关状态或配置。 + +```cpp +void SetInvalid(); +``` + +该方法声明于 `XCEngine/Core/Asset/IResource.h`,当前页面用于固定 `IResource` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::IResource object; + // 根据上下文补齐参数后调用 IResource::SetInvalid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IResource.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ImportSettings/Clone.md b/docs/api/XCEngine/Core/Asset/ImportSettings/Clone.md new file mode 100644 index 00000000..dae9b913 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ImportSettings/Clone.md @@ -0,0 +1,30 @@ +# ImportSettings::Clone + +公开方法,详见头文件声明。 + +```cpp +virtual Core::UniqueRef Clone() const = 0; +``` + +该方法声明于 `XCEngine/Core/Asset/ImportSettings.h`,当前页面用于固定 `ImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::UniqueRef` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ImportSettings object; + // 根据上下文补齐参数后调用 ImportSettings::Clone(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ImportSettings.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ImportSettings/Destructor.md b/docs/api/XCEngine/Core/Asset/ImportSettings/Destructor.md new file mode 100644 index 00000000..58060879 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ImportSettings/Destructor.md @@ -0,0 +1,29 @@ +# ImportSettings::~ImportSettings() + +销毁对象并释放相关资源。 + +```cpp +virtual ~ImportSettings() = default; +``` + +该方法声明于 `XCEngine/Core/Asset/ImportSettings.h`,当前页面用于固定 `ImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ImportSettings object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](ImportSettings.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ImportSettings/ImportSettings.md b/docs/api/XCEngine/Core/Asset/ImportSettings/ImportSettings.md new file mode 100644 index 00000000..49f9920c --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ImportSettings/ImportSettings.md @@ -0,0 +1,33 @@ +# ImportSettings + +**命名空间**: `XCEngine::Resources` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/Core/Asset/ImportSettings.h` + +**描述**: 定义 `XCEngine/Core/Asset` 子目录中的 `ImportSettings` public API。 + +## 概述 + +`ImportSettings.h` 是 `XCEngine/Core/Asset` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `ImportSettings` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~ImportSettings()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Clone](Clone.md) | 公开方法,详见头文件声明。 | +| [LoadFromJSON](LoadFromJSON.md) | 加载资源或数据。 | +| [SaveToJSON](SaveToJSON.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Asset.md) - 返回 `Asset` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Asset/ImportSettings/LoadFromJSON.md b/docs/api/XCEngine/Core/Asset/ImportSettings/LoadFromJSON.md new file mode 100644 index 00000000..deadcce5 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ImportSettings/LoadFromJSON.md @@ -0,0 +1,31 @@ +# ImportSettings::LoadFromJSON + +加载资源或数据。 + +```cpp +virtual bool LoadFromJSON(const Containers::String& json); +``` + +该方法声明于 `XCEngine/Core/Asset/ImportSettings.h`,当前页面用于固定 `ImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `json` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ImportSettings object; + // 根据上下文补齐参数后调用 ImportSettings::LoadFromJSON(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ImportSettings.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ImportSettings/SaveToJSON.md b/docs/api/XCEngine/Core/Asset/ImportSettings/SaveToJSON.md new file mode 100644 index 00000000..85ed8793 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ImportSettings/SaveToJSON.md @@ -0,0 +1,30 @@ +# ImportSettings::SaveToJSON + +公开方法,详见头文件声明。 + +```cpp +virtual Containers::String SaveToJSON() const; +``` + +该方法声明于 `XCEngine/Core/Asset/ImportSettings.h`,当前页面用于固定 `ImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ImportSettings object; + // 根据上下文补齐参数后调用 ImportSettings::SaveToJSON(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ImportSettings.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceCache/Add.md b/docs/api/XCEngine/Core/Asset/ResourceCache/Add.md new file mode 100644 index 00000000..f9002c28 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceCache/Add.md @@ -0,0 +1,32 @@ +# ResourceCache::Add + +添加元素或建立关联。 + +```cpp +void Add(ResourceGUID guid, IResource* resource); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceCache.h`,当前页面用于固定 `ResourceCache` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guid` - 参数语义详见头文件声明。 +- `resource` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceCache object; + // 根据上下文补齐参数后调用 ResourceCache::Add(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceCache.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceCache/Clear.md b/docs/api/XCEngine/Core/Asset/ResourceCache/Clear.md new file mode 100644 index 00000000..a1167a05 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceCache/Clear.md @@ -0,0 +1,30 @@ +# ResourceCache::Clear + +清空内部数据。 + +```cpp +void Clear(); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceCache.h`,当前页面用于固定 `ResourceCache` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceCache object; + // 根据上下文补齐参数后调用 ResourceCache::Clear(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceCache.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceCache/Constructor.md b/docs/api/XCEngine/Core/Asset/ResourceCache/Constructor.md new file mode 100644 index 00000000..3aa2b7d3 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceCache/Constructor.md @@ -0,0 +1,28 @@ +# ResourceCache::ResourceCache() + +构造对象。 + +```cpp +ResourceCache(); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceCache.h`,当前页面用于固定 `ResourceCache` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceCache object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceCache.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceCache/Destructor.md b/docs/api/XCEngine/Core/Asset/ResourceCache/Destructor.md new file mode 100644 index 00000000..44d39373 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceCache/Destructor.md @@ -0,0 +1,29 @@ +# ResourceCache::~ResourceCache() + +销毁对象并释放相关资源。 + +```cpp +~ResourceCache(); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceCache.h`,当前页面用于固定 `ResourceCache` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceCache object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](ResourceCache.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceCache/Find.md b/docs/api/XCEngine/Core/Asset/ResourceCache/Find.md new file mode 100644 index 00000000..8faba05b --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceCache/Find.md @@ -0,0 +1,31 @@ +# ResourceCache::Find + +查找并返回匹配对象。 + +```cpp +IResource* Find(ResourceGUID guid) const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceCache.h`,当前页面用于固定 `ResourceCache` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guid` - 参数语义详见头文件声明。 + +**返回:** `IResource*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceCache object; + // 根据上下文补齐参数后调用 ResourceCache::Find(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceCache.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceCache/Flush.md b/docs/api/XCEngine/Core/Asset/ResourceCache/Flush.md new file mode 100644 index 00000000..67b15e7b --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceCache/Flush.md @@ -0,0 +1,30 @@ +# ResourceCache::Flush + +公开方法,详见头文件声明。 + +```cpp +void Flush(); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceCache.h`,当前页面用于固定 `ResourceCache` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceCache object; + // 根据上下文补齐参数后调用 ResourceCache::Flush(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceCache.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceCache/GetLRUList.md b/docs/api/XCEngine/Core/Asset/ResourceCache/GetLRUList.md new file mode 100644 index 00000000..365710b3 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceCache/GetLRUList.md @@ -0,0 +1,31 @@ +# ResourceCache::GetLRUList + +获取相关状态或对象。 + +```cpp +Containers::Array GetLRUList(size_t count) const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceCache.h`,当前页面用于固定 `ResourceCache` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 + +**返回:** `Containers::Array` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceCache object; + // 根据上下文补齐参数后调用 ResourceCache::GetLRUList(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceCache.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceCache/GetMemoryBudget.md b/docs/api/XCEngine/Core/Asset/ResourceCache/GetMemoryBudget.md new file mode 100644 index 00000000..1bd60878 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceCache/GetMemoryBudget.md @@ -0,0 +1,30 @@ +# ResourceCache::GetMemoryBudget + +获取相关状态或对象。 + +```cpp +size_t GetMemoryBudget() const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceCache.h`,当前页面用于固定 `ResourceCache` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceCache object; + // 根据上下文补齐参数后调用 ResourceCache::GetMemoryBudget(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceCache.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceCache/GetMemoryUsage.md b/docs/api/XCEngine/Core/Asset/ResourceCache/GetMemoryUsage.md new file mode 100644 index 00000000..4664e538 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceCache/GetMemoryUsage.md @@ -0,0 +1,30 @@ +# ResourceCache::GetMemoryUsage + +获取相关状态或对象。 + +```cpp +size_t GetMemoryUsage() const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceCache.h`,当前页面用于固定 `ResourceCache` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceCache object; + // 根据上下文补齐参数后调用 ResourceCache::GetMemoryUsage(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceCache.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceCache/GetSize.md b/docs/api/XCEngine/Core/Asset/ResourceCache/GetSize.md new file mode 100644 index 00000000..685850b0 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceCache/GetSize.md @@ -0,0 +1,30 @@ +# ResourceCache::GetSize + +获取相关状态或对象。 + +```cpp +size_t GetSize() const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceCache.h`,当前页面用于固定 `ResourceCache` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceCache object; + // 根据上下文补齐参数后调用 ResourceCache::GetSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceCache.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceCache/OnMemoryPressure.md b/docs/api/XCEngine/Core/Asset/ResourceCache/OnMemoryPressure.md new file mode 100644 index 00000000..b80d5229 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceCache/OnMemoryPressure.md @@ -0,0 +1,31 @@ +# ResourceCache::OnMemoryPressure + +公开方法,详见头文件声明。 + +```cpp +void OnMemoryPressure(size_t requiredBytes); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceCache.h`,当前页面用于固定 `ResourceCache` 类目录下的方法级 canonical 路径。 + +**参数:** +- `requiredBytes` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceCache object; + // 根据上下文补齐参数后调用 ResourceCache::OnMemoryPressure(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceCache.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceCache/OnZeroRefCount.md b/docs/api/XCEngine/Core/Asset/ResourceCache/OnZeroRefCount.md new file mode 100644 index 00000000..da214875 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceCache/OnZeroRefCount.md @@ -0,0 +1,31 @@ +# ResourceCache::OnZeroRefCount + +公开方法,详见头文件声明。 + +```cpp +void OnZeroRefCount(ResourceGUID guid); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceCache.h`,当前页面用于固定 `ResourceCache` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guid` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceCache object; + // 根据上下文补齐参数后调用 ResourceCache::OnZeroRefCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceCache.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceCache/Remove.md b/docs/api/XCEngine/Core/Asset/ResourceCache/Remove.md new file mode 100644 index 00000000..64c5cdb2 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceCache/Remove.md @@ -0,0 +1,31 @@ +# ResourceCache::Remove + +移除元素或解除关联。 + +```cpp +void Remove(ResourceGUID guid); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceCache.h`,当前页面用于固定 `ResourceCache` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guid` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceCache object; + // 根据上下文补齐参数后调用 ResourceCache::Remove(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceCache.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceCache/ResourceCache.md b/docs/api/XCEngine/Core/Asset/ResourceCache/ResourceCache.md new file mode 100644 index 00000000..bdfff5e3 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceCache/ResourceCache.md @@ -0,0 +1,45 @@ +# ResourceCache + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Core/Asset/ResourceCache.h` + +**描述**: 定义 `XCEngine/Core/Asset` 子目录中的 `ResourceCache` public API。 + +## 概述 + +`ResourceCache.h` 是 `XCEngine/Core/Asset` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `CacheEntry` | `struct` | 头文件中的公开声明。 | +| `ResourceCache` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [ResourceCache()](Constructor.md) | 构造对象。 | +| [~ResourceCache()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Add](Add.md) | 添加元素或建立关联。 | +| [Remove](Remove.md) | 移除元素或解除关联。 | +| [Find](Find.md) | 查找并返回匹配对象。 | +| [Touch](Touch.md) | 公开方法,详见头文件声明。 | +| [GetSize](GetSize.md) | 获取相关状态或对象。 | +| [GetMemoryUsage](GetMemoryUsage.md) | 获取相关状态或对象。 | +| [SetMemoryBudget](SetMemoryBudget.md) | 设置相关状态或配置。 | +| [GetMemoryBudget](GetMemoryBudget.md) | 获取相关状态或对象。 | +| [OnMemoryPressure](OnMemoryPressure.md) | 公开方法,详见头文件声明。 | +| [OnZeroRefCount](OnZeroRefCount.md) | 公开方法,详见头文件声明。 | +| [Flush](Flush.md) | 公开方法,详见头文件声明。 | +| [Clear](Clear.md) | 清空内部数据。 | +| [GetLRUList](GetLRUList.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Asset.md) - 返回 `Asset` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Asset/ResourceCache/SetMemoryBudget.md b/docs/api/XCEngine/Core/Asset/ResourceCache/SetMemoryBudget.md new file mode 100644 index 00000000..c9abd8f0 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceCache/SetMemoryBudget.md @@ -0,0 +1,31 @@ +# ResourceCache::SetMemoryBudget + +设置相关状态或配置。 + +```cpp +void SetMemoryBudget(size_t bytes); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceCache.h`,当前页面用于固定 `ResourceCache` 类目录下的方法级 canonical 路径。 + +**参数:** +- `bytes` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceCache object; + // 根据上下文补齐参数后调用 ResourceCache::SetMemoryBudget(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceCache.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceCache/Touch.md b/docs/api/XCEngine/Core/Asset/ResourceCache/Touch.md new file mode 100644 index 00000000..39ea0835 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceCache/Touch.md @@ -0,0 +1,31 @@ +# ResourceCache::Touch + +公开方法,详见头文件声明。 + +```cpp +void Touch(ResourceGUID guid); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceCache.h`,当前页面用于固定 `ResourceCache` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guid` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceCache object; + // 根据上下文补齐参数后调用 ResourceCache::Touch(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceCache.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/AddDependency.md b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/AddDependency.md new file mode 100644 index 00000000..d0b03ebb --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/AddDependency.md @@ -0,0 +1,32 @@ +# ResourceDependencyGraph::AddDependency + +添加元素或建立关联。 + +```cpp +void AddDependency(ResourceGUID owner, ResourceGUID dependency); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceDependencyGraph.h`,当前页面用于固定 `ResourceDependencyGraph` 类目录下的方法级 canonical 路径。 + +**参数:** +- `owner` - 参数语义详见头文件声明。 +- `dependency` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceDependencyGraph object; + // 根据上下文补齐参数后调用 ResourceDependencyGraph::AddDependency(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceDependencyGraph.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/AddNode.md b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/AddNode.md new file mode 100644 index 00000000..9ea1da3a --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/AddNode.md @@ -0,0 +1,32 @@ +# ResourceDependencyGraph::AddNode + +添加元素或建立关联。 + +```cpp +void AddNode(ResourceGUID guid, ResourceType type); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceDependencyGraph.h`,当前页面用于固定 `ResourceDependencyGraph` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guid` - 参数语义详见头文件声明。 +- `type` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceDependencyGraph object; + // 根据上下文补齐参数后调用 ResourceDependencyGraph::AddNode(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceDependencyGraph.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/Clear.md b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/Clear.md new file mode 100644 index 00000000..dde5a3d7 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/Clear.md @@ -0,0 +1,30 @@ +# ResourceDependencyGraph::Clear + +清空内部数据。 + +```cpp +void Clear(); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceDependencyGraph.h`,当前页面用于固定 `ResourceDependencyGraph` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceDependencyGraph object; + // 根据上下文补齐参数后调用 ResourceDependencyGraph::Clear(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceDependencyGraph.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/Constructor.md b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/Constructor.md new file mode 100644 index 00000000..4405efa3 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/Constructor.md @@ -0,0 +1,28 @@ +# ResourceDependencyGraph::ResourceDependencyGraph() + +构造对象。 + +```cpp +ResourceDependencyGraph(); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceDependencyGraph.h`,当前页面用于固定 `ResourceDependencyGraph` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceDependencyGraph object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceDependencyGraph.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/DecrementRefCount.md b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/DecrementRefCount.md new file mode 100644 index 00000000..f9e4fee7 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/DecrementRefCount.md @@ -0,0 +1,31 @@ +# ResourceDependencyGraph::DecrementRefCount + +公开方法,详见头文件声明。 + +```cpp +void DecrementRefCount(ResourceGUID guid); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceDependencyGraph.h`,当前页面用于固定 `ResourceDependencyGraph` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guid` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceDependencyGraph object; + // 根据上下文补齐参数后调用 ResourceDependencyGraph::DecrementRefCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceDependencyGraph.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/Destructor.md b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/Destructor.md new file mode 100644 index 00000000..346a03e5 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/Destructor.md @@ -0,0 +1,29 @@ +# ResourceDependencyGraph::~ResourceDependencyGraph() + +销毁对象并释放相关资源。 + +```cpp +~ResourceDependencyGraph(); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceDependencyGraph.h`,当前页面用于固定 `ResourceDependencyGraph` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceDependencyGraph object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](ResourceDependencyGraph.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/GetAllDependencies.md b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/GetAllDependencies.md new file mode 100644 index 00000000..cb11d6b4 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/GetAllDependencies.md @@ -0,0 +1,31 @@ +# ResourceDependencyGraph::GetAllDependencies + +获取相关状态或对象。 + +```cpp +Containers::Array GetAllDependencies(ResourceGUID guid) const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceDependencyGraph.h`,当前页面用于固定 `ResourceDependencyGraph` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guid` - 参数语义详见头文件声明。 + +**返回:** `Containers::Array` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceDependencyGraph object; + // 根据上下文补齐参数后调用 ResourceDependencyGraph::GetAllDependencies(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceDependencyGraph.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/GetDependencies.md b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/GetDependencies.md new file mode 100644 index 00000000..c51234b3 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/GetDependencies.md @@ -0,0 +1,31 @@ +# ResourceDependencyGraph::GetDependencies + +获取相关状态或对象。 + +```cpp +Containers::Array GetDependencies(ResourceGUID guid) const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceDependencyGraph.h`,当前页面用于固定 `ResourceDependencyGraph` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guid` - 参数语义详见头文件声明。 + +**返回:** `Containers::Array` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceDependencyGraph object; + // 根据上下文补齐参数后调用 ResourceDependencyGraph::GetDependencies(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceDependencyGraph.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/GetDependents.md b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/GetDependents.md new file mode 100644 index 00000000..5e102a14 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/GetDependents.md @@ -0,0 +1,31 @@ +# ResourceDependencyGraph::GetDependents + +获取相关状态或对象。 + +```cpp +Containers::Array GetDependents(ResourceGUID guid) const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceDependencyGraph.h`,当前页面用于固定 `ResourceDependencyGraph` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guid` - 参数语义详见头文件声明。 + +**返回:** `Containers::Array` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceDependencyGraph object; + // 根据上下文补齐参数后调用 ResourceDependencyGraph::GetDependents(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceDependencyGraph.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/GetRefCount.md b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/GetRefCount.md new file mode 100644 index 00000000..eace1c9f --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/GetRefCount.md @@ -0,0 +1,31 @@ +# ResourceDependencyGraph::GetRefCount + +获取相关状态或对象。 + +```cpp +Core::uint32 GetRefCount(ResourceGUID guid) const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceDependencyGraph.h`,当前页面用于固定 `ResourceDependencyGraph` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guid` - 参数语义详见头文件声明。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceDependencyGraph object; + // 根据上下文补齐参数后调用 ResourceDependencyGraph::GetRefCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceDependencyGraph.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/HasCircularDependency.md b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/HasCircularDependency.md new file mode 100644 index 00000000..7195cb8a --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/HasCircularDependency.md @@ -0,0 +1,32 @@ +# ResourceDependencyGraph::HasCircularDependency + +判断是否具备指定状态或能力。 + +```cpp +bool HasCircularDependency(ResourceGUID guid, Containers::Array& outCycle) const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceDependencyGraph.h`,当前页面用于固定 `ResourceDependencyGraph` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guid` - 参数语义详见头文件声明。 +- `outCycle` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceDependencyGraph object; + // 根据上下文补齐参数后调用 ResourceDependencyGraph::HasCircularDependency(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceDependencyGraph.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/HasNode.md b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/HasNode.md new file mode 100644 index 00000000..16b86f9f --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/HasNode.md @@ -0,0 +1,31 @@ +# ResourceDependencyGraph::HasNode + +判断是否具备指定状态或能力。 + +```cpp +bool HasNode(ResourceGUID guid) const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceDependencyGraph.h`,当前页面用于固定 `ResourceDependencyGraph` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guid` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceDependencyGraph object; + // 根据上下文补齐参数后调用 ResourceDependencyGraph::HasNode(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceDependencyGraph.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/IncrementRefCount.md b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/IncrementRefCount.md new file mode 100644 index 00000000..42e14405 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/IncrementRefCount.md @@ -0,0 +1,31 @@ +# ResourceDependencyGraph::IncrementRefCount + +公开方法,详见头文件声明。 + +```cpp +void IncrementRefCount(ResourceGUID guid); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceDependencyGraph.h`,当前页面用于固定 `ResourceDependencyGraph` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guid` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceDependencyGraph object; + // 根据上下文补齐参数后调用 ResourceDependencyGraph::IncrementRefCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceDependencyGraph.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/RemoveDependency.md b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/RemoveDependency.md new file mode 100644 index 00000000..20d3f193 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/RemoveDependency.md @@ -0,0 +1,32 @@ +# ResourceDependencyGraph::RemoveDependency + +移除元素或解除关联。 + +```cpp +void RemoveDependency(ResourceGUID owner, ResourceGUID dependency); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceDependencyGraph.h`,当前页面用于固定 `ResourceDependencyGraph` 类目录下的方法级 canonical 路径。 + +**参数:** +- `owner` - 参数语义详见头文件声明。 +- `dependency` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceDependencyGraph object; + // 根据上下文补齐参数后调用 ResourceDependencyGraph::RemoveDependency(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceDependencyGraph.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/RemoveNode.md b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/RemoveNode.md new file mode 100644 index 00000000..a4d323b7 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/RemoveNode.md @@ -0,0 +1,31 @@ +# ResourceDependencyGraph::RemoveNode + +移除元素或解除关联。 + +```cpp +void RemoveNode(ResourceGUID guid); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceDependencyGraph.h`,当前页面用于固定 `ResourceDependencyGraph` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guid` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceDependencyGraph object; + // 根据上下文补齐参数后调用 ResourceDependencyGraph::RemoveNode(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceDependencyGraph.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/ResourceDependencyGraph.md b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/ResourceDependencyGraph.md new file mode 100644 index 00000000..c2dc59bf --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/ResourceDependencyGraph.md @@ -0,0 +1,47 @@ +# ResourceDependencyGraph + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Core/Asset/ResourceDependencyGraph.h` + +**描述**: 定义 `XCEngine/Core/Asset` 子目录中的 `ResourceDependencyGraph` public API。 + +## 概述 + +`ResourceDependencyGraph.h` 是 `XCEngine/Core/Asset` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `DependencyNode` | `struct` | 头文件中的公开声明。 | +| `ResourceDependencyGraph` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [ResourceDependencyGraph()](Constructor.md) | 构造对象。 | +| [~ResourceDependencyGraph()](Destructor.md) | 销毁对象并释放相关资源。 | +| [AddNode](AddNode.md) | 添加元素或建立关联。 | +| [RemoveNode](RemoveNode.md) | 移除元素或解除关联。 | +| [AddDependency](AddDependency.md) | 添加元素或建立关联。 | +| [RemoveDependency](RemoveDependency.md) | 移除元素或解除关联。 | +| [GetDependencies](GetDependencies.md) | 获取相关状态或对象。 | +| [GetDependents](GetDependents.md) | 获取相关状态或对象。 | +| [GetAllDependencies](GetAllDependencies.md) | 获取相关状态或对象。 | +| [IncrementRefCount](IncrementRefCount.md) | 公开方法,详见头文件声明。 | +| [DecrementRefCount](DecrementRefCount.md) | 公开方法,详见头文件声明。 | +| [GetRefCount](GetRefCount.md) | 获取相关状态或对象。 | +| [HasCircularDependency](HasCircularDependency.md) | 判断是否具备指定状态或能力。 | +| [TopologicalSort](TopologicalSort.md) | 公开方法,详见头文件声明。 | +| [Unload](Unload.md) | 卸载资源或释放缓存。 | +| [Clear](Clear.md) | 清空内部数据。 | +| [HasNode](HasNode.md) | 判断是否具备指定状态或能力。 | + +## 相关文档 + +- [当前目录](../Asset.md) - 返回 `Asset` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/TopologicalSort.md b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/TopologicalSort.md new file mode 100644 index 00000000..6b8e3550 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/TopologicalSort.md @@ -0,0 +1,30 @@ +# ResourceDependencyGraph::TopologicalSort + +公开方法,详见头文件声明。 + +```cpp +Containers::Array TopologicalSort() const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceDependencyGraph.h`,当前页面用于固定 `ResourceDependencyGraph` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::Array` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceDependencyGraph object; + // 根据上下文补齐参数后调用 ResourceDependencyGraph::TopologicalSort(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceDependencyGraph.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/Unload.md b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/Unload.md new file mode 100644 index 00000000..04ba80e3 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceDependencyGraph/Unload.md @@ -0,0 +1,31 @@ +# ResourceDependencyGraph::Unload + +卸载资源或释放缓存。 + +```cpp +bool Unload(ResourceGUID guid); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceDependencyGraph.h`,当前页面用于固定 `ResourceDependencyGraph` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guid` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceDependencyGraph object; + // 根据上下文补齐参数后调用 ResourceDependencyGraph::Unload(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceDependencyGraph.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceHandle/Constructor.md b/docs/api/XCEngine/Core/Asset/ResourceHandle/Constructor.md new file mode 100644 index 00000000..97d98dfe --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceHandle/Constructor.md @@ -0,0 +1,63 @@ +# ResourceHandle::ResourceHandle() + +构造对象。 + +该方法在 `XCEngine/Core/Asset/ResourceHandle.h` 中提供了 4 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +ResourceHandle() = default; +``` + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +explicit ResourceHandle(T* resource) : m_resource(resource); +``` + +**参数:** +- `resource` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 3: 声明 + +```cpp +ResourceHandle(const ResourceHandle& other) : m_resource(other.m_resource); +``` + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 4: 声明 + +```cpp +ResourceHandle(ResourceHandle&& other) noexcept : m_resource(other.m_resource); +``` + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceHandle object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceHandle.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceHandle/Destructor.md b/docs/api/XCEngine/Core/Asset/ResourceHandle/Destructor.md new file mode 100644 index 00000000..c8e091ba --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceHandle/Destructor.md @@ -0,0 +1,29 @@ +# ResourceHandle::~ResourceHandle() + +销毁对象并释放相关资源。 + +```cpp +~ResourceHandle(); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceHandle.h`,当前页面用于固定 `ResourceHandle` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceHandle object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](ResourceHandle.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceHandle/Get.md b/docs/api/XCEngine/Core/Asset/ResourceHandle/Get.md new file mode 100644 index 00000000..6c555986 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceHandle/Get.md @@ -0,0 +1,29 @@ +# ResourceHandle::Get + +获取相关状态或对象。 + +```cpp +T* Get() const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceHandle.h`,当前页面用于固定 `ResourceHandle` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `T*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + auto& instance = XCEngine::Resources::ResourceHandle::Get(); + (void)instance; +} +``` + +## 相关文档 + +- [返回类总览](ResourceHandle.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceHandle/GetGUID.md b/docs/api/XCEngine/Core/Asset/ResourceHandle/GetGUID.md new file mode 100644 index 00000000..979bf902 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceHandle/GetGUID.md @@ -0,0 +1,30 @@ +# ResourceHandle::GetGUID + +获取相关状态或对象。 + +```cpp +ResourceGUID GetGUID() const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceHandle.h`,当前页面用于固定 `ResourceHandle` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceGUID` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceHandle object; + // 根据上下文补齐参数后调用 ResourceHandle::GetGUID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceHandle.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceHandle/GetResourceType.md b/docs/api/XCEngine/Core/Asset/ResourceHandle/GetResourceType.md new file mode 100644 index 00000000..97cf6398 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceHandle/GetResourceType.md @@ -0,0 +1,30 @@ +# ResourceHandle::GetResourceType + +获取相关状态或对象。 + +```cpp +ResourceType GetResourceType() const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceHandle.h`,当前页面用于固定 `ResourceHandle` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceHandle object; + // 根据上下文补齐参数后调用 ResourceHandle::GetResourceType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceHandle.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceHandle/IsValid.md b/docs/api/XCEngine/Core/Asset/ResourceHandle/IsValid.md new file mode 100644 index 00000000..3bbf8e9f --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceHandle/IsValid.md @@ -0,0 +1,30 @@ +# ResourceHandle::IsValid + +查询当前状态。 + +```cpp +bool IsValid() const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceHandle.h`,当前页面用于固定 `ResourceHandle` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceHandle object; + // 根据上下文补齐参数后调用 ResourceHandle::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceHandle.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceHandle/OperatorArrow.md b/docs/api/XCEngine/Core/Asset/ResourceHandle/OperatorArrow.md new file mode 100644 index 00000000..bb518f22 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceHandle/OperatorArrow.md @@ -0,0 +1,30 @@ +# ResourceHandle::operator-> + +公开方法,详见头文件声明。 + +```cpp +T* operator->() const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceHandle.h`,当前页面用于固定 `ResourceHandle` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `T*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceHandle object; + // 根据上下文补齐参数后调用 ResourceHandle::operator->(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceHandle.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceHandle/OperatorAssign.md b/docs/api/XCEngine/Core/Asset/ResourceHandle/OperatorAssign.md new file mode 100644 index 00000000..7653bef8 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceHandle/OperatorAssign.md @@ -0,0 +1,44 @@ +# ResourceHandle::operator= + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Asset/ResourceHandle.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +ResourceHandle& operator=(const ResourceHandle& other); +``` + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `ResourceHandle&` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +ResourceHandle& operator=(ResourceHandle&& other) noexcept; +``` + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `ResourceHandle&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceHandle object; + // 根据上下文补齐参数后调用 ResourceHandle::operator=(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceHandle.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceHandle/OperatorMultiply.md b/docs/api/XCEngine/Core/Asset/ResourceHandle/OperatorMultiply.md new file mode 100644 index 00000000..02472428 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceHandle/OperatorMultiply.md @@ -0,0 +1,30 @@ +# ResourceHandle::operator* + +公开方法,详见头文件声明。 + +```cpp +T& operator*() const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceHandle.h`,当前页面用于固定 `ResourceHandle` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `T&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceHandle object; + // 根据上下文补齐参数后调用 ResourceHandle::operator*(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceHandle.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceHandle/Reset.md b/docs/api/XCEngine/Core/Asset/ResourceHandle/Reset.md new file mode 100644 index 00000000..6c9cb532 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceHandle/Reset.md @@ -0,0 +1,30 @@ +# ResourceHandle::Reset + +公开方法,详见头文件声明。 + +```cpp +void Reset(); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceHandle.h`,当前页面用于固定 `ResourceHandle` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceHandle object; + // 根据上下文补齐参数后调用 ResourceHandle::Reset(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceHandle.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceHandle/ResourceHandle.md b/docs/api/XCEngine/Core/Asset/ResourceHandle/ResourceHandle.md new file mode 100644 index 00000000..e2c9230a --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceHandle/ResourceHandle.md @@ -0,0 +1,41 @@ +# ResourceHandle + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Core/Asset/ResourceHandle.h` + +**描述**: 定义 `XCEngine/Core/Asset` 子目录中的 `ResourceHandle` public API。 + +## 概述 + +`ResourceHandle.h` 是 `XCEngine/Core/Asset` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `ResourceHandle` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [ResourceHandle()](Constructor.md) | 构造对象。 | +| [~ResourceHandle()](Destructor.md) | 销毁对象并释放相关资源。 | +| [operator=](OperatorAssign.md) | 公开方法,详见头文件声明。 | +| [Get](Get.md) | 获取相关状态或对象。 | +| [operator->](OperatorArrow.md) | 公开方法,详见头文件声明。 | +| [operator*](OperatorMultiply.md) | 公开方法,详见头文件声明。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [bool](bool.md) | 公开方法,详见头文件声明。 | +| [GetGUID](GetGUID.md) | 获取相关状态或对象。 | +| [GetResourceType](GetResourceType.md) | 获取相关状态或对象。 | +| [Reset](Reset.md) | 公开方法,详见头文件声明。 | +| [Swap](Swap.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Asset.md) - 返回 `Asset` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Asset/ResourceHandle/Swap.md b/docs/api/XCEngine/Core/Asset/ResourceHandle/Swap.md new file mode 100644 index 00000000..97a25510 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceHandle/Swap.md @@ -0,0 +1,31 @@ +# ResourceHandle::Swap + +公开方法,详见头文件声明。 + +```cpp +void Swap(ResourceHandle& other); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceHandle.h`,当前页面用于固定 `ResourceHandle` 类目录下的方法级 canonical 路径。 + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceHandle object; + // 根据上下文补齐参数后调用 ResourceHandle::Swap(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceHandle.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceHandle/bool.md b/docs/api/XCEngine/Core/Asset/ResourceHandle/bool.md new file mode 100644 index 00000000..05936868 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceHandle/bool.md @@ -0,0 +1,30 @@ +# ResourceHandle::bool + +公开方法,详见头文件声明。 + +```cpp +explicit operator bool() const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceHandle.h`,当前页面用于固定 `ResourceHandle` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `operator` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceHandle object; + // 根据上下文补齐参数后调用 ResourceHandle::bool(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceHandle.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/AddRef.md b/docs/api/XCEngine/Core/Asset/ResourceManager/AddRef.md new file mode 100644 index 00000000..ef86edef --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/AddRef.md @@ -0,0 +1,31 @@ +# ResourceManager::AddRef + +添加元素或建立关联。 + +```cpp +void AddRef(ResourceGUID guid); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guid` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::AddRef(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/Exists.md b/docs/api/XCEngine/Core/Asset/ResourceManager/Exists.md new file mode 100644 index 00000000..038333b7 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/Exists.md @@ -0,0 +1,44 @@ +# ResourceManager::Exists + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Asset/ResourceManager.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool Exists(const Containers::String& path) const; +``` + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +bool Exists(ResourceGUID guid) const; +``` + +**参数:** +- `guid` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::Exists(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/Find.md b/docs/api/XCEngine/Core/Asset/ResourceManager/Find.md new file mode 100644 index 00000000..169b4718 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/Find.md @@ -0,0 +1,44 @@ +# ResourceManager::Find + +查找并返回匹配对象。 + +该方法在 `XCEngine/Core/Asset/ResourceManager.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +IResource* Find(const Containers::String& path); +``` + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `IResource*` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +IResource* Find(ResourceGUID guid); +``` + +**参数:** +- `guid` - 参数语义详见头文件声明。 + +**返回:** `IResource*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::Find(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/FlushCache.md b/docs/api/XCEngine/Core/Asset/ResourceManager/FlushCache.md new file mode 100644 index 00000000..74c47ffa --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/FlushCache.md @@ -0,0 +1,30 @@ +# ResourceManager::FlushCache + +公开方法,详见头文件声明。 + +```cpp +void FlushCache(); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::FlushCache(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/Get.md b/docs/api/XCEngine/Core/Asset/ResourceManager/Get.md new file mode 100644 index 00000000..17f17d83 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/Get.md @@ -0,0 +1,29 @@ +# ResourceManager::Get + +获取相关状态或对象。 + +```cpp +static ResourceManager& Get(); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceManager&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + auto& instance = XCEngine::Resources::ResourceManager::Get(); + (void)instance; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/GetLoader.md b/docs/api/XCEngine/Core/Asset/ResourceManager/GetLoader.md new file mode 100644 index 00000000..7a0e2fe0 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/GetLoader.md @@ -0,0 +1,31 @@ +# ResourceManager::GetLoader + +获取相关状态或对象。 + +```cpp +IResourceLoader* GetLoader(ResourceType type) const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 + +**返回:** `IResourceLoader*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::GetLoader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/GetMemoryBudget.md b/docs/api/XCEngine/Core/Asset/ResourceManager/GetMemoryBudget.md new file mode 100644 index 00000000..7a2c4a30 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/GetMemoryBudget.md @@ -0,0 +1,30 @@ +# ResourceManager::GetMemoryBudget + +获取相关状态或对象。 + +```cpp +size_t GetMemoryBudget() const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::GetMemoryBudget(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/GetMemoryUsage.md b/docs/api/XCEngine/Core/Asset/ResourceManager/GetMemoryUsage.md new file mode 100644 index 00000000..e8ab2ba7 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/GetMemoryUsage.md @@ -0,0 +1,30 @@ +# ResourceManager::GetMemoryUsage + +获取相关状态或对象。 + +```cpp +size_t GetMemoryUsage() const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::GetMemoryUsage(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/GetRefCount.md b/docs/api/XCEngine/Core/Asset/ResourceManager/GetRefCount.md new file mode 100644 index 00000000..ae3beb55 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/GetRefCount.md @@ -0,0 +1,31 @@ +# ResourceManager::GetRefCount + +获取相关状态或对象。 + +```cpp +Core::uint32 GetRefCount(ResourceGUID guid) const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guid` - 参数语义详见头文件声明。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::GetRefCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/GetResourcePaths.md b/docs/api/XCEngine/Core/Asset/ResourceManager/GetResourcePaths.md new file mode 100644 index 00000000..5ec97a25 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/GetResourcePaths.md @@ -0,0 +1,30 @@ +# ResourceManager::GetResourcePaths + +获取相关状态或对象。 + +```cpp +Containers::Array GetResourcePaths() const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::Array` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::GetResourcePaths(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/GetResourceRoot.md b/docs/api/XCEngine/Core/Asset/ResourceManager/GetResourceRoot.md new file mode 100644 index 00000000..7924925b --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/GetResourceRoot.md @@ -0,0 +1,30 @@ +# ResourceManager::GetResourceRoot + +获取相关状态或对象。 + +```cpp +const Containers::String& GetResourceRoot() const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::GetResourceRoot(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/Initialize.md b/docs/api/XCEngine/Core/Asset/ResourceManager/Initialize.md new file mode 100644 index 00000000..97a363f1 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/Initialize.md @@ -0,0 +1,30 @@ +# ResourceManager::Initialize + +初始化内部状态。 + +```cpp +void Initialize(); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/Load.md b/docs/api/XCEngine/Core/Asset/ResourceManager/Load.md new file mode 100644 index 00000000..4cad2f5e --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/Load.md @@ -0,0 +1,32 @@ +# ResourceManager::Load + +加载资源或数据。 + +```cpp +template ResourceHandle Load(const Containers::String& path, ImportSettings* settings = nullptr); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 +- `settings` - 参数语义详见头文件声明。 + +**返回:** `template ResourceHandle` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::Load(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/LoadAsync.md b/docs/api/XCEngine/Core/Asset/ResourceManager/LoadAsync.md new file mode 100644 index 00000000..ec1f810f --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/LoadAsync.md @@ -0,0 +1,49 @@ +# ResourceManager::LoadAsync + +加载资源或数据。 + +该方法在 `XCEngine/Core/Asset/ResourceManager.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void LoadAsync(const Containers::String& path, ResourceType type, std::function callback); +``` + +**参数:** +- `path` - 参数语义详见头文件声明。 +- `type` - 参数语义详见头文件声明。 +- `callback` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void LoadAsync(const Containers::String& path, ResourceType type, ImportSettings* settings, std::function callback); +``` + +**参数:** +- `path` - 参数语义详见头文件声明。 +- `type` - 参数语义详见头文件声明。 +- `settings` - 参数语义详见头文件声明。 +- `callback` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::LoadAsync(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/LoadGroup.md b/docs/api/XCEngine/Core/Asset/ResourceManager/LoadGroup.md new file mode 100644 index 00000000..6725d76d --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/LoadGroup.md @@ -0,0 +1,32 @@ +# ResourceManager::LoadGroup + +加载资源或数据。 + +```cpp +template void LoadGroup(const Containers::Array& paths, std::function)> callback); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `paths` - 参数语义详见头文件声明。 +- `callback` - 参数语义详见头文件声明。 + +**返回:** `template void` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::LoadGroup(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/RegisterLoader.md b/docs/api/XCEngine/Core/Asset/ResourceManager/RegisterLoader.md new file mode 100644 index 00000000..8e74ca8a --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/RegisterLoader.md @@ -0,0 +1,31 @@ +# ResourceManager::RegisterLoader + +注册对象、回调或映射。 + +```cpp +void RegisterLoader(IResourceLoader* loader); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `loader` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::RegisterLoader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/Release.md b/docs/api/XCEngine/Core/Asset/ResourceManager/Release.md new file mode 100644 index 00000000..0e509436 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/Release.md @@ -0,0 +1,31 @@ +# ResourceManager::Release + +释放引用或底层资源。 + +```cpp +void Release(ResourceGUID guid); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guid` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::Release(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/ResolvePath.md b/docs/api/XCEngine/Core/Asset/ResourceManager/ResolvePath.md new file mode 100644 index 00000000..6415b180 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/ResolvePath.md @@ -0,0 +1,31 @@ +# ResourceManager::ResolvePath + +解析并返回目标结果。 + +```cpp +Containers::String ResolvePath(const Containers::String& relativePath) const; +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `relativePath` - 参数语义详见头文件声明。 + +**返回:** `Containers::String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::ResolvePath(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/ResourceManager.md b/docs/api/XCEngine/Core/Asset/ResourceManager/ResourceManager.md new file mode 100644 index 00000000..5b5d4c06 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/ResourceManager.md @@ -0,0 +1,55 @@ +# ResourceManager + +**命名空间**: `XCEngine::Resources` + +**类型**: `class (singleton)` + +**头文件**: `XCEngine/Core/Asset/ResourceManager.h` + +**描述**: 定义 `XCEngine/Core/Asset` 子目录中的 `ResourceManager` public API。 + +## 概述 + +`ResourceManager.h` 是 `XCEngine/Core/Asset` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `ResourceManager` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Get](Get.md) | 获取相关状态或对象。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [SetResourceRoot](SetResourceRoot.md) | 设置相关状态或配置。 | +| [GetResourceRoot](GetResourceRoot.md) | 获取相关状态或对象。 | +| [Load](Load.md) | 加载资源或数据。 | +| [LoadAsync](LoadAsync.md) | 加载资源或数据。 | +| [Unload](Unload.md) | 卸载资源或释放缓存。 | +| [UnloadUnused](UnloadUnused.md) | 卸载资源或释放缓存。 | +| [UnloadAll](UnloadAll.md) | 卸载资源或释放缓存。 | +| [AddRef](AddRef.md) | 添加元素或建立关联。 | +| [Release](Release.md) | 释放引用或底层资源。 | +| [GetRefCount](GetRefCount.md) | 获取相关状态或对象。 | +| [RegisterLoader](RegisterLoader.md) | 注册对象、回调或映射。 | +| [UnregisterLoader](UnregisterLoader.md) | 取消注册对象、回调或映射。 | +| [GetLoader](GetLoader.md) | 获取相关状态或对象。 | +| [SetMemoryBudget](SetMemoryBudget.md) | 设置相关状态或配置。 | +| [GetMemoryUsage](GetMemoryUsage.md) | 获取相关状态或对象。 | +| [GetMemoryBudget](GetMemoryBudget.md) | 获取相关状态或对象。 | +| [FlushCache](FlushCache.md) | 公开方法,详见头文件声明。 | +| [Find](Find.md) | 查找并返回匹配对象。 | +| [Exists](Exists.md) | 公开方法,详见头文件声明。 | +| [ResolvePath](ResolvePath.md) | 解析并返回目标结果。 | +| [LoadGroup](LoadGroup.md) | 加载资源或数据。 | +| [GetResourcePaths](GetResourcePaths.md) | 获取相关状态或对象。 | +| [UnloadGroup](UnloadGroup.md) | 卸载资源或释放缓存。 | + +## 相关文档 + +- [当前目录](../Asset.md) - 返回 `Asset` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/SetMemoryBudget.md b/docs/api/XCEngine/Core/Asset/ResourceManager/SetMemoryBudget.md new file mode 100644 index 00000000..1fd83c21 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/SetMemoryBudget.md @@ -0,0 +1,31 @@ +# ResourceManager::SetMemoryBudget + +设置相关状态或配置。 + +```cpp +void SetMemoryBudget(size_t bytes); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `bytes` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::SetMemoryBudget(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/SetResourceRoot.md b/docs/api/XCEngine/Core/Asset/ResourceManager/SetResourceRoot.md new file mode 100644 index 00000000..aa5c2559 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/SetResourceRoot.md @@ -0,0 +1,31 @@ +# ResourceManager::SetResourceRoot + +设置相关状态或配置。 + +```cpp +void SetResourceRoot(const Containers::String& rootPath); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `rootPath` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::SetResourceRoot(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/Shutdown.md b/docs/api/XCEngine/Core/Asset/ResourceManager/Shutdown.md new file mode 100644 index 00000000..a7e68617 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/Shutdown.md @@ -0,0 +1,30 @@ +# ResourceManager::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown(); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/Unload.md b/docs/api/XCEngine/Core/Asset/ResourceManager/Unload.md new file mode 100644 index 00000000..7c2c36d4 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/Unload.md @@ -0,0 +1,44 @@ +# ResourceManager::Unload + +卸载资源或释放缓存。 + +该方法在 `XCEngine/Core/Asset/ResourceManager.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void Unload(const Containers::String& path); +``` + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void Unload(ResourceGUID guid); +``` + +**参数:** +- `guid` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::Unload(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/UnloadAll.md b/docs/api/XCEngine/Core/Asset/ResourceManager/UnloadAll.md new file mode 100644 index 00000000..bd2408a5 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/UnloadAll.md @@ -0,0 +1,30 @@ +# ResourceManager::UnloadAll + +卸载资源或释放缓存。 + +```cpp +void UnloadAll(); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::UnloadAll(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/UnloadGroup.md b/docs/api/XCEngine/Core/Asset/ResourceManager/UnloadGroup.md new file mode 100644 index 00000000..0793a21a --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/UnloadGroup.md @@ -0,0 +1,31 @@ +# ResourceManager::UnloadGroup + +卸载资源或释放缓存。 + +```cpp +void UnloadGroup(const Containers::Array& guids); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `guids` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::UnloadGroup(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/UnloadUnused.md b/docs/api/XCEngine/Core/Asset/ResourceManager/UnloadUnused.md new file mode 100644 index 00000000..38909b27 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/UnloadUnused.md @@ -0,0 +1,30 @@ +# ResourceManager::UnloadUnused + +卸载资源或释放缓存。 + +```cpp +void UnloadUnused(); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::UnloadUnused(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceManager/UnregisterLoader.md b/docs/api/XCEngine/Core/Asset/ResourceManager/UnregisterLoader.md new file mode 100644 index 00000000..bb739177 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceManager/UnregisterLoader.md @@ -0,0 +1,31 @@ +# ResourceManager::UnregisterLoader + +取消注册对象、回调或映射。 + +```cpp +void UnregisterLoader(ResourceType type); +``` + +该方法声明于 `XCEngine/Core/Asset/ResourceManager.h`,当前页面用于固定 `ResourceManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceManager object; + // 根据上下文补齐参数后调用 ResourceManager::UnregisterLoader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceManager.md) +- [返回模块目录](../Asset.md) diff --git a/docs/api/XCEngine/Core/Asset/ResourceTypes/ResourceTypes.md b/docs/api/XCEngine/Core/Asset/ResourceTypes/ResourceTypes.md new file mode 100644 index 00000000..d1f31e08 --- /dev/null +++ b/docs/api/XCEngine/Core/Asset/ResourceTypes/ResourceTypes.md @@ -0,0 +1,53 @@ +# ResourceTypes + +**命名空间**: `XCEngine::Resources` + +**类型**: `enum class` + +**头文件**: `XCEngine/Core/Asset/ResourceTypes.h` + +**描述**: 定义 `XCEngine/Core/Asset` 子目录中的 `ResourceTypes` public API。 + +## 概述 + +`ResourceTypes.h` 是 `XCEngine/Core/Asset` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `ResourceType` | `enum class` | 头文件中的公开声明。 | +| `ResourceGUID` | `struct` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `Unknown` | `0` | 枚举项。 | +| `Texture` | - | 枚举项。 | +| `Mesh` | - | 枚举项。 | +| `Material` | - | 枚举项。 | +| `Shader` | - | 枚举项。 | +| `AudioClip` | - | 枚举项。 | +| `Binary` | - | 枚举项。 | +| `AnimationClip` | - | 枚举项。 | +| `Skeleton` | - | 枚举项。 | +| `Font` | - | 枚举项。 | +| `ParticleSystem` | - | 枚举项。 | +| `Scene` | - | 枚举项。 | +| `Prefab` | - | 枚举项。 | + +## std::hash 特化 + +```cpp +namespace std { + template<> struct hash; +} +``` + +`ResourceTypes.h` 同时提供 `std::hash` 特化,可直接用于哈希容器键类型。 + +## 相关文档 + +- [当前目录](../Asset.md) - 返回 `Asset` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Containers/Array/Array.md b/docs/api/XCEngine/Core/Containers/Array/Array.md new file mode 100644 index 00000000..93af155a --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/Array.md @@ -0,0 +1,48 @@ +# Array + +**命名空间**: `XCEngine::Containers` + +**类型**: `class` + +**头文件**: `XCEngine/Core/Containers/Array.h` + +**描述**: 定义 `XCEngine/Core/Containers` 子目录中的 `Array` public API。 + +## 概述 + +`Array.h` 是 `XCEngine/Core/Containers` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Array` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Array()](Constructor.md) | 构造对象。 | +| [~Array()](Destructor.md) | 销毁对象并释放相关资源。 | +| [operator=](OperatorAssign.md) | 公开方法,详见头文件声明。 | +| [operator[]](OperatorSubscript.md) | 公开方法,详见头文件声明。 | +| [Data](Data.md) | 公开方法,详见头文件声明。 | +| [Size](Size.md) | 公开方法,详见头文件声明。 | +| [Capacity](Capacity.md) | 公开方法,详见头文件声明。 | +| [Empty](Empty.md) | 公开方法,详见头文件声明。 | +| [Clear](Clear.md) | 清空内部数据。 | +| [Reserve](Reserve.md) | 公开方法,详见头文件声明。 | +| [Resize](Resize.md) | 公开方法,详见头文件声明。 | +| [PushBack](PushBack.md) | 公开方法,详见头文件声明。 | +| [EmplaceBack](EmplaceBack.md) | 公开方法,详见头文件声明。 | +| [PopBack](PopBack.md) | 公开方法,详见头文件声明。 | +| [Front](Front.md) | 公开方法,详见头文件声明。 | +| [Back](Back.md) | 公开方法,详见头文件声明。 | +| [begin](begin.md) | 公开方法,详见头文件声明。 | +| [end](end.md) | 公开方法,详见头文件声明。 | +| [SetAllocator](SetAllocator.md) | 设置相关状态或配置。 | + +## 相关文档 + +- [当前目录](../Containers.md) - 返回 `Containers` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Containers/Array/Back.md b/docs/api/XCEngine/Core/Containers/Array/Back.md new file mode 100644 index 00000000..1ea907bd --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/Back.md @@ -0,0 +1,42 @@ +# Array::Back + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Containers/Array.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +T& Back(); +``` + +**参数:** 无。 + +**返回:** `T&` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +const T& Back() const; +``` + +**参数:** 无。 + +**返回:** `const T&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::Array object; + // 根据上下文补齐参数后调用 Array::Back(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Array.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/Array/Capacity.md b/docs/api/XCEngine/Core/Containers/Array/Capacity.md new file mode 100644 index 00000000..84d47bde --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/Capacity.md @@ -0,0 +1,30 @@ +# Array::Capacity + +公开方法,详见头文件声明。 + +```cpp +size_t Capacity() const; +``` + +该方法声明于 `XCEngine/Core/Containers/Array.h`,当前页面用于固定 `Array` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::Array object; + // 根据上下文补齐参数后调用 Array::Capacity(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Array.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/Array/Clear.md b/docs/api/XCEngine/Core/Containers/Array/Clear.md new file mode 100644 index 00000000..bb223168 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/Clear.md @@ -0,0 +1,30 @@ +# Array::Clear + +清空内部数据。 + +```cpp +void Clear(); +``` + +该方法声明于 `XCEngine/Core/Containers/Array.h`,当前页面用于固定 `Array` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::Array object; + // 根据上下文补齐参数后调用 Array::Clear(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Array.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/Array/Constructor.md b/docs/api/XCEngine/Core/Containers/Array/Constructor.md new file mode 100644 index 00000000..ba847c06 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/Constructor.md @@ -0,0 +1,86 @@ +# Array::Array() + +构造对象。 + +该方法在 `XCEngine/Core/Containers/Array.h` 中提供了 6 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +Array() = default; +``` + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +explicit Array(size_t capacity); +``` + +**参数:** +- `capacity` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 3: 声明 + +```cpp +Array(size_t count, const T& value); +``` + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 4: 声明 + +```cpp +Array(std::initializer_list init); +``` + +**参数:** +- `init` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 5: 声明 + +```cpp +Array(const Array& other); +``` + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 6: 声明 + +```cpp +Array(Array&& other) noexcept; +``` + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::Array object; +} +``` + +## 相关文档 + +- [返回类总览](Array.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/Array/Data.md b/docs/api/XCEngine/Core/Containers/Array/Data.md new file mode 100644 index 00000000..0225e352 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/Data.md @@ -0,0 +1,42 @@ +# Array::Data + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Containers/Array.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +T* Data(); +``` + +**参数:** 无。 + +**返回:** `T*` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +const T* Data() const; +``` + +**参数:** 无。 + +**返回:** `const T*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::Array object; + // 根据上下文补齐参数后调用 Array::Data(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Array.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/Array/Destructor.md b/docs/api/XCEngine/Core/Containers/Array/Destructor.md new file mode 100644 index 00000000..94d6083d --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/Destructor.md @@ -0,0 +1,29 @@ +# Array::~Array() + +销毁对象并释放相关资源。 + +```cpp +~Array(); +``` + +该方法声明于 `XCEngine/Core/Containers/Array.h`,当前页面用于固定 `Array` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::Array object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](Array.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/Array/EmplaceBack.md b/docs/api/XCEngine/Core/Containers/Array/EmplaceBack.md new file mode 100644 index 00000000..9f2455da --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/EmplaceBack.md @@ -0,0 +1,31 @@ +# Array::EmplaceBack + +公开方法,详见头文件声明。 + +```cpp +template T& EmplaceBack(Args&&... args); +``` + +该方法声明于 `XCEngine/Core/Containers/Array.h`,当前页面用于固定 `Array` 类目录下的方法级 canonical 路径。 + +**参数:** +- `args` - 参数语义详见头文件声明。 + +**返回:** `template T&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::Array object; + // 根据上下文补齐参数后调用 Array::EmplaceBack(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Array.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/Array/Empty.md b/docs/api/XCEngine/Core/Containers/Array/Empty.md new file mode 100644 index 00000000..6ae5ce50 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/Empty.md @@ -0,0 +1,30 @@ +# Array::Empty + +公开方法,详见头文件声明。 + +```cpp +bool Empty() const; +``` + +该方法声明于 `XCEngine/Core/Containers/Array.h`,当前页面用于固定 `Array` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::Array object; + // 根据上下文补齐参数后调用 Array::Empty(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Array.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/Array/Front.md b/docs/api/XCEngine/Core/Containers/Array/Front.md new file mode 100644 index 00000000..a3419ee3 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/Front.md @@ -0,0 +1,42 @@ +# Array::Front + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Containers/Array.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +T& Front(); +``` + +**参数:** 无。 + +**返回:** `T&` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +const T& Front() const; +``` + +**参数:** 无。 + +**返回:** `const T&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::Array object; + // 根据上下文补齐参数后调用 Array::Front(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Array.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/Array/OperatorAssign.md b/docs/api/XCEngine/Core/Containers/Array/OperatorAssign.md new file mode 100644 index 00000000..8ede5db4 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/OperatorAssign.md @@ -0,0 +1,44 @@ +# Array::operator= + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Containers/Array.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +Array& operator=(const Array& other); +``` + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `Array&` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +Array& operator=(Array&& other) noexcept; +``` + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `Array&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::Array object; + // 根据上下文补齐参数后调用 Array::operator=(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Array.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/Array/OperatorSubscript.md b/docs/api/XCEngine/Core/Containers/Array/OperatorSubscript.md new file mode 100644 index 00000000..97aae2ef --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/OperatorSubscript.md @@ -0,0 +1,44 @@ +# Array::operator[] + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Containers/Array.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +T& operator[](size_t index); +``` + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `T&` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +const T& operator[](size_t index) const; +``` + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `const T&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::Array object; + // 根据上下文补齐参数后调用 Array::operator[](...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Array.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/Array/PopBack.md b/docs/api/XCEngine/Core/Containers/Array/PopBack.md new file mode 100644 index 00000000..bea7c133 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/PopBack.md @@ -0,0 +1,30 @@ +# Array::PopBack + +公开方法,详见头文件声明。 + +```cpp +void PopBack(); +``` + +该方法声明于 `XCEngine/Core/Containers/Array.h`,当前页面用于固定 `Array` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::Array object; + // 根据上下文补齐参数后调用 Array::PopBack(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Array.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/Array/PushBack.md b/docs/api/XCEngine/Core/Containers/Array/PushBack.md new file mode 100644 index 00000000..7ee81759 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/PushBack.md @@ -0,0 +1,44 @@ +# Array::PushBack + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Containers/Array.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void PushBack(const T& value); +``` + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void PushBack(T&& value); +``` + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::Array object; + // 根据上下文补齐参数后调用 Array::PushBack(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Array.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/Array/Reserve.md b/docs/api/XCEngine/Core/Containers/Array/Reserve.md new file mode 100644 index 00000000..076ef14a --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/Reserve.md @@ -0,0 +1,31 @@ +# Array::Reserve + +公开方法,详见头文件声明。 + +```cpp +void Reserve(size_t capacity); +``` + +该方法声明于 `XCEngine/Core/Containers/Array.h`,当前页面用于固定 `Array` 类目录下的方法级 canonical 路径。 + +**参数:** +- `capacity` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::Array object; + // 根据上下文补齐参数后调用 Array::Reserve(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Array.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/Array/Resize.md b/docs/api/XCEngine/Core/Containers/Array/Resize.md new file mode 100644 index 00000000..ca88fe10 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/Resize.md @@ -0,0 +1,45 @@ +# Array::Resize + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Containers/Array.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void Resize(size_t newSize); +``` + +**参数:** +- `newSize` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void Resize(size_t newSize, const T& value); +``` + +**参数:** +- `newSize` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::Array object; + // 根据上下文补齐参数后调用 Array::Resize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Array.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/Array/SetAllocator.md b/docs/api/XCEngine/Core/Containers/Array/SetAllocator.md new file mode 100644 index 00000000..745b5a8f --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/SetAllocator.md @@ -0,0 +1,31 @@ +# Array::SetAllocator + +设置相关状态或配置。 + +```cpp +void SetAllocator(Memory::IAllocator* allocator); +``` + +该方法声明于 `XCEngine/Core/Containers/Array.h`,当前页面用于固定 `Array` 类目录下的方法级 canonical 路径。 + +**参数:** +- `allocator` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::Array object; + // 根据上下文补齐参数后调用 Array::SetAllocator(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Array.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/Array/Size.md b/docs/api/XCEngine/Core/Containers/Array/Size.md new file mode 100644 index 00000000..7f3b9764 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/Size.md @@ -0,0 +1,30 @@ +# Array::Size + +公开方法,详见头文件声明。 + +```cpp +size_t Size() const; +``` + +该方法声明于 `XCEngine/Core/Containers/Array.h`,当前页面用于固定 `Array` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::Array object; + // 根据上下文补齐参数后调用 Array::Size(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Array.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/Array/begin.md b/docs/api/XCEngine/Core/Containers/Array/begin.md new file mode 100644 index 00000000..b8a31964 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/begin.md @@ -0,0 +1,42 @@ +# Array::begin + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Containers/Array.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +Iterator begin(); +``` + +**参数:** 无。 + +**返回:** `Iterator` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +ConstIterator begin() const; +``` + +**参数:** 无。 + +**返回:** `ConstIterator` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::Array object; + // 根据上下文补齐参数后调用 Array::begin(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Array.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/Array/end.md b/docs/api/XCEngine/Core/Containers/Array/end.md new file mode 100644 index 00000000..ec3fb093 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Array/end.md @@ -0,0 +1,42 @@ +# Array::end + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Containers/Array.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +Iterator end(); +``` + +**参数:** 无。 + +**返回:** `Iterator` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +ConstIterator end() const; +``` + +**参数:** 无。 + +**返回:** `ConstIterator` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::Array object; + // 根据上下文补齐参数后调用 Array::end(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Array.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/Containers.md b/docs/api/XCEngine/Core/Containers/Containers.md new file mode 100644 index 00000000..06ec0ad5 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Containers.md @@ -0,0 +1,23 @@ +# Containers + +**命名空间**: `XCEngine::Core::Containers` + +**类型**: `submodule` + +**描述**: 字符串、数组和哈希表等核心容器。 + +## 概览 + +该目录与 `XCEngine/Core/Containers` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 头文件 + +- [Array](Array/Array.md) - `Array.h` +- [Containers](Containers/Containers.md) - `Containers.h` +- [HashMap](HashMap/HashMap.md) - `HashMap.h` +- [String](String/String.md) - `String.h` + +## 相关文档 + +- [上级目录](../Core.md) +- [API 总索引](../../../main.md) diff --git a/docs/api/XCEngine/Core/Containers/Containers/Containers.md b/docs/api/XCEngine/Core/Containers/Containers/Containers.md new file mode 100644 index 00000000..6ba8b50d --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/Containers/Containers.md @@ -0,0 +1,18 @@ +# Containers + +**命名空间**: `XCEngine` + +**类型**: `header` + +**头文件**: `XCEngine/Core/Containers/Containers.h` + +**描述**: 定义 `XCEngine/Core/Containers` 子目录中的 `Containers` public API。 + +## 概述 + +`Containers.h` 是 `XCEngine/Core/Containers` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 相关文档 + +- [当前目录](../Containers.md) - 返回 `Containers` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Containers/HashMap/Clear.md b/docs/api/XCEngine/Core/Containers/HashMap/Clear.md new file mode 100644 index 00000000..4b62c62f --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/HashMap/Clear.md @@ -0,0 +1,30 @@ +# HashMap::Clear + +清空内部数据。 + +```cpp +void Clear(); +``` + +该方法声明于 `XCEngine/Core/Containers/HashMap.h`,当前页面用于固定 `HashMap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::HashMap object; + // 根据上下文补齐参数后调用 HashMap::Clear(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HashMap.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/HashMap/Constructor.md b/docs/api/XCEngine/Core/Containers/HashMap/Constructor.md new file mode 100644 index 00000000..7a1d45da --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/HashMap/Constructor.md @@ -0,0 +1,64 @@ +# HashMap::HashMap() + +构造对象。 + +该方法在 `XCEngine/Core/Containers/HashMap.h` 中提供了 4 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +HashMap(); +``` + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +explicit HashMap(size_t bucketCount, Memory::IAllocator* allocator = nullptr); +``` + +**参数:** +- `bucketCount` - 参数语义详见头文件声明。 +- `allocator` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 3: 声明 + +```cpp +HashMap(const HashMap& other); +``` + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 4: 声明 + +```cpp +HashMap(HashMap&& other) noexcept; +``` + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::HashMap object; +} +``` + +## 相关文档 + +- [返回类总览](HashMap.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/HashMap/Contains.md b/docs/api/XCEngine/Core/Containers/HashMap/Contains.md new file mode 100644 index 00000000..7cc2efcf --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/HashMap/Contains.md @@ -0,0 +1,31 @@ +# HashMap::Contains + +公开方法,详见头文件声明。 + +```cpp +bool Contains(const Key& key) const; +``` + +该方法声明于 `XCEngine/Core/Containers/HashMap.h`,当前页面用于固定 `HashMap` 类目录下的方法级 canonical 路径。 + +**参数:** +- `key` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::HashMap object; + // 根据上下文补齐参数后调用 HashMap::Contains(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HashMap.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/HashMap/Destructor.md b/docs/api/XCEngine/Core/Containers/HashMap/Destructor.md new file mode 100644 index 00000000..818842e5 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/HashMap/Destructor.md @@ -0,0 +1,29 @@ +# HashMap::~HashMap() + +销毁对象并释放相关资源。 + +```cpp +~HashMap(); +``` + +该方法声明于 `XCEngine/Core/Containers/HashMap.h`,当前页面用于固定 `HashMap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::HashMap object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](HashMap.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/HashMap/Empty.md b/docs/api/XCEngine/Core/Containers/HashMap/Empty.md new file mode 100644 index 00000000..a7781b5f --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/HashMap/Empty.md @@ -0,0 +1,30 @@ +# HashMap::Empty + +公开方法,详见头文件声明。 + +```cpp +bool Empty() const; +``` + +该方法声明于 `XCEngine/Core/Containers/HashMap.h`,当前页面用于固定 `HashMap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::HashMap object; + // 根据上下文补齐参数后调用 HashMap::Empty(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HashMap.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/HashMap/Erase.md b/docs/api/XCEngine/Core/Containers/HashMap/Erase.md new file mode 100644 index 00000000..3dbd44a1 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/HashMap/Erase.md @@ -0,0 +1,31 @@ +# HashMap::Erase + +公开方法,详见头文件声明。 + +```cpp +bool Erase(const Key& key); +``` + +该方法声明于 `XCEngine/Core/Containers/HashMap.h`,当前页面用于固定 `HashMap` 类目录下的方法级 canonical 路径。 + +**参数:** +- `key` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::HashMap object; + // 根据上下文补齐参数后调用 HashMap::Erase(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HashMap.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/HashMap/Find.md b/docs/api/XCEngine/Core/Containers/HashMap/Find.md new file mode 100644 index 00000000..758541c4 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/HashMap/Find.md @@ -0,0 +1,44 @@ +# HashMap::Find + +查找并返回匹配对象。 + +该方法在 `XCEngine/Core/Containers/HashMap.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +Value* Find(const Key& key); +``` + +**参数:** +- `key` - 参数语义详见头文件声明。 + +**返回:** `Value*` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +const Value* Find(const Key& key) const; +``` + +**参数:** +- `key` - 参数语义详见头文件声明。 + +**返回:** `const Value*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::HashMap object; + // 根据上下文补齐参数后调用 HashMap::Find(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HashMap.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/HashMap/HashMap.md b/docs/api/XCEngine/Core/Containers/HashMap/HashMap.md new file mode 100644 index 00000000..78b6a34a --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/HashMap/HashMap.md @@ -0,0 +1,43 @@ +# HashMap + +**命名空间**: `XCEngine::Containers` + +**类型**: `class` + +**头文件**: `XCEngine/Core/Containers/HashMap.h` + +**描述**: 定义 `XCEngine/Core/Containers` 子目录中的 `HashMap` public API。 + +## 概述 + +`HashMap.h` 是 `XCEngine/Core/Containers` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `HashMap` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [HashMap()](Constructor.md) | 构造对象。 | +| [~HashMap()](Destructor.md) | 销毁对象并释放相关资源。 | +| [operator=](OperatorAssign.md) | 公开方法,详见头文件声明。 | +| [operator[]](OperatorSubscript.md) | 公开方法,详见头文件声明。 | +| [Find](Find.md) | 查找并返回匹配对象。 | +| [Contains](Contains.md) | 公开方法,详见头文件声明。 | +| [Insert](Insert.md) | 公开方法,详见头文件声明。 | +| [Erase](Erase.md) | 公开方法,详见头文件声明。 | +| [Clear](Clear.md) | 清空内部数据。 | +| [Size](Size.md) | 公开方法,详见头文件声明。 | +| [Empty](Empty.md) | 公开方法,详见头文件声明。 | +| [begin](begin.md) | 公开方法,详见头文件声明。 | +| [end](end.md) | 公开方法,详见头文件声明。 | +| [SetAllocator](SetAllocator.md) | 设置相关状态或配置。 | + +## 相关文档 + +- [当前目录](../Containers.md) - 返回 `Containers` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Containers/HashMap/Insert.md b/docs/api/XCEngine/Core/Containers/HashMap/Insert.md new file mode 100644 index 00000000..c90b168a --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/HashMap/Insert.md @@ -0,0 +1,57 @@ +# HashMap::Insert + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Containers/HashMap.h` 中提供了 3 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool Insert(const Key& key, const Value& value); +``` + +**参数:** +- `key` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +bool Insert(const Key& key, Value&& value); +``` + +**参数:** +- `key` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 3: 声明 + +```cpp +bool Insert(Pair&& pair); +``` + +**参数:** +- `pair` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::HashMap object; + // 根据上下文补齐参数后调用 HashMap::Insert(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HashMap.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/HashMap/OperatorAssign.md b/docs/api/XCEngine/Core/Containers/HashMap/OperatorAssign.md new file mode 100644 index 00000000..a35791d3 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/HashMap/OperatorAssign.md @@ -0,0 +1,44 @@ +# HashMap::operator= + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Containers/HashMap.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +HashMap& operator=(const HashMap& other); +``` + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `HashMap&` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +HashMap& operator=(HashMap&& other) noexcept; +``` + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `HashMap&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::HashMap object; + // 根据上下文补齐参数后调用 HashMap::operator=(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HashMap.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/HashMap/OperatorSubscript.md b/docs/api/XCEngine/Core/Containers/HashMap/OperatorSubscript.md new file mode 100644 index 00000000..10d6ad70 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/HashMap/OperatorSubscript.md @@ -0,0 +1,31 @@ +# HashMap::operator[] + +公开方法,详见头文件声明。 + +```cpp +Value& operator[](const Key& key); +``` + +该方法声明于 `XCEngine/Core/Containers/HashMap.h`,当前页面用于固定 `HashMap` 类目录下的方法级 canonical 路径。 + +**参数:** +- `key` - 参数语义详见头文件声明。 + +**返回:** `Value&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::HashMap object; + // 根据上下文补齐参数后调用 HashMap::operator[](...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HashMap.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/HashMap/SetAllocator.md b/docs/api/XCEngine/Core/Containers/HashMap/SetAllocator.md new file mode 100644 index 00000000..d0c34b00 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/HashMap/SetAllocator.md @@ -0,0 +1,31 @@ +# HashMap::SetAllocator + +设置相关状态或配置。 + +```cpp +void SetAllocator(Memory::IAllocator* allocator); +``` + +该方法声明于 `XCEngine/Core/Containers/HashMap.h`,当前页面用于固定 `HashMap` 类目录下的方法级 canonical 路径。 + +**参数:** +- `allocator` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::HashMap object; + // 根据上下文补齐参数后调用 HashMap::SetAllocator(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HashMap.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/HashMap/Size.md b/docs/api/XCEngine/Core/Containers/HashMap/Size.md new file mode 100644 index 00000000..918f41ef --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/HashMap/Size.md @@ -0,0 +1,30 @@ +# HashMap::Size + +公开方法,详见头文件声明。 + +```cpp +size_t Size() const; +``` + +该方法声明于 `XCEngine/Core/Containers/HashMap.h`,当前页面用于固定 `HashMap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::HashMap object; + // 根据上下文补齐参数后调用 HashMap::Size(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HashMap.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/HashMap/begin.md b/docs/api/XCEngine/Core/Containers/HashMap/begin.md new file mode 100644 index 00000000..eff408b6 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/HashMap/begin.md @@ -0,0 +1,42 @@ +# HashMap::begin + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Containers/HashMap.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +Iterator begin(); +``` + +**参数:** 无。 + +**返回:** `Iterator` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +ConstIterator begin() const; +``` + +**参数:** 无。 + +**返回:** `ConstIterator` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::HashMap object; + // 根据上下文补齐参数后调用 HashMap::begin(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HashMap.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/HashMap/end.md b/docs/api/XCEngine/Core/Containers/HashMap/end.md new file mode 100644 index 00000000..802b687e --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/HashMap/end.md @@ -0,0 +1,42 @@ +# HashMap::end + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Containers/HashMap.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +Iterator end(); +``` + +**参数:** 无。 + +**返回:** `Iterator` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +ConstIterator end() const; +``` + +**参数:** 无。 + +**返回:** `ConstIterator` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::HashMap object; + // 根据上下文补齐参数后调用 HashMap::end(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](HashMap.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/String/CStr.md b/docs/api/XCEngine/Core/Containers/String/CStr.md new file mode 100644 index 00000000..a4effcac --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/CStr.md @@ -0,0 +1,30 @@ +# String::CStr + +公开方法,详见头文件声明。 + +```cpp +const char* CStr() const; +``` + +该方法声明于 `XCEngine/Core/Containers/String.h`,当前页面用于固定 `String` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const char*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::String object; + // 根据上下文补齐参数后调用 String::CStr(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](String.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/String/Capacity.md b/docs/api/XCEngine/Core/Containers/String/Capacity.md new file mode 100644 index 00000000..dcd9123b --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/Capacity.md @@ -0,0 +1,30 @@ +# String::Capacity + +公开方法,详见头文件声明。 + +```cpp +SizeType Capacity() const; +``` + +该方法声明于 `XCEngine/Core/Containers/String.h`,当前页面用于固定 `String` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `SizeType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::String object; + // 根据上下文补齐参数后调用 String::Capacity(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](String.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/String/Clear.md b/docs/api/XCEngine/Core/Containers/String/Clear.md new file mode 100644 index 00000000..51ad34c2 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/Clear.md @@ -0,0 +1,30 @@ +# String::Clear + +清空内部数据。 + +```cpp +void Clear(); +``` + +该方法声明于 `XCEngine/Core/Containers/String.h`,当前页面用于固定 `String` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::String object; + // 根据上下文补齐参数后调用 String::Clear(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](String.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/String/Constructor.md b/docs/api/XCEngine/Core/Containers/String/Constructor.md new file mode 100644 index 00000000..e3949a5c --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/Constructor.md @@ -0,0 +1,75 @@ +# String::String() + +构造对象。 + +该方法在 `XCEngine/Core/Containers/String.h` 中提供了 5 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +String(); +``` + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +String(const char* str); +``` + +**参数:** +- `str` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 3: 声明 + +```cpp +String(const char* str, SizeType len); +``` + +**参数:** +- `str` - 参数语义详见头文件声明。 +- `len` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 4: 声明 + +```cpp +String(const String& other); +``` + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 5: 声明 + +```cpp +String(String&& other) noexcept; +``` + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::String object; +} +``` + +## 相关文档 + +- [返回类总览](String.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/String/Destructor.md b/docs/api/XCEngine/Core/Containers/String/Destructor.md new file mode 100644 index 00000000..4e8e9651 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/Destructor.md @@ -0,0 +1,29 @@ +# String::~String() + +销毁对象并释放相关资源。 + +```cpp +~String(); +``` + +该方法声明于 `XCEngine/Core/Containers/String.h`,当前页面用于固定 `String` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::String object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](String.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/String/Empty.md b/docs/api/XCEngine/Core/Containers/String/Empty.md new file mode 100644 index 00000000..12a2576b --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/Empty.md @@ -0,0 +1,30 @@ +# String::Empty + +公开方法,详见头文件声明。 + +```cpp +bool Empty() const; +``` + +该方法声明于 `XCEngine/Core/Containers/String.h`,当前页面用于固定 `String` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::String object; + // 根据上下文补齐参数后调用 String::Empty(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](String.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/String/EndsWith.md b/docs/api/XCEngine/Core/Containers/String/EndsWith.md new file mode 100644 index 00000000..d018978e --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/EndsWith.md @@ -0,0 +1,44 @@ +# String::EndsWith + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Containers/String.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool EndsWith(const String& suffix) const; +``` + +**参数:** +- `suffix` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +bool EndsWith(const char* suffix) const; +``` + +**参数:** +- `suffix` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::String object; + // 根据上下文补齐参数后调用 String::EndsWith(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](String.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/String/Find.md b/docs/api/XCEngine/Core/Containers/String/Find.md new file mode 100644 index 00000000..c2278d0f --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/Find.md @@ -0,0 +1,32 @@ +# String::Find + +查找并返回匹配对象。 + +```cpp +SizeType Find(const char* str, SizeType pos = 0) const; +``` + +该方法声明于 `XCEngine/Core/Containers/String.h`,当前页面用于固定 `String` 类目录下的方法级 canonical 路径。 + +**参数:** +- `str` - 参数语义详见头文件声明。 +- `pos` - 参数语义详见头文件声明。 + +**返回:** `SizeType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::String object; + // 根据上下文补齐参数后调用 String::Find(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](String.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/String/Length.md b/docs/api/XCEngine/Core/Containers/String/Length.md new file mode 100644 index 00000000..cfd531fa --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/Length.md @@ -0,0 +1,30 @@ +# String::Length + +公开方法,详见头文件声明。 + +```cpp +SizeType Length() const; +``` + +该方法声明于 `XCEngine/Core/Containers/String.h`,当前页面用于固定 `String` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `SizeType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::String object; + // 根据上下文补齐参数后调用 String::Length(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](String.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/String/OperatorAssign.md b/docs/api/XCEngine/Core/Containers/String/OperatorAssign.md new file mode 100644 index 00000000..60286cea --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/OperatorAssign.md @@ -0,0 +1,55 @@ +# String::operator= + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Containers/String.h` 中提供了 3 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +String& operator=(const String& other); +``` + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `String&` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +String& operator=(String&& other) noexcept; +``` + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `String&` - 返回值语义详见头文件声明。 + +## 重载 3: 声明 + +```cpp +String& operator=(const char* str); +``` + +**参数:** +- `str` - 参数语义详见头文件声明。 + +**返回:** `String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::String object; + // 根据上下文补齐参数后调用 String::operator=(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](String.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/String/OperatorPlusAssign.md b/docs/api/XCEngine/Core/Containers/String/OperatorPlusAssign.md new file mode 100644 index 00000000..851cf194 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/OperatorPlusAssign.md @@ -0,0 +1,55 @@ +# String::operator+= + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Containers/String.h` 中提供了 3 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +String& operator+=(const String& other); +``` + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `String&` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +String& operator+=(const char* str); +``` + +**参数:** +- `str` - 参数语义详见头文件声明。 + +**返回:** `String&` - 返回值语义详见头文件声明。 + +## 重载 3: 声明 + +```cpp +String& operator+=(char c); +``` + +**参数:** +- `c` - 参数语义详见头文件声明。 + +**返回:** `String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::String object; + // 根据上下文补齐参数后调用 String::operator+=(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](String.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/String/OperatorSubscript.md b/docs/api/XCEngine/Core/Containers/String/OperatorSubscript.md new file mode 100644 index 00000000..5c2fa132 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/OperatorSubscript.md @@ -0,0 +1,44 @@ +# String::operator[] + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Containers/String.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +char& operator[](SizeType index); +``` + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `char&` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +const char& operator[](SizeType index) const; +``` + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `const char&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::String object; + // 根据上下文补齐参数后调用 String::operator[](...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](String.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/String/Reserve.md b/docs/api/XCEngine/Core/Containers/String/Reserve.md new file mode 100644 index 00000000..5144b9dd --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/Reserve.md @@ -0,0 +1,31 @@ +# String::Reserve + +公开方法,详见头文件声明。 + +```cpp +void Reserve(SizeType capacity); +``` + +该方法声明于 `XCEngine/Core/Containers/String.h`,当前页面用于固定 `String` 类目录下的方法级 canonical 路径。 + +**参数:** +- `capacity` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::String object; + // 根据上下文补齐参数后调用 String::Reserve(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](String.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/String/Resize.md b/docs/api/XCEngine/Core/Containers/String/Resize.md new file mode 100644 index 00000000..f1297c11 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/Resize.md @@ -0,0 +1,45 @@ +# String::Resize + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Containers/String.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void Resize(SizeType newSize); +``` + +**参数:** +- `newSize` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void Resize(SizeType newSize, char fillChar); +``` + +**参数:** +- `newSize` - 参数语义详见头文件声明。 +- `fillChar` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::String object; + // 根据上下文补齐参数后调用 String::Resize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](String.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/String/StartsWith.md b/docs/api/XCEngine/Core/Containers/String/StartsWith.md new file mode 100644 index 00000000..547e50fe --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/StartsWith.md @@ -0,0 +1,44 @@ +# String::StartsWith + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Containers/String.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool StartsWith(const String& prefix) const; +``` + +**参数:** +- `prefix` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +bool StartsWith(const char* prefix) const; +``` + +**参数:** +- `prefix` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::String object; + // 根据上下文补齐参数后调用 String::StartsWith(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](String.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/String/String.md b/docs/api/XCEngine/Core/Containers/String/String.md new file mode 100644 index 00000000..5d1c7d6b --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/String.md @@ -0,0 +1,58 @@ +# String + +**命名空间**: `XCEngine::Containers` + +**类型**: `class` + +**头文件**: `XCEngine/Core/Containers/String.h` + +**描述**: 定义 `XCEngine/Core/Containers` 子目录中的 `String` public API。 + +## 概述 + +`String.h` 是 `XCEngine/Core/Containers` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `String` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [String()](Constructor.md) | 构造对象。 | +| [~String()](Destructor.md) | 销毁对象并释放相关资源。 | +| [operator=](OperatorAssign.md) | 公开方法,详见头文件声明。 | +| [operator+=](OperatorPlusAssign.md) | 公开方法,详见头文件声明。 | +| [Substring](Substring.md) | 公开方法,详见头文件声明。 | +| [Trim](Trim.md) | 公开方法,详见头文件声明。 | +| [ToLower](ToLower.md) | 公开方法,详见头文件声明。 | +| [ToUpper](ToUpper.md) | 公开方法,详见头文件声明。 | +| [Find](Find.md) | 查找并返回匹配对象。 | +| [StartsWith](StartsWith.md) | 公开方法,详见头文件声明。 | +| [EndsWith](EndsWith.md) | 公开方法,详见头文件声明。 | +| [CStr](CStr.md) | 公开方法,详见头文件声明。 | +| [Length](Length.md) | 公开方法,详见头文件声明。 | +| [Capacity](Capacity.md) | 公开方法,详见头文件声明。 | +| [Empty](Empty.md) | 公开方法,详见头文件声明。 | +| [operator[]](OperatorSubscript.md) | 公开方法,详见头文件声明。 | +| [Clear](Clear.md) | 清空内部数据。 | +| [Reserve](Reserve.md) | 公开方法,详见头文件声明。 | +| [Resize](Resize.md) | 公开方法,详见头文件声明。 | + +## std::hash 特化 + +```cpp +namespace std { + template<> struct hash; +} +``` + +`String.h` 同时提供 `std::hash` 特化,可直接用于哈希容器键类型。 + +## 相关文档 + +- [当前目录](../Containers.md) - 返回 `Containers` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Containers/String/Substring.md b/docs/api/XCEngine/Core/Containers/String/Substring.md new file mode 100644 index 00000000..2ec74835 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/Substring.md @@ -0,0 +1,32 @@ +# String::Substring + +公开方法,详见头文件声明。 + +```cpp +String Substring(SizeType pos, SizeType len = npos) const; +``` + +该方法声明于 `XCEngine/Core/Containers/String.h`,当前页面用于固定 `String` 类目录下的方法级 canonical 路径。 + +**参数:** +- `pos` - 参数语义详见头文件声明。 +- `len` - 参数语义详见头文件声明。 + +**返回:** `String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::String object; + // 根据上下文补齐参数后调用 String::Substring(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](String.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/String/ToLower.md b/docs/api/XCEngine/Core/Containers/String/ToLower.md new file mode 100644 index 00000000..cb6b87e6 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/ToLower.md @@ -0,0 +1,30 @@ +# String::ToLower + +公开方法,详见头文件声明。 + +```cpp +String ToLower() const; +``` + +该方法声明于 `XCEngine/Core/Containers/String.h`,当前页面用于固定 `String` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::String object; + // 根据上下文补齐参数后调用 String::ToLower(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](String.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/String/ToUpper.md b/docs/api/XCEngine/Core/Containers/String/ToUpper.md new file mode 100644 index 00000000..2047002c --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/ToUpper.md @@ -0,0 +1,30 @@ +# String::ToUpper + +公开方法,详见头文件声明。 + +```cpp +String ToUpper() const; +``` + +该方法声明于 `XCEngine/Core/Containers/String.h`,当前页面用于固定 `String` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::String object; + // 根据上下文补齐参数后调用 String::ToUpper(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](String.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Containers/String/Trim.md b/docs/api/XCEngine/Core/Containers/String/Trim.md new file mode 100644 index 00000000..303806e4 --- /dev/null +++ b/docs/api/XCEngine/Core/Containers/String/Trim.md @@ -0,0 +1,30 @@ +# String::Trim + +公开方法,详见头文件声明。 + +```cpp +String Trim() const; +``` + +该方法声明于 `XCEngine/Core/Containers/String.h`,当前页面用于固定 `String` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Containers::String object; + // 根据上下文补齐参数后调用 String::Trim(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](String.md) +- [返回模块目录](../Containers.md) diff --git a/docs/api/XCEngine/Core/Core.md b/docs/api/XCEngine/Core/Core.md new file mode 100644 index 00000000..e269ad7e --- /dev/null +++ b/docs/api/XCEngine/Core/Core.md @@ -0,0 +1,34 @@ +# Core + +**命名空间**: `XCEngine::Core` + +**类型**: `module` + +**描述**: 基础类型、事件、IO、容器与数学基础设施。 + +## 概览 + +该目录与 `XCEngine/Core` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 子目录 + +- [Asset](Asset/Asset.md) +- [Containers](Containers/Containers.md) +- [IO](IO/IO.md) +- [Math](Math/Math.md) + +## 头文件 + +- [Core](Core/Core.md) - `Core.h` +- [Event](Event/Event.md) - `Event.h` +- [FileWriter](FileWriter/FileWriter.md) - `FileWriter.h` +- [Layer](Layer/Layer.md) - `Layer.h` +- [LayerStack](LayerStack/LayerStack.md) - `LayerStack.h` +- [RefCounted](RefCounted/RefCounted.md) - `RefCounted.h` +- [SmartPtr](SmartPtr/SmartPtr.md) - `SmartPtr.h` +- [Types](Types/Types.md) - `Types.h` + +## 相关文档 + +- [上级目录](../XCEngine.md) +- [API 总索引](../../main.md) diff --git a/docs/api/XCEngine/Core/Core/Core.md b/docs/api/XCEngine/Core/Core/Core.md new file mode 100644 index 00000000..d523ade2 --- /dev/null +++ b/docs/api/XCEngine/Core/Core/Core.md @@ -0,0 +1,18 @@ +# Core + +**命名空间**: `XCEngine` + +**类型**: `header` + +**头文件**: `XCEngine/Core/Core.h` + +**描述**: 定义 `XCEngine/Core` 子目录中的 `Core` public API。 + +## 概述 + +`Core.h` 是 `XCEngine/Core` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 相关文档 + +- [当前目录](../Core.md) - 返回 `Core` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Event/Clear.md b/docs/api/XCEngine/Core/Event/Clear.md new file mode 100644 index 00000000..954bb250 --- /dev/null +++ b/docs/api/XCEngine/Core/Event/Clear.md @@ -0,0 +1,30 @@ +# Event::Clear + +清空内部数据。 + +```cpp +void Clear(); +``` + +该方法声明于 `XCEngine/Core/Event.h`,当前页面用于固定 `Event` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::Event object; + // 根据上下文补齐参数后调用 Event::Clear(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Event.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/Event/Event.md b/docs/api/XCEngine/Core/Event/Event.md new file mode 100644 index 00000000..ff7e1f12 --- /dev/null +++ b/docs/api/XCEngine/Core/Event/Event.md @@ -0,0 +1,36 @@ +# Event + +**命名空间**: `XCEngine::Core` + +**类型**: `class` + +**头文件**: `XCEngine/Core/Event.h` + +**描述**: 定义 `XCEngine/Core` 子目录中的 `Event` public API。 + +## 概述 + +`Event.h` 是 `XCEngine/Core` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Event` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Subscribe](Subscribe.md) | 公开方法,详见头文件声明。 | +| [Unsubscribe](Unsubscribe.md) | 公开方法,详见头文件声明。 | +| [ProcessUnsubscribes](ProcessUnsubscribes.md) | 公开方法,详见头文件声明。 | +| [Invoke](Invoke.md) | 公开方法,详见头文件声明。 | +| [Clear](Clear.md) | 清空内部数据。 | +| [begin](begin.md) | 公开方法,详见头文件声明。 | +| [end](end.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Core.md) - 返回 `Core` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Event/Invoke.md b/docs/api/XCEngine/Core/Event/Invoke.md new file mode 100644 index 00000000..fb5fd55d --- /dev/null +++ b/docs/api/XCEngine/Core/Event/Invoke.md @@ -0,0 +1,31 @@ +# Event::Invoke + +公开方法,详见头文件声明。 + +```cpp +void Invoke(Args... args); +``` + +该方法声明于 `XCEngine/Core/Event.h`,当前页面用于固定 `Event` 类目录下的方法级 canonical 路径。 + +**参数:** +- `args` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::Event object; + // 根据上下文补齐参数后调用 Event::Invoke(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Event.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/Event/ProcessUnsubscribes.md b/docs/api/XCEngine/Core/Event/ProcessUnsubscribes.md new file mode 100644 index 00000000..b9de9dd9 --- /dev/null +++ b/docs/api/XCEngine/Core/Event/ProcessUnsubscribes.md @@ -0,0 +1,30 @@ +# Event::ProcessUnsubscribes + +公开方法,详见头文件声明。 + +```cpp +void ProcessUnsubscribes(); +``` + +该方法声明于 `XCEngine/Core/Event.h`,当前页面用于固定 `Event` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::Event object; + // 根据上下文补齐参数后调用 Event::ProcessUnsubscribes(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Event.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/Event/Subscribe.md b/docs/api/XCEngine/Core/Event/Subscribe.md new file mode 100644 index 00000000..03f3bff3 --- /dev/null +++ b/docs/api/XCEngine/Core/Event/Subscribe.md @@ -0,0 +1,31 @@ +# Event::Subscribe + +公开方法,详见头文件声明。 + +```cpp +uint64_t Subscribe(Callback callback); +``` + +该方法声明于 `XCEngine/Core/Event.h`,当前页面用于固定 `Event` 类目录下的方法级 canonical 路径。 + +**参数:** +- `callback` - 参数语义详见头文件声明。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::Event object; + // 根据上下文补齐参数后调用 Event::Subscribe(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Event.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/Event/Unsubscribe.md b/docs/api/XCEngine/Core/Event/Unsubscribe.md new file mode 100644 index 00000000..a715aa85 --- /dev/null +++ b/docs/api/XCEngine/Core/Event/Unsubscribe.md @@ -0,0 +1,31 @@ +# Event::Unsubscribe + +公开方法,详见头文件声明。 + +```cpp +void Unsubscribe(uint64_t id); +``` + +该方法声明于 `XCEngine/Core/Event.h`,当前页面用于固定 `Event` 类目录下的方法级 canonical 路径。 + +**参数:** +- `id` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::Event object; + // 根据上下文补齐参数后调用 Event::Unsubscribe(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Event.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/Event/begin.md b/docs/api/XCEngine/Core/Event/begin.md new file mode 100644 index 00000000..67586a41 --- /dev/null +++ b/docs/api/XCEngine/Core/Event/begin.md @@ -0,0 +1,30 @@ +# Event::begin + +公开方法,详见头文件声明。 + +```cpp +Iterator begin(); +``` + +该方法声明于 `XCEngine/Core/Event.h`,当前页面用于固定 `Event` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Iterator` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::Event object; + // 根据上下文补齐参数后调用 Event::begin(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Event.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/Event/end.md b/docs/api/XCEngine/Core/Event/end.md new file mode 100644 index 00000000..c7cd4a9d --- /dev/null +++ b/docs/api/XCEngine/Core/Event/end.md @@ -0,0 +1,30 @@ +# Event::end + +公开方法,详见头文件声明。 + +```cpp +Iterator end(); +``` + +该方法声明于 `XCEngine/Core/Event.h`,当前页面用于固定 `Event` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Iterator` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::Event object; + // 根据上下文补齐参数后调用 Event::end(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Event.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/FileWriter/Close.md b/docs/api/XCEngine/Core/FileWriter/Close.md new file mode 100644 index 00000000..d7581567 --- /dev/null +++ b/docs/api/XCEngine/Core/FileWriter/Close.md @@ -0,0 +1,30 @@ +# FileWriter::Close + +公开方法,详见头文件声明。 + +```cpp +void Close(); +``` + +该方法声明于 `XCEngine/Core/FileWriter.h`,当前页面用于固定 `FileWriter` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::FileWriter object; + // 根据上下文补齐参数后调用 FileWriter::Close(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FileWriter.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/FileWriter/Constructor.md b/docs/api/XCEngine/Core/FileWriter/Constructor.md new file mode 100644 index 00000000..c710ff2e --- /dev/null +++ b/docs/api/XCEngine/Core/FileWriter/Constructor.md @@ -0,0 +1,42 @@ +# FileWriter::FileWriter() + +构造对象。 + +该方法在 `XCEngine/Core/FileWriter.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +FileWriter(); +``` + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +FileWriter(const char* filePath, bool append = false); +``` + +**参数:** +- `filePath` - 参数语义详见头文件声明。 +- `append` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::FileWriter object; +} +``` + +## 相关文档 + +- [返回类总览](FileWriter.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/FileWriter/Destructor.md b/docs/api/XCEngine/Core/FileWriter/Destructor.md new file mode 100644 index 00000000..85ed9103 --- /dev/null +++ b/docs/api/XCEngine/Core/FileWriter/Destructor.md @@ -0,0 +1,29 @@ +# FileWriter::~FileWriter() + +销毁对象并释放相关资源。 + +```cpp +~FileWriter(); +``` + +该方法声明于 `XCEngine/Core/FileWriter.h`,当前页面用于固定 `FileWriter` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::FileWriter object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](FileWriter.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/FileWriter/FileWriter.md b/docs/api/XCEngine/Core/FileWriter/FileWriter.md new file mode 100644 index 00000000..b6f149b5 --- /dev/null +++ b/docs/api/XCEngine/Core/FileWriter/FileWriter.md @@ -0,0 +1,36 @@ +# FileWriter + +**命名空间**: `XCEngine::Core` + +**类型**: `class` + +**头文件**: `XCEngine/Core/FileWriter.h` + +**描述**: 定义 `XCEngine/Core` 子目录中的 `FileWriter` public API。 + +## 概述 + +`FileWriter.h` 是 `XCEngine/Core` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `FileWriter` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [FileWriter()](Constructor.md) | 构造对象。 | +| [~FileWriter()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Open](Open.md) | 公开方法,详见头文件声明。 | +| [Close](Close.md) | 公开方法,详见头文件声明。 | +| [Write](Write.md) | 公开方法,详见头文件声明。 | +| [Flush](Flush.md) | 公开方法,详见头文件声明。 | +| [IsOpen](IsOpen.md) | 查询当前状态。 | + +## 相关文档 + +- [当前目录](../Core.md) - 返回 `Core` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/FileWriter/Flush.md b/docs/api/XCEngine/Core/FileWriter/Flush.md new file mode 100644 index 00000000..3d981b90 --- /dev/null +++ b/docs/api/XCEngine/Core/FileWriter/Flush.md @@ -0,0 +1,30 @@ +# FileWriter::Flush + +公开方法,详见头文件声明。 + +```cpp +bool Flush(); +``` + +该方法声明于 `XCEngine/Core/FileWriter.h`,当前页面用于固定 `FileWriter` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::FileWriter object; + // 根据上下文补齐参数后调用 FileWriter::Flush(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FileWriter.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/FileWriter/IsOpen.md b/docs/api/XCEngine/Core/FileWriter/IsOpen.md new file mode 100644 index 00000000..f4c48e9f --- /dev/null +++ b/docs/api/XCEngine/Core/FileWriter/IsOpen.md @@ -0,0 +1,30 @@ +# FileWriter::IsOpen + +查询当前状态。 + +```cpp +bool IsOpen() const; +``` + +该方法声明于 `XCEngine/Core/FileWriter.h`,当前页面用于固定 `FileWriter` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::FileWriter object; + // 根据上下文补齐参数后调用 FileWriter::IsOpen(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FileWriter.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/FileWriter/Open.md b/docs/api/XCEngine/Core/FileWriter/Open.md new file mode 100644 index 00000000..85361073 --- /dev/null +++ b/docs/api/XCEngine/Core/FileWriter/Open.md @@ -0,0 +1,32 @@ +# FileWriter::Open + +公开方法,详见头文件声明。 + +```cpp +bool Open(const char* filePath, bool append = false); +``` + +该方法声明于 `XCEngine/Core/FileWriter.h`,当前页面用于固定 `FileWriter` 类目录下的方法级 canonical 路径。 + +**参数:** +- `filePath` - 参数语义详见头文件声明。 +- `append` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::FileWriter object; + // 根据上下文补齐参数后调用 FileWriter::Open(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FileWriter.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/FileWriter/Write.md b/docs/api/XCEngine/Core/FileWriter/Write.md new file mode 100644 index 00000000..f6035ec1 --- /dev/null +++ b/docs/api/XCEngine/Core/FileWriter/Write.md @@ -0,0 +1,45 @@ +# FileWriter::Write + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/FileWriter.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool Write(const char* data, size_t length); +``` + +**参数:** +- `data` - 参数语义详见头文件声明。 +- `length` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +bool Write(const Containers::String& str); +``` + +**参数:** +- `str` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::FileWriter object; + // 根据上下文补齐参数后调用 FileWriter::Write(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FileWriter.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/IO/FileArchive/Close.md b/docs/api/XCEngine/Core/IO/FileArchive/Close.md new file mode 100644 index 00000000..4274a3c0 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/FileArchive/Close.md @@ -0,0 +1,30 @@ +# FileArchive::Close + +公开方法,详见头文件声明。 + +```cpp +void Close() override; +``` + +该方法声明于 `XCEngine/Core/IO/FileArchive.h`,当前页面用于固定 `FileArchive` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::FileArchive object; + // 根据上下文补齐参数后调用 FileArchive::Close(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FileArchive.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/FileArchive/Constructor.md b/docs/api/XCEngine/Core/IO/FileArchive/Constructor.md new file mode 100644 index 00000000..c94d3356 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/FileArchive/Constructor.md @@ -0,0 +1,28 @@ +# FileArchive::FileArchive() + +构造对象。 + +```cpp +FileArchive(); +``` + +该方法声明于 `XCEngine/Core/IO/FileArchive.h`,当前页面用于固定 `FileArchive` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::FileArchive object; +} +``` + +## 相关文档 + +- [返回类总览](FileArchive.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/FileArchive/Destructor.md b/docs/api/XCEngine/Core/IO/FileArchive/Destructor.md new file mode 100644 index 00000000..2b703546 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/FileArchive/Destructor.md @@ -0,0 +1,29 @@ +# FileArchive::~FileArchive() + +销毁对象并释放相关资源。 + +```cpp +virtual ~FileArchive() override; +``` + +该方法声明于 `XCEngine/Core/IO/FileArchive.h`,当前页面用于固定 `FileArchive` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::FileArchive object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](FileArchive.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/FileArchive/Enumerate.md b/docs/api/XCEngine/Core/IO/FileArchive/Enumerate.md new file mode 100644 index 00000000..f67a01ed --- /dev/null +++ b/docs/api/XCEngine/Core/IO/FileArchive/Enumerate.md @@ -0,0 +1,32 @@ +# FileArchive::Enumerate + +公开方法,详见头文件声明。 + +```cpp +void Enumerate(const Containers::String& pattern, Containers::Array& outFiles) const override; +``` + +该方法声明于 `XCEngine/Core/IO/FileArchive.h`,当前页面用于固定 `FileArchive` 类目录下的方法级 canonical 路径。 + +**参数:** +- `pattern` - 参数语义详见头文件声明。 +- `outFiles` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::FileArchive object; + // 根据上下文补齐参数后调用 FileArchive::Enumerate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FileArchive.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/FileArchive/Exists.md b/docs/api/XCEngine/Core/IO/FileArchive/Exists.md new file mode 100644 index 00000000..8fe93a77 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/FileArchive/Exists.md @@ -0,0 +1,31 @@ +# FileArchive::Exists + +公开方法,详见头文件声明。 + +```cpp +bool Exists(const Containers::String& fileName) const override; +``` + +该方法声明于 `XCEngine/Core/IO/FileArchive.h`,当前页面用于固定 `FileArchive` 类目录下的方法级 canonical 路径。 + +**参数:** +- `fileName` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::FileArchive object; + // 根据上下文补齐参数后调用 FileArchive::Exists(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FileArchive.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/FileArchive/FileArchive.md b/docs/api/XCEngine/Core/IO/FileArchive/FileArchive.md new file mode 100644 index 00000000..2f8540c4 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/FileArchive/FileArchive.md @@ -0,0 +1,39 @@ +# FileArchive + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Core/IO/FileArchive.h` + +**描述**: 定义 `XCEngine/Core/IO` 子目录中的 `FileArchive` public API。 + +## 概述 + +`FileArchive.h` 是 `XCEngine/Core/IO` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `FileArchive` | `class` | 继承自 `IArchive` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [FileArchive()](Constructor.md) | 构造对象。 | +| [~FileArchive()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Open](Open.md) | 公开方法,详见头文件声明。 | +| [Close](Close.md) | 公开方法,详见头文件声明。 | +| [Read](Read.md) | 公开方法,详见头文件声明。 | +| [GetSize](GetSize.md) | 获取相关状态或对象。 | +| [Exists](Exists.md) | 公开方法,详见头文件声明。 | +| [Enumerate](Enumerate.md) | 公开方法,详见头文件声明。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [GetPath](GetPath.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../IO.md) - 返回 `IO` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/IO/FileArchive/GetPath.md b/docs/api/XCEngine/Core/IO/FileArchive/GetPath.md new file mode 100644 index 00000000..23484b20 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/FileArchive/GetPath.md @@ -0,0 +1,30 @@ +# FileArchive::GetPath + +获取相关状态或对象。 + +```cpp +const Containers::String& GetPath() const; +``` + +该方法声明于 `XCEngine/Core/IO/FileArchive.h`,当前页面用于固定 `FileArchive` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::FileArchive object; + // 根据上下文补齐参数后调用 FileArchive::GetPath(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FileArchive.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/FileArchive/GetSize.md b/docs/api/XCEngine/Core/IO/FileArchive/GetSize.md new file mode 100644 index 00000000..18c52d9d --- /dev/null +++ b/docs/api/XCEngine/Core/IO/FileArchive/GetSize.md @@ -0,0 +1,31 @@ +# FileArchive::GetSize + +获取相关状态或对象。 + +```cpp +size_t GetSize(const Containers::String& fileName) const override; +``` + +该方法声明于 `XCEngine/Core/IO/FileArchive.h`,当前页面用于固定 `FileArchive` 类目录下的方法级 canonical 路径。 + +**参数:** +- `fileName` - 参数语义详见头文件声明。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::FileArchive object; + // 根据上下文补齐参数后调用 FileArchive::GetSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FileArchive.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/FileArchive/IsValid.md b/docs/api/XCEngine/Core/IO/FileArchive/IsValid.md new file mode 100644 index 00000000..a16071ca --- /dev/null +++ b/docs/api/XCEngine/Core/IO/FileArchive/IsValid.md @@ -0,0 +1,30 @@ +# FileArchive::IsValid + +查询当前状态。 + +```cpp +bool IsValid() const override; +``` + +该方法声明于 `XCEngine/Core/IO/FileArchive.h`,当前页面用于固定 `FileArchive` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::FileArchive object; + // 根据上下文补齐参数后调用 FileArchive::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FileArchive.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/FileArchive/Open.md b/docs/api/XCEngine/Core/IO/FileArchive/Open.md new file mode 100644 index 00000000..bf9ea807 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/FileArchive/Open.md @@ -0,0 +1,31 @@ +# FileArchive::Open + +公开方法,详见头文件声明。 + +```cpp +bool Open(const Containers::String& path) override; +``` + +该方法声明于 `XCEngine/Core/IO/FileArchive.h`,当前页面用于固定 `FileArchive` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::FileArchive object; + // 根据上下文补齐参数后调用 FileArchive::Open(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FileArchive.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/FileArchive/Read.md b/docs/api/XCEngine/Core/IO/FileArchive/Read.md new file mode 100644 index 00000000..30be8e61 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/FileArchive/Read.md @@ -0,0 +1,34 @@ +# FileArchive::Read + +公开方法,详见头文件声明。 + +```cpp +bool Read(const Containers::String& fileName, void* buffer, size_t size, size_t offset) const override; +``` + +该方法声明于 `XCEngine/Core/IO/FileArchive.h`,当前页面用于固定 `FileArchive` 类目录下的方法级 canonical 路径。 + +**参数:** +- `fileName` - 参数语义详见头文件声明。 +- `buffer` - 参数语义详见头文件声明。 +- `size` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::FileArchive object; + // 根据上下文补齐参数后调用 FileArchive::Read(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FileArchive.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/IO.md b/docs/api/XCEngine/Core/IO/IO.md new file mode 100644 index 00000000..371de1af --- /dev/null +++ b/docs/api/XCEngine/Core/IO/IO.md @@ -0,0 +1,24 @@ +# IO + +**命名空间**: `XCEngine::Core::IO` + +**类型**: `submodule` + +**描述**: 资源路径、归档与虚拟文件系统。 + +## 概览 + +该目录与 `XCEngine/Core/IO` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 头文件 + +- [FileArchive](FileArchive/FileArchive.md) - `FileArchive.h` +- [IResourceLoader](IResourceLoader/IResourceLoader.md) - `IResourceLoader.h` +- [ResourceFileSystem](ResourceFileSystem/ResourceFileSystem.md) - `ResourceFileSystem.h` +- [ResourcePackage](ResourcePackage/ResourcePackage.md) - `ResourcePackage.h` +- [ResourcePath](ResourcePath/ResourcePath.md) - `ResourcePath.h` + +## 相关文档 + +- [上级目录](../Core.md) +- [API 总索引](../../../main.md) diff --git a/docs/api/XCEngine/Core/IO/IResourceLoader/CanLoad.md b/docs/api/XCEngine/Core/IO/IResourceLoader/CanLoad.md new file mode 100644 index 00000000..c3b36d68 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/IResourceLoader/CanLoad.md @@ -0,0 +1,31 @@ +# IResourceLoader::CanLoad + +判断当前条件下是否可执行。 + +```cpp +virtual bool CanLoad(const Containers::String& path) const = 0; +``` + +该方法声明于 `XCEngine/Core/IO/IResourceLoader.h`,当前页面用于固定 `IResourceLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::IResourceLoader object; + // 根据上下文补齐参数后调用 IResourceLoader::CanLoad(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IResourceLoader.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/IResourceLoader/Destructor.md b/docs/api/XCEngine/Core/IO/IResourceLoader/Destructor.md new file mode 100644 index 00000000..b6b8c4e3 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/IResourceLoader/Destructor.md @@ -0,0 +1,29 @@ +# IResourceLoader::~IResourceLoader() + +销毁对象并释放相关资源。 + +```cpp +virtual ~IResourceLoader() = default; +``` + +该方法声明于 `XCEngine/Core/IO/IResourceLoader.h`,当前页面用于固定 `IResourceLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::IResourceLoader object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](IResourceLoader.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/IResourceLoader/GetDefaultSettings.md b/docs/api/XCEngine/Core/IO/IResourceLoader/GetDefaultSettings.md new file mode 100644 index 00000000..d44e6c79 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/IResourceLoader/GetDefaultSettings.md @@ -0,0 +1,30 @@ +# IResourceLoader::GetDefaultSettings + +获取相关状态或对象。 + +```cpp +virtual ImportSettings* GetDefaultSettings() const = 0; +``` + +该方法声明于 `XCEngine/Core/IO/IResourceLoader.h`,当前页面用于固定 `IResourceLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ImportSettings*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::IResourceLoader object; + // 根据上下文补齐参数后调用 IResourceLoader::GetDefaultSettings(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IResourceLoader.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/IResourceLoader/GetResourceType.md b/docs/api/XCEngine/Core/IO/IResourceLoader/GetResourceType.md new file mode 100644 index 00000000..6dc6fa36 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/IResourceLoader/GetResourceType.md @@ -0,0 +1,30 @@ +# IResourceLoader::GetResourceType + +获取相关状态或对象。 + +```cpp +virtual ResourceType GetResourceType() const = 0; +``` + +该方法声明于 `XCEngine/Core/IO/IResourceLoader.h`,当前页面用于固定 `IResourceLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::IResourceLoader object; + // 根据上下文补齐参数后调用 IResourceLoader::GetResourceType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IResourceLoader.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/IResourceLoader/GetSupportedExtensions.md b/docs/api/XCEngine/Core/IO/IResourceLoader/GetSupportedExtensions.md new file mode 100644 index 00000000..a8ce51a8 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/IResourceLoader/GetSupportedExtensions.md @@ -0,0 +1,30 @@ +# IResourceLoader::GetSupportedExtensions + +获取相关状态或对象。 + +```cpp +virtual Containers::Array GetSupportedExtensions() const = 0; +``` + +该方法声明于 `XCEngine/Core/IO/IResourceLoader.h`,当前页面用于固定 `IResourceLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::Array` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::IResourceLoader object; + // 根据上下文补齐参数后调用 IResourceLoader::GetSupportedExtensions(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IResourceLoader.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/IResourceLoader/IResourceLoader.md b/docs/api/XCEngine/Core/IO/IResourceLoader/IResourceLoader.md new file mode 100644 index 00000000..8765f6c3 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/IResourceLoader/IResourceLoader.md @@ -0,0 +1,38 @@ +# IResourceLoader + +**命名空间**: `XCEngine::Resources` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/Core/IO/IResourceLoader.h` + +**描述**: 定义 `XCEngine/Core/IO` 子目录中的 `IResourceLoader` public API。 + +## 概述 + +`IResourceLoader.h` 是 `XCEngine/Core/IO` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `LoadResult` | `struct` | 头文件中的公开声明。 | +| `IResourceLoader` | `class` | 头文件中的公开声明。 | +| `loaderType` | `struct` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~IResourceLoader()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetResourceType](GetResourceType.md) | 获取相关状态或对象。 | +| [GetSupportedExtensions](GetSupportedExtensions.md) | 获取相关状态或对象。 | +| [CanLoad](CanLoad.md) | 判断当前条件下是否可执行。 | +| [Load](Load.md) | 加载资源或数据。 | +| [LoadAsync](LoadAsync.md) | 加载资源或数据。 | +| [GetDefaultSettings](GetDefaultSettings.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../IO.md) - 返回 `IO` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/IO/IResourceLoader/Load.md b/docs/api/XCEngine/Core/IO/IResourceLoader/Load.md new file mode 100644 index 00000000..f55cb659 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/IResourceLoader/Load.md @@ -0,0 +1,32 @@ +# IResourceLoader::Load + +加载资源或数据。 + +```cpp +virtual LoadResult Load(const Containers::String& path, const ImportSettings* settings = nullptr) = 0; +``` + +该方法声明于 `XCEngine/Core/IO/IResourceLoader.h`,当前页面用于固定 `IResourceLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 +- `settings` - 参数语义详见头文件声明。 + +**返回:** `LoadResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::IResourceLoader object; + // 根据上下文补齐参数后调用 IResourceLoader::Load(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IResourceLoader.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/IResourceLoader/LoadAsync.md b/docs/api/XCEngine/Core/IO/IResourceLoader/LoadAsync.md new file mode 100644 index 00000000..c4d2a853 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/IResourceLoader/LoadAsync.md @@ -0,0 +1,33 @@ +# IResourceLoader::LoadAsync + +加载资源或数据。 + +```cpp +virtual void LoadAsync(const Containers::String& path, const ImportSettings* settings, std::function callback); +``` + +该方法声明于 `XCEngine/Core/IO/IResourceLoader.h`,当前页面用于固定 `IResourceLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 +- `settings` - 参数语义详见头文件声明。 +- `callback` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::IResourceLoader object; + // 根据上下文补齐参数后调用 IResourceLoader::LoadAsync(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IResourceLoader.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourceFileSystem/AddArchive.md b/docs/api/XCEngine/Core/IO/ResourceFileSystem/AddArchive.md new file mode 100644 index 00000000..071f193e --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourceFileSystem/AddArchive.md @@ -0,0 +1,31 @@ +# ResourceFileSystem::AddArchive + +添加元素或建立关联。 + +```cpp +bool AddArchive(const Containers::String& archivePath); +``` + +该方法声明于 `XCEngine/Core/IO/ResourceFileSystem.h`,当前页面用于固定 `ResourceFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `archivePath` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceFileSystem object; + // 根据上下文补齐参数后调用 ResourceFileSystem::AddArchive(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceFileSystem.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourceFileSystem/AddDirectory.md b/docs/api/XCEngine/Core/IO/ResourceFileSystem/AddDirectory.md new file mode 100644 index 00000000..71285583 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourceFileSystem/AddDirectory.md @@ -0,0 +1,31 @@ +# ResourceFileSystem::AddDirectory + +添加元素或建立关联。 + +```cpp +bool AddDirectory(const Containers::String& directoryPath); +``` + +该方法声明于 `XCEngine/Core/IO/ResourceFileSystem.h`,当前页面用于固定 `ResourceFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `directoryPath` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceFileSystem object; + // 根据上下文补齐参数后调用 ResourceFileSystem::AddDirectory(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceFileSystem.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourceFileSystem/Constructor.md b/docs/api/XCEngine/Core/IO/ResourceFileSystem/Constructor.md new file mode 100644 index 00000000..e53005ff --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourceFileSystem/Constructor.md @@ -0,0 +1,28 @@ +# ResourceFileSystem::ResourceFileSystem() + +构造对象。 + +```cpp +ResourceFileSystem(); +``` + +该方法声明于 `XCEngine/Core/IO/ResourceFileSystem.h`,当前页面用于固定 `ResourceFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceFileSystem object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceFileSystem.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourceFileSystem/Destructor.md b/docs/api/XCEngine/Core/IO/ResourceFileSystem/Destructor.md new file mode 100644 index 00000000..a8261d10 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourceFileSystem/Destructor.md @@ -0,0 +1,29 @@ +# ResourceFileSystem::~ResourceFileSystem() + +销毁对象并释放相关资源。 + +```cpp +~ResourceFileSystem(); +``` + +该方法声明于 `XCEngine/Core/IO/ResourceFileSystem.h`,当前页面用于固定 `ResourceFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceFileSystem object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](ResourceFileSystem.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourceFileSystem/EnumerateResources.md b/docs/api/XCEngine/Core/IO/ResourceFileSystem/EnumerateResources.md new file mode 100644 index 00000000..f5c72cc5 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourceFileSystem/EnumerateResources.md @@ -0,0 +1,32 @@ +# ResourceFileSystem::EnumerateResources + +公开方法,详见头文件声明。 + +```cpp +void EnumerateResources(const Containers::String& pattern, Containers::Array& outResources) const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourceFileSystem.h`,当前页面用于固定 `ResourceFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `pattern` - 参数语义详见头文件声明。 +- `outResources` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceFileSystem object; + // 根据上下文补齐参数后调用 ResourceFileSystem::EnumerateResources(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceFileSystem.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourceFileSystem/Exists.md b/docs/api/XCEngine/Core/IO/ResourceFileSystem/Exists.md new file mode 100644 index 00000000..82d741bf --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourceFileSystem/Exists.md @@ -0,0 +1,31 @@ +# ResourceFileSystem::Exists + +公开方法,详见头文件声明。 + +```cpp +bool Exists(const Containers::String& relativePath) const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourceFileSystem.h`,当前页面用于固定 `ResourceFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `relativePath` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceFileSystem object; + // 根据上下文补齐参数后调用 ResourceFileSystem::Exists(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceFileSystem.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourceFileSystem/FindResource.md b/docs/api/XCEngine/Core/IO/ResourceFileSystem/FindResource.md new file mode 100644 index 00000000..797aceb7 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourceFileSystem/FindResource.md @@ -0,0 +1,32 @@ +# ResourceFileSystem::FindResource + +查找并返回匹配对象。 + +```cpp +bool FindResource(const Containers::String& relativePath, Containers::String& outAbsolutePath) const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourceFileSystem.h`,当前页面用于固定 `ResourceFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `relativePath` - 参数语义详见头文件声明。 +- `outAbsolutePath` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceFileSystem object; + // 根据上下文补齐参数后调用 ResourceFileSystem::FindResource(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceFileSystem.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourceFileSystem/Get.md b/docs/api/XCEngine/Core/IO/ResourceFileSystem/Get.md new file mode 100644 index 00000000..68f0b8c6 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourceFileSystem/Get.md @@ -0,0 +1,29 @@ +# ResourceFileSystem::Get + +获取相关状态或对象。 + +```cpp +static ResourceFileSystem& Get(); +``` + +该方法声明于 `XCEngine/Core/IO/ResourceFileSystem.h`,当前页面用于固定 `ResourceFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceFileSystem&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + auto& instance = XCEngine::Resources::ResourceFileSystem::Get(); + (void)instance; +} +``` + +## 相关文档 + +- [返回类总览](ResourceFileSystem.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourceFileSystem/GetResourceInfo.md b/docs/api/XCEngine/Core/IO/ResourceFileSystem/GetResourceInfo.md new file mode 100644 index 00000000..21df6174 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourceFileSystem/GetResourceInfo.md @@ -0,0 +1,32 @@ +# ResourceFileSystem::GetResourceInfo + +获取相关状态或对象。 + +```cpp +bool GetResourceInfo(const Containers::String& relativePath, ResourceInfo& outInfo) const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourceFileSystem.h`,当前页面用于固定 `ResourceFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `relativePath` - 参数语义详见头文件声明。 +- `outInfo` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceFileSystem object; + // 根据上下文补齐参数后调用 ResourceFileSystem::GetResourceInfo(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceFileSystem.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourceFileSystem/Initialize.md b/docs/api/XCEngine/Core/IO/ResourceFileSystem/Initialize.md new file mode 100644 index 00000000..6eedaaab --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourceFileSystem/Initialize.md @@ -0,0 +1,31 @@ +# ResourceFileSystem::Initialize + +初始化内部状态。 + +```cpp +void Initialize(const Containers::String& rootPath); +``` + +该方法声明于 `XCEngine/Core/IO/ResourceFileSystem.h`,当前页面用于固定 `ResourceFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `rootPath` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceFileSystem object; + // 根据上下文补齐参数后调用 ResourceFileSystem::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceFileSystem.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourceFileSystem/ReadResource.md b/docs/api/XCEngine/Core/IO/ResourceFileSystem/ReadResource.md new file mode 100644 index 00000000..48deebfa --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourceFileSystem/ReadResource.md @@ -0,0 +1,31 @@ +# ResourceFileSystem::ReadResource + +公开方法,详见头文件声明。 + +```cpp +Containers::Array ReadResource(const Containers::String& relativePath) const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourceFileSystem.h`,当前页面用于固定 `ResourceFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `relativePath` - 参数语义详见头文件声明。 + +**返回:** `Containers::Array` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceFileSystem object; + // 根据上下文补齐参数后调用 ResourceFileSystem::ReadResource(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceFileSystem.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourceFileSystem/RemoveArchive.md b/docs/api/XCEngine/Core/IO/ResourceFileSystem/RemoveArchive.md new file mode 100644 index 00000000..550b5353 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourceFileSystem/RemoveArchive.md @@ -0,0 +1,31 @@ +# ResourceFileSystem::RemoveArchive + +移除元素或解除关联。 + +```cpp +void RemoveArchive(const Containers::String& archivePath); +``` + +该方法声明于 `XCEngine/Core/IO/ResourceFileSystem.h`,当前页面用于固定 `ResourceFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `archivePath` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceFileSystem object; + // 根据上下文补齐参数后调用 ResourceFileSystem::RemoveArchive(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceFileSystem.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourceFileSystem/ResourceFileSystem.md b/docs/api/XCEngine/Core/IO/ResourceFileSystem/ResourceFileSystem.md new file mode 100644 index 00000000..608d2f25 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourceFileSystem/ResourceFileSystem.md @@ -0,0 +1,44 @@ +# ResourceFileSystem + +**命名空间**: `XCEngine::Resources` + +**类型**: `class (singleton)` + +**头文件**: `XCEngine/Core/IO/ResourceFileSystem.h` + +**描述**: 定义 `XCEngine/Core/IO` 子目录中的 `ResourceFileSystem` public API。 + +## 概述 + +`ResourceFileSystem.h` 是 `XCEngine/Core/IO` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `IArchive` | `class` | 头文件中的公开声明。 | +| `ResourceInfo` | `struct` | 头文件中的公开声明。 | +| `ResourceFileSystem` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [ResourceFileSystem()](Constructor.md) | 构造对象。 | +| [~ResourceFileSystem()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [AddArchive](AddArchive.md) | 添加元素或建立关联。 | +| [AddDirectory](AddDirectory.md) | 添加元素或建立关联。 | +| [RemoveArchive](RemoveArchive.md) | 移除元素或解除关联。 | +| [FindResource](FindResource.md) | 查找并返回匹配对象。 | +| [ReadResource](ReadResource.md) | 公开方法,详见头文件声明。 | +| [Exists](Exists.md) | 公开方法,详见头文件声明。 | +| [GetResourceInfo](GetResourceInfo.md) | 获取相关状态或对象。 | +| [EnumerateResources](EnumerateResources.md) | 公开方法,详见头文件声明。 | +| [Get](Get.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../IO.md) - 返回 `IO` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/IO/ResourceFileSystem/Shutdown.md b/docs/api/XCEngine/Core/IO/ResourceFileSystem/Shutdown.md new file mode 100644 index 00000000..27e315ba --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourceFileSystem/Shutdown.md @@ -0,0 +1,30 @@ +# ResourceFileSystem::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown(); +``` + +该方法声明于 `XCEngine/Core/IO/ResourceFileSystem.h`,当前页面用于固定 `ResourceFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourceFileSystem object; + // 根据上下文补齐参数后调用 ResourceFileSystem::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourceFileSystem.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePackage/Close.md b/docs/api/XCEngine/Core/IO/ResourcePackage/Close.md new file mode 100644 index 00000000..87bb4535 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePackage/Close.md @@ -0,0 +1,30 @@ +# ResourcePackage::Close + +公开方法,详见头文件声明。 + +```cpp +void Close(); +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePackage.h`,当前页面用于固定 `ResourcePackage` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePackage object; + // 根据上下文补齐参数后调用 ResourcePackage::Close(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePackage.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePackage/Constructor.md b/docs/api/XCEngine/Core/IO/ResourcePackage/Constructor.md new file mode 100644 index 00000000..9daa21f7 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePackage/Constructor.md @@ -0,0 +1,28 @@ +# ResourcePackage::ResourcePackage() + +构造对象。 + +```cpp +ResourcePackage(); +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePackage.h`,当前页面用于固定 `ResourcePackage` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePackage object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePackage.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePackage/Destructor.md b/docs/api/XCEngine/Core/IO/ResourcePackage/Destructor.md new file mode 100644 index 00000000..1552bdc9 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePackage/Destructor.md @@ -0,0 +1,29 @@ +# ResourcePackage::~ResourcePackage() + +销毁对象并释放相关资源。 + +```cpp +~ResourcePackage(); +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePackage.h`,当前页面用于固定 `ResourcePackage` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePackage object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](ResourcePackage.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePackage/Enumerate.md b/docs/api/XCEngine/Core/IO/ResourcePackage/Enumerate.md new file mode 100644 index 00000000..08d6a707 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePackage/Enumerate.md @@ -0,0 +1,32 @@ +# ResourcePackage::Enumerate + +公开方法,详见头文件声明。 + +```cpp +void Enumerate(const Containers::String& pattern, Containers::Array& outFiles) const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePackage.h`,当前页面用于固定 `ResourcePackage` 类目录下的方法级 canonical 路径。 + +**参数:** +- `pattern` - 参数语义详见头文件声明。 +- `outFiles` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePackage object; + // 根据上下文补齐参数后调用 ResourcePackage::Enumerate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePackage.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePackage/Exists.md b/docs/api/XCEngine/Core/IO/ResourcePackage/Exists.md new file mode 100644 index 00000000..732277e4 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePackage/Exists.md @@ -0,0 +1,31 @@ +# ResourcePackage::Exists + +公开方法,详见头文件声明。 + +```cpp +bool Exists(const Containers::String& relativePath) const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePackage.h`,当前页面用于固定 `ResourcePackage` 类目录下的方法级 canonical 路径。 + +**参数:** +- `relativePath` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePackage object; + // 根据上下文补齐参数后调用 ResourcePackage::Exists(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePackage.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePackage/GetInfo.md b/docs/api/XCEngine/Core/IO/ResourcePackage/GetInfo.md new file mode 100644 index 00000000..f8e1cc67 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePackage/GetInfo.md @@ -0,0 +1,30 @@ +# ResourcePackage::GetInfo + +获取相关状态或对象。 + +```cpp +const PackageInfo& GetInfo() const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePackage.h`,当前页面用于固定 `ResourcePackage` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const PackageInfo&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePackage object; + // 根据上下文补齐参数后调用 ResourcePackage::GetInfo(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePackage.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePackage/GetSize.md b/docs/api/XCEngine/Core/IO/ResourcePackage/GetSize.md new file mode 100644 index 00000000..039af192 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePackage/GetSize.md @@ -0,0 +1,31 @@ +# ResourcePackage::GetSize + +获取相关状态或对象。 + +```cpp +size_t GetSize(const Containers::String& relativePath) const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePackage.h`,当前页面用于固定 `ResourcePackage` 类目录下的方法级 canonical 路径。 + +**参数:** +- `relativePath` - 参数语义详见头文件声明。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePackage object; + // 根据上下文补齐参数后调用 ResourcePackage::GetSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePackage.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePackage/IsValid.md b/docs/api/XCEngine/Core/IO/ResourcePackage/IsValid.md new file mode 100644 index 00000000..355d09d5 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePackage/IsValid.md @@ -0,0 +1,30 @@ +# ResourcePackage::IsValid + +查询当前状态。 + +```cpp +bool IsValid() const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePackage.h`,当前页面用于固定 `ResourcePackage` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePackage object; + // 根据上下文补齐参数后调用 ResourcePackage::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePackage.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePackage/Open.md b/docs/api/XCEngine/Core/IO/ResourcePackage/Open.md new file mode 100644 index 00000000..7193d9ed --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePackage/Open.md @@ -0,0 +1,31 @@ +# ResourcePackage::Open + +公开方法,详见头文件声明。 + +```cpp +bool Open(const Containers::String& packagePath); +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePackage.h`,当前页面用于固定 `ResourcePackage` 类目录下的方法级 canonical 路径。 + +**参数:** +- `packagePath` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePackage object; + // 根据上下文补齐参数后调用 ResourcePackage::Open(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePackage.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePackage/Read.md b/docs/api/XCEngine/Core/IO/ResourcePackage/Read.md new file mode 100644 index 00000000..aec79315 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePackage/Read.md @@ -0,0 +1,31 @@ +# ResourcePackage::Read + +公开方法,详见头文件声明。 + +```cpp +Containers::Array Read(const Containers::String& relativePath) const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePackage.h`,当前页面用于固定 `ResourcePackage` 类目录下的方法级 canonical 路径。 + +**参数:** +- `relativePath` - 参数语义详见头文件声明。 + +**返回:** `Containers::Array` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePackage object; + // 根据上下文补齐参数后调用 ResourcePackage::Read(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePackage.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePackage/ResourcePackage.md b/docs/api/XCEngine/Core/IO/ResourcePackage/ResourcePackage.md new file mode 100644 index 00000000..9aaf8d7b --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePackage/ResourcePackage.md @@ -0,0 +1,41 @@ +# ResourcePackage + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Core/IO/ResourcePackage.h` + +**描述**: 定义 `XCEngine/Core/IO` 子目录中的 `ResourcePackage` public API。 + +## 概述 + +`ResourcePackage.h` 是 `XCEngine/Core/IO` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `PackageFileEntry` | `struct` | 头文件中的公开声明。 | +| `ResourcePackageBuilder` | `class` | 头文件中的公开声明。 | +| `ResourcePackage` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [ResourcePackage()](Constructor.md) | 构造对象。 | +| [~ResourcePackage()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Open](Open.md) | 公开方法,详见头文件声明。 | +| [Close](Close.md) | 公开方法,详见头文件声明。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [Exists](Exists.md) | 公开方法,详见头文件声明。 | +| [Read](Read.md) | 公开方法,详见头文件声明。 | +| [GetSize](GetSize.md) | 获取相关状态或对象。 | +| [Enumerate](Enumerate.md) | 公开方法,详见头文件声明。 | +| [GetInfo](GetInfo.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../IO.md) - 返回 `IO` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/IO/ResourcePath/Constructor.md b/docs/api/XCEngine/Core/IO/ResourcePath/Constructor.md new file mode 100644 index 00000000..7a7260f9 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePath/Constructor.md @@ -0,0 +1,52 @@ +# ResourcePath::ResourcePath() + +构造对象。 + +该方法在 `XCEngine/Core/IO/ResourcePath.h` 中提供了 3 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +ResourcePath() = default; +``` + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +ResourcePath(const char* path); +``` + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 3: 声明 + +```cpp +ResourcePath(const Containers::String& path); +``` + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePath object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePath.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePath/GetDirectory.md b/docs/api/XCEngine/Core/IO/ResourcePath/GetDirectory.md new file mode 100644 index 00000000..fabef6b7 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePath/GetDirectory.md @@ -0,0 +1,30 @@ +# ResourcePath::GetDirectory + +获取相关状态或对象。 + +```cpp +Containers::String GetDirectory() const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePath.h`,当前页面用于固定 `ResourcePath` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePath object; + // 根据上下文补齐参数后调用 ResourcePath::GetDirectory(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePath.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePath/GetExtension.md b/docs/api/XCEngine/Core/IO/ResourcePath/GetExtension.md new file mode 100644 index 00000000..380d49f6 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePath/GetExtension.md @@ -0,0 +1,30 @@ +# ResourcePath::GetExtension + +获取相关状态或对象。 + +```cpp +Containers::String GetExtension() const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePath.h`,当前页面用于固定 `ResourcePath` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePath object; + // 根据上下文补齐参数后调用 ResourcePath::GetExtension(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePath.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePath/GetFileName.md b/docs/api/XCEngine/Core/IO/ResourcePath/GetFileName.md new file mode 100644 index 00000000..213d32aa --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePath/GetFileName.md @@ -0,0 +1,30 @@ +# ResourcePath::GetFileName + +获取相关状态或对象。 + +```cpp +Containers::String GetFileName() const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePath.h`,当前页面用于固定 `ResourcePath` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePath object; + // 根据上下文补齐参数后调用 ResourcePath::GetFileName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePath.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePath/GetFullPath.md b/docs/api/XCEngine/Core/IO/ResourcePath/GetFullPath.md new file mode 100644 index 00000000..7424cc1c --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePath/GetFullPath.md @@ -0,0 +1,30 @@ +# ResourcePath::GetFullPath + +获取相关状态或对象。 + +```cpp +Containers::String GetFullPath() const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePath.h`,当前页面用于固定 `ResourcePath` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePath object; + // 根据上下文补齐参数后调用 ResourcePath::GetFullPath(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePath.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePath/GetPath.md b/docs/api/XCEngine/Core/IO/ResourcePath/GetPath.md new file mode 100644 index 00000000..c3478b60 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePath/GetPath.md @@ -0,0 +1,30 @@ +# ResourcePath::GetPath + +获取相关状态或对象。 + +```cpp +const Containers::String& GetPath() const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePath.h`,当前页面用于固定 `ResourcePath` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePath object; + // 根据上下文补齐参数后调用 ResourcePath::GetPath(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePath.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePath/GetRelativePath.md b/docs/api/XCEngine/Core/IO/ResourcePath/GetRelativePath.md new file mode 100644 index 00000000..8ed94faf --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePath/GetRelativePath.md @@ -0,0 +1,30 @@ +# ResourcePath::GetRelativePath + +获取相关状态或对象。 + +```cpp +Containers::String GetRelativePath() const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePath.h`,当前页面用于固定 `ResourcePath` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePath object; + // 根据上下文补齐参数后调用 ResourcePath::GetRelativePath(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePath.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePath/GetStem.md b/docs/api/XCEngine/Core/IO/ResourcePath/GetStem.md new file mode 100644 index 00000000..f02422be --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePath/GetStem.md @@ -0,0 +1,30 @@ +# ResourcePath::GetStem + +获取相关状态或对象。 + +```cpp +Containers::String GetStem() const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePath.h`,当前页面用于固定 `ResourcePath` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePath object; + // 根据上下文补齐参数后调用 ResourcePath::GetStem(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePath.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePath/HasAnyExtension.md b/docs/api/XCEngine/Core/IO/ResourcePath/HasAnyExtension.md new file mode 100644 index 00000000..cf4cc647 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePath/HasAnyExtension.md @@ -0,0 +1,32 @@ +# ResourcePath::HasAnyExtension + +判断是否具备指定状态或能力。 + +```cpp +bool HasAnyExtension(const char* const* extensions, Core::uint32 count) const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePath.h`,当前页面用于固定 `ResourcePath` 类目录下的方法级 canonical 路径。 + +**参数:** +- `extensions` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePath object; + // 根据上下文补齐参数后调用 ResourcePath::HasAnyExtension(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePath.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePath/HasExtension.md b/docs/api/XCEngine/Core/IO/ResourcePath/HasExtension.md new file mode 100644 index 00000000..58ad5990 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePath/HasExtension.md @@ -0,0 +1,31 @@ +# ResourcePath::HasExtension + +判断是否具备指定状态或能力。 + +```cpp +bool HasExtension(const char* ext) const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePath.h`,当前页面用于固定 `ResourcePath` 类目录下的方法级 canonical 路径。 + +**参数:** +- `ext` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePath object; + // 根据上下文补齐参数后调用 ResourcePath::HasExtension(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePath.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePath/IsValid.md b/docs/api/XCEngine/Core/IO/ResourcePath/IsValid.md new file mode 100644 index 00000000..af980b33 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePath/IsValid.md @@ -0,0 +1,30 @@ +# ResourcePath::IsValid + +查询当前状态。 + +```cpp +bool IsValid() const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePath.h`,当前页面用于固定 `ResourcePath` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePath object; + // 根据上下文补齐参数后调用 ResourcePath::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePath.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePath/ResourcePath.md b/docs/api/XCEngine/Core/IO/ResourcePath/ResourcePath.md new file mode 100644 index 00000000..afcb68a0 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePath/ResourcePath.md @@ -0,0 +1,42 @@ +# ResourcePath + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Core/IO/ResourcePath.h` + +**描述**: 定义 `XCEngine/Core/IO` 子目录中的 `ResourcePath` public API。 + +## 概述 + +`ResourcePath.h` 是 `XCEngine/Core/IO` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `ResourcePath` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [ResourcePath()](Constructor.md) | 构造对象。 | +| [GetExtension](GetExtension.md) | 获取相关状态或对象。 | +| [GetStem](GetStem.md) | 获取相关状态或对象。 | +| [GetFullPath](GetFullPath.md) | 获取相关状态或对象。 | +| [GetFileName](GetFileName.md) | 获取相关状态或对象。 | +| [GetDirectory](GetDirectory.md) | 获取相关状态或对象。 | +| [GetRelativePath](GetRelativePath.md) | 获取相关状态或对象。 | +| [ToGUID](ToGUID.md) | 公开方法,详见头文件声明。 | +| [HasExtension](HasExtension.md) | 判断是否具备指定状态或能力。 | +| [HasAnyExtension](HasAnyExtension.md) | 判断是否具备指定状态或能力。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [GetPath](GetPath.md) | 获取相关状态或对象。 | +| [SetPath](SetPath.md) | 设置相关状态或配置。 | + +## 相关文档 + +- [当前目录](../IO.md) - 返回 `IO` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/IO/ResourcePath/SetPath.md b/docs/api/XCEngine/Core/IO/ResourcePath/SetPath.md new file mode 100644 index 00000000..cdb02b15 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePath/SetPath.md @@ -0,0 +1,31 @@ +# ResourcePath::SetPath + +设置相关状态或配置。 + +```cpp +void SetPath(const Containers::String& path); +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePath.h`,当前页面用于固定 `ResourcePath` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePath object; + // 根据上下文补齐参数后调用 ResourcePath::SetPath(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePath.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/IO/ResourcePath/ToGUID.md b/docs/api/XCEngine/Core/IO/ResourcePath/ToGUID.md new file mode 100644 index 00000000..87270ba3 --- /dev/null +++ b/docs/api/XCEngine/Core/IO/ResourcePath/ToGUID.md @@ -0,0 +1,30 @@ +# ResourcePath::ToGUID + +公开方法,详见头文件声明。 + +```cpp +ResourceGUID ToGUID() const; +``` + +该方法声明于 `XCEngine/Core/IO/ResourcePath.h`,当前页面用于固定 `ResourcePath` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceGUID` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ResourcePath object; + // 根据上下文补齐参数后调用 ResourcePath::ToGUID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ResourcePath.md) +- [返回模块目录](../IO.md) diff --git a/docs/api/XCEngine/Core/Layer/Constructor.md b/docs/api/XCEngine/Core/Layer/Constructor.md new file mode 100644 index 00000000..7a1d300d --- /dev/null +++ b/docs/api/XCEngine/Core/Layer/Constructor.md @@ -0,0 +1,29 @@ +# Layer::Layer() + +构造对象。 + +```cpp +Layer(const std::string& name = "Layer") : m_name(name); +``` + +该方法声明于 `XCEngine/Core/Layer.h`,当前页面用于固定 `Layer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::Layer object; +} +``` + +## 相关文档 + +- [返回类总览](Layer.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/Layer/Destructor.md b/docs/api/XCEngine/Core/Layer/Destructor.md new file mode 100644 index 00000000..0e3a75e7 --- /dev/null +++ b/docs/api/XCEngine/Core/Layer/Destructor.md @@ -0,0 +1,29 @@ +# Layer::~Layer() + +销毁对象并释放相关资源。 + +```cpp +virtual ~Layer() = default; +``` + +该方法声明于 `XCEngine/Core/Layer.h`,当前页面用于固定 `Layer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::Layer object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](Layer.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/Layer/Layer.md b/docs/api/XCEngine/Core/Layer/Layer.md new file mode 100644 index 00000000..1349793c --- /dev/null +++ b/docs/api/XCEngine/Core/Layer/Layer.md @@ -0,0 +1,37 @@ +# Layer + +**命名空间**: `XCEngine::Core` + +**类型**: `class` + +**头文件**: `XCEngine/Core/Layer.h` + +**描述**: 定义 `XCEngine/Core` 子目录中的 `Layer` public API。 + +## 概述 + +`Layer.h` 是 `XCEngine/Core` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Layer` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Layer()](Constructor.md) | 构造对象。 | +| [~Layer()](Destructor.md) | 销毁对象并释放相关资源。 | +| [onAttach](onAttach.md) | 公开方法,详见头文件声明。 | +| [onDetach](onDetach.md) | 公开方法,详见头文件声明。 | +| [onUpdate](onUpdate.md) | 公开方法,详见头文件声明。 | +| [onEvent](onEvent.md) | 公开方法,详见头文件声明。 | +| [onImGuiRender](onImGuiRender.md) | 公开方法,详见头文件声明。 | +| [getName](getName.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Core.md) - 返回 `Core` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Layer/getName.md b/docs/api/XCEngine/Core/Layer/getName.md new file mode 100644 index 00000000..ef40e040 --- /dev/null +++ b/docs/api/XCEngine/Core/Layer/getName.md @@ -0,0 +1,30 @@ +# Layer::getName + +公开方法,详见头文件声明。 + +```cpp +const std::string& getName() const; +``` + +该方法声明于 `XCEngine/Core/Layer.h`,当前页面用于固定 `Layer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const std::string&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::Layer object; + // 根据上下文补齐参数后调用 Layer::getName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Layer.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/Layer/onAttach.md b/docs/api/XCEngine/Core/Layer/onAttach.md new file mode 100644 index 00000000..28f30cce --- /dev/null +++ b/docs/api/XCEngine/Core/Layer/onAttach.md @@ -0,0 +1,30 @@ +# Layer::onAttach + +公开方法,详见头文件声明。 + +```cpp +virtual void onAttach(); +``` + +该方法声明于 `XCEngine/Core/Layer.h`,当前页面用于固定 `Layer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::Layer object; + // 根据上下文补齐参数后调用 Layer::onAttach(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Layer.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/Layer/onDetach.md b/docs/api/XCEngine/Core/Layer/onDetach.md new file mode 100644 index 00000000..93dfb6f8 --- /dev/null +++ b/docs/api/XCEngine/Core/Layer/onDetach.md @@ -0,0 +1,30 @@ +# Layer::onDetach + +公开方法,详见头文件声明。 + +```cpp +virtual void onDetach(); +``` + +该方法声明于 `XCEngine/Core/Layer.h`,当前页面用于固定 `Layer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::Layer object; + // 根据上下文补齐参数后调用 Layer::onDetach(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Layer.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/Layer/onEvent.md b/docs/api/XCEngine/Core/Layer/onEvent.md new file mode 100644 index 00000000..f8d74d60 --- /dev/null +++ b/docs/api/XCEngine/Core/Layer/onEvent.md @@ -0,0 +1,31 @@ +# Layer::onEvent + +公开方法,详见头文件声明。 + +```cpp +virtual void onEvent(void* event); +``` + +该方法声明于 `XCEngine/Core/Layer.h`,当前页面用于固定 `Layer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `event` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::Layer object; + // 根据上下文补齐参数后调用 Layer::onEvent(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Layer.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/Layer/onImGuiRender.md b/docs/api/XCEngine/Core/Layer/onImGuiRender.md new file mode 100644 index 00000000..15f80880 --- /dev/null +++ b/docs/api/XCEngine/Core/Layer/onImGuiRender.md @@ -0,0 +1,30 @@ +# Layer::onImGuiRender + +公开方法,详见头文件声明。 + +```cpp +virtual void onImGuiRender(); +``` + +该方法声明于 `XCEngine/Core/Layer.h`,当前页面用于固定 `Layer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::Layer object; + // 根据上下文补齐参数后调用 Layer::onImGuiRender(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Layer.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/Layer/onUpdate.md b/docs/api/XCEngine/Core/Layer/onUpdate.md new file mode 100644 index 00000000..5a701dde --- /dev/null +++ b/docs/api/XCEngine/Core/Layer/onUpdate.md @@ -0,0 +1,31 @@ +# Layer::onUpdate + +公开方法,详见头文件声明。 + +```cpp +virtual void onUpdate(float dt); +``` + +该方法声明于 `XCEngine/Core/Layer.h`,当前页面用于固定 `Layer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `dt` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::Layer object; + // 根据上下文补齐参数后调用 Layer::onUpdate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Layer.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/LayerStack/Constructor.md b/docs/api/XCEngine/Core/LayerStack/Constructor.md new file mode 100644 index 00000000..85912a8e --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/Constructor.md @@ -0,0 +1,28 @@ +# LayerStack::LayerStack() + +构造对象。 + +```cpp +LayerStack() = default; +``` + +该方法声明于 `XCEngine/Core/LayerStack.h`,当前页面用于固定 `LayerStack` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::LayerStack object; +} +``` + +## 相关文档 + +- [返回类总览](LayerStack.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/LayerStack/Destructor.md b/docs/api/XCEngine/Core/LayerStack/Destructor.md new file mode 100644 index 00000000..d76268d3 --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/Destructor.md @@ -0,0 +1,29 @@ +# LayerStack::~LayerStack() + +销毁对象并释放相关资源。 + +```cpp +~LayerStack() = default; +``` + +该方法声明于 `XCEngine/Core/LayerStack.h`,当前页面用于固定 `LayerStack` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::LayerStack object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](LayerStack.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/LayerStack/LayerStack.md b/docs/api/XCEngine/Core/LayerStack/LayerStack.md new file mode 100644 index 00000000..2d7e3ece --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/LayerStack.md @@ -0,0 +1,48 @@ +# LayerStack + +**命名空间**: `XCEngine::Core` + +**类型**: `class` + +**头文件**: `XCEngine/Core/LayerStack.h` + +**描述**: 定义 `XCEngine/Core` 子目录中的 `LayerStack` public API。 + +## 概述 + +`LayerStack.h` 是 `XCEngine/Core` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `LayerStack` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [LayerStack()](Constructor.md) | 构造对象。 | +| [~LayerStack()](Destructor.md) | 销毁对象并释放相关资源。 | +| [pushLayer](pushLayer.md) | 公开方法,详见头文件声明。 | +| [pushOverlay](pushOverlay.md) | 公开方法,详见头文件声明。 | +| [popLayer](popLayer.md) | 公开方法,详见头文件声明。 | +| [popOverlay](popOverlay.md) | 公开方法,详见头文件声明。 | +| [onUpdate](onUpdate.md) | 公开方法,详见头文件声明。 | +| [onEvent](onEvent.md) | 公开方法,详见头文件声明。 | +| [onImGuiRender](onImGuiRender.md) | 公开方法,详见头文件声明。 | +| [onAttach](onAttach.md) | 公开方法,详见头文件声明。 | +| [onDetach](onDetach.md) | 公开方法,详见头文件声明。 | +| [begin](begin.md) | 公开方法,详见头文件声明。 | +| [end](end.md) | 公开方法,详见头文件声明。 | +| [rbegin](rbegin.md) | 公开方法,详见头文件声明。 | +| [rend](rend.md) | 公开方法,详见头文件声明。 | +| [cbegin](cbegin.md) | 公开方法,详见头文件声明。 | +| [cend](cend.md) | 公开方法,详见头文件声明。 | +| [crbegin](crbegin.md) | 公开方法,详见头文件声明。 | +| [crend](crend.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Core.md) - 返回 `Core` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/LayerStack/begin.md b/docs/api/XCEngine/Core/LayerStack/begin.md new file mode 100644 index 00000000..51c4ef98 --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/begin.md @@ -0,0 +1,30 @@ +# LayerStack::begin + +公开方法,详见头文件声明。 + +```cpp +std::vector>::iterator begin(); +``` + +该方法声明于 `XCEngine/Core/LayerStack.h`,当前页面用于固定 `LayerStack` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::vector>::iterator` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::LayerStack object; + // 根据上下文补齐参数后调用 LayerStack::begin(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LayerStack.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/LayerStack/cbegin.md b/docs/api/XCEngine/Core/LayerStack/cbegin.md new file mode 100644 index 00000000..3e3556f5 --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/cbegin.md @@ -0,0 +1,30 @@ +# LayerStack::cbegin + +公开方法,详见头文件声明。 + +```cpp +std::vector>::const_iterator cbegin() const; +``` + +该方法声明于 `XCEngine/Core/LayerStack.h`,当前页面用于固定 `LayerStack` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::vector>::const_iterator` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::LayerStack object; + // 根据上下文补齐参数后调用 LayerStack::cbegin(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LayerStack.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/LayerStack/cend.md b/docs/api/XCEngine/Core/LayerStack/cend.md new file mode 100644 index 00000000..38a26187 --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/cend.md @@ -0,0 +1,30 @@ +# LayerStack::cend + +公开方法,详见头文件声明。 + +```cpp +std::vector>::const_iterator cend() const; +``` + +该方法声明于 `XCEngine/Core/LayerStack.h`,当前页面用于固定 `LayerStack` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::vector>::const_iterator` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::LayerStack object; + // 根据上下文补齐参数后调用 LayerStack::cend(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LayerStack.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/LayerStack/crbegin.md b/docs/api/XCEngine/Core/LayerStack/crbegin.md new file mode 100644 index 00000000..6abfb5e9 --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/crbegin.md @@ -0,0 +1,30 @@ +# LayerStack::crbegin + +公开方法,详见头文件声明。 + +```cpp +std::vector>::const_reverse_iterator crbegin() const; +``` + +该方法声明于 `XCEngine/Core/LayerStack.h`,当前页面用于固定 `LayerStack` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::vector>::const_reverse_iterator` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::LayerStack object; + // 根据上下文补齐参数后调用 LayerStack::crbegin(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LayerStack.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/LayerStack/crend.md b/docs/api/XCEngine/Core/LayerStack/crend.md new file mode 100644 index 00000000..461dca7b --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/crend.md @@ -0,0 +1,30 @@ +# LayerStack::crend + +公开方法,详见头文件声明。 + +```cpp +std::vector>::const_reverse_iterator crend() const; +``` + +该方法声明于 `XCEngine/Core/LayerStack.h`,当前页面用于固定 `LayerStack` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::vector>::const_reverse_iterator` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::LayerStack object; + // 根据上下文补齐参数后调用 LayerStack::crend(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LayerStack.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/LayerStack/end.md b/docs/api/XCEngine/Core/LayerStack/end.md new file mode 100644 index 00000000..97facc8a --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/end.md @@ -0,0 +1,30 @@ +# LayerStack::end + +公开方法,详见头文件声明。 + +```cpp +std::vector>::iterator end(); +``` + +该方法声明于 `XCEngine/Core/LayerStack.h`,当前页面用于固定 `LayerStack` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::vector>::iterator` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::LayerStack object; + // 根据上下文补齐参数后调用 LayerStack::end(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LayerStack.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/LayerStack/onAttach.md b/docs/api/XCEngine/Core/LayerStack/onAttach.md new file mode 100644 index 00000000..7c6c0df3 --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/onAttach.md @@ -0,0 +1,30 @@ +# LayerStack::onAttach + +公开方法,详见头文件声明。 + +```cpp +void onAttach(); +``` + +该方法声明于 `XCEngine/Core/LayerStack.h`,当前页面用于固定 `LayerStack` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::LayerStack object; + // 根据上下文补齐参数后调用 LayerStack::onAttach(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LayerStack.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/LayerStack/onDetach.md b/docs/api/XCEngine/Core/LayerStack/onDetach.md new file mode 100644 index 00000000..af59412e --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/onDetach.md @@ -0,0 +1,30 @@ +# LayerStack::onDetach + +公开方法,详见头文件声明。 + +```cpp +void onDetach(); +``` + +该方法声明于 `XCEngine/Core/LayerStack.h`,当前页面用于固定 `LayerStack` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::LayerStack object; + // 根据上下文补齐参数后调用 LayerStack::onDetach(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LayerStack.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/LayerStack/onEvent.md b/docs/api/XCEngine/Core/LayerStack/onEvent.md new file mode 100644 index 00000000..4b9ae257 --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/onEvent.md @@ -0,0 +1,31 @@ +# LayerStack::onEvent + +公开方法,详见头文件声明。 + +```cpp +void onEvent(void* event); +``` + +该方法声明于 `XCEngine/Core/LayerStack.h`,当前页面用于固定 `LayerStack` 类目录下的方法级 canonical 路径。 + +**参数:** +- `event` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::LayerStack object; + // 根据上下文补齐参数后调用 LayerStack::onEvent(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LayerStack.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/LayerStack/onImGuiRender.md b/docs/api/XCEngine/Core/LayerStack/onImGuiRender.md new file mode 100644 index 00000000..da8d0721 --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/onImGuiRender.md @@ -0,0 +1,30 @@ +# LayerStack::onImGuiRender + +公开方法,详见头文件声明。 + +```cpp +void onImGuiRender(); +``` + +该方法声明于 `XCEngine/Core/LayerStack.h`,当前页面用于固定 `LayerStack` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::LayerStack object; + // 根据上下文补齐参数后调用 LayerStack::onImGuiRender(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LayerStack.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/LayerStack/onUpdate.md b/docs/api/XCEngine/Core/LayerStack/onUpdate.md new file mode 100644 index 00000000..4fc54364 --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/onUpdate.md @@ -0,0 +1,31 @@ +# LayerStack::onUpdate + +公开方法,详见头文件声明。 + +```cpp +void onUpdate(float dt); +``` + +该方法声明于 `XCEngine/Core/LayerStack.h`,当前页面用于固定 `LayerStack` 类目录下的方法级 canonical 路径。 + +**参数:** +- `dt` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::LayerStack object; + // 根据上下文补齐参数后调用 LayerStack::onUpdate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LayerStack.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/LayerStack/popLayer.md b/docs/api/XCEngine/Core/LayerStack/popLayer.md new file mode 100644 index 00000000..7878c1a1 --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/popLayer.md @@ -0,0 +1,31 @@ +# LayerStack::popLayer + +公开方法,详见头文件声明。 + +```cpp +void popLayer(Layer* layer); +``` + +该方法声明于 `XCEngine/Core/LayerStack.h`,当前页面用于固定 `LayerStack` 类目录下的方法级 canonical 路径。 + +**参数:** +- `layer` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::LayerStack object; + // 根据上下文补齐参数后调用 LayerStack::popLayer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LayerStack.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/LayerStack/popOverlay.md b/docs/api/XCEngine/Core/LayerStack/popOverlay.md new file mode 100644 index 00000000..3250faef --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/popOverlay.md @@ -0,0 +1,31 @@ +# LayerStack::popOverlay + +公开方法,详见头文件声明。 + +```cpp +void popOverlay(Layer* overlay); +``` + +该方法声明于 `XCEngine/Core/LayerStack.h`,当前页面用于固定 `LayerStack` 类目录下的方法级 canonical 路径。 + +**参数:** +- `overlay` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::LayerStack object; + // 根据上下文补齐参数后调用 LayerStack::popOverlay(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LayerStack.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/LayerStack/pushLayer.md b/docs/api/XCEngine/Core/LayerStack/pushLayer.md new file mode 100644 index 00000000..388af659 --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/pushLayer.md @@ -0,0 +1,31 @@ +# LayerStack::pushLayer + +公开方法,详见头文件声明。 + +```cpp +void pushLayer(std::unique_ptr layer); +``` + +该方法声明于 `XCEngine/Core/LayerStack.h`,当前页面用于固定 `LayerStack` 类目录下的方法级 canonical 路径。 + +**参数:** +- `layer` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::LayerStack object; + // 根据上下文补齐参数后调用 LayerStack::pushLayer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LayerStack.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/LayerStack/pushOverlay.md b/docs/api/XCEngine/Core/LayerStack/pushOverlay.md new file mode 100644 index 00000000..8d0b8bc8 --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/pushOverlay.md @@ -0,0 +1,31 @@ +# LayerStack::pushOverlay + +公开方法,详见头文件声明。 + +```cpp +void pushOverlay(std::unique_ptr overlay); +``` + +该方法声明于 `XCEngine/Core/LayerStack.h`,当前页面用于固定 `LayerStack` 类目录下的方法级 canonical 路径。 + +**参数:** +- `overlay` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::LayerStack object; + // 根据上下文补齐参数后调用 LayerStack::pushOverlay(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LayerStack.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/LayerStack/rbegin.md b/docs/api/XCEngine/Core/LayerStack/rbegin.md new file mode 100644 index 00000000..4922d73e --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/rbegin.md @@ -0,0 +1,30 @@ +# LayerStack::rbegin + +公开方法,详见头文件声明。 + +```cpp +std::vector>::reverse_iterator rbegin(); +``` + +该方法声明于 `XCEngine/Core/LayerStack.h`,当前页面用于固定 `LayerStack` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::vector>::reverse_iterator` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::LayerStack object; + // 根据上下文补齐参数后调用 LayerStack::rbegin(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LayerStack.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/LayerStack/rend.md b/docs/api/XCEngine/Core/LayerStack/rend.md new file mode 100644 index 00000000..b3e53616 --- /dev/null +++ b/docs/api/XCEngine/Core/LayerStack/rend.md @@ -0,0 +1,30 @@ +# LayerStack::rend + +公开方法,详见头文件声明。 + +```cpp +std::vector>::reverse_iterator rend(); +``` + +该方法声明于 `XCEngine/Core/LayerStack.h`,当前页面用于固定 `LayerStack` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::vector>::reverse_iterator` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::LayerStack object; + // 根据上下文补齐参数后调用 LayerStack::rend(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LayerStack.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/Math/AABB/AABB.md b/docs/api/XCEngine/Core/Math/AABB/AABB.md new file mode 100644 index 00000000..5d18fc73 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/AABB/AABB.md @@ -0,0 +1,32 @@ +# AABB + +**命名空间**: `XCEngine::Math` + +**类型**: `struct` + +**头文件**: `XCEngine/Core/Math/AABB.h` + +**描述**: 定义 `XCEngine/Core/Math` 子目录中的 `AABB` public API。 + +## 概述 + +`AABB.h` 是 `XCEngine/Core/Math` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `OBB` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `center` | `Vector3` | 结构体公开字段。 | - | +| `extents` | `Vector3` | 结构体公开字段。 | - | +| `transform` | `Matrix4` | 结构体公开字段。 | - | + +## 相关文档 + +- [当前目录](../Math.md) - 返回 `Math` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Math/Bounds/Bounds.md b/docs/api/XCEngine/Core/Math/Bounds/Bounds.md new file mode 100644 index 00000000..fa1bc72f --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Bounds/Bounds.md @@ -0,0 +1,31 @@ +# Bounds + +**命名空间**: `XCEngine::Math` + +**类型**: `struct` + +**头文件**: `XCEngine/Core/Math/Bounds.h` + +**描述**: 定义 `XCEngine/Core/Math` 子目录中的 `Bounds` public API。 + +## 概述 + +`Bounds.h` 是 `XCEngine/Core/Math` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Bounds` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `center` | `Vector3` | 结构体公开字段。 | `Vector3::Zero()` | +| `extents` | `Vector3` | 结构体公开字段。 | `Vector3::Zero()` | + +## 相关文档 + +- [当前目录](../Math.md) - 返回 `Math` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Math/Box/Box.md b/docs/api/XCEngine/Core/Math/Box/Box.md new file mode 100644 index 00000000..8f3d327d --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Box/Box.md @@ -0,0 +1,32 @@ +# Box + +**命名空间**: `XCEngine::Math` + +**类型**: `struct` + +**头文件**: `XCEngine/Core/Math/Box.h` + +**描述**: 定义 `XCEngine/Core/Math` 子目录中的 `Box` public API。 + +## 概述 + +`Box.h` 是 `XCEngine/Core/Math` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Box` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `center` | `Vector3` | 结构体公开字段。 | `Vector3::Zero()` | +| `extents` | `Vector3` | 结构体公开字段。 | `Vector3::Zero()` | +| `transform` | `Matrix4x4` | 结构体公开字段。 | `Matrix4x4::Identity()` | + +## 相关文档 + +- [当前目录](../Math.md) - 返回 `Math` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Math/Color/Color.md b/docs/api/XCEngine/Core/Math/Color/Color.md new file mode 100644 index 00000000..a9886ef5 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Color/Color.md @@ -0,0 +1,33 @@ +# Color + +**命名空间**: `XCEngine::Math` + +**类型**: `struct` + +**头文件**: `XCEngine/Core/Math/Color.h` + +**描述**: 定义 `XCEngine/Core/Math` 子目录中的 `Color` public API。 + +## 概述 + +`Color.h` 是 `XCEngine/Core/Math` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Color` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `r` | `float` | 结构体公开字段。 | `1.0f` | +| `g` | `float` | 结构体公开字段。 | `1.0f` | +| `b` | `float` | 结构体公开字段。 | `1.0f` | +| `a` | `float` | 结构体公开字段。 | `1.0f` | + +## 相关文档 + +- [当前目录](../Math.md) - 返回 `Math` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Math/Frustum/Contains.md b/docs/api/XCEngine/Core/Math/Frustum/Contains.md new file mode 100644 index 00000000..b93dd607 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Frustum/Contains.md @@ -0,0 +1,55 @@ +# Frustum::Contains + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Math/Frustum.h` 中提供了 3 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool Contains(const Vector3& point) const; +``` + +**参数:** +- `point` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +bool Contains(const Sphere& sphere) const; +``` + +**参数:** +- `sphere` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 3: 声明 + +```cpp +bool Contains(const Bounds& bounds) const; +``` + +**参数:** +- `bounds` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Frustum object; + // 根据上下文补齐参数后调用 Frustum::Contains(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Frustum.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Frustum/Frustum.md b/docs/api/XCEngine/Core/Math/Frustum/Frustum.md new file mode 100644 index 00000000..57d829ef --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Frustum/Frustum.md @@ -0,0 +1,31 @@ +# Frustum + +**命名空间**: `XCEngine::Math` + +**类型**: `class` + +**头文件**: `XCEngine/Core/Math/Frustum.h` + +**描述**: 定义 `XCEngine/Core/Math` 子目录中的 `Frustum` public API。 + +## 概述 + +`Frustum.h` 是 `XCEngine/Core/Math` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Frustum` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Contains](Contains.md) | 公开方法,详见头文件声明。 | +| [Intersects](Intersects.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Math.md) - 返回 `Math` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Math/Frustum/Intersects.md b/docs/api/XCEngine/Core/Math/Frustum/Intersects.md new file mode 100644 index 00000000..7b62ba0c --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Frustum/Intersects.md @@ -0,0 +1,44 @@ +# Frustum::Intersects + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Math/Frustum.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool Intersects(const Bounds& bounds) const; +``` + +**参数:** +- `bounds` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +bool Intersects(const Sphere& sphere) const; +``` + +**参数:** +- `sphere` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Frustum object; + // 根据上下文补齐参数后调用 Frustum::Intersects(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Frustum.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Math.md b/docs/api/XCEngine/Core/Math/Math.md new file mode 100644 index 00000000..34ca49ff --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Math.md @@ -0,0 +1,36 @@ +# Math + +**命名空间**: `XCEngine::Core::Math` + +**类型**: `submodule` + +**描述**: 向量、矩阵、几何体与变换数学类型。 + +## 概览 + +该目录与 `XCEngine/Core/Math` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 头文件 + +- [AABB](AABB/AABB.md) - `AABB.h` +- [Bounds](Bounds/Bounds.md) - `Bounds.h` +- [Box](Box/Box.md) - `Box.h` +- [Color](Color/Color.md) - `Color.h` +- [Frustum](Frustum/Frustum.md) - `Frustum.h` +- [Math](Math/Math.md) - `Math.h` +- [Matrix3](Matrix3/Matrix3.md) - `Matrix3.h` +- [Matrix4](Matrix4/Matrix4.md) - `Matrix4.h` +- [Plane](Plane/Plane.md) - `Plane.h` +- [Quaternion](Quaternion/Quaternion.md) - `Quaternion.h` +- [Ray](Ray/Ray.md) - `Ray.h` +- [Rect](Rect/Rect.md) - `Rect.h` +- [Sphere](Sphere/Sphere.md) - `Sphere.h` +- [Transform](Transform/Transform.md) - `Transform.h` +- [Vector2](Vector2/Vector2.md) - `Vector2.h` +- [Vector3](Vector3/Vector3.md) - `Vector3.h` +- [Vector4](Vector4/Vector4.md) - `Vector4.h` + +## 相关文档 + +- [上级目录](../Core.md) +- [API 总索引](../../../main.md) diff --git a/docs/api/XCEngine/Core/Math/Math/Math.md b/docs/api/XCEngine/Core/Math/Math/Math.md new file mode 100644 index 00000000..595cde93 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Math/Math.md @@ -0,0 +1,18 @@ +# Math + +**命名空间**: `XCEngine` + +**类型**: `header` + +**头文件**: `XCEngine/Core/Math/Math.h` + +**描述**: 定义 `XCEngine/Core/Math` 子目录中的 `Math` public API。 + +## 概述 + +`Math.h` 是 `XCEngine/Core/Math` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 相关文档 + +- [当前目录](../Math.md) - 返回 `Math` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Math/Matrix3/Constructor.md b/docs/api/XCEngine/Core/Math/Matrix3/Constructor.md new file mode 100644 index 00000000..2063cdfa --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix3/Constructor.md @@ -0,0 +1,28 @@ +# Matrix3x3::Matrix3x3() + +构造对象。 + +```cpp +Matrix3x3(); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix3.h`,当前页面用于固定 `Matrix3x3` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix3x3 object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix3.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix3/Determinant.md b/docs/api/XCEngine/Core/Math/Matrix3/Determinant.md new file mode 100644 index 00000000..3a370d65 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix3/Determinant.md @@ -0,0 +1,30 @@ +# Matrix3x3::Determinant + +公开方法,详见头文件声明。 + +```cpp +float Determinant() const; +``` + +该方法声明于 `XCEngine/Core/Math/Matrix3.h`,当前页面用于固定 `Matrix3x3` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix3x3 object; + // 根据上下文补齐参数后调用 Matrix3x3::Determinant(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix3.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix3/Identity.md b/docs/api/XCEngine/Core/Math/Matrix3/Identity.md new file mode 100644 index 00000000..147ed2a4 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix3/Identity.md @@ -0,0 +1,30 @@ +# Matrix3x3::Identity + +公开方法,详见头文件声明。 + +```cpp +static Matrix3x3 Identity(); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix3.h`,当前页面用于固定 `Matrix3x3` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Matrix3x3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix3x3 object; + // 根据上下文补齐参数后调用 Matrix3x3::Identity(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix3.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix3/Inverse.md b/docs/api/XCEngine/Core/Math/Matrix3/Inverse.md new file mode 100644 index 00000000..c06360e2 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix3/Inverse.md @@ -0,0 +1,30 @@ +# Matrix3x3::Inverse + +公开方法,详见头文件声明。 + +```cpp +Matrix3x3 Inverse() const; +``` + +该方法声明于 `XCEngine/Core/Math/Matrix3.h`,当前页面用于固定 `Matrix3x3` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Matrix3x3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix3x3 object; + // 根据上下文补齐参数后调用 Matrix3x3::Inverse(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix3.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix3/Matrix3.md b/docs/api/XCEngine/Core/Math/Matrix3/Matrix3.md new file mode 100644 index 00000000..eed1bb4b --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix3/Matrix3.md @@ -0,0 +1,41 @@ +# Matrix3 + +**命名空间**: `XCEngine::Math` + +**类型**: `struct` + +**头文件**: `XCEngine/Core/Math/Matrix3.h` + +**描述**: 定义 `XCEngine/Core/Math` 子目录中的 `Matrix3` public API。 + +## 概述 + +`Matrix3.h` 是 `XCEngine/Core/Math` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Matrix3x3` | `struct` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Matrix3x3()](Constructor.md) | 构造对象。 | +| [Identity](Identity.md) | 公开方法,详见头文件声明。 | +| [Zero](Zero.md) | 公开方法,详见头文件声明。 | +| [RotationX](RotationX.md) | 公开方法,详见头文件声明。 | +| [RotationY](RotationY.md) | 公开方法,详见头文件声明。 | +| [RotationZ](RotationZ.md) | 公开方法,详见头文件声明。 | +| [Scale](Scale.md) | 公开方法,详见头文件声明。 | +| [operator*](OperatorMultiply.md) | 公开方法,详见头文件声明。 | +| [Transpose](Transpose.md) | 公开方法,详见头文件声明。 | +| [Inverse](Inverse.md) | 公开方法,详见头文件声明。 | +| [Determinant](Determinant.md) | 公开方法,详见头文件声明。 | +| [operator[]](OperatorSubscript.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Math.md) - 返回 `Math` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Math/Matrix3/OperatorMultiply.md b/docs/api/XCEngine/Core/Math/Matrix3/OperatorMultiply.md new file mode 100644 index 00000000..7ec18bb1 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix3/OperatorMultiply.md @@ -0,0 +1,44 @@ +# Matrix3x3::operator* + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Math/Matrix3.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +Matrix3x3 operator*(const Matrix3x3& other) const; +``` + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `Matrix3x3` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +Vector3 operator*(const Vector3& v) const; +``` + +**参数:** +- `v` - 参数语义详见头文件声明。 + +**返回:** `Vector3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix3x3 object; + // 根据上下文补齐参数后调用 Matrix3x3::operator*(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix3.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix3/OperatorSubscript.md b/docs/api/XCEngine/Core/Math/Matrix3/OperatorSubscript.md new file mode 100644 index 00000000..1bed8a7b --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix3/OperatorSubscript.md @@ -0,0 +1,44 @@ +# Matrix3x3::operator[] + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Math/Matrix3.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +float* operator[](int row); +``` + +**参数:** +- `row` - 参数语义详见头文件声明。 + +**返回:** `float*` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +const float* operator[](int row) const; +``` + +**参数:** +- `row` - 参数语义详见头文件声明。 + +**返回:** `const float*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix3x3 object; + // 根据上下文补齐参数后调用 Matrix3x3::operator[](...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix3.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix3/RotationX.md b/docs/api/XCEngine/Core/Math/Matrix3/RotationX.md new file mode 100644 index 00000000..26a93da2 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix3/RotationX.md @@ -0,0 +1,31 @@ +# Matrix3x3::RotationX + +公开方法,详见头文件声明。 + +```cpp +static Matrix3x3 RotationX(float radians); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix3.h`,当前页面用于固定 `Matrix3x3` 类目录下的方法级 canonical 路径。 + +**参数:** +- `radians` - 参数语义详见头文件声明。 + +**返回:** `Matrix3x3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix3x3 object; + // 根据上下文补齐参数后调用 Matrix3x3::RotationX(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix3.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix3/RotationY.md b/docs/api/XCEngine/Core/Math/Matrix3/RotationY.md new file mode 100644 index 00000000..3c43ed0e --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix3/RotationY.md @@ -0,0 +1,31 @@ +# Matrix3x3::RotationY + +公开方法,详见头文件声明。 + +```cpp +static Matrix3x3 RotationY(float radians); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix3.h`,当前页面用于固定 `Matrix3x3` 类目录下的方法级 canonical 路径。 + +**参数:** +- `radians` - 参数语义详见头文件声明。 + +**返回:** `Matrix3x3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix3x3 object; + // 根据上下文补齐参数后调用 Matrix3x3::RotationY(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix3.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix3/RotationZ.md b/docs/api/XCEngine/Core/Math/Matrix3/RotationZ.md new file mode 100644 index 00000000..80a70411 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix3/RotationZ.md @@ -0,0 +1,31 @@ +# Matrix3x3::RotationZ + +公开方法,详见头文件声明。 + +```cpp +static Matrix3x3 RotationZ(float radians); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix3.h`,当前页面用于固定 `Matrix3x3` 类目录下的方法级 canonical 路径。 + +**参数:** +- `radians` - 参数语义详见头文件声明。 + +**返回:** `Matrix3x3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix3x3 object; + // 根据上下文补齐参数后调用 Matrix3x3::RotationZ(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix3.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix3/Scale.md b/docs/api/XCEngine/Core/Math/Matrix3/Scale.md new file mode 100644 index 00000000..9278502a --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix3/Scale.md @@ -0,0 +1,31 @@ +# Matrix3x3::Scale + +公开方法,详见头文件声明。 + +```cpp +static Matrix3x3 Scale(const Vector3& scale); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix3.h`,当前页面用于固定 `Matrix3x3` 类目录下的方法级 canonical 路径。 + +**参数:** +- `scale` - 参数语义详见头文件声明。 + +**返回:** `Matrix3x3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix3x3 object; + // 根据上下文补齐参数后调用 Matrix3x3::Scale(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix3.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix3/Transpose.md b/docs/api/XCEngine/Core/Math/Matrix3/Transpose.md new file mode 100644 index 00000000..a1b5d5c7 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix3/Transpose.md @@ -0,0 +1,30 @@ +# Matrix3x3::Transpose + +公开方法,详见头文件声明。 + +```cpp +Matrix3x3 Transpose() const; +``` + +该方法声明于 `XCEngine/Core/Math/Matrix3.h`,当前页面用于固定 `Matrix3x3` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Matrix3x3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix3x3 object; + // 根据上下文补齐参数后调用 Matrix3x3::Transpose(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix3.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix3/Zero.md b/docs/api/XCEngine/Core/Math/Matrix3/Zero.md new file mode 100644 index 00000000..1b06cea0 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix3/Zero.md @@ -0,0 +1,30 @@ +# Matrix3x3::Zero + +公开方法,详见头文件声明。 + +```cpp +static Matrix3x3 Zero(); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix3.h`,当前页面用于固定 `Matrix3x3` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Matrix3x3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix3x3 object; + // 根据上下文补齐参数后调用 Matrix3x3::Zero(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix3.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/Constructor.md b/docs/api/XCEngine/Core/Math/Matrix4/Constructor.md new file mode 100644 index 00000000..6341dede --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/Constructor.md @@ -0,0 +1,28 @@ +# Matrix4x4::Matrix4x4() + +构造对象。 + +```cpp +Matrix4x4(); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/Decompose.md b/docs/api/XCEngine/Core/Math/Matrix4/Decompose.md new file mode 100644 index 00000000..369aef8a --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/Decompose.md @@ -0,0 +1,33 @@ +# Matrix4x4::Decompose + +公开方法,详见头文件声明。 + +```cpp +void Decompose(Vector3& translation, Quaternion& rotation, Vector3& scale) const; +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** +- `translation` - 参数语义详见头文件声明。 +- `rotation` - 参数语义详见头文件声明。 +- `scale` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::Decompose(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/Determinant.md b/docs/api/XCEngine/Core/Math/Matrix4/Determinant.md new file mode 100644 index 00000000..6c11ecf3 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/Determinant.md @@ -0,0 +1,30 @@ +# Matrix4x4::Determinant + +公开方法,详见头文件声明。 + +```cpp +float Determinant() const; +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::Determinant(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/GetRotation.md b/docs/api/XCEngine/Core/Math/Matrix4/GetRotation.md new file mode 100644 index 00000000..a5176a0a --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/GetRotation.md @@ -0,0 +1,30 @@ +# Matrix4x4::GetRotation + +获取相关状态或对象。 + +```cpp +Quaternion GetRotation() const; +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Quaternion` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::GetRotation(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/GetScale.md b/docs/api/XCEngine/Core/Math/Matrix4/GetScale.md new file mode 100644 index 00000000..92ee5e64 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/GetScale.md @@ -0,0 +1,30 @@ +# Matrix4x4::GetScale + +获取相关状态或对象。 + +```cpp +Vector3 GetScale() const; +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Vector3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::GetScale(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/GetTranslation.md b/docs/api/XCEngine/Core/Math/Matrix4/GetTranslation.md new file mode 100644 index 00000000..086124d3 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/GetTranslation.md @@ -0,0 +1,30 @@ +# Matrix4x4::GetTranslation + +获取相关状态或对象。 + +```cpp +Vector3 GetTranslation() const; +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Vector3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::GetTranslation(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/Identity.md b/docs/api/XCEngine/Core/Math/Matrix4/Identity.md new file mode 100644 index 00000000..b3da4d1e --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/Identity.md @@ -0,0 +1,30 @@ +# Matrix4x4::Identity + +公开方法,详见头文件声明。 + +```cpp +static Matrix4x4 Identity(); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Matrix4x4` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::Identity(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/Inverse.md b/docs/api/XCEngine/Core/Math/Matrix4/Inverse.md new file mode 100644 index 00000000..53f66180 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/Inverse.md @@ -0,0 +1,30 @@ +# Matrix4x4::Inverse + +公开方法,详见头文件声明。 + +```cpp +Matrix4x4 Inverse() const; +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Matrix4x4` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::Inverse(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/LookAt.md b/docs/api/XCEngine/Core/Math/Matrix4/LookAt.md new file mode 100644 index 00000000..53f4e46e --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/LookAt.md @@ -0,0 +1,33 @@ +# Matrix4x4::LookAt + +公开方法,详见头文件声明。 + +```cpp +static Matrix4x4 LookAt(const Vector3& eye, const Vector3& target, const Vector3& up); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** +- `eye` - 参数语义详见头文件声明。 +- `target` - 参数语义详见头文件声明。 +- `up` - 参数语义详见头文件声明。 + +**返回:** `Matrix4x4` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::LookAt(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/Matrix4.md b/docs/api/XCEngine/Core/Math/Matrix4/Matrix4.md new file mode 100644 index 00000000..011b02c5 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/Matrix4.md @@ -0,0 +1,53 @@ +# Matrix4 + +**命名空间**: `XCEngine::Math` + +**类型**: `struct` + +**头文件**: `XCEngine/Core/Math/Matrix4.h` + +**描述**: 定义 `XCEngine/Core/Math` 子目录中的 `Matrix4` public API。 + +## 概述 + +`Matrix4.h` 是 `XCEngine/Core/Math` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Matrix4x4` | `struct` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Matrix4x4()](Constructor.md) | 构造对象。 | +| [Identity](Identity.md) | 公开方法,详见头文件声明。 | +| [Zero](Zero.md) | 公开方法,详见头文件声明。 | +| [Translation](Translation.md) | 公开方法,详见头文件声明。 | +| [Rotation](Rotation.md) | 公开方法,详见头文件声明。 | +| [Scale](Scale.md) | 公开方法,详见头文件声明。 | +| [TRS](TRS.md) | 公开方法,详见头文件声明。 | +| [LookAt](LookAt.md) | 公开方法,详见头文件声明。 | +| [Perspective](Perspective.md) | 公开方法,详见头文件声明。 | +| [Orthographic](Orthographic.md) | 公开方法,详见头文件声明。 | +| [RotationX](RotationX.md) | 公开方法,详见头文件声明。 | +| [RotationY](RotationY.md) | 公开方法,详见头文件声明。 | +| [RotationZ](RotationZ.md) | 公开方法,详见头文件声明。 | +| [operator*](OperatorMultiply.md) | 公开方法,详见头文件声明。 | +| [MultiplyPoint](MultiplyPoint.md) | 公开方法,详见头文件声明。 | +| [MultiplyVector](MultiplyVector.md) | 公开方法,详见头文件声明。 | +| [Transpose](Transpose.md) | 公开方法,详见头文件声明。 | +| [Inverse](Inverse.md) | 公开方法,详见头文件声明。 | +| [Determinant](Determinant.md) | 公开方法,详见头文件声明。 | +| [GetTranslation](GetTranslation.md) | 获取相关状态或对象。 | +| [GetRotation](GetRotation.md) | 获取相关状态或对象。 | +| [GetScale](GetScale.md) | 获取相关状态或对象。 | +| [Decompose](Decompose.md) | 公开方法,详见头文件声明。 | +| [operator[]](OperatorSubscript.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Math.md) - 返回 `Math` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Math/Matrix4/MultiplyPoint.md b/docs/api/XCEngine/Core/Math/Matrix4/MultiplyPoint.md new file mode 100644 index 00000000..42de3f19 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/MultiplyPoint.md @@ -0,0 +1,31 @@ +# Matrix4x4::MultiplyPoint + +公开方法,详见头文件声明。 + +```cpp +Vector3 MultiplyPoint(const Vector3& v) const; +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** +- `v` - 参数语义详见头文件声明。 + +**返回:** `Vector3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::MultiplyPoint(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/MultiplyVector.md b/docs/api/XCEngine/Core/Math/Matrix4/MultiplyVector.md new file mode 100644 index 00000000..8ee595cf --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/MultiplyVector.md @@ -0,0 +1,31 @@ +# Matrix4x4::MultiplyVector + +公开方法,详见头文件声明。 + +```cpp +Vector3 MultiplyVector(const Vector3& v) const; +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** +- `v` - 参数语义详见头文件声明。 + +**返回:** `Vector3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::MultiplyVector(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/OperatorMultiply.md b/docs/api/XCEngine/Core/Math/Matrix4/OperatorMultiply.md new file mode 100644 index 00000000..82b38053 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/OperatorMultiply.md @@ -0,0 +1,44 @@ +# Matrix4x4::operator* + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Math/Matrix4.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +Matrix4x4 operator*(const Matrix4x4& other) const; +``` + +**参数:** +- `other` - 参数语义详见头文件声明。 + +**返回:** `Matrix4x4` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +Vector4 operator*(const Vector4& v) const; +``` + +**参数:** +- `v` - 参数语义详见头文件声明。 + +**返回:** `Vector4` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::operator*(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/OperatorSubscript.md b/docs/api/XCEngine/Core/Math/Matrix4/OperatorSubscript.md new file mode 100644 index 00000000..cbf65d8c --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/OperatorSubscript.md @@ -0,0 +1,44 @@ +# Matrix4x4::operator[] + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Core/Math/Matrix4.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +float* operator[](int row); +``` + +**参数:** +- `row` - 参数语义详见头文件声明。 + +**返回:** `float*` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +const float* operator[](int row) const; +``` + +**参数:** +- `row` - 参数语义详见头文件声明。 + +**返回:** `const float*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::operator[](...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/Orthographic.md b/docs/api/XCEngine/Core/Math/Matrix4/Orthographic.md new file mode 100644 index 00000000..b709af90 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/Orthographic.md @@ -0,0 +1,36 @@ +# Matrix4x4::Orthographic + +公开方法,详见头文件声明。 + +```cpp +static Matrix4x4 Orthographic(float left, float right, float bottom, float top, float near, float far); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** +- `left` - 参数语义详见头文件声明。 +- `right` - 参数语义详见头文件声明。 +- `bottom` - 参数语义详见头文件声明。 +- `top` - 参数语义详见头文件声明。 +- `near` - 参数语义详见头文件声明。 +- `far` - 参数语义详见头文件声明。 + +**返回:** `Matrix4x4` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::Orthographic(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/Perspective.md b/docs/api/XCEngine/Core/Math/Matrix4/Perspective.md new file mode 100644 index 00000000..a55f8c2c --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/Perspective.md @@ -0,0 +1,34 @@ +# Matrix4x4::Perspective + +公开方法,详见头文件声明。 + +```cpp +static Matrix4x4 Perspective(float fov, float aspect, float near, float far); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** +- `fov` - 参数语义详见头文件声明。 +- `aspect` - 参数语义详见头文件声明。 +- `near` - 参数语义详见头文件声明。 +- `far` - 参数语义详见头文件声明。 + +**返回:** `Matrix4x4` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::Perspective(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/Rotation.md b/docs/api/XCEngine/Core/Math/Matrix4/Rotation.md new file mode 100644 index 00000000..49e9a8f3 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/Rotation.md @@ -0,0 +1,31 @@ +# Matrix4x4::Rotation + +公开方法,详见头文件声明。 + +```cpp +static Matrix4x4 Rotation(const Quaternion& q); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** +- `q` - 参数语义详见头文件声明。 + +**返回:** `Matrix4x4` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::Rotation(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/RotationX.md b/docs/api/XCEngine/Core/Math/Matrix4/RotationX.md new file mode 100644 index 00000000..8d3458d9 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/RotationX.md @@ -0,0 +1,31 @@ +# Matrix4x4::RotationX + +公开方法,详见头文件声明。 + +```cpp +static Matrix4x4 RotationX(float radians); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** +- `radians` - 参数语义详见头文件声明。 + +**返回:** `Matrix4x4` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::RotationX(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/RotationY.md b/docs/api/XCEngine/Core/Math/Matrix4/RotationY.md new file mode 100644 index 00000000..79301cef --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/RotationY.md @@ -0,0 +1,31 @@ +# Matrix4x4::RotationY + +公开方法,详见头文件声明。 + +```cpp +static Matrix4x4 RotationY(float radians); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** +- `radians` - 参数语义详见头文件声明。 + +**返回:** `Matrix4x4` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::RotationY(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/RotationZ.md b/docs/api/XCEngine/Core/Math/Matrix4/RotationZ.md new file mode 100644 index 00000000..a610af33 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/RotationZ.md @@ -0,0 +1,31 @@ +# Matrix4x4::RotationZ + +公开方法,详见头文件声明。 + +```cpp +static Matrix4x4 RotationZ(float radians); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** +- `radians` - 参数语义详见头文件声明。 + +**返回:** `Matrix4x4` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::RotationZ(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/Scale.md b/docs/api/XCEngine/Core/Math/Matrix4/Scale.md new file mode 100644 index 00000000..2f5b1fd1 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/Scale.md @@ -0,0 +1,31 @@ +# Matrix4x4::Scale + +公开方法,详见头文件声明。 + +```cpp +static Matrix4x4 Scale(const Vector3& v); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** +- `v` - 参数语义详见头文件声明。 + +**返回:** `Matrix4x4` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::Scale(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/TRS.md b/docs/api/XCEngine/Core/Math/Matrix4/TRS.md new file mode 100644 index 00000000..6a114c20 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/TRS.md @@ -0,0 +1,33 @@ +# Matrix4x4::TRS + +公开方法,详见头文件声明。 + +```cpp +static Matrix4x4 TRS(const Vector3& translation, const Quaternion& rotation, const Vector3& scale); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** +- `translation` - 参数语义详见头文件声明。 +- `rotation` - 参数语义详见头文件声明。 +- `scale` - 参数语义详见头文件声明。 + +**返回:** `Matrix4x4` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::TRS(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/Translation.md b/docs/api/XCEngine/Core/Math/Matrix4/Translation.md new file mode 100644 index 00000000..ac7eece5 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/Translation.md @@ -0,0 +1,31 @@ +# Matrix4x4::Translation + +公开方法,详见头文件声明。 + +```cpp +static Matrix4x4 Translation(const Vector3& v); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** +- `v` - 参数语义详见头文件声明。 + +**返回:** `Matrix4x4` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::Translation(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/Transpose.md b/docs/api/XCEngine/Core/Math/Matrix4/Transpose.md new file mode 100644 index 00000000..05b5251e --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/Transpose.md @@ -0,0 +1,30 @@ +# Matrix4x4::Transpose + +公开方法,详见头文件声明。 + +```cpp +Matrix4x4 Transpose() const; +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Matrix4x4` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::Transpose(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Matrix4/Zero.md b/docs/api/XCEngine/Core/Math/Matrix4/Zero.md new file mode 100644 index 00000000..8500a69b --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Matrix4/Zero.md @@ -0,0 +1,30 @@ +# Matrix4x4::Zero + +公开方法,详见头文件声明。 + +```cpp +static Matrix4x4 Zero(); +``` + +该方法声明于 `XCEngine/Core/Math/Matrix4.h`,当前页面用于固定 `Matrix4x4` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Matrix4x4` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Math::Matrix4x4 object; + // 根据上下文补齐参数后调用 Matrix4x4::Zero(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Matrix4.md) +- [返回模块目录](../Math.md) diff --git a/docs/api/XCEngine/Core/Math/Plane/Plane.md b/docs/api/XCEngine/Core/Math/Plane/Plane.md new file mode 100644 index 00000000..77d35106 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Plane/Plane.md @@ -0,0 +1,31 @@ +# Plane + +**命名空间**: `XCEngine::Math` + +**类型**: `struct` + +**头文件**: `XCEngine/Core/Math/Plane.h` + +**描述**: 定义 `XCEngine/Core/Math` 子目录中的 `Plane` public API。 + +## 概述 + +`Plane.h` 是 `XCEngine/Core/Math` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Plane` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `normal` | `Vector3` | 结构体公开字段。 | `Vector3::Up()` | +| `distance` | `float` | 结构体公开字段。 | `0.0f` | + +## 相关文档 + +- [当前目录](../Math.md) - 返回 `Math` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Math/Quaternion/Quaternion.md b/docs/api/XCEngine/Core/Math/Quaternion/Quaternion.md new file mode 100644 index 00000000..617f0018 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Quaternion/Quaternion.md @@ -0,0 +1,33 @@ +# Quaternion + +**命名空间**: `XCEngine::Math` + +**类型**: `struct` + +**头文件**: `XCEngine/Core/Math/Quaternion.h` + +**描述**: 定义 `XCEngine/Core/Math` 子目录中的 `Quaternion` public API。 + +## 概述 + +`Quaternion.h` 是 `XCEngine/Core/Math` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Quaternion` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `x` | `float` | 结构体公开字段。 | `0.0f` | +| `y` | `float` | 结构体公开字段。 | `0.0f` | +| `z` | `float` | 结构体公开字段。 | `0.0f` | +| `w` | `float` | 结构体公开字段。 | `1.0f` | + +## 相关文档 + +- [当前目录](../Math.md) - 返回 `Math` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Math/Ray/Ray.md b/docs/api/XCEngine/Core/Math/Ray/Ray.md new file mode 100644 index 00000000..9c4c6b8c --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Ray/Ray.md @@ -0,0 +1,31 @@ +# Ray + +**命名空间**: `XCEngine::Math` + +**类型**: `struct` + +**头文件**: `XCEngine/Core/Math/Ray.h` + +**描述**: 定义 `XCEngine/Core/Math` 子目录中的 `Ray` public API。 + +## 概述 + +`Ray.h` 是 `XCEngine/Core/Math` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Ray` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `origin` | `Vector3` | 结构体公开字段。 | - | +| `direction` | `Vector3` | 结构体公开字段。 | - | + +## 相关文档 + +- [当前目录](../Math.md) - 返回 `Math` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Math/Rect/Rect.md b/docs/api/XCEngine/Core/Math/Rect/Rect.md new file mode 100644 index 00000000..53848b8e --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Rect/Rect.md @@ -0,0 +1,35 @@ +# Rect + +**命名空间**: `XCEngine::Math` + +**类型**: `struct` + +**头文件**: `XCEngine/Core/Math/Rect.h` + +**描述**: 定义 `XCEngine/Core/Math` 子目录中的 `Rect` public API。 + +## 概述 + +`Rect.h` 是 `XCEngine/Core/Math` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Rect` | `struct` | 头文件中的公开声明。 | +| `RectInt` | `struct` | 头文件中的公开声明。 | +| `Viewport` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `x` | `float` | 结构体公开字段。 | `0.0f` | +| `y` | `float` | 结构体公开字段。 | `0.0f` | +| `width` | `float` | 结构体公开字段。 | `0.0f` | +| `height` | `float` | 结构体公开字段。 | `0.0f` | + +## 相关文档 + +- [当前目录](../Math.md) - 返回 `Math` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Math/Sphere/Sphere.md b/docs/api/XCEngine/Core/Math/Sphere/Sphere.md new file mode 100644 index 00000000..fee2bb26 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Sphere/Sphere.md @@ -0,0 +1,31 @@ +# Sphere + +**命名空间**: `XCEngine::Math` + +**类型**: `struct` + +**头文件**: `XCEngine/Core/Math/Sphere.h` + +**描述**: 定义 `XCEngine/Core/Math` 子目录中的 `Sphere` public API。 + +## 概述 + +`Sphere.h` 是 `XCEngine/Core/Math` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Sphere` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `center` | `Vector3` | 结构体公开字段。 | `Vector3::Zero()` | +| `radius` | `float` | 结构体公开字段。 | `0.0f` | + +## 相关文档 + +- [当前目录](../Math.md) - 返回 `Math` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Math/Transform/Transform.md b/docs/api/XCEngine/Core/Math/Transform/Transform.md new file mode 100644 index 00000000..6e768479 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Transform/Transform.md @@ -0,0 +1,33 @@ +# Transform + +**命名空间**: `XCEngine::Math` + +**类型**: `struct` + +**头文件**: `XCEngine/Core/Math/Transform.h` + +**描述**: 定义 `XCEngine/Core/Math` 子目录中的 `Transform` public API。 + +## 概述 + +`Transform.h` 是 `XCEngine/Core/Math` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Space` | `enum class` | 头文件中的公开声明。 | +| `Transform` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `position` | `Vector3` | 结构体公开字段。 | `Vector3::Zero()` | +| `rotation` | `Quaternion` | 结构体公开字段。 | `Quaternion::Identity()` | +| `scale` | `Vector3` | 结构体公开字段。 | `Vector3::One()` | + +## 相关文档 + +- [当前目录](../Math.md) - 返回 `Math` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Math/Vector2/Vector2.md b/docs/api/XCEngine/Core/Math/Vector2/Vector2.md new file mode 100644 index 00000000..460bdb1d --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Vector2/Vector2.md @@ -0,0 +1,31 @@ +# Vector2 + +**命名空间**: `XCEngine::Math` + +**类型**: `struct` + +**头文件**: `XCEngine/Core/Math/Vector2.h` + +**描述**: 定义 `XCEngine/Core/Math` 子目录中的 `Vector2` public API。 + +## 概述 + +`Vector2.h` 是 `XCEngine/Core/Math` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Vector2` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `x` | `float` | 结构体公开字段。 | `0.0f` | +| `y` | `float` | 结构体公开字段。 | `0.0f` | + +## 相关文档 + +- [当前目录](../Math.md) - 返回 `Math` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Math/Vector3/Vector3.md b/docs/api/XCEngine/Core/Math/Vector3/Vector3.md new file mode 100644 index 00000000..46385dff --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Vector3/Vector3.md @@ -0,0 +1,32 @@ +# Vector3 + +**命名空间**: `XCEngine::Math` + +**类型**: `struct` + +**头文件**: `XCEngine/Core/Math/Vector3.h` + +**描述**: 定义 `XCEngine/Core/Math` 子目录中的 `Vector3` public API。 + +## 概述 + +`Vector3.h` 是 `XCEngine/Core/Math` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Vector3` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `x` | `float` | 结构体公开字段。 | `0.0f` | +| `y` | `float` | 结构体公开字段。 | `0.0f` | +| `z` | `float` | 结构体公开字段。 | `0.0f` | + +## 相关文档 + +- [当前目录](../Math.md) - 返回 `Math` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Math/Vector4/Vector4.md b/docs/api/XCEngine/Core/Math/Vector4/Vector4.md new file mode 100644 index 00000000..d10956d4 --- /dev/null +++ b/docs/api/XCEngine/Core/Math/Vector4/Vector4.md @@ -0,0 +1,33 @@ +# Vector4 + +**命名空间**: `XCEngine::Math` + +**类型**: `struct` + +**头文件**: `XCEngine/Core/Math/Vector4.h` + +**描述**: 定义 `XCEngine/Core/Math` 子目录中的 `Vector4` public API。 + +## 概述 + +`Vector4.h` 是 `XCEngine/Core/Math` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Vector4` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `x` | `float` | 结构体公开字段。 | `0.0f` | +| `y` | `float` | 结构体公开字段。 | `0.0f` | +| `z` | `float` | 结构体公开字段。 | `0.0f` | +| `w` | `float` | 结构体公开字段。 | `0.0f` | + +## 相关文档 + +- [当前目录](../Math.md) - 返回 `Math` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/RefCounted/AddRef.md b/docs/api/XCEngine/Core/RefCounted/AddRef.md new file mode 100644 index 00000000..511cfba3 --- /dev/null +++ b/docs/api/XCEngine/Core/RefCounted/AddRef.md @@ -0,0 +1,30 @@ +# RefCounted::AddRef + +添加元素或建立关联。 + +```cpp +void AddRef(); +``` + +该方法声明于 `XCEngine/Core/RefCounted.h`,当前页面用于固定 `RefCounted` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::RefCounted object; + // 根据上下文补齐参数后调用 RefCounted::AddRef(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RefCounted.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/RefCounted/Constructor.md b/docs/api/XCEngine/Core/RefCounted/Constructor.md new file mode 100644 index 00000000..de42be2f --- /dev/null +++ b/docs/api/XCEngine/Core/RefCounted/Constructor.md @@ -0,0 +1,28 @@ +# RefCounted::RefCounted() + +构造对象。 + +```cpp +RefCounted() : m_refCount(1); +``` + +该方法声明于 `XCEngine/Core/RefCounted.h`,当前页面用于固定 `RefCounted` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::RefCounted object; +} +``` + +## 相关文档 + +- [返回类总览](RefCounted.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/RefCounted/Destructor.md b/docs/api/XCEngine/Core/RefCounted/Destructor.md new file mode 100644 index 00000000..50155ae1 --- /dev/null +++ b/docs/api/XCEngine/Core/RefCounted/Destructor.md @@ -0,0 +1,29 @@ +# RefCounted::~RefCounted() + +销毁对象并释放相关资源。 + +```cpp +virtual ~RefCounted() = default; +``` + +该方法声明于 `XCEngine/Core/RefCounted.h`,当前页面用于固定 `RefCounted` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::RefCounted object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](RefCounted.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/RefCounted/GetRefCount.md b/docs/api/XCEngine/Core/RefCounted/GetRefCount.md new file mode 100644 index 00000000..29c51951 --- /dev/null +++ b/docs/api/XCEngine/Core/RefCounted/GetRefCount.md @@ -0,0 +1,30 @@ +# RefCounted::GetRefCount + +获取相关状态或对象。 + +```cpp +uint32_t GetRefCount() const; +``` + +该方法声明于 `XCEngine/Core/RefCounted.h`,当前页面用于固定 `RefCounted` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::RefCounted object; + // 根据上下文补齐参数后调用 RefCounted::GetRefCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RefCounted.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/RefCounted/RefCounted.md b/docs/api/XCEngine/Core/RefCounted/RefCounted.md new file mode 100644 index 00000000..651a3943 --- /dev/null +++ b/docs/api/XCEngine/Core/RefCounted/RefCounted.md @@ -0,0 +1,34 @@ +# RefCounted + +**命名空间**: `XCEngine::Core` + +**类型**: `class` + +**头文件**: `XCEngine/Core/RefCounted.h` + +**描述**: 定义 `XCEngine/Core` 子目录中的 `RefCounted` public API。 + +## 概述 + +`RefCounted.h` 是 `XCEngine/Core` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RefCounted` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [RefCounted()](Constructor.md) | 构造对象。 | +| [~RefCounted()](Destructor.md) | 销毁对象并释放相关资源。 | +| [AddRef](AddRef.md) | 添加元素或建立关联。 | +| [Release](Release.md) | 释放引用或底层资源。 | +| [GetRefCount](GetRefCount.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Core.md) - 返回 `Core` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/RefCounted/Release.md b/docs/api/XCEngine/Core/RefCounted/Release.md new file mode 100644 index 00000000..a5aafbcc --- /dev/null +++ b/docs/api/XCEngine/Core/RefCounted/Release.md @@ -0,0 +1,30 @@ +# RefCounted::Release + +释放引用或底层资源。 + +```cpp +void Release(); +``` + +该方法声明于 `XCEngine/Core/RefCounted.h`,当前页面用于固定 `RefCounted` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Core::RefCounted object; + // 根据上下文补齐参数后调用 RefCounted::Release(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RefCounted.md) +- [返回模块目录](../Core.md) diff --git a/docs/api/XCEngine/Core/SmartPtr/SmartPtr.md b/docs/api/XCEngine/Core/SmartPtr/SmartPtr.md new file mode 100644 index 00000000..e4645bca --- /dev/null +++ b/docs/api/XCEngine/Core/SmartPtr/SmartPtr.md @@ -0,0 +1,18 @@ +# SmartPtr + +**命名空间**: `XCEngine` + +**类型**: `header` + +**头文件**: `XCEngine/Core/SmartPtr.h` + +**描述**: 定义 `XCEngine/Core` 子目录中的 `SmartPtr` public API。 + +## 概述 + +`SmartPtr.h` 是 `XCEngine/Core` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 相关文档 + +- [当前目录](../Core.md) - 返回 `Core` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Core/Types/Types.md b/docs/api/XCEngine/Core/Types/Types.md new file mode 100644 index 00000000..f76d1f46 --- /dev/null +++ b/docs/api/XCEngine/Core/Types/Types.md @@ -0,0 +1,18 @@ +# Types + +**命名空间**: `XCEngine` + +**类型**: `header` + +**头文件**: `XCEngine/Core/Types.h` + +**描述**: 定义 `XCEngine/Core` 子目录中的 `Types` public API。 + +## 概述 + +`Types.h` 是 `XCEngine/Core` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 相关文档 + +- [当前目录](../Core.md) - 返回 `Core` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Debug/ConsoleLogSink/ConsoleLogSink.md b/docs/api/XCEngine/Debug/ConsoleLogSink/ConsoleLogSink.md new file mode 100644 index 00000000..dcdc15e0 --- /dev/null +++ b/docs/api/XCEngine/Debug/ConsoleLogSink/ConsoleLogSink.md @@ -0,0 +1,35 @@ +# ConsoleLogSink + +**命名空间**: `XCEngine::Debug` + +**类型**: `class` + +**头文件**: `XCEngine/Debug/ConsoleLogSink.h` + +**描述**: 定义 `XCEngine/Debug` 子目录中的 `ConsoleLogSink` public API。 + +## 概述 + +`ConsoleLogSink.h` 是 `XCEngine/Debug` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `ConsoleLogSink` | `class` | 继承自 `ILogSink` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [ConsoleLogSink()](Constructor.md) | 构造对象。 | +| [~ConsoleLogSink()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Log](Log.md) | 公开方法,详见头文件声明。 | +| [Flush](Flush.md) | 公开方法,详见头文件声明。 | +| [SetColorOutput](SetColorOutput.md) | 设置相关状态或配置。 | +| [SetMinimumLevel](SetMinimumLevel.md) | 设置相关状态或配置。 | + +## 相关文档 + +- [当前目录](../Debug.md) - 返回 `Debug` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Debug/ConsoleLogSink/Constructor.md b/docs/api/XCEngine/Debug/ConsoleLogSink/Constructor.md new file mode 100644 index 00000000..8a1dc18a --- /dev/null +++ b/docs/api/XCEngine/Debug/ConsoleLogSink/Constructor.md @@ -0,0 +1,28 @@ +# ConsoleLogSink::ConsoleLogSink() + +构造对象。 + +```cpp +ConsoleLogSink(); +``` + +该方法声明于 `XCEngine/Debug/ConsoleLogSink.h`,当前页面用于固定 `ConsoleLogSink` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::ConsoleLogSink object; +} +``` + +## 相关文档 + +- [返回类总览](ConsoleLogSink.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/ConsoleLogSink/Destructor.md b/docs/api/XCEngine/Debug/ConsoleLogSink/Destructor.md new file mode 100644 index 00000000..78b4c373 --- /dev/null +++ b/docs/api/XCEngine/Debug/ConsoleLogSink/Destructor.md @@ -0,0 +1,29 @@ +# ConsoleLogSink::~ConsoleLogSink() + +销毁对象并释放相关资源。 + +```cpp +~ConsoleLogSink() override; +``` + +该方法声明于 `XCEngine/Debug/ConsoleLogSink.h`,当前页面用于固定 `ConsoleLogSink` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::ConsoleLogSink object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](ConsoleLogSink.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/ConsoleLogSink/Flush.md b/docs/api/XCEngine/Debug/ConsoleLogSink/Flush.md new file mode 100644 index 00000000..286a59aa --- /dev/null +++ b/docs/api/XCEngine/Debug/ConsoleLogSink/Flush.md @@ -0,0 +1,30 @@ +# ConsoleLogSink::Flush + +公开方法,详见头文件声明。 + +```cpp +void Flush() override; +``` + +该方法声明于 `XCEngine/Debug/ConsoleLogSink.h`,当前页面用于固定 `ConsoleLogSink` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::ConsoleLogSink object; + // 根据上下文补齐参数后调用 ConsoleLogSink::Flush(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ConsoleLogSink.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/ConsoleLogSink/Log.md b/docs/api/XCEngine/Debug/ConsoleLogSink/Log.md new file mode 100644 index 00000000..77f05cc8 --- /dev/null +++ b/docs/api/XCEngine/Debug/ConsoleLogSink/Log.md @@ -0,0 +1,31 @@ +# ConsoleLogSink::Log + +公开方法,详见头文件声明。 + +```cpp +void Log(const LogEntry& entry) override; +``` + +该方法声明于 `XCEngine/Debug/ConsoleLogSink.h`,当前页面用于固定 `ConsoleLogSink` 类目录下的方法级 canonical 路径。 + +**参数:** +- `entry` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::ConsoleLogSink object; + // 根据上下文补齐参数后调用 ConsoleLogSink::Log(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ConsoleLogSink.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/ConsoleLogSink/SetColorOutput.md b/docs/api/XCEngine/Debug/ConsoleLogSink/SetColorOutput.md new file mode 100644 index 00000000..b04b086a --- /dev/null +++ b/docs/api/XCEngine/Debug/ConsoleLogSink/SetColorOutput.md @@ -0,0 +1,31 @@ +# ConsoleLogSink::SetColorOutput + +设置相关状态或配置。 + +```cpp +void SetColorOutput(bool enable); +``` + +该方法声明于 `XCEngine/Debug/ConsoleLogSink.h`,当前页面用于固定 `ConsoleLogSink` 类目录下的方法级 canonical 路径。 + +**参数:** +- `enable` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::ConsoleLogSink object; + // 根据上下文补齐参数后调用 ConsoleLogSink::SetColorOutput(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ConsoleLogSink.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/ConsoleLogSink/SetMinimumLevel.md b/docs/api/XCEngine/Debug/ConsoleLogSink/SetMinimumLevel.md new file mode 100644 index 00000000..a3545481 --- /dev/null +++ b/docs/api/XCEngine/Debug/ConsoleLogSink/SetMinimumLevel.md @@ -0,0 +1,31 @@ +# ConsoleLogSink::SetMinimumLevel + +设置相关状态或配置。 + +```cpp +void SetMinimumLevel(LogLevel level); +``` + +该方法声明于 `XCEngine/Debug/ConsoleLogSink.h`,当前页面用于固定 `ConsoleLogSink` 类目录下的方法级 canonical 路径。 + +**参数:** +- `level` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::ConsoleLogSink object; + // 根据上下文补齐参数后调用 ConsoleLogSink::SetMinimumLevel(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ConsoleLogSink.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Debug.md b/docs/api/XCEngine/Debug/Debug.md new file mode 100644 index 00000000..ef5a0a87 --- /dev/null +++ b/docs/api/XCEngine/Debug/Debug.md @@ -0,0 +1,29 @@ +# Debug + +**命名空间**: `XCEngine::Debug` + +**类型**: `module` + +**描述**: 日志、Profiler 与调试集成接口。 + +## 概览 + +该目录与 `XCEngine/Debug` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 头文件 + +- [ConsoleLogSink](ConsoleLogSink/ConsoleLogSink.md) - `ConsoleLogSink.h` +- [Debug](Debug/Debug.md) - `Debug.h` +- [FileLogSink](FileLogSink/FileLogSink.md) - `FileLogSink.h` +- [ILogSink](ILogSink/ILogSink.md) - `ILogSink.h` +- [LogCategory](LogCategory/LogCategory.md) - `LogCategory.h` +- [LogEntry](LogEntry/LogEntry.md) - `LogEntry.h` +- [Logger](Logger/Logger.md) - `Logger.h` +- [LogLevel](LogLevel/LogLevel.md) - `LogLevel.h` +- [Profiler](Profiler/Profiler.md) - `Profiler.h` +- [RenderDocCapture](RenderDocCapture/RenderDocCapture.md) - `RenderDocCapture.h` + +## 相关文档 + +- [上级目录](../XCEngine.md) +- [API 总索引](../../main.md) diff --git a/docs/api/XCEngine/Debug/Debug/Debug.md b/docs/api/XCEngine/Debug/Debug/Debug.md new file mode 100644 index 00000000..9abd25e1 --- /dev/null +++ b/docs/api/XCEngine/Debug/Debug/Debug.md @@ -0,0 +1,18 @@ +# Debug + +**命名空间**: `XCEngine` + +**类型**: `header` + +**头文件**: `XCEngine/Debug/Debug.h` + +**描述**: 定义 `XCEngine/Debug` 子目录中的 `Debug` public API。 + +## 概述 + +`Debug.h` 是 `XCEngine/Debug` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 相关文档 + +- [当前目录](../Debug.md) - 返回 `Debug` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Debug/FileLogSink/Constructor.md b/docs/api/XCEngine/Debug/FileLogSink/Constructor.md new file mode 100644 index 00000000..a436d7d7 --- /dev/null +++ b/docs/api/XCEngine/Debug/FileLogSink/Constructor.md @@ -0,0 +1,29 @@ +# FileLogSink::FileLogSink() + +构造对象。 + +```cpp +FileLogSink(const Containers::String& filePath); +``` + +该方法声明于 `XCEngine/Debug/FileLogSink.h`,当前页面用于固定 `FileLogSink` 类目录下的方法级 canonical 路径。 + +**参数:** +- `filePath` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::FileLogSink object; +} +``` + +## 相关文档 + +- [返回类总览](FileLogSink.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/FileLogSink/Destructor.md b/docs/api/XCEngine/Debug/FileLogSink/Destructor.md new file mode 100644 index 00000000..275aeafe --- /dev/null +++ b/docs/api/XCEngine/Debug/FileLogSink/Destructor.md @@ -0,0 +1,29 @@ +# FileLogSink::~FileLogSink() + +销毁对象并释放相关资源。 + +```cpp +~FileLogSink() override; +``` + +该方法声明于 `XCEngine/Debug/FileLogSink.h`,当前页面用于固定 `FileLogSink` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::FileLogSink object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](FileLogSink.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/FileLogSink/FileLogSink.md b/docs/api/XCEngine/Debug/FileLogSink/FileLogSink.md new file mode 100644 index 00000000..6d8e86f9 --- /dev/null +++ b/docs/api/XCEngine/Debug/FileLogSink/FileLogSink.md @@ -0,0 +1,33 @@ +# FileLogSink + +**命名空间**: `XCEngine::Debug` + +**类型**: `class` + +**头文件**: `XCEngine/Debug/FileLogSink.h` + +**描述**: 定义 `XCEngine/Debug` 子目录中的 `FileLogSink` public API。 + +## 概述 + +`FileLogSink.h` 是 `XCEngine/Debug` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `FileLogSink` | `class` | 继承自 `ILogSink` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [FileLogSink()](Constructor.md) | 构造对象。 | +| [~FileLogSink()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Log](Log.md) | 公开方法,详见头文件声明。 | +| [Flush](Flush.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Debug.md) - 返回 `Debug` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Debug/FileLogSink/Flush.md b/docs/api/XCEngine/Debug/FileLogSink/Flush.md new file mode 100644 index 00000000..0d52daf2 --- /dev/null +++ b/docs/api/XCEngine/Debug/FileLogSink/Flush.md @@ -0,0 +1,30 @@ +# FileLogSink::Flush + +公开方法,详见头文件声明。 + +```cpp +void Flush() override; +``` + +该方法声明于 `XCEngine/Debug/FileLogSink.h`,当前页面用于固定 `FileLogSink` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::FileLogSink object; + // 根据上下文补齐参数后调用 FileLogSink::Flush(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FileLogSink.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/FileLogSink/Log.md b/docs/api/XCEngine/Debug/FileLogSink/Log.md new file mode 100644 index 00000000..457bf031 --- /dev/null +++ b/docs/api/XCEngine/Debug/FileLogSink/Log.md @@ -0,0 +1,31 @@ +# FileLogSink::Log + +公开方法,详见头文件声明。 + +```cpp +void Log(const LogEntry& entry) override; +``` + +该方法声明于 `XCEngine/Debug/FileLogSink.h`,当前页面用于固定 `FileLogSink` 类目录下的方法级 canonical 路径。 + +**参数:** +- `entry` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::FileLogSink object; + // 根据上下文补齐参数后调用 FileLogSink::Log(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](FileLogSink.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/ILogSink/Destructor.md b/docs/api/XCEngine/Debug/ILogSink/Destructor.md new file mode 100644 index 00000000..6b8252b2 --- /dev/null +++ b/docs/api/XCEngine/Debug/ILogSink/Destructor.md @@ -0,0 +1,29 @@ +# ILogSink::~ILogSink() + +销毁对象并释放相关资源。 + +```cpp +virtual ~ILogSink() = default; +``` + +该方法声明于 `XCEngine/Debug/ILogSink.h`,当前页面用于固定 `ILogSink` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::ILogSink object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](ILogSink.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/ILogSink/Flush.md b/docs/api/XCEngine/Debug/ILogSink/Flush.md new file mode 100644 index 00000000..0303be53 --- /dev/null +++ b/docs/api/XCEngine/Debug/ILogSink/Flush.md @@ -0,0 +1,30 @@ +# ILogSink::Flush + +公开方法,详见头文件声明。 + +```cpp +virtual void Flush() = 0; +``` + +该方法声明于 `XCEngine/Debug/ILogSink.h`,当前页面用于固定 `ILogSink` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::ILogSink object; + // 根据上下文补齐参数后调用 ILogSink::Flush(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ILogSink.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/ILogSink/ILogSink.md b/docs/api/XCEngine/Debug/ILogSink/ILogSink.md new file mode 100644 index 00000000..5011b777 --- /dev/null +++ b/docs/api/XCEngine/Debug/ILogSink/ILogSink.md @@ -0,0 +1,32 @@ +# ILogSink + +**命名空间**: `XCEngine::Debug` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/Debug/ILogSink.h` + +**描述**: 定义 `XCEngine/Debug` 子目录中的 `ILogSink` public API。 + +## 概述 + +`ILogSink.h` 是 `XCEngine/Debug` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `ILogSink` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~ILogSink()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Log](Log.md) | 公开方法,详见头文件声明。 | +| [Flush](Flush.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Debug.md) - 返回 `Debug` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Debug/ILogSink/Log.md b/docs/api/XCEngine/Debug/ILogSink/Log.md new file mode 100644 index 00000000..05ccf487 --- /dev/null +++ b/docs/api/XCEngine/Debug/ILogSink/Log.md @@ -0,0 +1,31 @@ +# ILogSink::Log + +公开方法,详见头文件声明。 + +```cpp +virtual void Log(const LogEntry& entry) = 0; +``` + +该方法声明于 `XCEngine/Debug/ILogSink.h`,当前页面用于固定 `ILogSink` 类目录下的方法级 canonical 路径。 + +**参数:** +- `entry` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::ILogSink object; + // 根据上下文补齐参数后调用 ILogSink::Log(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ILogSink.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/LogCategory/LogCategory.md b/docs/api/XCEngine/Debug/LogCategory/LogCategory.md new file mode 100644 index 00000000..727ab33d --- /dev/null +++ b/docs/api/XCEngine/Debug/LogCategory/LogCategory.md @@ -0,0 +1,40 @@ +# LogCategory + +**命名空间**: `XCEngine::Debug` + +**类型**: `enum class` + +**头文件**: `XCEngine/Debug/LogCategory.h` + +**描述**: 定义 `XCEngine/Debug` 子目录中的 `LogCategory` public API。 + +## 概述 + +`LogCategory.h` 是 `XCEngine/Debug` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `LogCategory` | `enum class` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `General` | - | 枚举项。 | +| `Rendering` | - | 枚举项。 | +| `Physics` | - | 枚举项。 | +| `Audio` | - | 枚举项。 | +| `Scripting` | - | 枚举项。 | +| `Network` | - | 枚举项。 | +| `Memory` | - | 枚举项。 | +| `Threading` | - | 枚举项。 | +| `FileSystem` | - | 枚举项。 | +| `RenderDoc` | - | 枚举项。 | +| `Custom` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../Debug.md) - 返回 `Debug` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Debug/LogEntry/LogEntry.md b/docs/api/XCEngine/Debug/LogEntry/LogEntry.md new file mode 100644 index 00000000..d7fa8750 --- /dev/null +++ b/docs/api/XCEngine/Debug/LogEntry/LogEntry.md @@ -0,0 +1,37 @@ +# LogEntry + +**命名空间**: `XCEngine::Debug` + +**类型**: `struct` + +**头文件**: `XCEngine/Debug/LogEntry.h` + +**描述**: 定义 `XCEngine/Debug` 子目录中的 `LogEntry` public API。 + +## 概述 + +`LogEntry.h` 是 `XCEngine/Debug` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `LogEntry` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `level` | `LogLevel` | 结构体公开字段。 | - | +| `category` | `LogCategory` | 结构体公开字段。 | - | +| `message` | `Containers::String` | 结构体公开字段。 | - | +| `file` | `Containers::String` | 结构体公开字段。 | - | +| `line` | `int32_t` | 结构体公开字段。 | - | +| `function` | `Containers::String` | 结构体公开字段。 | - | +| `timestamp` | `uint64_t` | 结构体公开字段。 | - | +| `threadId` | `uint32_t` | 结构体公开字段。 | - | + +## 相关文档 + +- [当前目录](../Debug.md) - 返回 `Debug` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Debug/LogLevel/LogLevel.md b/docs/api/XCEngine/Debug/LogLevel/LogLevel.md new file mode 100644 index 00000000..a4418532 --- /dev/null +++ b/docs/api/XCEngine/Debug/LogLevel/LogLevel.md @@ -0,0 +1,35 @@ +# LogLevel + +**命名空间**: `XCEngine::Debug` + +**类型**: `enum class` + +**头文件**: `XCEngine/Debug/LogLevel.h` + +**描述**: 定义 `XCEngine/Debug` 子目录中的 `LogLevel` public API。 + +## 概述 + +`LogLevel.h` 是 `XCEngine/Debug` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `LogLevel` | `enum class` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `Verbose` | `0` | 枚举项。 | +| `Debug` | `1` | 枚举项。 | +| `Info` | `2` | 枚举项。 | +| `Warning` | `3` | 枚举项。 | +| `Error` | `4` | 枚举项。 | +| `Fatal` | `5` | 枚举项。 | + +## 相关文档 + +- [当前目录](../Debug.md) - 返回 `Debug` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Debug/Logger/AddSink.md b/docs/api/XCEngine/Debug/Logger/AddSink.md new file mode 100644 index 00000000..6de782a6 --- /dev/null +++ b/docs/api/XCEngine/Debug/Logger/AddSink.md @@ -0,0 +1,31 @@ +# Logger::AddSink + +添加元素或建立关联。 + +```cpp +void AddSink(std::unique_ptr sink); +``` + +该方法声明于 `XCEngine/Debug/Logger.h`,当前页面用于固定 `Logger` 类目录下的方法级 canonical 路径。 + +**参数:** +- `sink` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Logger object; + // 根据上下文补齐参数后调用 Logger::AddSink(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Logger.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Logger/Debug.md b/docs/api/XCEngine/Debug/Logger/Debug.md new file mode 100644 index 00000000..e5a36dfe --- /dev/null +++ b/docs/api/XCEngine/Debug/Logger/Debug.md @@ -0,0 +1,32 @@ +# Logger::Debug + +公开方法,详见头文件声明。 + +```cpp +void Debug(LogCategory category, const Containers::String& message); +``` + +该方法声明于 `XCEngine/Debug/Logger.h`,当前页面用于固定 `Logger` 类目录下的方法级 canonical 路径。 + +**参数:** +- `category` - 参数语义详见头文件声明。 +- `message` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Logger object; + // 根据上下文补齐参数后调用 Logger::Debug(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Logger.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Logger/Error.md b/docs/api/XCEngine/Debug/Logger/Error.md new file mode 100644 index 00000000..14e73c1c --- /dev/null +++ b/docs/api/XCEngine/Debug/Logger/Error.md @@ -0,0 +1,32 @@ +# Logger::Error + +公开方法,详见头文件声明。 + +```cpp +void Error(LogCategory category, const Containers::String& message); +``` + +该方法声明于 `XCEngine/Debug/Logger.h`,当前页面用于固定 `Logger` 类目录下的方法级 canonical 路径。 + +**参数:** +- `category` - 参数语义详见头文件声明。 +- `message` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Logger object; + // 根据上下文补齐参数后调用 Logger::Error(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Logger.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Logger/Fatal.md b/docs/api/XCEngine/Debug/Logger/Fatal.md new file mode 100644 index 00000000..d8da183c --- /dev/null +++ b/docs/api/XCEngine/Debug/Logger/Fatal.md @@ -0,0 +1,32 @@ +# Logger::Fatal + +公开方法,详见头文件声明。 + +```cpp +void Fatal(LogCategory category, const Containers::String& message); +``` + +该方法声明于 `XCEngine/Debug/Logger.h`,当前页面用于固定 `Logger` 类目录下的方法级 canonical 路径。 + +**参数:** +- `category` - 参数语义详见头文件声明。 +- `message` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Logger object; + // 根据上下文补齐参数后调用 Logger::Fatal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Logger.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Logger/Get.md b/docs/api/XCEngine/Debug/Logger/Get.md new file mode 100644 index 00000000..d5a48ac2 --- /dev/null +++ b/docs/api/XCEngine/Debug/Logger/Get.md @@ -0,0 +1,29 @@ +# Logger::Get + +获取相关状态或对象。 + +```cpp +static Logger& Get(); +``` + +该方法声明于 `XCEngine/Debug/Logger.h`,当前页面用于固定 `Logger` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Logger&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + auto& instance = XCEngine::Debug::Logger::Get(); + (void)instance; +} +``` + +## 相关文档 + +- [返回类总览](Logger.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Logger/Info.md b/docs/api/XCEngine/Debug/Logger/Info.md new file mode 100644 index 00000000..8fbf2cb2 --- /dev/null +++ b/docs/api/XCEngine/Debug/Logger/Info.md @@ -0,0 +1,32 @@ +# Logger::Info + +公开方法,详见头文件声明。 + +```cpp +void Info(LogCategory category, const Containers::String& message); +``` + +该方法声明于 `XCEngine/Debug/Logger.h`,当前页面用于固定 `Logger` 类目录下的方法级 canonical 路径。 + +**参数:** +- `category` - 参数语义详见头文件声明。 +- `message` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Logger object; + // 根据上下文补齐参数后调用 Logger::Info(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Logger.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Logger/Initialize.md b/docs/api/XCEngine/Debug/Logger/Initialize.md new file mode 100644 index 00000000..647eef39 --- /dev/null +++ b/docs/api/XCEngine/Debug/Logger/Initialize.md @@ -0,0 +1,30 @@ +# Logger::Initialize + +初始化内部状态。 + +```cpp +void Initialize(); +``` + +该方法声明于 `XCEngine/Debug/Logger.h`,当前页面用于固定 `Logger` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Logger object; + // 根据上下文补齐参数后调用 Logger::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Logger.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Logger/Log.md b/docs/api/XCEngine/Debug/Logger/Log.md new file mode 100644 index 00000000..0acc4d42 --- /dev/null +++ b/docs/api/XCEngine/Debug/Logger/Log.md @@ -0,0 +1,36 @@ +# Logger::Log + +公开方法,详见头文件声明。 + +```cpp +void Log(LogLevel level, LogCategory category, const Containers::String& message, const char* file = nullptr, int32_t line = 0, const char* function = nullptr); +``` + +该方法声明于 `XCEngine/Debug/Logger.h`,当前页面用于固定 `Logger` 类目录下的方法级 canonical 路径。 + +**参数:** +- `level` - 参数语义详见头文件声明。 +- `category` - 参数语义详见头文件声明。 +- `message` - 参数语义详见头文件声明。 +- `file` - 参数语义详见头文件声明。 +- `line` - 参数语义详见头文件声明。 +- `function` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Logger object; + // 根据上下文补齐参数后调用 Logger::Log(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Logger.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Logger/Logger.md b/docs/api/XCEngine/Debug/Logger/Logger.md new file mode 100644 index 00000000..4d3063a3 --- /dev/null +++ b/docs/api/XCEngine/Debug/Logger/Logger.md @@ -0,0 +1,43 @@ +# Logger + +**命名空间**: `XCEngine::Debug` + +**类型**: `class (singleton)` + +**头文件**: `XCEngine/Debug/Logger.h` + +**描述**: 定义 `XCEngine/Debug` 子目录中的 `Logger` public API。 + +## 概述 + +`Logger.h` 是 `XCEngine/Debug` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Logger` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Get](Get.md) | 获取相关状态或对象。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [AddSink](AddSink.md) | 添加元素或建立关联。 | +| [RemoveSink](RemoveSink.md) | 移除元素或解除关联。 | +| [Log](Log.md) | 公开方法,详见头文件声明。 | +| [Verbose](Verbose.md) | 公开方法,详见头文件声明。 | +| [Debug](Debug.md) | 公开方法,详见头文件声明。 | +| [Info](Info.md) | 公开方法,详见头文件声明。 | +| [Warning](Warning.md) | 公开方法,详见头文件声明。 | +| [Error](Error.md) | 公开方法,详见头文件声明。 | +| [Fatal](Fatal.md) | 公开方法,详见头文件声明。 | +| [SetMinimumLevel](SetMinimumLevel.md) | 设置相关状态或配置。 | +| [SetCategoryEnabled](SetCategoryEnabled.md) | 设置相关状态或配置。 | + +## 相关文档 + +- [当前目录](../Debug.md) - 返回 `Debug` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Debug/Logger/RemoveSink.md b/docs/api/XCEngine/Debug/Logger/RemoveSink.md new file mode 100644 index 00000000..8b399f36 --- /dev/null +++ b/docs/api/XCEngine/Debug/Logger/RemoveSink.md @@ -0,0 +1,31 @@ +# Logger::RemoveSink + +移除元素或解除关联。 + +```cpp +void RemoveSink(ILogSink* sink); +``` + +该方法声明于 `XCEngine/Debug/Logger.h`,当前页面用于固定 `Logger` 类目录下的方法级 canonical 路径。 + +**参数:** +- `sink` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Logger object; + // 根据上下文补齐参数后调用 Logger::RemoveSink(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Logger.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Logger/SetCategoryEnabled.md b/docs/api/XCEngine/Debug/Logger/SetCategoryEnabled.md new file mode 100644 index 00000000..e93ed6e9 --- /dev/null +++ b/docs/api/XCEngine/Debug/Logger/SetCategoryEnabled.md @@ -0,0 +1,32 @@ +# Logger::SetCategoryEnabled + +设置相关状态或配置。 + +```cpp +void SetCategoryEnabled(LogCategory category, bool enabled); +``` + +该方法声明于 `XCEngine/Debug/Logger.h`,当前页面用于固定 `Logger` 类目录下的方法级 canonical 路径。 + +**参数:** +- `category` - 参数语义详见头文件声明。 +- `enabled` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Logger object; + // 根据上下文补齐参数后调用 Logger::SetCategoryEnabled(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Logger.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Logger/SetMinimumLevel.md b/docs/api/XCEngine/Debug/Logger/SetMinimumLevel.md new file mode 100644 index 00000000..d0ccf943 --- /dev/null +++ b/docs/api/XCEngine/Debug/Logger/SetMinimumLevel.md @@ -0,0 +1,31 @@ +# Logger::SetMinimumLevel + +设置相关状态或配置。 + +```cpp +void SetMinimumLevel(LogLevel level); +``` + +该方法声明于 `XCEngine/Debug/Logger.h`,当前页面用于固定 `Logger` 类目录下的方法级 canonical 路径。 + +**参数:** +- `level` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Logger object; + // 根据上下文补齐参数后调用 Logger::SetMinimumLevel(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Logger.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Logger/Shutdown.md b/docs/api/XCEngine/Debug/Logger/Shutdown.md new file mode 100644 index 00000000..18694864 --- /dev/null +++ b/docs/api/XCEngine/Debug/Logger/Shutdown.md @@ -0,0 +1,30 @@ +# Logger::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown(); +``` + +该方法声明于 `XCEngine/Debug/Logger.h`,当前页面用于固定 `Logger` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Logger object; + // 根据上下文补齐参数后调用 Logger::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Logger.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Logger/Verbose.md b/docs/api/XCEngine/Debug/Logger/Verbose.md new file mode 100644 index 00000000..b6162d4a --- /dev/null +++ b/docs/api/XCEngine/Debug/Logger/Verbose.md @@ -0,0 +1,32 @@ +# Logger::Verbose + +公开方法,详见头文件声明。 + +```cpp +void Verbose(LogCategory category, const Containers::String& message); +``` + +该方法声明于 `XCEngine/Debug/Logger.h`,当前页面用于固定 `Logger` 类目录下的方法级 canonical 路径。 + +**参数:** +- `category` - 参数语义详见头文件声明。 +- `message` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Logger object; + // 根据上下文补齐参数后调用 Logger::Verbose(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Logger.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Logger/Warning.md b/docs/api/XCEngine/Debug/Logger/Warning.md new file mode 100644 index 00000000..53bca2ce --- /dev/null +++ b/docs/api/XCEngine/Debug/Logger/Warning.md @@ -0,0 +1,32 @@ +# Logger::Warning + +公开方法,详见头文件声明。 + +```cpp +void Warning(LogCategory category, const Containers::String& message); +``` + +该方法声明于 `XCEngine/Debug/Logger.h`,当前页面用于固定 `Logger` 类目录下的方法级 canonical 路径。 + +**参数:** +- `category` - 参数语义详见头文件声明。 +- `message` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Logger object; + // 根据上下文补齐参数后调用 Logger::Warning(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Logger.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Profiler/BeginFrame.md b/docs/api/XCEngine/Debug/Profiler/BeginFrame.md new file mode 100644 index 00000000..3ac53719 --- /dev/null +++ b/docs/api/XCEngine/Debug/Profiler/BeginFrame.md @@ -0,0 +1,30 @@ +# Profiler::BeginFrame + +公开方法,详见头文件声明。 + +```cpp +void BeginFrame(); +``` + +该方法声明于 `XCEngine/Debug/Profiler.h`,当前页面用于固定 `Profiler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Profiler object; + // 根据上下文补齐参数后调用 Profiler::BeginFrame(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Profiler.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Profiler/BeginProfile.md b/docs/api/XCEngine/Debug/Profiler/BeginProfile.md new file mode 100644 index 00000000..e6df05c9 --- /dev/null +++ b/docs/api/XCEngine/Debug/Profiler/BeginProfile.md @@ -0,0 +1,31 @@ +# Profiler::BeginProfile + +公开方法,详见头文件声明。 + +```cpp +void BeginProfile(const char* name); +``` + +该方法声明于 `XCEngine/Debug/Profiler.h`,当前页面用于固定 `Profiler` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Profiler object; + // 根据上下文补齐参数后调用 Profiler::BeginProfile(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Profiler.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Profiler/EndFrame.md b/docs/api/XCEngine/Debug/Profiler/EndFrame.md new file mode 100644 index 00000000..81067f75 --- /dev/null +++ b/docs/api/XCEngine/Debug/Profiler/EndFrame.md @@ -0,0 +1,30 @@ +# Profiler::EndFrame + +公开方法,详见头文件声明。 + +```cpp +void EndFrame(); +``` + +该方法声明于 `XCEngine/Debug/Profiler.h`,当前页面用于固定 `Profiler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Profiler object; + // 根据上下文补齐参数后调用 Profiler::EndFrame(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Profiler.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Profiler/EndProfile.md b/docs/api/XCEngine/Debug/Profiler/EndProfile.md new file mode 100644 index 00000000..8b128fda --- /dev/null +++ b/docs/api/XCEngine/Debug/Profiler/EndProfile.md @@ -0,0 +1,30 @@ +# Profiler::EndProfile + +公开方法,详见头文件声明。 + +```cpp +void EndProfile(); +``` + +该方法声明于 `XCEngine/Debug/Profiler.h`,当前页面用于固定 `Profiler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Profiler object; + // 根据上下文补齐参数后调用 Profiler::EndProfile(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Profiler.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Profiler/ExportChromeTracing.md b/docs/api/XCEngine/Debug/Profiler/ExportChromeTracing.md new file mode 100644 index 00000000..44aed86e --- /dev/null +++ b/docs/api/XCEngine/Debug/Profiler/ExportChromeTracing.md @@ -0,0 +1,31 @@ +# Profiler::ExportChromeTracing + +公开方法,详见头文件声明。 + +```cpp +void ExportChromeTracing(const Containers::String& filePath); +``` + +该方法声明于 `XCEngine/Debug/Profiler.h`,当前页面用于固定 `Profiler` 类目录下的方法级 canonical 路径。 + +**参数:** +- `filePath` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Profiler object; + // 根据上下文补齐参数后调用 Profiler::ExportChromeTracing(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Profiler.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Profiler/Get.md b/docs/api/XCEngine/Debug/Profiler/Get.md new file mode 100644 index 00000000..4b2a0b40 --- /dev/null +++ b/docs/api/XCEngine/Debug/Profiler/Get.md @@ -0,0 +1,29 @@ +# Profiler::Get + +获取相关状态或对象。 + +```cpp +static Profiler& Get(); +``` + +该方法声明于 `XCEngine/Debug/Profiler.h`,当前页面用于固定 `Profiler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Profiler&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + auto& instance = XCEngine::Debug::Profiler::Get(); + (void)instance; +} +``` + +## 相关文档 + +- [返回类总览](Profiler.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Profiler/Initialize.md b/docs/api/XCEngine/Debug/Profiler/Initialize.md new file mode 100644 index 00000000..cdaacfb0 --- /dev/null +++ b/docs/api/XCEngine/Debug/Profiler/Initialize.md @@ -0,0 +1,30 @@ +# Profiler::Initialize + +初始化内部状态。 + +```cpp +void Initialize(); +``` + +该方法声明于 `XCEngine/Debug/Profiler.h`,当前页面用于固定 `Profiler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Profiler object; + // 根据上下文补齐参数后调用 Profiler::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Profiler.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Profiler/MarkEvent.md b/docs/api/XCEngine/Debug/Profiler/MarkEvent.md new file mode 100644 index 00000000..6fdf900e --- /dev/null +++ b/docs/api/XCEngine/Debug/Profiler/MarkEvent.md @@ -0,0 +1,33 @@ +# Profiler::MarkEvent + +公开方法,详见头文件声明。 + +```cpp +void MarkEvent(const char* name, uint64_t timestamp, uint32_t threadId); +``` + +该方法声明于 `XCEngine/Debug/Profiler.h`,当前页面用于固定 `Profiler` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 +- `timestamp` - 参数语义详见头文件声明。 +- `threadId` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Profiler object; + // 根据上下文补齐参数后调用 Profiler::MarkEvent(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Profiler.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Profiler/Profiler.md b/docs/api/XCEngine/Debug/Profiler/Profiler.md new file mode 100644 index 00000000..8cd60d5e --- /dev/null +++ b/docs/api/XCEngine/Debug/Profiler/Profiler.md @@ -0,0 +1,39 @@ +# Profiler + +**命名空间**: `XCEngine::Debug` + +**类型**: `class (singleton)` + +**头文件**: `XCEngine/Debug/Profiler.h` + +**描述**: 定义 `XCEngine/Debug` 子目录中的 `Profiler` public API。 + +## 概述 + +`Profiler.h` 是 `XCEngine/Debug` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Profiler` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Get](Get.md) | 获取相关状态或对象。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [BeginProfile](BeginProfile.md) | 公开方法,详见头文件声明。 | +| [EndProfile](EndProfile.md) | 公开方法,详见头文件声明。 | +| [BeginFrame](BeginFrame.md) | 公开方法,详见头文件声明。 | +| [EndFrame](EndFrame.md) | 公开方法,详见头文件声明。 | +| [MarkEvent](MarkEvent.md) | 公开方法,详见头文件声明。 | +| [SetMarker](SetMarker.md) | 设置相关状态或配置。 | +| [ExportChromeTracing](ExportChromeTracing.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Debug.md) - 返回 `Debug` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Debug/Profiler/SetMarker.md b/docs/api/XCEngine/Debug/Profiler/SetMarker.md new file mode 100644 index 00000000..56c7a37a --- /dev/null +++ b/docs/api/XCEngine/Debug/Profiler/SetMarker.md @@ -0,0 +1,32 @@ +# Profiler::SetMarker + +设置相关状态或配置。 + +```cpp +void SetMarker(const char* name, uint32_t color); +``` + +该方法声明于 `XCEngine/Debug/Profiler.h`,当前页面用于固定 `Profiler` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 +- `color` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Profiler object; + // 根据上下文补齐参数后调用 Profiler::SetMarker(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Profiler.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/Profiler/Shutdown.md b/docs/api/XCEngine/Debug/Profiler/Shutdown.md new file mode 100644 index 00000000..9015ff18 --- /dev/null +++ b/docs/api/XCEngine/Debug/Profiler/Shutdown.md @@ -0,0 +1,30 @@ +# Profiler::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown(); +``` + +该方法声明于 `XCEngine/Debug/Profiler.h`,当前页面用于固定 `Profiler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::Profiler object; + // 根据上下文补齐参数后调用 Profiler::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Profiler.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/RenderDocCapture/BeginCapture.md b/docs/api/XCEngine/Debug/RenderDocCapture/BeginCapture.md new file mode 100644 index 00000000..02df77fc --- /dev/null +++ b/docs/api/XCEngine/Debug/RenderDocCapture/BeginCapture.md @@ -0,0 +1,31 @@ +# RenderDocCapture::BeginCapture + +公开方法,详见头文件声明。 + +```cpp +bool BeginCapture(const char* title = nullptr); +``` + +该方法声明于 `XCEngine/Debug/RenderDocCapture.h`,当前页面用于固定 `RenderDocCapture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `title` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::RenderDocCapture object; + // 根据上下文补齐参数后调用 RenderDocCapture::BeginCapture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RenderDocCapture.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/RenderDocCapture/EndCapture.md b/docs/api/XCEngine/Debug/RenderDocCapture/EndCapture.md new file mode 100644 index 00000000..d02e1cfd --- /dev/null +++ b/docs/api/XCEngine/Debug/RenderDocCapture/EndCapture.md @@ -0,0 +1,30 @@ +# RenderDocCapture::EndCapture + +公开方法,详见头文件声明。 + +```cpp +bool EndCapture(); +``` + +该方法声明于 `XCEngine/Debug/RenderDocCapture.h`,当前页面用于固定 `RenderDocCapture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::RenderDocCapture object; + // 根据上下文补齐参数后调用 RenderDocCapture::EndCapture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RenderDocCapture.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/RenderDocCapture/Get.md b/docs/api/XCEngine/Debug/RenderDocCapture/Get.md new file mode 100644 index 00000000..a8d55b4f --- /dev/null +++ b/docs/api/XCEngine/Debug/RenderDocCapture/Get.md @@ -0,0 +1,29 @@ +# RenderDocCapture::Get + +获取相关状态或对象。 + +```cpp +static RenderDocCapture& Get(); +``` + +该方法声明于 `XCEngine/Debug/RenderDocCapture.h`,当前页面用于固定 `RenderDocCapture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `RenderDocCapture&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + auto& instance = XCEngine::Debug::RenderDocCapture::Get(); + (void)instance; +} +``` + +## 相关文档 + +- [返回类总览](RenderDocCapture.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/RenderDocCapture/GetCapture.md b/docs/api/XCEngine/Debug/RenderDocCapture/GetCapture.md new file mode 100644 index 00000000..dc55d280 --- /dev/null +++ b/docs/api/XCEngine/Debug/RenderDocCapture/GetCapture.md @@ -0,0 +1,32 @@ +# RenderDocCapture::GetCapture + +获取相关状态或对象。 + +```cpp +bool GetCapture(uint32_t index, RenderDocCaptureInfo* info) const; +``` + +该方法声明于 `XCEngine/Debug/RenderDocCapture.h`,当前页面用于固定 `RenderDocCapture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `index` - 参数语义详见头文件声明。 +- `info` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::RenderDocCapture object; + // 根据上下文补齐参数后调用 RenderDocCapture::GetCapture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RenderDocCapture.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/RenderDocCapture/GetNumCaptures.md b/docs/api/XCEngine/Debug/RenderDocCapture/GetNumCaptures.md new file mode 100644 index 00000000..aa3dc758 --- /dev/null +++ b/docs/api/XCEngine/Debug/RenderDocCapture/GetNumCaptures.md @@ -0,0 +1,30 @@ +# RenderDocCapture::GetNumCaptures + +获取相关状态或对象。 + +```cpp +uint32_t GetNumCaptures() const; +``` + +该方法声明于 `XCEngine/Debug/RenderDocCapture.h`,当前页面用于固定 `RenderDocCapture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::RenderDocCapture object; + // 根据上下文补齐参数后调用 RenderDocCapture::GetNumCaptures(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RenderDocCapture.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/RenderDocCapture/Initialize.md b/docs/api/XCEngine/Debug/RenderDocCapture/Initialize.md new file mode 100644 index 00000000..422d5243 --- /dev/null +++ b/docs/api/XCEngine/Debug/RenderDocCapture/Initialize.md @@ -0,0 +1,32 @@ +# RenderDocCapture::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(void* device = nullptr, void* window = nullptr); +``` + +该方法声明于 `XCEngine/Debug/RenderDocCapture.h`,当前页面用于固定 `RenderDocCapture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `window` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::RenderDocCapture object; + // 根据上下文补齐参数后调用 RenderDocCapture::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RenderDocCapture.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/RenderDocCapture/IsCapturing.md b/docs/api/XCEngine/Debug/RenderDocCapture/IsCapturing.md new file mode 100644 index 00000000..301b3996 --- /dev/null +++ b/docs/api/XCEngine/Debug/RenderDocCapture/IsCapturing.md @@ -0,0 +1,30 @@ +# RenderDocCapture::IsCapturing + +查询当前状态。 + +```cpp +bool IsCapturing() const; +``` + +该方法声明于 `XCEngine/Debug/RenderDocCapture.h`,当前页面用于固定 `RenderDocCapture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::RenderDocCapture object; + // 根据上下文补齐参数后调用 RenderDocCapture::IsCapturing(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RenderDocCapture.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/RenderDocCapture/IsLoaded.md b/docs/api/XCEngine/Debug/RenderDocCapture/IsLoaded.md new file mode 100644 index 00000000..aa03cc29 --- /dev/null +++ b/docs/api/XCEngine/Debug/RenderDocCapture/IsLoaded.md @@ -0,0 +1,30 @@ +# RenderDocCapture::IsLoaded + +查询当前状态。 + +```cpp +bool IsLoaded() const; +``` + +该方法声明于 `XCEngine/Debug/RenderDocCapture.h`,当前页面用于固定 `RenderDocCapture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::RenderDocCapture object; + // 根据上下文补齐参数后调用 RenderDocCapture::IsLoaded(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RenderDocCapture.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/RenderDocCapture/LaunchReplayUI.md b/docs/api/XCEngine/Debug/RenderDocCapture/LaunchReplayUI.md new file mode 100644 index 00000000..96e2245f --- /dev/null +++ b/docs/api/XCEngine/Debug/RenderDocCapture/LaunchReplayUI.md @@ -0,0 +1,32 @@ +# RenderDocCapture::LaunchReplayUI + +公开方法,详见头文件声明。 + +```cpp +bool LaunchReplayUI(uint32_t connect = 1, const char* cmdline = nullptr); +``` + +该方法声明于 `XCEngine/Debug/RenderDocCapture.h`,当前页面用于固定 `RenderDocCapture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `connect` - 参数语义详见头文件声明。 +- `cmdline` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::RenderDocCapture object; + // 根据上下文补齐参数后调用 RenderDocCapture::LaunchReplayUI(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RenderDocCapture.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/RenderDocCapture/RenderDocCapture.md b/docs/api/XCEngine/Debug/RenderDocCapture/RenderDocCapture.md new file mode 100644 index 00000000..1a16b794 --- /dev/null +++ b/docs/api/XCEngine/Debug/RenderDocCapture/RenderDocCapture.md @@ -0,0 +1,46 @@ +# RenderDocCapture + +**命名空间**: `XCEngine::Debug` + +**类型**: `class (singleton)` + +**头文件**: `XCEngine/Debug/RenderDocCapture.h` + +**描述**: 定义 `XCEngine/Debug` 子目录中的 `RenderDocCapture` public API。 + +## 概述 + +`RenderDocCapture.h` 是 `XCEngine/Debug` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RenderDocCaptureInfo` | `struct` | 头文件中的公开声明。 | +| `RenderDocCapture` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Get](Get.md) | 获取相关状态或对象。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [SetDevice](SetDevice.md) | 设置相关状态或配置。 | +| [SetWindow](SetWindow.md) | 设置相关状态或配置。 | +| [IsLoaded](IsLoaded.md) | 查询当前状态。 | +| [IsCapturing](IsCapturing.md) | 查询当前状态。 | +| [GetNumCaptures](GetNumCaptures.md) | 获取相关状态或对象。 | +| [GetCapture](GetCapture.md) | 获取相关状态或对象。 | +| [BeginCapture](BeginCapture.md) | 公开方法,详见头文件声明。 | +| [EndCapture](EndCapture.md) | 公开方法,详见头文件声明。 | +| [TriggerCapture](TriggerCapture.md) | 公开方法,详见头文件声明。 | +| [SetCaptureFilePath](SetCaptureFilePath.md) | 设置相关状态或配置。 | +| [SetCaptureComments](SetCaptureComments.md) | 设置相关状态或配置。 | +| [SetCaptureOptionU32](SetCaptureOptionU32.md) | 设置相关状态或配置。 | +| [LaunchReplayUI](LaunchReplayUI.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Debug.md) - 返回 `Debug` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Debug/RenderDocCapture/SetCaptureComments.md b/docs/api/XCEngine/Debug/RenderDocCapture/SetCaptureComments.md new file mode 100644 index 00000000..45ee1a80 --- /dev/null +++ b/docs/api/XCEngine/Debug/RenderDocCapture/SetCaptureComments.md @@ -0,0 +1,31 @@ +# RenderDocCapture::SetCaptureComments + +设置相关状态或配置。 + +```cpp +void SetCaptureComments(const char* comments); +``` + +该方法声明于 `XCEngine/Debug/RenderDocCapture.h`,当前页面用于固定 `RenderDocCapture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `comments` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::RenderDocCapture object; + // 根据上下文补齐参数后调用 RenderDocCapture::SetCaptureComments(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RenderDocCapture.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/RenderDocCapture/SetCaptureFilePath.md b/docs/api/XCEngine/Debug/RenderDocCapture/SetCaptureFilePath.md new file mode 100644 index 00000000..cf4d1cd0 --- /dev/null +++ b/docs/api/XCEngine/Debug/RenderDocCapture/SetCaptureFilePath.md @@ -0,0 +1,31 @@ +# RenderDocCapture::SetCaptureFilePath + +设置相关状态或配置。 + +```cpp +void SetCaptureFilePath(const char* path); +``` + +该方法声明于 `XCEngine/Debug/RenderDocCapture.h`,当前页面用于固定 `RenderDocCapture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::RenderDocCapture object; + // 根据上下文补齐参数后调用 RenderDocCapture::SetCaptureFilePath(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RenderDocCapture.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/RenderDocCapture/SetCaptureOptionU32.md b/docs/api/XCEngine/Debug/RenderDocCapture/SetCaptureOptionU32.md new file mode 100644 index 00000000..a342aacc --- /dev/null +++ b/docs/api/XCEngine/Debug/RenderDocCapture/SetCaptureOptionU32.md @@ -0,0 +1,32 @@ +# RenderDocCapture::SetCaptureOptionU32 + +设置相关状态或配置。 + +```cpp +void SetCaptureOptionU32(uint32_t option, uint32_t value); +``` + +该方法声明于 `XCEngine/Debug/RenderDocCapture.h`,当前页面用于固定 `RenderDocCapture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `option` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::RenderDocCapture object; + // 根据上下文补齐参数后调用 RenderDocCapture::SetCaptureOptionU32(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RenderDocCapture.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/RenderDocCapture/SetDevice.md b/docs/api/XCEngine/Debug/RenderDocCapture/SetDevice.md new file mode 100644 index 00000000..163bd5a2 --- /dev/null +++ b/docs/api/XCEngine/Debug/RenderDocCapture/SetDevice.md @@ -0,0 +1,31 @@ +# RenderDocCapture::SetDevice + +设置相关状态或配置。 + +```cpp +void SetDevice(void* device); +``` + +该方法声明于 `XCEngine/Debug/RenderDocCapture.h`,当前页面用于固定 `RenderDocCapture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::RenderDocCapture object; + // 根据上下文补齐参数后调用 RenderDocCapture::SetDevice(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RenderDocCapture.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/RenderDocCapture/SetWindow.md b/docs/api/XCEngine/Debug/RenderDocCapture/SetWindow.md new file mode 100644 index 00000000..a71e057c --- /dev/null +++ b/docs/api/XCEngine/Debug/RenderDocCapture/SetWindow.md @@ -0,0 +1,31 @@ +# RenderDocCapture::SetWindow + +设置相关状态或配置。 + +```cpp +void SetWindow(void* window); +``` + +该方法声明于 `XCEngine/Debug/RenderDocCapture.h`,当前页面用于固定 `RenderDocCapture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `window` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::RenderDocCapture object; + // 根据上下文补齐参数后调用 RenderDocCapture::SetWindow(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RenderDocCapture.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/RenderDocCapture/Shutdown.md b/docs/api/XCEngine/Debug/RenderDocCapture/Shutdown.md new file mode 100644 index 00000000..b8c8efce --- /dev/null +++ b/docs/api/XCEngine/Debug/RenderDocCapture/Shutdown.md @@ -0,0 +1,30 @@ +# RenderDocCapture::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown(); +``` + +该方法声明于 `XCEngine/Debug/RenderDocCapture.h`,当前页面用于固定 `RenderDocCapture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::RenderDocCapture object; + // 根据上下文补齐参数后调用 RenderDocCapture::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RenderDocCapture.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Debug/RenderDocCapture/TriggerCapture.md b/docs/api/XCEngine/Debug/RenderDocCapture/TriggerCapture.md new file mode 100644 index 00000000..e1636632 --- /dev/null +++ b/docs/api/XCEngine/Debug/RenderDocCapture/TriggerCapture.md @@ -0,0 +1,30 @@ +# RenderDocCapture::TriggerCapture + +公开方法,详见头文件声明。 + +```cpp +void TriggerCapture(); +``` + +该方法声明于 `XCEngine/Debug/RenderDocCapture.h`,当前页面用于固定 `RenderDocCapture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Debug::RenderDocCapture object; + // 根据上下文补齐参数后调用 RenderDocCapture::TriggerCapture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RenderDocCapture.md) +- [返回模块目录](../Debug.md) diff --git a/docs/api/XCEngine/Input/Input.md b/docs/api/XCEngine/Input/Input.md new file mode 100644 index 00000000..bcb88188 --- /dev/null +++ b/docs/api/XCEngine/Input/Input.md @@ -0,0 +1,24 @@ +# Input + +**命名空间**: `XCEngine::Input` + +**类型**: `module` + +**描述**: 输入状态查询、输入事件与平台接入接口。 + +## 概览 + +该目录与 `XCEngine/Input` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 头文件 + +- [InputAxis](InputAxis/InputAxis.md) - `InputAxis.h` +- [InputEvent](InputEvent/InputEvent.md) - `InputEvent.h` +- [InputManager](InputManager/InputManager.md) - `InputManager.h` +- [InputModule](InputModule/InputModule.md) - `InputModule.h` +- [InputTypes](InputTypes/InputTypes.md) - `InputTypes.h` + +## 相关文档 + +- [上级目录](../XCEngine.md) +- [API 总索引](../../main.md) diff --git a/docs/api/XCEngine/Input/InputAxis/Constructor.md b/docs/api/XCEngine/Input/InputAxis/Constructor.md new file mode 100644 index 00000000..3bd23fba --- /dev/null +++ b/docs/api/XCEngine/Input/InputAxis/Constructor.md @@ -0,0 +1,43 @@ +# InputAxis::InputAxis() + +构造对象。 + +该方法在 `XCEngine/Input/InputAxis.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +InputAxis() = default; +``` + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +InputAxis(const Containers::String& name, KeyCode positive, KeyCode negative = KeyCode::None) : m_name(name), m_positiveKey(positive), m_negativeKey(negative); +``` + +**参数:** +- `name` - 参数语义详见头文件声明。 +- `positive` - 参数语义详见头文件声明。 +- `negative` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputAxis object; +} +``` + +## 相关文档 + +- [返回类总览](InputAxis.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputAxis/GetName.md b/docs/api/XCEngine/Input/InputAxis/GetName.md new file mode 100644 index 00000000..4d69db9e --- /dev/null +++ b/docs/api/XCEngine/Input/InputAxis/GetName.md @@ -0,0 +1,30 @@ +# InputAxis::GetName + +获取相关状态或对象。 + +```cpp +const Containers::String& GetName() const; +``` + +该方法声明于 `XCEngine/Input/InputAxis.h`,当前页面用于固定 `InputAxis` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputAxis object; + // 根据上下文补齐参数后调用 InputAxis::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputAxis.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputAxis/GetNegativeKey.md b/docs/api/XCEngine/Input/InputAxis/GetNegativeKey.md new file mode 100644 index 00000000..04625966 --- /dev/null +++ b/docs/api/XCEngine/Input/InputAxis/GetNegativeKey.md @@ -0,0 +1,30 @@ +# InputAxis::GetNegativeKey + +获取相关状态或对象。 + +```cpp +KeyCode GetNegativeKey() const; +``` + +该方法声明于 `XCEngine/Input/InputAxis.h`,当前页面用于固定 `InputAxis` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `KeyCode` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputAxis object; + // 根据上下文补齐参数后调用 InputAxis::GetNegativeKey(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputAxis.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputAxis/GetPositiveKey.md b/docs/api/XCEngine/Input/InputAxis/GetPositiveKey.md new file mode 100644 index 00000000..e144287f --- /dev/null +++ b/docs/api/XCEngine/Input/InputAxis/GetPositiveKey.md @@ -0,0 +1,30 @@ +# InputAxis::GetPositiveKey + +获取相关状态或对象。 + +```cpp +KeyCode GetPositiveKey() const; +``` + +该方法声明于 `XCEngine/Input/InputAxis.h`,当前页面用于固定 `InputAxis` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `KeyCode` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputAxis object; + // 根据上下文补齐参数后调用 InputAxis::GetPositiveKey(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputAxis.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputAxis/GetValue.md b/docs/api/XCEngine/Input/InputAxis/GetValue.md new file mode 100644 index 00000000..33b90307 --- /dev/null +++ b/docs/api/XCEngine/Input/InputAxis/GetValue.md @@ -0,0 +1,30 @@ +# InputAxis::GetValue + +获取相关状态或对象。 + +```cpp +float GetValue() const; +``` + +该方法声明于 `XCEngine/Input/InputAxis.h`,当前页面用于固定 `InputAxis` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputAxis object; + // 根据上下文补齐参数后调用 InputAxis::GetValue(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputAxis.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputAxis/InputAxis.md b/docs/api/XCEngine/Input/InputAxis/InputAxis.md new file mode 100644 index 00000000..0bd6c3c9 --- /dev/null +++ b/docs/api/XCEngine/Input/InputAxis/InputAxis.md @@ -0,0 +1,36 @@ +# InputAxis + +**命名空间**: `XCEngine::Input` + +**类型**: `class` + +**头文件**: `XCEngine/Input/InputAxis.h` + +**描述**: 定义 `XCEngine/Input` 子目录中的 `InputAxis` public API。 + +## 概述 + +`InputAxis.h` 是 `XCEngine/Input` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `InputAxis` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [InputAxis()](Constructor.md) | 构造对象。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [GetPositiveKey](GetPositiveKey.md) | 获取相关状态或对象。 | +| [GetNegativeKey](GetNegativeKey.md) | 获取相关状态或对象。 | +| [SetKeys](SetKeys.md) | 设置相关状态或配置。 | +| [GetValue](GetValue.md) | 获取相关状态或对象。 | +| [SetValue](SetValue.md) | 设置相关状态或配置。 | + +## 相关文档 + +- [当前目录](../Input.md) - 返回 `Input` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Input/InputAxis/SetKeys.md b/docs/api/XCEngine/Input/InputAxis/SetKeys.md new file mode 100644 index 00000000..d3fb9b8a --- /dev/null +++ b/docs/api/XCEngine/Input/InputAxis/SetKeys.md @@ -0,0 +1,32 @@ +# InputAxis::SetKeys + +设置相关状态或配置。 + +```cpp +void SetKeys(KeyCode positive, KeyCode negative); +``` + +该方法声明于 `XCEngine/Input/InputAxis.h`,当前页面用于固定 `InputAxis` 类目录下的方法级 canonical 路径。 + +**参数:** +- `positive` - 参数语义详见头文件声明。 +- `negative` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputAxis object; + // 根据上下文补齐参数后调用 InputAxis::SetKeys(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputAxis.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputAxis/SetValue.md b/docs/api/XCEngine/Input/InputAxis/SetValue.md new file mode 100644 index 00000000..649b609a --- /dev/null +++ b/docs/api/XCEngine/Input/InputAxis/SetValue.md @@ -0,0 +1,31 @@ +# InputAxis::SetValue + +设置相关状态或配置。 + +```cpp +void SetValue(float value); +``` + +该方法声明于 `XCEngine/Input/InputAxis.h`,当前页面用于固定 `InputAxis` 类目录下的方法级 canonical 路径。 + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputAxis object; + // 根据上下文补齐参数后调用 InputAxis::SetValue(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputAxis.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputEvent/InputEvent.md b/docs/api/XCEngine/Input/InputEvent/InputEvent.md new file mode 100644 index 00000000..32d97e4f --- /dev/null +++ b/docs/api/XCEngine/Input/InputEvent/InputEvent.md @@ -0,0 +1,39 @@ +# InputEvent + +**命名空间**: `XCEngine::Input` + +**类型**: `struct` + +**头文件**: `XCEngine/Input/InputEvent.h` + +**描述**: 定义 `XCEngine/Input` 子目录中的 `InputEvent` public API。 + +## 概述 + +`InputEvent.h` 是 `XCEngine/Input` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `KeyEvent` | `struct` | 头文件中的公开声明。 | +| `MouseButtonEvent` | `struct` | 头文件中的公开声明。 | +| `MouseMoveEvent` | `struct` | 头文件中的公开声明。 | +| `MouseWheelEvent` | `struct` | 头文件中的公开声明。 | +| `TextInputEvent` | `struct` | 头文件中的公开声明。 | +| `TouchState` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `keyCode` | `KeyCode` | 结构体公开字段。 | - | +| `alt` | `bool` | 结构体公开字段。 | - | +| `ctrl` | `bool` | 结构体公开字段。 | - | +| `shift` | `bool` | 结构体公开字段。 | - | +| `meta` | `bool` | 结构体公开字段。 | - | + +## 相关文档 + +- [当前目录](../Input.md) - 返回 `Input` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Input/InputManager/ClearAxes.md b/docs/api/XCEngine/Input/InputManager/ClearAxes.md new file mode 100644 index 00000000..139b624d --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/ClearAxes.md @@ -0,0 +1,30 @@ +# InputManager::ClearAxes + +清空内部数据。 + +```cpp +void ClearAxes(); +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::ClearAxes(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/Get.md b/docs/api/XCEngine/Input/InputManager/Get.md new file mode 100644 index 00000000..9f331f1e --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/Get.md @@ -0,0 +1,29 @@ +# InputManager::Get + +获取相关状态或对象。 + +```cpp +static InputManager& Get(); +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `InputManager&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + auto& instance = XCEngine::Input::InputManager::Get(); + (void)instance; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/GetAxis.md b/docs/api/XCEngine/Input/InputManager/GetAxis.md new file mode 100644 index 00000000..a0c40d7b --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/GetAxis.md @@ -0,0 +1,31 @@ +# InputManager::GetAxis + +获取相关状态或对象。 + +```cpp +float GetAxis(const Containers::String& axisName) const; +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `axisName` - 参数语义详见头文件声明。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::GetAxis(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/GetAxisRaw.md b/docs/api/XCEngine/Input/InputManager/GetAxisRaw.md new file mode 100644 index 00000000..b85fbeda --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/GetAxisRaw.md @@ -0,0 +1,31 @@ +# InputManager::GetAxisRaw + +获取相关状态或对象。 + +```cpp +float GetAxisRaw(const Containers::String& axisName) const; +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `axisName` - 参数语义详见头文件声明。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::GetAxisRaw(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/GetButton.md b/docs/api/XCEngine/Input/InputManager/GetButton.md new file mode 100644 index 00000000..4211e79e --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/GetButton.md @@ -0,0 +1,31 @@ +# InputManager::GetButton + +获取相关状态或对象。 + +```cpp +bool GetButton(const Containers::String& buttonName) const; +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buttonName` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::GetButton(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/GetButtonDown.md b/docs/api/XCEngine/Input/InputManager/GetButtonDown.md new file mode 100644 index 00000000..0cf81dab --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/GetButtonDown.md @@ -0,0 +1,31 @@ +# InputManager::GetButtonDown + +获取相关状态或对象。 + +```cpp +bool GetButtonDown(const Containers::String& buttonName) const; +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buttonName` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::GetButtonDown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/GetButtonUp.md b/docs/api/XCEngine/Input/InputManager/GetButtonUp.md new file mode 100644 index 00000000..31e6b070 --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/GetButtonUp.md @@ -0,0 +1,31 @@ +# InputManager::GetButtonUp + +获取相关状态或对象。 + +```cpp +bool GetButtonUp(const Containers::String& buttonName) const; +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buttonName` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::GetButtonUp(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/GetMouseDelta.md b/docs/api/XCEngine/Input/InputManager/GetMouseDelta.md new file mode 100644 index 00000000..2f23313c --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/GetMouseDelta.md @@ -0,0 +1,30 @@ +# InputManager::GetMouseDelta + +获取相关状态或对象。 + +```cpp +Math::Vector2 GetMouseDelta() const; +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Math::Vector2` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::GetMouseDelta(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/GetMousePosition.md b/docs/api/XCEngine/Input/InputManager/GetMousePosition.md new file mode 100644 index 00000000..ab34bf65 --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/GetMousePosition.md @@ -0,0 +1,30 @@ +# InputManager::GetMousePosition + +获取相关状态或对象。 + +```cpp +Math::Vector2 GetMousePosition() const; +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Math::Vector2` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::GetMousePosition(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/GetMouseScrollDelta.md b/docs/api/XCEngine/Input/InputManager/GetMouseScrollDelta.md new file mode 100644 index 00000000..2485c33d --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/GetMouseScrollDelta.md @@ -0,0 +1,30 @@ +# InputManager::GetMouseScrollDelta + +获取相关状态或对象。 + +```cpp +float GetMouseScrollDelta() const; +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::GetMouseScrollDelta(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/GetTouch.md b/docs/api/XCEngine/Input/InputManager/GetTouch.md new file mode 100644 index 00000000..90a6040b --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/GetTouch.md @@ -0,0 +1,31 @@ +# InputManager::GetTouch + +获取相关状态或对象。 + +```cpp +TouchState GetTouch(int index) const; +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `TouchState` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::GetTouch(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/GetTouchCount.md b/docs/api/XCEngine/Input/InputManager/GetTouchCount.md new file mode 100644 index 00000000..f3e6886c --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/GetTouchCount.md @@ -0,0 +1,30 @@ +# InputManager::GetTouchCount + +获取相关状态或对象。 + +```cpp +int GetTouchCount() const; +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::GetTouchCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/Initialize.md b/docs/api/XCEngine/Input/InputManager/Initialize.md new file mode 100644 index 00000000..ccd0a86a --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/Initialize.md @@ -0,0 +1,31 @@ +# InputManager::Initialize + +初始化内部状态。 + +```cpp +void Initialize(void* platformWindowHandle); +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `platformWindowHandle` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/InputManager.md b/docs/api/XCEngine/Input/InputManager/InputManager.md new file mode 100644 index 00000000..ce7dc188 --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/InputManager.md @@ -0,0 +1,63 @@ +# InputManager + +**命名空间**: `XCEngine::Input` + +**类型**: `class (singleton)` + +**头文件**: `XCEngine/Input/InputManager.h` + +**描述**: 定义 `XCEngine/Input` 子目录中的 `InputManager` public API。 + +## 概述 + +`InputManager.h` 是 `XCEngine/Input` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `InputManager` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Get](Get.md) | 获取相关状态或对象。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Update](Update.md) | 更新运行时状态。 | +| [IsKeyDown](IsKeyDown.md) | 查询当前状态。 | +| [IsKeyUp](IsKeyUp.md) | 查询当前状态。 | +| [IsKeyPressed](IsKeyPressed.md) | 查询当前状态。 | +| [GetMousePosition](GetMousePosition.md) | 获取相关状态或对象。 | +| [GetMouseDelta](GetMouseDelta.md) | 获取相关状态或对象。 | +| [GetMouseScrollDelta](GetMouseScrollDelta.md) | 获取相关状态或对象。 | +| [IsMouseButtonDown](IsMouseButtonDown.md) | 查询当前状态。 | +| [IsMouseButtonUp](IsMouseButtonUp.md) | 查询当前状态。 | +| [IsMouseButtonClicked](IsMouseButtonClicked.md) | 查询当前状态。 | +| [GetTouchCount](GetTouchCount.md) | 获取相关状态或对象。 | +| [GetTouch](GetTouch.md) | 获取相关状态或对象。 | +| [GetAxis](GetAxis.md) | 获取相关状态或对象。 | +| [GetAxisRaw](GetAxisRaw.md) | 获取相关状态或对象。 | +| [GetButton](GetButton.md) | 获取相关状态或对象。 | +| [GetButtonDown](GetButtonDown.md) | 获取相关状态或对象。 | +| [GetButtonUp](GetButtonUp.md) | 获取相关状态或对象。 | +| [RegisterAxis](RegisterAxis.md) | 注册对象、回调或映射。 | +| [RegisterButton](RegisterButton.md) | 注册对象、回调或映射。 | +| [ClearAxes](ClearAxes.md) | 清空内部数据。 | +| [OnKeyEvent](OnKeyEvent.md) | 公开方法,详见头文件声明。 | +| [OnMouseButton](OnMouseButton.md) | 公开方法,详见头文件声明。 | +| [OnMouseMove](OnMouseMove.md) | 公开方法,详见头文件声明。 | +| [OnMouseWheel](OnMouseWheel.md) | 公开方法,详见头文件声明。 | +| [OnTextInput](OnTextInput.md) | 公开方法,详见头文件声明。 | +| [ProcessKeyDown](ProcessKeyDown.md) | 公开方法,详见头文件声明。 | +| [ProcessKeyUp](ProcessKeyUp.md) | 公开方法,详见头文件声明。 | +| [ProcessMouseMove](ProcessMouseMove.md) | 公开方法,详见头文件声明。 | +| [ProcessMouseButton](ProcessMouseButton.md) | 公开方法,详见头文件声明。 | +| [ProcessMouseWheel](ProcessMouseWheel.md) | 公开方法,详见头文件声明。 | +| [ProcessTextInput](ProcessTextInput.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Input.md) - 返回 `Input` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Input/InputManager/IsKeyDown.md b/docs/api/XCEngine/Input/InputManager/IsKeyDown.md new file mode 100644 index 00000000..893d567f --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/IsKeyDown.md @@ -0,0 +1,31 @@ +# InputManager::IsKeyDown + +查询当前状态。 + +```cpp +bool IsKeyDown(KeyCode key) const; +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `key` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::IsKeyDown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/IsKeyPressed.md b/docs/api/XCEngine/Input/InputManager/IsKeyPressed.md new file mode 100644 index 00000000..e9a8e5ad --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/IsKeyPressed.md @@ -0,0 +1,31 @@ +# InputManager::IsKeyPressed + +查询当前状态。 + +```cpp +bool IsKeyPressed(KeyCode key) const; +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `key` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::IsKeyPressed(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/IsKeyUp.md b/docs/api/XCEngine/Input/InputManager/IsKeyUp.md new file mode 100644 index 00000000..25ee0d31 --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/IsKeyUp.md @@ -0,0 +1,31 @@ +# InputManager::IsKeyUp + +查询当前状态。 + +```cpp +bool IsKeyUp(KeyCode key) const; +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `key` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::IsKeyUp(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/IsMouseButtonClicked.md b/docs/api/XCEngine/Input/InputManager/IsMouseButtonClicked.md new file mode 100644 index 00000000..e77cb393 --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/IsMouseButtonClicked.md @@ -0,0 +1,31 @@ +# InputManager::IsMouseButtonClicked + +查询当前状态。 + +```cpp +bool IsMouseButtonClicked(MouseButton button) const; +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `button` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::IsMouseButtonClicked(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/IsMouseButtonDown.md b/docs/api/XCEngine/Input/InputManager/IsMouseButtonDown.md new file mode 100644 index 00000000..a5b802f6 --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/IsMouseButtonDown.md @@ -0,0 +1,31 @@ +# InputManager::IsMouseButtonDown + +查询当前状态。 + +```cpp +bool IsMouseButtonDown(MouseButton button) const; +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `button` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::IsMouseButtonDown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/IsMouseButtonUp.md b/docs/api/XCEngine/Input/InputManager/IsMouseButtonUp.md new file mode 100644 index 00000000..61623563 --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/IsMouseButtonUp.md @@ -0,0 +1,31 @@ +# InputManager::IsMouseButtonUp + +查询当前状态。 + +```cpp +bool IsMouseButtonUp(MouseButton button) const; +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `button` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::IsMouseButtonUp(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/OnKeyEvent.md b/docs/api/XCEngine/Input/InputManager/OnKeyEvent.md new file mode 100644 index 00000000..234b5bdd --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/OnKeyEvent.md @@ -0,0 +1,30 @@ +# InputManager::OnKeyEvent + +公开方法,详见头文件声明。 + +```cpp +Core::Event& OnKeyEvent(); +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::Event&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::OnKeyEvent(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/OnMouseButton.md b/docs/api/XCEngine/Input/InputManager/OnMouseButton.md new file mode 100644 index 00000000..ddda6f75 --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/OnMouseButton.md @@ -0,0 +1,30 @@ +# InputManager::OnMouseButton + +公开方法,详见头文件声明。 + +```cpp +Core::Event& OnMouseButton(); +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::Event&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::OnMouseButton(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/OnMouseMove.md b/docs/api/XCEngine/Input/InputManager/OnMouseMove.md new file mode 100644 index 00000000..63d78ad9 --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/OnMouseMove.md @@ -0,0 +1,30 @@ +# InputManager::OnMouseMove + +公开方法,详见头文件声明。 + +```cpp +Core::Event& OnMouseMove(); +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::Event&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::OnMouseMove(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/OnMouseWheel.md b/docs/api/XCEngine/Input/InputManager/OnMouseWheel.md new file mode 100644 index 00000000..d2423b64 --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/OnMouseWheel.md @@ -0,0 +1,30 @@ +# InputManager::OnMouseWheel + +公开方法,详见头文件声明。 + +```cpp +Core::Event& OnMouseWheel(); +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::Event&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::OnMouseWheel(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/OnTextInput.md b/docs/api/XCEngine/Input/InputManager/OnTextInput.md new file mode 100644 index 00000000..01cfe7bb --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/OnTextInput.md @@ -0,0 +1,30 @@ +# InputManager::OnTextInput + +公开方法,详见头文件声明。 + +```cpp +Core::Event& OnTextInput(); +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::Event&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::OnTextInput(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/ProcessKeyDown.md b/docs/api/XCEngine/Input/InputManager/ProcessKeyDown.md new file mode 100644 index 00000000..73ac43c5 --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/ProcessKeyDown.md @@ -0,0 +1,36 @@ +# InputManager::ProcessKeyDown + +公开方法,详见头文件声明。 + +```cpp +void ProcessKeyDown(KeyCode key, bool repeat, bool alt, bool ctrl, bool shift, bool meta); +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `key` - 参数语义详见头文件声明。 +- `repeat` - 参数语义详见头文件声明。 +- `alt` - 参数语义详见头文件声明。 +- `ctrl` - 参数语义详见头文件声明。 +- `shift` - 参数语义详见头文件声明。 +- `meta` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::ProcessKeyDown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/ProcessKeyUp.md b/docs/api/XCEngine/Input/InputManager/ProcessKeyUp.md new file mode 100644 index 00000000..4b89e65a --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/ProcessKeyUp.md @@ -0,0 +1,35 @@ +# InputManager::ProcessKeyUp + +公开方法,详见头文件声明。 + +```cpp +void ProcessKeyUp(KeyCode key, bool alt, bool ctrl, bool shift, bool meta); +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `key` - 参数语义详见头文件声明。 +- `alt` - 参数语义详见头文件声明。 +- `ctrl` - 参数语义详见头文件声明。 +- `shift` - 参数语义详见头文件声明。 +- `meta` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::ProcessKeyUp(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/ProcessMouseButton.md b/docs/api/XCEngine/Input/InputManager/ProcessMouseButton.md new file mode 100644 index 00000000..35582503 --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/ProcessMouseButton.md @@ -0,0 +1,34 @@ +# InputManager::ProcessMouseButton + +公开方法,详见头文件声明。 + +```cpp +void ProcessMouseButton(MouseButton button, bool pressed, int x, int y); +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `button` - 参数语义详见头文件声明。 +- `pressed` - 参数语义详见头文件声明。 +- `x` - 参数语义详见头文件声明。 +- `y` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::ProcessMouseButton(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/ProcessMouseMove.md b/docs/api/XCEngine/Input/InputManager/ProcessMouseMove.md new file mode 100644 index 00000000..5cf68008 --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/ProcessMouseMove.md @@ -0,0 +1,34 @@ +# InputManager::ProcessMouseMove + +公开方法,详见头文件声明。 + +```cpp +void ProcessMouseMove(int x, int y, int deltaX, int deltaY); +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `x` - 参数语义详见头文件声明。 +- `y` - 参数语义详见头文件声明。 +- `deltaX` - 参数语义详见头文件声明。 +- `deltaY` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::ProcessMouseMove(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/ProcessMouseWheel.md b/docs/api/XCEngine/Input/InputManager/ProcessMouseWheel.md new file mode 100644 index 00000000..5b8c37b2 --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/ProcessMouseWheel.md @@ -0,0 +1,33 @@ +# InputManager::ProcessMouseWheel + +公开方法,详见头文件声明。 + +```cpp +void ProcessMouseWheel(float delta, int x, int y); +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `delta` - 参数语义详见头文件声明。 +- `x` - 参数语义详见头文件声明。 +- `y` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::ProcessMouseWheel(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/ProcessTextInput.md b/docs/api/XCEngine/Input/InputManager/ProcessTextInput.md new file mode 100644 index 00000000..0209007f --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/ProcessTextInput.md @@ -0,0 +1,31 @@ +# InputManager::ProcessTextInput + +公开方法,详见头文件声明。 + +```cpp +void ProcessTextInput(char c); +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `c` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::ProcessTextInput(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/RegisterAxis.md b/docs/api/XCEngine/Input/InputManager/RegisterAxis.md new file mode 100644 index 00000000..640763b7 --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/RegisterAxis.md @@ -0,0 +1,31 @@ +# InputManager::RegisterAxis + +注册对象、回调或映射。 + +```cpp +void RegisterAxis(const InputAxis& axis); +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `axis` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::RegisterAxis(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/RegisterButton.md b/docs/api/XCEngine/Input/InputManager/RegisterButton.md new file mode 100644 index 00000000..27be5fdb --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/RegisterButton.md @@ -0,0 +1,32 @@ +# InputManager::RegisterButton + +注册对象、回调或映射。 + +```cpp +void RegisterButton(const Containers::String& name, KeyCode key); +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 +- `key` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::RegisterButton(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/Shutdown.md b/docs/api/XCEngine/Input/InputManager/Shutdown.md new file mode 100644 index 00000000..f5e79c89 --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/Shutdown.md @@ -0,0 +1,30 @@ +# InputManager::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown(); +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputManager/Update.md b/docs/api/XCEngine/Input/InputManager/Update.md new file mode 100644 index 00000000..36835bef --- /dev/null +++ b/docs/api/XCEngine/Input/InputManager/Update.md @@ -0,0 +1,31 @@ +# InputManager::Update + +更新运行时状态。 + +```cpp +void Update(float deltaTime); +``` + +该方法声明于 `XCEngine/Input/InputManager.h`,当前页面用于固定 `InputManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `deltaTime` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputManager object; + // 根据上下文补齐参数后调用 InputManager::Update(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputManager.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputModule/Destructor.md b/docs/api/XCEngine/Input/InputModule/Destructor.md new file mode 100644 index 00000000..e28137da --- /dev/null +++ b/docs/api/XCEngine/Input/InputModule/Destructor.md @@ -0,0 +1,29 @@ +# InputModule::~InputModule() + +销毁对象并释放相关资源。 + +```cpp +virtual ~InputModule() = default; +``` + +该方法声明于 `XCEngine/Input/InputModule.h`,当前页面用于固定 `InputModule` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputModule object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](InputModule.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputModule/HandleMessage.md b/docs/api/XCEngine/Input/InputModule/HandleMessage.md new file mode 100644 index 00000000..c756c95f --- /dev/null +++ b/docs/api/XCEngine/Input/InputModule/HandleMessage.md @@ -0,0 +1,34 @@ +# InputModule::HandleMessage + +公开方法,详见头文件声明。 + +```cpp +virtual void HandleMessage(size_t hwnd, unsigned int msg, size_t wParam, size_t lParam) = 0; +``` + +该方法声明于 `XCEngine/Input/InputModule.h`,当前页面用于固定 `InputModule` 类目录下的方法级 canonical 路径。 + +**参数:** +- `hwnd` - 参数语义详见头文件声明。 +- `msg` - 参数语义详见头文件声明。 +- `wParam` - 参数语义详见头文件声明。 +- `lParam` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputModule object; + // 根据上下文补齐参数后调用 InputModule::HandleMessage(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputModule.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputModule/Initialize.md b/docs/api/XCEngine/Input/InputModule/Initialize.md new file mode 100644 index 00000000..fd6f4b52 --- /dev/null +++ b/docs/api/XCEngine/Input/InputModule/Initialize.md @@ -0,0 +1,31 @@ +# InputModule::Initialize + +初始化内部状态。 + +```cpp +virtual void Initialize(void* windowHandle) = 0; +``` + +该方法声明于 `XCEngine/Input/InputModule.h`,当前页面用于固定 `InputModule` 类目录下的方法级 canonical 路径。 + +**参数:** +- `windowHandle` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputModule object; + // 根据上下文补齐参数后调用 InputModule::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputModule.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputModule/InputModule.md b/docs/api/XCEngine/Input/InputModule/InputModule.md new file mode 100644 index 00000000..d83e4609 --- /dev/null +++ b/docs/api/XCEngine/Input/InputModule/InputModule.md @@ -0,0 +1,34 @@ +# InputModule + +**命名空间**: `XCEngine::Input` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/Input/InputModule.h` + +**描述**: 定义 `XCEngine/Input` 子目录中的 `InputModule` public API。 + +## 概述 + +`InputModule.h` 是 `XCEngine/Input` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `InputModule` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~InputModule()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [PumpEvents](PumpEvents.md) | 公开方法,详见头文件声明。 | +| [HandleMessage](HandleMessage.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Input.md) - 返回 `Input` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Input/InputModule/PumpEvents.md b/docs/api/XCEngine/Input/InputModule/PumpEvents.md new file mode 100644 index 00000000..2c64c3b0 --- /dev/null +++ b/docs/api/XCEngine/Input/InputModule/PumpEvents.md @@ -0,0 +1,30 @@ +# InputModule::PumpEvents + +公开方法,详见头文件声明。 + +```cpp +virtual void PumpEvents() = 0; +``` + +该方法声明于 `XCEngine/Input/InputModule.h`,当前页面用于固定 `InputModule` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputModule object; + // 根据上下文补齐参数后调用 InputModule::PumpEvents(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputModule.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputModule/Shutdown.md b/docs/api/XCEngine/Input/InputModule/Shutdown.md new file mode 100644 index 00000000..347bedaf --- /dev/null +++ b/docs/api/XCEngine/Input/InputModule/Shutdown.md @@ -0,0 +1,30 @@ +# InputModule::Shutdown + +关闭并清理内部状态。 + +```cpp +virtual void Shutdown() = 0; +``` + +该方法声明于 `XCEngine/Input/InputModule.h`,当前页面用于固定 `InputModule` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::InputModule object; + // 根据上下文补齐参数后调用 InputModule::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](InputModule.md) +- [返回模块目录](../Input.md) diff --git a/docs/api/XCEngine/Input/InputTypes/InputTypes.md b/docs/api/XCEngine/Input/InputTypes/InputTypes.md new file mode 100644 index 00000000..6ab025ef --- /dev/null +++ b/docs/api/XCEngine/Input/InputTypes/InputTypes.md @@ -0,0 +1,111 @@ +# InputTypes + +**命名空间**: `XCEngine::Input` + +**类型**: `enum class` + +**头文件**: `XCEngine/Input/InputTypes.h` + +**描述**: 定义 `XCEngine/Input` 子目录中的 `InputTypes` public API。 + +## 概述 + +`InputTypes.h` 是 `XCEngine/Input` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `KeyCode` | `enum class` | 头文件中的公开声明。 | +| `MouseButton` | `enum class` | 头文件中的公开声明。 | +| `JoystickAxis` | `enum class` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `None` | `0` | 枚举项。 | +| `A` | `4` | 枚举项。 | +| `B` | `5` | 枚举项。 | +| `C` | `6` | 枚举项。 | +| `D` | `7` | 枚举项。 | +| `E` | `8` | 枚举项。 | +| `F` | `9` | 枚举项。 | +| `G` | `10` | 枚举项。 | +| `H` | `11` | 枚举项。 | +| `I` | `12` | 枚举项。 | +| `J` | `13` | 枚举项。 | +| `K` | `14` | 枚举项。 | +| `L` | `15` | 枚举项。 | +| `M` | `16` | 枚举项。 | +| `N` | `17` | 枚举项。 | +| `O` | `18` | 枚举项。 | +| `P` | `19` | 枚举项。 | +| `Q` | `20` | 枚举项。 | +| `R` | `21` | 枚举项。 | +| `S` | `22` | 枚举项。 | +| `T` | `23` | 枚举项。 | +| `U` | `24` | 枚举项。 | +| `V` | `25` | 枚举项。 | +| `W` | `26` | 枚举项。 | +| `X` | `27` | 枚举项。 | +| `Y` | `28` | 枚举项。 | +| `Z` | `29` | 枚举项。 | +| `F1` | `58` | 枚举项。 | +| `F2` | `59` | 枚举项。 | +| `F3` | `60` | 枚举项。 | +| `F4` | `61` | 枚举项。 | +| `F5` | `62` | 枚举项。 | +| `F6` | `63` | 枚举项。 | +| `F7` | `64` | 枚举项。 | +| `F8` | `65` | 枚举项。 | +| `F9` | `66` | 枚举项。 | +| `F10` | `67` | 枚举项。 | +| `F11` | `68` | 枚举项。 | +| `F12` | `69` | 枚举项。 | +| `Space` | `49` | 枚举项。 | +| `Tab` | `48` | 枚举项。 | +| `Enter` | `36` | 枚举项。 | +| `Escape` | `53` | 枚举项。 | +| `LeftShift` | `56` | 枚举项。 | +| `RightShift` | `60` | 枚举项。 | +| `LeftCtrl` | `59` | 枚举项。 | +| `RightCtrl` | `62` | 枚举项。 | +| `LeftAlt` | `58` | 枚举项。 | +| `RightAlt` | `61` | 枚举项。 | +| `Up` | `126` | 枚举项。 | +| `Down` | `125` | 枚举项。 | +| `Left` | `123` | 枚举项。 | +| `Right` | `124` | 枚举项。 | +| `Home` | `115` | 枚举项。 | +| `End` | `119` | 枚举项。 | +| `PageUp` | `116` | 枚举项。 | +| `PageDown` | `121` | 枚举项。 | +| `Delete` | `51` | 枚举项。 | +| `Backspace` | `51` | 枚举项。 | +| `Zero` | `39` | 枚举项。 | +| `One` | `30` | 枚举项。 | +| `Two` | `31` | 枚举项。 | +| `Three` | `32` | 枚举项。 | +| `Four` | `33` | 枚举项。 | +| `Five` | `34` | 枚举项。 | +| `Six` | `35` | 枚举项。 | +| `Seven` | `37` | 枚举项。 | +| `Eight` | `38` | 枚举项。 | +| `Nine` | `40` | 枚举项。 | +| `Minus` | `43` | 枚举项。 | +| `Equals` | `46` | 枚举项。 | +| `BracketLeft` | `47` | 枚举项。 | +| `BracketRight` | `54` | 枚举项。 | +| `Semicolon` | `42` | 枚举项。 | +| `Quote` | `40` | 枚举项。 | +| `Comma` | `54` | 枚举项。 | +| `Period` | `55` | 枚举项。 | +| `Slash` | `44` | 枚举项。 | +| `Backslash` | `45` | 枚举项。 | +| `Backtick` | `41` | 枚举项。 | + +## 相关文档 + +- [当前目录](../Input.md) - 返回 `Input` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Memory/Allocator/Allocate.md b/docs/api/XCEngine/Memory/Allocator/Allocate.md new file mode 100644 index 00000000..8528609f --- /dev/null +++ b/docs/api/XCEngine/Memory/Allocator/Allocate.md @@ -0,0 +1,32 @@ +# IAllocator::Allocate + +公开方法,详见头文件声明。 + +```cpp +virtual void* Allocate(size_t size, size_t alignment = 0) = 0; +``` + +该方法声明于 `XCEngine/Memory/Allocator.h`,当前页面用于固定 `IAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `size` - 参数语义详见头文件声明。 +- `alignment` - 参数语义详见头文件声明。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::IAllocator object; + // 根据上下文补齐参数后调用 IAllocator::Allocate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Allocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/Allocator/Allocator.md b/docs/api/XCEngine/Memory/Allocator/Allocator.md new file mode 100644 index 00000000..da0840ec --- /dev/null +++ b/docs/api/XCEngine/Memory/Allocator/Allocator.md @@ -0,0 +1,38 @@ +# Allocator + +**命名空间**: `XCEngine::Memory` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/Memory/Allocator.h` + +**描述**: 定义 `XCEngine/Memory` 子目录中的 `Allocator` public API。 + +## 概述 + +`Allocator.h` 是 `XCEngine/Memory` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `IAllocator` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~IAllocator()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Allocate](Allocate.md) | 公开方法,详见头文件声明。 | +| [Free](Free.md) | 公开方法,详见头文件声明。 | +| [Reallocate](Reallocate.md) | 公开方法,详见头文件声明。 | +| [GetTotalAllocated](GetTotalAllocated.md) | 获取相关状态或对象。 | +| [GetTotalFreed](GetTotalFreed.md) | 获取相关状态或对象。 | +| [GetPeakAllocated](GetPeakAllocated.md) | 获取相关状态或对象。 | +| [GetAllocationCount](GetAllocationCount.md) | 获取相关状态或对象。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Memory.md) - 返回 `Memory` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Memory/Allocator/Destructor.md b/docs/api/XCEngine/Memory/Allocator/Destructor.md new file mode 100644 index 00000000..c62dab8e --- /dev/null +++ b/docs/api/XCEngine/Memory/Allocator/Destructor.md @@ -0,0 +1,29 @@ +# IAllocator::~IAllocator() + +销毁对象并释放相关资源。 + +```cpp +virtual ~IAllocator() = default; +``` + +该方法声明于 `XCEngine/Memory/Allocator.h`,当前页面用于固定 `IAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::IAllocator object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](Allocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/Allocator/Free.md b/docs/api/XCEngine/Memory/Allocator/Free.md new file mode 100644 index 00000000..6d2658f2 --- /dev/null +++ b/docs/api/XCEngine/Memory/Allocator/Free.md @@ -0,0 +1,31 @@ +# IAllocator::Free + +公开方法,详见头文件声明。 + +```cpp +virtual void Free(void* ptr) = 0; +``` + +该方法声明于 `XCEngine/Memory/Allocator.h`,当前页面用于固定 `IAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `ptr` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::IAllocator object; + // 根据上下文补齐参数后调用 IAllocator::Free(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Allocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/Allocator/GetAllocationCount.md b/docs/api/XCEngine/Memory/Allocator/GetAllocationCount.md new file mode 100644 index 00000000..a5e9e1f8 --- /dev/null +++ b/docs/api/XCEngine/Memory/Allocator/GetAllocationCount.md @@ -0,0 +1,30 @@ +# IAllocator::GetAllocationCount + +获取相关状态或对象。 + +```cpp +virtual size_t GetAllocationCount() const = 0; +``` + +该方法声明于 `XCEngine/Memory/Allocator.h`,当前页面用于固定 `IAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::IAllocator object; + // 根据上下文补齐参数后调用 IAllocator::GetAllocationCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Allocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/Allocator/GetName.md b/docs/api/XCEngine/Memory/Allocator/GetName.md new file mode 100644 index 00000000..3f70f8ef --- /dev/null +++ b/docs/api/XCEngine/Memory/Allocator/GetName.md @@ -0,0 +1,30 @@ +# IAllocator::GetName + +获取相关状态或对象。 + +```cpp +virtual const char* GetName() const = 0; +``` + +该方法声明于 `XCEngine/Memory/Allocator.h`,当前页面用于固定 `IAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const char*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::IAllocator object; + // 根据上下文补齐参数后调用 IAllocator::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Allocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/Allocator/GetPeakAllocated.md b/docs/api/XCEngine/Memory/Allocator/GetPeakAllocated.md new file mode 100644 index 00000000..cb4eff6f --- /dev/null +++ b/docs/api/XCEngine/Memory/Allocator/GetPeakAllocated.md @@ -0,0 +1,30 @@ +# IAllocator::GetPeakAllocated + +获取相关状态或对象。 + +```cpp +virtual size_t GetPeakAllocated() const = 0; +``` + +该方法声明于 `XCEngine/Memory/Allocator.h`,当前页面用于固定 `IAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::IAllocator object; + // 根据上下文补齐参数后调用 IAllocator::GetPeakAllocated(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Allocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/Allocator/GetTotalAllocated.md b/docs/api/XCEngine/Memory/Allocator/GetTotalAllocated.md new file mode 100644 index 00000000..89242d48 --- /dev/null +++ b/docs/api/XCEngine/Memory/Allocator/GetTotalAllocated.md @@ -0,0 +1,30 @@ +# IAllocator::GetTotalAllocated + +获取相关状态或对象。 + +```cpp +virtual size_t GetTotalAllocated() const = 0; +``` + +该方法声明于 `XCEngine/Memory/Allocator.h`,当前页面用于固定 `IAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::IAllocator object; + // 根据上下文补齐参数后调用 IAllocator::GetTotalAllocated(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Allocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/Allocator/GetTotalFreed.md b/docs/api/XCEngine/Memory/Allocator/GetTotalFreed.md new file mode 100644 index 00000000..c9787882 --- /dev/null +++ b/docs/api/XCEngine/Memory/Allocator/GetTotalFreed.md @@ -0,0 +1,30 @@ +# IAllocator::GetTotalFreed + +获取相关状态或对象。 + +```cpp +virtual size_t GetTotalFreed() const = 0; +``` + +该方法声明于 `XCEngine/Memory/Allocator.h`,当前页面用于固定 `IAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::IAllocator object; + // 根据上下文补齐参数后调用 IAllocator::GetTotalFreed(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Allocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/Allocator/Reallocate.md b/docs/api/XCEngine/Memory/Allocator/Reallocate.md new file mode 100644 index 00000000..48d37f52 --- /dev/null +++ b/docs/api/XCEngine/Memory/Allocator/Reallocate.md @@ -0,0 +1,32 @@ +# IAllocator::Reallocate + +公开方法,详见头文件声明。 + +```cpp +virtual void* Reallocate(void* ptr, size_t newSize) = 0; +``` + +该方法声明于 `XCEngine/Memory/Allocator.h`,当前页面用于固定 `IAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `ptr` - 参数语义详见头文件声明。 +- `newSize` - 参数语义详见头文件声明。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::IAllocator object; + // 根据上下文补齐参数后调用 IAllocator::Reallocate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Allocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/LinearAllocator/Allocate.md b/docs/api/XCEngine/Memory/LinearAllocator/Allocate.md new file mode 100644 index 00000000..eac03742 --- /dev/null +++ b/docs/api/XCEngine/Memory/LinearAllocator/Allocate.md @@ -0,0 +1,32 @@ +# LinearAllocator::Allocate + +公开方法,详见头文件声明。 + +```cpp +void* Allocate(size_t size, size_t alignment = 8) override; +``` + +该方法声明于 `XCEngine/Memory/LinearAllocator.h`,当前页面用于固定 `LinearAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `size` - 参数语义详见头文件声明。 +- `alignment` - 参数语义详见头文件声明。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::LinearAllocator object; + // 根据上下文补齐参数后调用 LinearAllocator::Allocate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LinearAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/LinearAllocator/Clear.md b/docs/api/XCEngine/Memory/LinearAllocator/Clear.md new file mode 100644 index 00000000..d4884ea1 --- /dev/null +++ b/docs/api/XCEngine/Memory/LinearAllocator/Clear.md @@ -0,0 +1,30 @@ +# LinearAllocator::Clear + +清空内部数据。 + +```cpp +void Clear(); +``` + +该方法声明于 `XCEngine/Memory/LinearAllocator.h`,当前页面用于固定 `LinearAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::LinearAllocator object; + // 根据上下文补齐参数后调用 LinearAllocator::Clear(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LinearAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/LinearAllocator/Constructor.md b/docs/api/XCEngine/Memory/LinearAllocator/Constructor.md new file mode 100644 index 00000000..eae97712 --- /dev/null +++ b/docs/api/XCEngine/Memory/LinearAllocator/Constructor.md @@ -0,0 +1,30 @@ +# LinearAllocator::LinearAllocator() + +构造对象。 + +```cpp +explicit LinearAllocator(size_t size, IAllocator* parent = nullptr); +``` + +该方法声明于 `XCEngine/Memory/LinearAllocator.h`,当前页面用于固定 `LinearAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `size` - 参数语义详见头文件声明。 +- `parent` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::LinearAllocator object; +} +``` + +## 相关文档 + +- [返回类总览](LinearAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/LinearAllocator/Destructor.md b/docs/api/XCEngine/Memory/LinearAllocator/Destructor.md new file mode 100644 index 00000000..055407ef --- /dev/null +++ b/docs/api/XCEngine/Memory/LinearAllocator/Destructor.md @@ -0,0 +1,29 @@ +# LinearAllocator::~LinearAllocator() + +销毁对象并释放相关资源。 + +```cpp +~LinearAllocator() override; +``` + +该方法声明于 `XCEngine/Memory/LinearAllocator.h`,当前页面用于固定 `LinearAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::LinearAllocator object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](LinearAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/LinearAllocator/Free.md b/docs/api/XCEngine/Memory/LinearAllocator/Free.md new file mode 100644 index 00000000..a69fe062 --- /dev/null +++ b/docs/api/XCEngine/Memory/LinearAllocator/Free.md @@ -0,0 +1,31 @@ +# LinearAllocator::Free + +公开方法,详见头文件声明。 + +```cpp +void Free(void* ptr) override; +``` + +该方法声明于 `XCEngine/Memory/LinearAllocator.h`,当前页面用于固定 `LinearAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `ptr` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::LinearAllocator object; + // 根据上下文补齐参数后调用 LinearAllocator::Free(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LinearAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/LinearAllocator/GetAllocationCount.md b/docs/api/XCEngine/Memory/LinearAllocator/GetAllocationCount.md new file mode 100644 index 00000000..3e9230f5 --- /dev/null +++ b/docs/api/XCEngine/Memory/LinearAllocator/GetAllocationCount.md @@ -0,0 +1,30 @@ +# LinearAllocator::GetAllocationCount + +获取相关状态或对象。 + +```cpp +size_t GetAllocationCount() const override; +``` + +该方法声明于 `XCEngine/Memory/LinearAllocator.h`,当前页面用于固定 `LinearAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::LinearAllocator object; + // 根据上下文补齐参数后调用 LinearAllocator::GetAllocationCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LinearAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/LinearAllocator/GetCapacity.md b/docs/api/XCEngine/Memory/LinearAllocator/GetCapacity.md new file mode 100644 index 00000000..a05f3925 --- /dev/null +++ b/docs/api/XCEngine/Memory/LinearAllocator/GetCapacity.md @@ -0,0 +1,30 @@ +# LinearAllocator::GetCapacity + +获取相关状态或对象。 + +```cpp +size_t GetCapacity() const; +``` + +该方法声明于 `XCEngine/Memory/LinearAllocator.h`,当前页面用于固定 `LinearAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::LinearAllocator object; + // 根据上下文补齐参数后调用 LinearAllocator::GetCapacity(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LinearAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/LinearAllocator/GetMarker.md b/docs/api/XCEngine/Memory/LinearAllocator/GetMarker.md new file mode 100644 index 00000000..73f6de00 --- /dev/null +++ b/docs/api/XCEngine/Memory/LinearAllocator/GetMarker.md @@ -0,0 +1,30 @@ +# LinearAllocator::GetMarker + +获取相关状态或对象。 + +```cpp +void* GetMarker() const; +``` + +该方法声明于 `XCEngine/Memory/LinearAllocator.h`,当前页面用于固定 `LinearAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::LinearAllocator object; + // 根据上下文补齐参数后调用 LinearAllocator::GetMarker(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LinearAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/LinearAllocator/GetName.md b/docs/api/XCEngine/Memory/LinearAllocator/GetName.md new file mode 100644 index 00000000..36786721 --- /dev/null +++ b/docs/api/XCEngine/Memory/LinearAllocator/GetName.md @@ -0,0 +1,30 @@ +# LinearAllocator::GetName + +获取相关状态或对象。 + +```cpp +const char* GetName() const override; +``` + +该方法声明于 `XCEngine/Memory/LinearAllocator.h`,当前页面用于固定 `LinearAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const char*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::LinearAllocator object; + // 根据上下文补齐参数后调用 LinearAllocator::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LinearAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/LinearAllocator/GetPeakAllocated.md b/docs/api/XCEngine/Memory/LinearAllocator/GetPeakAllocated.md new file mode 100644 index 00000000..c40b8f34 --- /dev/null +++ b/docs/api/XCEngine/Memory/LinearAllocator/GetPeakAllocated.md @@ -0,0 +1,30 @@ +# LinearAllocator::GetPeakAllocated + +获取相关状态或对象。 + +```cpp +size_t GetPeakAllocated() const override; +``` + +该方法声明于 `XCEngine/Memory/LinearAllocator.h`,当前页面用于固定 `LinearAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::LinearAllocator object; + // 根据上下文补齐参数后调用 LinearAllocator::GetPeakAllocated(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LinearAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/LinearAllocator/GetTotalAllocated.md b/docs/api/XCEngine/Memory/LinearAllocator/GetTotalAllocated.md new file mode 100644 index 00000000..10a43bf4 --- /dev/null +++ b/docs/api/XCEngine/Memory/LinearAllocator/GetTotalAllocated.md @@ -0,0 +1,30 @@ +# LinearAllocator::GetTotalAllocated + +获取相关状态或对象。 + +```cpp +size_t GetTotalAllocated() const override; +``` + +该方法声明于 `XCEngine/Memory/LinearAllocator.h`,当前页面用于固定 `LinearAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::LinearAllocator object; + // 根据上下文补齐参数后调用 LinearAllocator::GetTotalAllocated(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LinearAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/LinearAllocator/GetTotalFreed.md b/docs/api/XCEngine/Memory/LinearAllocator/GetTotalFreed.md new file mode 100644 index 00000000..b60b46bc --- /dev/null +++ b/docs/api/XCEngine/Memory/LinearAllocator/GetTotalFreed.md @@ -0,0 +1,30 @@ +# LinearAllocator::GetTotalFreed + +获取相关状态或对象。 + +```cpp +size_t GetTotalFreed() const override; +``` + +该方法声明于 `XCEngine/Memory/LinearAllocator.h`,当前页面用于固定 `LinearAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::LinearAllocator object; + // 根据上下文补齐参数后调用 LinearAllocator::GetTotalFreed(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LinearAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/LinearAllocator/GetUsedSize.md b/docs/api/XCEngine/Memory/LinearAllocator/GetUsedSize.md new file mode 100644 index 00000000..caf19065 --- /dev/null +++ b/docs/api/XCEngine/Memory/LinearAllocator/GetUsedSize.md @@ -0,0 +1,30 @@ +# LinearAllocator::GetUsedSize + +获取相关状态或对象。 + +```cpp +size_t GetUsedSize() const; +``` + +该方法声明于 `XCEngine/Memory/LinearAllocator.h`,当前页面用于固定 `LinearAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::LinearAllocator object; + // 根据上下文补齐参数后调用 LinearAllocator::GetUsedSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LinearAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/LinearAllocator/LinearAllocator.md b/docs/api/XCEngine/Memory/LinearAllocator/LinearAllocator.md new file mode 100644 index 00000000..9563257e --- /dev/null +++ b/docs/api/XCEngine/Memory/LinearAllocator/LinearAllocator.md @@ -0,0 +1,44 @@ +# LinearAllocator + +**命名空间**: `XCEngine::Memory` + +**类型**: `class` + +**头文件**: `XCEngine/Memory/LinearAllocator.h` + +**描述**: 定义 `XCEngine/Memory` 子目录中的 `LinearAllocator` public API。 + +## 概述 + +`LinearAllocator.h` 是 `XCEngine/Memory` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `LinearAllocator` | `class` | 继承自 `IAllocator` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [LinearAllocator()](Constructor.md) | 构造对象。 | +| [~LinearAllocator()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Allocate](Allocate.md) | 公开方法,详见头文件声明。 | +| [Free](Free.md) | 公开方法,详见头文件声明。 | +| [Reallocate](Reallocate.md) | 公开方法,详见头文件声明。 | +| [Clear](Clear.md) | 清空内部数据。 | +| [GetMarker](GetMarker.md) | 获取相关状态或对象。 | +| [SetMarker](SetMarker.md) | 设置相关状态或配置。 | +| [GetUsedSize](GetUsedSize.md) | 获取相关状态或对象。 | +| [GetCapacity](GetCapacity.md) | 获取相关状态或对象。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [GetTotalAllocated](GetTotalAllocated.md) | 获取相关状态或对象。 | +| [GetTotalFreed](GetTotalFreed.md) | 获取相关状态或对象。 | +| [GetPeakAllocated](GetPeakAllocated.md) | 获取相关状态或对象。 | +| [GetAllocationCount](GetAllocationCount.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Memory.md) - 返回 `Memory` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Memory/LinearAllocator/Reallocate.md b/docs/api/XCEngine/Memory/LinearAllocator/Reallocate.md new file mode 100644 index 00000000..4033515c --- /dev/null +++ b/docs/api/XCEngine/Memory/LinearAllocator/Reallocate.md @@ -0,0 +1,32 @@ +# LinearAllocator::Reallocate + +公开方法,详见头文件声明。 + +```cpp +void* Reallocate(void* ptr, size_t newSize) override; +``` + +该方法声明于 `XCEngine/Memory/LinearAllocator.h`,当前页面用于固定 `LinearAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `ptr` - 参数语义详见头文件声明。 +- `newSize` - 参数语义详见头文件声明。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::LinearAllocator object; + // 根据上下文补齐参数后调用 LinearAllocator::Reallocate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LinearAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/LinearAllocator/SetMarker.md b/docs/api/XCEngine/Memory/LinearAllocator/SetMarker.md new file mode 100644 index 00000000..5498af85 --- /dev/null +++ b/docs/api/XCEngine/Memory/LinearAllocator/SetMarker.md @@ -0,0 +1,31 @@ +# LinearAllocator::SetMarker + +设置相关状态或配置。 + +```cpp +void SetMarker(void* marker); +``` + +该方法声明于 `XCEngine/Memory/LinearAllocator.h`,当前页面用于固定 `LinearAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `marker` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::LinearAllocator object; + // 根据上下文补齐参数后调用 LinearAllocator::SetMarker(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LinearAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/Memory.md b/docs/api/XCEngine/Memory/Memory.md new file mode 100644 index 00000000..74c65b8b --- /dev/null +++ b/docs/api/XCEngine/Memory/Memory.md @@ -0,0 +1,24 @@ +# Memory + +**命名空间**: `XCEngine::Memory` + +**类型**: `module` + +**描述**: 分配器与内存管理。 + +## 概览 + +该目录与 `XCEngine/Memory` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 头文件 + +- [Allocator](Allocator/Allocator.md) - `Allocator.h` +- [LinearAllocator](LinearAllocator/LinearAllocator.md) - `LinearAllocator.h` +- [MemoryManager](MemoryManager/MemoryManager.md) - `MemoryManager.h` +- [PoolAllocator](PoolAllocator/PoolAllocator.md) - `PoolAllocator.h` +- [ProxyAllocator](ProxyAllocator/ProxyAllocator.md) - `ProxyAllocator.h` + +## 相关文档 + +- [上级目录](../XCEngine.md) +- [API 总索引](../../main.md) diff --git a/docs/api/XCEngine/Memory/MemoryManager/CreateLinearAllocator.md b/docs/api/XCEngine/Memory/MemoryManager/CreateLinearAllocator.md new file mode 100644 index 00000000..356154ca --- /dev/null +++ b/docs/api/XCEngine/Memory/MemoryManager/CreateLinearAllocator.md @@ -0,0 +1,31 @@ +# MemoryManager::CreateLinearAllocator + +创建新对象或资源。 + +```cpp +std::unique_ptr CreateLinearAllocator(size_t size); +``` + +该方法声明于 `XCEngine/Memory/MemoryManager.h`,当前页面用于固定 `MemoryManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `size` - 参数语义详见头文件声明。 + +**返回:** `std::unique_ptr` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::MemoryManager object; + // 根据上下文补齐参数后调用 MemoryManager::CreateLinearAllocator(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MemoryManager.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/MemoryManager/CreatePoolAllocator.md b/docs/api/XCEngine/Memory/MemoryManager/CreatePoolAllocator.md new file mode 100644 index 00000000..872bb012 --- /dev/null +++ b/docs/api/XCEngine/Memory/MemoryManager/CreatePoolAllocator.md @@ -0,0 +1,32 @@ +# MemoryManager::CreatePoolAllocator + +创建新对象或资源。 + +```cpp +std::unique_ptr CreatePoolAllocator(size_t blockSize, size_t count); +``` + +该方法声明于 `XCEngine/Memory/MemoryManager.h`,当前页面用于固定 `MemoryManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `blockSize` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 + +**返回:** `std::unique_ptr` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::MemoryManager object; + // 根据上下文补齐参数后调用 MemoryManager::CreatePoolAllocator(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MemoryManager.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/MemoryManager/CreateProxyAllocator.md b/docs/api/XCEngine/Memory/MemoryManager/CreateProxyAllocator.md new file mode 100644 index 00000000..44841088 --- /dev/null +++ b/docs/api/XCEngine/Memory/MemoryManager/CreateProxyAllocator.md @@ -0,0 +1,31 @@ +# MemoryManager::CreateProxyAllocator + +创建新对象或资源。 + +```cpp +std::unique_ptr CreateProxyAllocator(const char* name); +``` + +该方法声明于 `XCEngine/Memory/MemoryManager.h`,当前页面用于固定 `MemoryManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `std::unique_ptr` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::MemoryManager object; + // 根据上下文补齐参数后调用 MemoryManager::CreateProxyAllocator(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MemoryManager.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/MemoryManager/DumpMemoryLeaks.md b/docs/api/XCEngine/Memory/MemoryManager/DumpMemoryLeaks.md new file mode 100644 index 00000000..cca28720 --- /dev/null +++ b/docs/api/XCEngine/Memory/MemoryManager/DumpMemoryLeaks.md @@ -0,0 +1,30 @@ +# MemoryManager::DumpMemoryLeaks + +公开方法,详见头文件声明。 + +```cpp +void DumpMemoryLeaks(); +``` + +该方法声明于 `XCEngine/Memory/MemoryManager.h`,当前页面用于固定 `MemoryManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::MemoryManager object; + // 根据上下文补齐参数后调用 MemoryManager::DumpMemoryLeaks(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MemoryManager.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/MemoryManager/GenerateMemoryReport.md b/docs/api/XCEngine/Memory/MemoryManager/GenerateMemoryReport.md new file mode 100644 index 00000000..34a4c136 --- /dev/null +++ b/docs/api/XCEngine/Memory/MemoryManager/GenerateMemoryReport.md @@ -0,0 +1,30 @@ +# MemoryManager::GenerateMemoryReport + +公开方法,详见头文件声明。 + +```cpp +void GenerateMemoryReport(); +``` + +该方法声明于 `XCEngine/Memory/MemoryManager.h`,当前页面用于固定 `MemoryManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::MemoryManager object; + // 根据上下文补齐参数后调用 MemoryManager::GenerateMemoryReport(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MemoryManager.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/MemoryManager/Get.md b/docs/api/XCEngine/Memory/MemoryManager/Get.md new file mode 100644 index 00000000..cf1b342e --- /dev/null +++ b/docs/api/XCEngine/Memory/MemoryManager/Get.md @@ -0,0 +1,29 @@ +# MemoryManager::Get + +获取相关状态或对象。 + +```cpp +static MemoryManager& Get(); +``` + +该方法声明于 `XCEngine/Memory/MemoryManager.h`,当前页面用于固定 `MemoryManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `MemoryManager&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + auto& instance = XCEngine::Memory::MemoryManager::Get(); + (void)instance; +} +``` + +## 相关文档 + +- [返回类总览](MemoryManager.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/MemoryManager/GetSystemAllocator.md b/docs/api/XCEngine/Memory/MemoryManager/GetSystemAllocator.md new file mode 100644 index 00000000..69c53bb3 --- /dev/null +++ b/docs/api/XCEngine/Memory/MemoryManager/GetSystemAllocator.md @@ -0,0 +1,30 @@ +# MemoryManager::GetSystemAllocator + +获取相关状态或对象。 + +```cpp +IAllocator* GetSystemAllocator(); +``` + +该方法声明于 `XCEngine/Memory/MemoryManager.h`,当前页面用于固定 `MemoryManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `IAllocator*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::MemoryManager object; + // 根据上下文补齐参数后调用 MemoryManager::GetSystemAllocator(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MemoryManager.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/MemoryManager/Initialize.md b/docs/api/XCEngine/Memory/MemoryManager/Initialize.md new file mode 100644 index 00000000..661ea5b4 --- /dev/null +++ b/docs/api/XCEngine/Memory/MemoryManager/Initialize.md @@ -0,0 +1,30 @@ +# MemoryManager::Initialize + +初始化内部状态。 + +```cpp +void Initialize(); +``` + +该方法声明于 `XCEngine/Memory/MemoryManager.h`,当前页面用于固定 `MemoryManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::MemoryManager object; + // 根据上下文补齐参数后调用 MemoryManager::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MemoryManager.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/MemoryManager/MemoryManager.md b/docs/api/XCEngine/Memory/MemoryManager/MemoryManager.md new file mode 100644 index 00000000..18c36e01 --- /dev/null +++ b/docs/api/XCEngine/Memory/MemoryManager/MemoryManager.md @@ -0,0 +1,39 @@ +# MemoryManager + +**命名空间**: `XCEngine::Memory` + +**类型**: `class (singleton)` + +**头文件**: `XCEngine/Memory/MemoryManager.h` + +**描述**: 定义 `XCEngine/Memory` 子目录中的 `MemoryManager` public API。 + +## 概述 + +`MemoryManager.h` 是 `XCEngine/Memory` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `MemoryManager` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Get](Get.md) | 获取相关状态或对象。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetSystemAllocator](GetSystemAllocator.md) | 获取相关状态或对象。 | +| [CreateLinearAllocator](CreateLinearAllocator.md) | 创建新对象或资源。 | +| [CreatePoolAllocator](CreatePoolAllocator.md) | 创建新对象或资源。 | +| [CreateProxyAllocator](CreateProxyAllocator.md) | 创建新对象或资源。 | +| [SetTrackAllocations](SetTrackAllocations.md) | 设置相关状态或配置。 | +| [DumpMemoryLeaks](DumpMemoryLeaks.md) | 公开方法,详见头文件声明。 | +| [GenerateMemoryReport](GenerateMemoryReport.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Memory.md) - 返回 `Memory` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Memory/MemoryManager/SetTrackAllocations.md b/docs/api/XCEngine/Memory/MemoryManager/SetTrackAllocations.md new file mode 100644 index 00000000..927320a5 --- /dev/null +++ b/docs/api/XCEngine/Memory/MemoryManager/SetTrackAllocations.md @@ -0,0 +1,31 @@ +# MemoryManager::SetTrackAllocations + +设置相关状态或配置。 + +```cpp +void SetTrackAllocations(bool track); +``` + +该方法声明于 `XCEngine/Memory/MemoryManager.h`,当前页面用于固定 `MemoryManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `track` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::MemoryManager object; + // 根据上下文补齐参数后调用 MemoryManager::SetTrackAllocations(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MemoryManager.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/MemoryManager/Shutdown.md b/docs/api/XCEngine/Memory/MemoryManager/Shutdown.md new file mode 100644 index 00000000..84012238 --- /dev/null +++ b/docs/api/XCEngine/Memory/MemoryManager/Shutdown.md @@ -0,0 +1,30 @@ +# MemoryManager::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown(); +``` + +该方法声明于 `XCEngine/Memory/MemoryManager.h`,当前页面用于固定 `MemoryManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::MemoryManager object; + // 根据上下文补齐参数后调用 MemoryManager::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MemoryManager.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/PoolAllocator/Allocate.md b/docs/api/XCEngine/Memory/PoolAllocator/Allocate.md new file mode 100644 index 00000000..9a97a115 --- /dev/null +++ b/docs/api/XCEngine/Memory/PoolAllocator/Allocate.md @@ -0,0 +1,32 @@ +# PoolAllocator::Allocate + +公开方法,详见头文件声明。 + +```cpp +void* Allocate(size_t size, size_t alignment = 0) override; +``` + +该方法声明于 `XCEngine/Memory/PoolAllocator.h`,当前页面用于固定 `PoolAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `size` - 参数语义详见头文件声明。 +- `alignment` - 参数语义详见头文件声明。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::PoolAllocator object; + // 根据上下文补齐参数后调用 PoolAllocator::Allocate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](PoolAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/PoolAllocator/Constructor.md b/docs/api/XCEngine/Memory/PoolAllocator/Constructor.md new file mode 100644 index 00000000..48075e02 --- /dev/null +++ b/docs/api/XCEngine/Memory/PoolAllocator/Constructor.md @@ -0,0 +1,31 @@ +# PoolAllocator::PoolAllocator() + +构造对象。 + +```cpp +PoolAllocator(size_t blockSize, size_t poolSize, size_t alignment = 8); +``` + +该方法声明于 `XCEngine/Memory/PoolAllocator.h`,当前页面用于固定 `PoolAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `blockSize` - 参数语义详见头文件声明。 +- `poolSize` - 参数语义详见头文件声明。 +- `alignment` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::PoolAllocator object; +} +``` + +## 相关文档 + +- [返回类总览](PoolAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/PoolAllocator/Contains.md b/docs/api/XCEngine/Memory/PoolAllocator/Contains.md new file mode 100644 index 00000000..cb59f7f6 --- /dev/null +++ b/docs/api/XCEngine/Memory/PoolAllocator/Contains.md @@ -0,0 +1,31 @@ +# PoolAllocator::Contains + +公开方法,详见头文件声明。 + +```cpp +bool Contains(void* ptr) const; +``` + +该方法声明于 `XCEngine/Memory/PoolAllocator.h`,当前页面用于固定 `PoolAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `ptr` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::PoolAllocator object; + // 根据上下文补齐参数后调用 PoolAllocator::Contains(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](PoolAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/PoolAllocator/Destructor.md b/docs/api/XCEngine/Memory/PoolAllocator/Destructor.md new file mode 100644 index 00000000..e5d2e2f9 --- /dev/null +++ b/docs/api/XCEngine/Memory/PoolAllocator/Destructor.md @@ -0,0 +1,29 @@ +# PoolAllocator::~PoolAllocator() + +销毁对象并释放相关资源。 + +```cpp +~PoolAllocator() override; +``` + +该方法声明于 `XCEngine/Memory/PoolAllocator.h`,当前页面用于固定 `PoolAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::PoolAllocator object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](PoolAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/PoolAllocator/Free.md b/docs/api/XCEngine/Memory/PoolAllocator/Free.md new file mode 100644 index 00000000..c5aec6e4 --- /dev/null +++ b/docs/api/XCEngine/Memory/PoolAllocator/Free.md @@ -0,0 +1,31 @@ +# PoolAllocator::Free + +公开方法,详见头文件声明。 + +```cpp +void Free(void* ptr) override; +``` + +该方法声明于 `XCEngine/Memory/PoolAllocator.h`,当前页面用于固定 `PoolAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `ptr` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::PoolAllocator object; + // 根据上下文补齐参数后调用 PoolAllocator::Free(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](PoolAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/PoolAllocator/GetAllocationCount.md b/docs/api/XCEngine/Memory/PoolAllocator/GetAllocationCount.md new file mode 100644 index 00000000..991d7332 --- /dev/null +++ b/docs/api/XCEngine/Memory/PoolAllocator/GetAllocationCount.md @@ -0,0 +1,30 @@ +# PoolAllocator::GetAllocationCount + +获取相关状态或对象。 + +```cpp +size_t GetAllocationCount() const override; +``` + +该方法声明于 `XCEngine/Memory/PoolAllocator.h`,当前页面用于固定 `PoolAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::PoolAllocator object; + // 根据上下文补齐参数后调用 PoolAllocator::GetAllocationCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](PoolAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/PoolAllocator/GetBlockSize.md b/docs/api/XCEngine/Memory/PoolAllocator/GetBlockSize.md new file mode 100644 index 00000000..3c3ef7ee --- /dev/null +++ b/docs/api/XCEngine/Memory/PoolAllocator/GetBlockSize.md @@ -0,0 +1,30 @@ +# PoolAllocator::GetBlockSize + +获取相关状态或对象。 + +```cpp +size_t GetBlockSize() const; +``` + +该方法声明于 `XCEngine/Memory/PoolAllocator.h`,当前页面用于固定 `PoolAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::PoolAllocator object; + // 根据上下文补齐参数后调用 PoolAllocator::GetBlockSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](PoolAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/PoolAllocator/GetFreeBlockCount.md b/docs/api/XCEngine/Memory/PoolAllocator/GetFreeBlockCount.md new file mode 100644 index 00000000..f976c7ec --- /dev/null +++ b/docs/api/XCEngine/Memory/PoolAllocator/GetFreeBlockCount.md @@ -0,0 +1,30 @@ +# PoolAllocator::GetFreeBlockCount + +获取相关状态或对象。 + +```cpp +size_t GetFreeBlockCount() const; +``` + +该方法声明于 `XCEngine/Memory/PoolAllocator.h`,当前页面用于固定 `PoolAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::PoolAllocator object; + // 根据上下文补齐参数后调用 PoolAllocator::GetFreeBlockCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](PoolAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/PoolAllocator/GetName.md b/docs/api/XCEngine/Memory/PoolAllocator/GetName.md new file mode 100644 index 00000000..c526db31 --- /dev/null +++ b/docs/api/XCEngine/Memory/PoolAllocator/GetName.md @@ -0,0 +1,30 @@ +# PoolAllocator::GetName + +获取相关状态或对象。 + +```cpp +const char* GetName() const override; +``` + +该方法声明于 `XCEngine/Memory/PoolAllocator.h`,当前页面用于固定 `PoolAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const char*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::PoolAllocator object; + // 根据上下文补齐参数后调用 PoolAllocator::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](PoolAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/PoolAllocator/GetPeakAllocated.md b/docs/api/XCEngine/Memory/PoolAllocator/GetPeakAllocated.md new file mode 100644 index 00000000..a65cb83a --- /dev/null +++ b/docs/api/XCEngine/Memory/PoolAllocator/GetPeakAllocated.md @@ -0,0 +1,30 @@ +# PoolAllocator::GetPeakAllocated + +获取相关状态或对象。 + +```cpp +size_t GetPeakAllocated() const override; +``` + +该方法声明于 `XCEngine/Memory/PoolAllocator.h`,当前页面用于固定 `PoolAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::PoolAllocator object; + // 根据上下文补齐参数后调用 PoolAllocator::GetPeakAllocated(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](PoolAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/PoolAllocator/GetTotalAllocated.md b/docs/api/XCEngine/Memory/PoolAllocator/GetTotalAllocated.md new file mode 100644 index 00000000..6d81c961 --- /dev/null +++ b/docs/api/XCEngine/Memory/PoolAllocator/GetTotalAllocated.md @@ -0,0 +1,30 @@ +# PoolAllocator::GetTotalAllocated + +获取相关状态或对象。 + +```cpp +size_t GetTotalAllocated() const override; +``` + +该方法声明于 `XCEngine/Memory/PoolAllocator.h`,当前页面用于固定 `PoolAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::PoolAllocator object; + // 根据上下文补齐参数后调用 PoolAllocator::GetTotalAllocated(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](PoolAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/PoolAllocator/GetTotalBlockCount.md b/docs/api/XCEngine/Memory/PoolAllocator/GetTotalBlockCount.md new file mode 100644 index 00000000..d7ea685e --- /dev/null +++ b/docs/api/XCEngine/Memory/PoolAllocator/GetTotalBlockCount.md @@ -0,0 +1,30 @@ +# PoolAllocator::GetTotalBlockCount + +获取相关状态或对象。 + +```cpp +size_t GetTotalBlockCount() const; +``` + +该方法声明于 `XCEngine/Memory/PoolAllocator.h`,当前页面用于固定 `PoolAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::PoolAllocator object; + // 根据上下文补齐参数后调用 PoolAllocator::GetTotalBlockCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](PoolAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/PoolAllocator/GetTotalFreed.md b/docs/api/XCEngine/Memory/PoolAllocator/GetTotalFreed.md new file mode 100644 index 00000000..7ed74913 --- /dev/null +++ b/docs/api/XCEngine/Memory/PoolAllocator/GetTotalFreed.md @@ -0,0 +1,30 @@ +# PoolAllocator::GetTotalFreed + +获取相关状态或对象。 + +```cpp +size_t GetTotalFreed() const override; +``` + +该方法声明于 `XCEngine/Memory/PoolAllocator.h`,当前页面用于固定 `PoolAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::PoolAllocator object; + // 根据上下文补齐参数后调用 PoolAllocator::GetTotalFreed(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](PoolAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/PoolAllocator/PoolAllocator.md b/docs/api/XCEngine/Memory/PoolAllocator/PoolAllocator.md new file mode 100644 index 00000000..f2fb6c45 --- /dev/null +++ b/docs/api/XCEngine/Memory/PoolAllocator/PoolAllocator.md @@ -0,0 +1,43 @@ +# PoolAllocator + +**命名空间**: `XCEngine::Memory` + +**类型**: `class` + +**头文件**: `XCEngine/Memory/PoolAllocator.h` + +**描述**: 定义 `XCEngine/Memory` 子目录中的 `PoolAllocator` public API。 + +## 概述 + +`PoolAllocator.h` 是 `XCEngine/Memory` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `PoolAllocator` | `class` | 继承自 `IAllocator` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [PoolAllocator()](Constructor.md) | 构造对象。 | +| [~PoolAllocator()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Allocate](Allocate.md) | 公开方法,详见头文件声明。 | +| [Free](Free.md) | 公开方法,详见头文件声明。 | +| [Reallocate](Reallocate.md) | 公开方法,详见头文件声明。 | +| [Contains](Contains.md) | 公开方法,详见头文件声明。 | +| [GetBlockSize](GetBlockSize.md) | 获取相关状态或对象。 | +| [GetFreeBlockCount](GetFreeBlockCount.md) | 获取相关状态或对象。 | +| [GetTotalBlockCount](GetTotalBlockCount.md) | 获取相关状态或对象。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [GetTotalAllocated](GetTotalAllocated.md) | 获取相关状态或对象。 | +| [GetTotalFreed](GetTotalFreed.md) | 获取相关状态或对象。 | +| [GetPeakAllocated](GetPeakAllocated.md) | 获取相关状态或对象。 | +| [GetAllocationCount](GetAllocationCount.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Memory.md) - 返回 `Memory` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Memory/PoolAllocator/Reallocate.md b/docs/api/XCEngine/Memory/PoolAllocator/Reallocate.md new file mode 100644 index 00000000..0dc2a906 --- /dev/null +++ b/docs/api/XCEngine/Memory/PoolAllocator/Reallocate.md @@ -0,0 +1,32 @@ +# PoolAllocator::Reallocate + +公开方法,详见头文件声明。 + +```cpp +void* Reallocate(void* ptr, size_t newSize) override; +``` + +该方法声明于 `XCEngine/Memory/PoolAllocator.h`,当前页面用于固定 `PoolAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `ptr` - 参数语义详见头文件声明。 +- `newSize` - 参数语义详见头文件声明。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::PoolAllocator object; + // 根据上下文补齐参数后调用 PoolAllocator::Reallocate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](PoolAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/ProxyAllocator/Allocate.md b/docs/api/XCEngine/Memory/ProxyAllocator/Allocate.md new file mode 100644 index 00000000..a886197d --- /dev/null +++ b/docs/api/XCEngine/Memory/ProxyAllocator/Allocate.md @@ -0,0 +1,32 @@ +# ProxyAllocator::Allocate + +公开方法,详见头文件声明。 + +```cpp +void* Allocate(size_t size, size_t alignment = 0) override; +``` + +该方法声明于 `XCEngine/Memory/ProxyAllocator.h`,当前页面用于固定 `ProxyAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `size` - 参数语义详见头文件声明。 +- `alignment` - 参数语义详见头文件声明。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::ProxyAllocator object; + // 根据上下文补齐参数后调用 ProxyAllocator::Allocate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ProxyAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/ProxyAllocator/Constructor.md b/docs/api/XCEngine/Memory/ProxyAllocator/Constructor.md new file mode 100644 index 00000000..24ef8405 --- /dev/null +++ b/docs/api/XCEngine/Memory/ProxyAllocator/Constructor.md @@ -0,0 +1,30 @@ +# ProxyAllocator::ProxyAllocator() + +构造对象。 + +```cpp +ProxyAllocator(IAllocator* underlying, const char* name); +``` + +该方法声明于 `XCEngine/Memory/ProxyAllocator.h`,当前页面用于固定 `ProxyAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `underlying` - 参数语义详见头文件声明。 +- `name` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::ProxyAllocator object; +} +``` + +## 相关文档 + +- [返回类总览](ProxyAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/ProxyAllocator/Free.md b/docs/api/XCEngine/Memory/ProxyAllocator/Free.md new file mode 100644 index 00000000..42a498b4 --- /dev/null +++ b/docs/api/XCEngine/Memory/ProxyAllocator/Free.md @@ -0,0 +1,31 @@ +# ProxyAllocator::Free + +公开方法,详见头文件声明。 + +```cpp +void Free(void* ptr) override; +``` + +该方法声明于 `XCEngine/Memory/ProxyAllocator.h`,当前页面用于固定 `ProxyAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `ptr` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::ProxyAllocator object; + // 根据上下文补齐参数后调用 ProxyAllocator::Free(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ProxyAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/ProxyAllocator/GetAllocationCount.md b/docs/api/XCEngine/Memory/ProxyAllocator/GetAllocationCount.md new file mode 100644 index 00000000..2e94c93e --- /dev/null +++ b/docs/api/XCEngine/Memory/ProxyAllocator/GetAllocationCount.md @@ -0,0 +1,30 @@ +# ProxyAllocator::GetAllocationCount + +获取相关状态或对象。 + +```cpp +size_t GetAllocationCount() const override; +``` + +该方法声明于 `XCEngine/Memory/ProxyAllocator.h`,当前页面用于固定 `ProxyAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::ProxyAllocator object; + // 根据上下文补齐参数后调用 ProxyAllocator::GetAllocationCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ProxyAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/ProxyAllocator/GetName.md b/docs/api/XCEngine/Memory/ProxyAllocator/GetName.md new file mode 100644 index 00000000..1f5f7c26 --- /dev/null +++ b/docs/api/XCEngine/Memory/ProxyAllocator/GetName.md @@ -0,0 +1,30 @@ +# ProxyAllocator::GetName + +获取相关状态或对象。 + +```cpp +const char* GetName() const override; +``` + +该方法声明于 `XCEngine/Memory/ProxyAllocator.h`,当前页面用于固定 `ProxyAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const char*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::ProxyAllocator object; + // 根据上下文补齐参数后调用 ProxyAllocator::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ProxyAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/ProxyAllocator/GetPeakAllocated.md b/docs/api/XCEngine/Memory/ProxyAllocator/GetPeakAllocated.md new file mode 100644 index 00000000..168279c5 --- /dev/null +++ b/docs/api/XCEngine/Memory/ProxyAllocator/GetPeakAllocated.md @@ -0,0 +1,30 @@ +# ProxyAllocator::GetPeakAllocated + +获取相关状态或对象。 + +```cpp +size_t GetPeakAllocated() const override; +``` + +该方法声明于 `XCEngine/Memory/ProxyAllocator.h`,当前页面用于固定 `ProxyAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::ProxyAllocator object; + // 根据上下文补齐参数后调用 ProxyAllocator::GetPeakAllocated(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ProxyAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/ProxyAllocator/GetStats.md b/docs/api/XCEngine/Memory/ProxyAllocator/GetStats.md new file mode 100644 index 00000000..0c3dbde2 --- /dev/null +++ b/docs/api/XCEngine/Memory/ProxyAllocator/GetStats.md @@ -0,0 +1,30 @@ +# ProxyAllocator::GetStats + +获取相关状态或对象。 + +```cpp +const Stats& GetStats() const; +``` + +该方法声明于 `XCEngine/Memory/ProxyAllocator.h`,当前页面用于固定 `ProxyAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Stats&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::ProxyAllocator object; + // 根据上下文补齐参数后调用 ProxyAllocator::GetStats(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ProxyAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/ProxyAllocator/GetTotalAllocated.md b/docs/api/XCEngine/Memory/ProxyAllocator/GetTotalAllocated.md new file mode 100644 index 00000000..b218ce30 --- /dev/null +++ b/docs/api/XCEngine/Memory/ProxyAllocator/GetTotalAllocated.md @@ -0,0 +1,30 @@ +# ProxyAllocator::GetTotalAllocated + +获取相关状态或对象。 + +```cpp +size_t GetTotalAllocated() const override; +``` + +该方法声明于 `XCEngine/Memory/ProxyAllocator.h`,当前页面用于固定 `ProxyAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::ProxyAllocator object; + // 根据上下文补齐参数后调用 ProxyAllocator::GetTotalAllocated(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ProxyAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/ProxyAllocator/GetTotalFreed.md b/docs/api/XCEngine/Memory/ProxyAllocator/GetTotalFreed.md new file mode 100644 index 00000000..e01f1db8 --- /dev/null +++ b/docs/api/XCEngine/Memory/ProxyAllocator/GetTotalFreed.md @@ -0,0 +1,30 @@ +# ProxyAllocator::GetTotalFreed + +获取相关状态或对象。 + +```cpp +size_t GetTotalFreed() const override; +``` + +该方法声明于 `XCEngine/Memory/ProxyAllocator.h`,当前页面用于固定 `ProxyAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::ProxyAllocator object; + // 根据上下文补齐参数后调用 ProxyAllocator::GetTotalFreed(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ProxyAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Memory/ProxyAllocator/ProxyAllocator.md b/docs/api/XCEngine/Memory/ProxyAllocator/ProxyAllocator.md new file mode 100644 index 00000000..0e74c7a7 --- /dev/null +++ b/docs/api/XCEngine/Memory/ProxyAllocator/ProxyAllocator.md @@ -0,0 +1,39 @@ +# ProxyAllocator + +**命名空间**: `XCEngine::Memory` + +**类型**: `class` + +**头文件**: `XCEngine/Memory/ProxyAllocator.h` + +**描述**: 定义 `XCEngine/Memory` 子目录中的 `ProxyAllocator` public API。 + +## 概述 + +`ProxyAllocator.h` 是 `XCEngine/Memory` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `ProxyAllocator` | `class` | 继承自 `IAllocator` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [ProxyAllocator()](Constructor.md) | 构造对象。 | +| [Allocate](Allocate.md) | 公开方法,详见头文件声明。 | +| [Free](Free.md) | 公开方法,详见头文件声明。 | +| [Reallocate](Reallocate.md) | 公开方法,详见头文件声明。 | +| [GetTotalAllocated](GetTotalAllocated.md) | 获取相关状态或对象。 | +| [GetTotalFreed](GetTotalFreed.md) | 获取相关状态或对象。 | +| [GetPeakAllocated](GetPeakAllocated.md) | 获取相关状态或对象。 | +| [GetAllocationCount](GetAllocationCount.md) | 获取相关状态或对象。 | +| [GetStats](GetStats.md) | 获取相关状态或对象。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Memory.md) - 返回 `Memory` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Memory/ProxyAllocator/Reallocate.md b/docs/api/XCEngine/Memory/ProxyAllocator/Reallocate.md new file mode 100644 index 00000000..ceb22547 --- /dev/null +++ b/docs/api/XCEngine/Memory/ProxyAllocator/Reallocate.md @@ -0,0 +1,32 @@ +# ProxyAllocator::Reallocate + +公开方法,详见头文件声明。 + +```cpp +void* Reallocate(void* ptr, size_t newSize) override; +``` + +该方法声明于 `XCEngine/Memory/ProxyAllocator.h`,当前页面用于固定 `ProxyAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `ptr` - 参数语义详见头文件声明。 +- `newSize` - 参数语义详见头文件声明。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Memory::ProxyAllocator object; + // 根据上下文补齐参数后调用 ProxyAllocator::Reallocate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ProxyAllocator.md) +- [返回模块目录](../Memory.md) diff --git a/docs/api/XCEngine/Platform/GameTime/GameTime.md b/docs/api/XCEngine/Platform/GameTime/GameTime.md new file mode 100644 index 00000000..fbc0b1da --- /dev/null +++ b/docs/api/XCEngine/Platform/GameTime/GameTime.md @@ -0,0 +1,32 @@ +# GameTime + +**命名空间**: `XCEngine` + +**类型**: `struct` + +**头文件**: `XCEngine/Platform/GameTime.h` + +**描述**: 定义 `XCEngine/Platform` 子目录中的 `GameTime` public API。 + +## 概述 + +`GameTime.h` 是 `XCEngine/Platform` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `GameTime` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `deltaTime` | `float` | 结构体公开字段。 | - | +| `totalTime` | `float` | 结构体公开字段。 | - | +| `frameCount` | `Core::uint64_t` | 结构体公开字段。 | - | + +## 相关文档 + +- [当前目录](../Platform.md) - 返回 `Platform` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Platform/IClock/Destructor.md b/docs/api/XCEngine/Platform/IClock/Destructor.md new file mode 100644 index 00000000..494b4e3c --- /dev/null +++ b/docs/api/XCEngine/Platform/IClock/Destructor.md @@ -0,0 +1,29 @@ +# IClock::~IClock() + +销毁对象并释放相关资源。 + +```cpp +virtual ~IClock() = default; +``` + +该方法声明于 `XCEngine/Platform/IClock.h`,当前页面用于固定 `IClock` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IClock object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](IClock.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IClock/GetAbsoluteTime.md b/docs/api/XCEngine/Platform/IClock/GetAbsoluteTime.md new file mode 100644 index 00000000..1267ed2c --- /dev/null +++ b/docs/api/XCEngine/Platform/IClock/GetAbsoluteTime.md @@ -0,0 +1,30 @@ +# IClock::GetAbsoluteTime + +获取相关状态或对象。 + +```cpp +virtual double GetAbsoluteTime() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IClock.h`,当前页面用于固定 `IClock` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `double` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IClock object; + // 根据上下文补齐参数后调用 IClock::GetAbsoluteTime(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IClock.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IClock/GetDeltaTime.md b/docs/api/XCEngine/Platform/IClock/GetDeltaTime.md new file mode 100644 index 00000000..c356ec2f --- /dev/null +++ b/docs/api/XCEngine/Platform/IClock/GetDeltaTime.md @@ -0,0 +1,30 @@ +# IClock::GetDeltaTime + +获取相关状态或对象。 + +```cpp +virtual float GetDeltaTime() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IClock.h`,当前页面用于固定 `IClock` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IClock object; + // 根据上下文补齐参数后调用 IClock::GetDeltaTime(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IClock.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IClock/GetTimeSinceInit.md b/docs/api/XCEngine/Platform/IClock/GetTimeSinceInit.md new file mode 100644 index 00000000..85454d17 --- /dev/null +++ b/docs/api/XCEngine/Platform/IClock/GetTimeSinceInit.md @@ -0,0 +1,30 @@ +# IClock::GetTimeSinceInit + +获取相关状态或对象。 + +```cpp +virtual double GetTimeSinceInit() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IClock.h`,当前页面用于固定 `IClock` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `double` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IClock object; + // 根据上下文补齐参数后调用 IClock::GetTimeSinceInit(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IClock.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IClock/IClock.md b/docs/api/XCEngine/Platform/IClock/IClock.md new file mode 100644 index 00000000..5378ebd4 --- /dev/null +++ b/docs/api/XCEngine/Platform/IClock/IClock.md @@ -0,0 +1,34 @@ +# IClock + +**命名空间**: `XCEngine::Platform` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/Platform/IClock.h` + +**描述**: 定义 `XCEngine/Platform` 子目录中的 `IClock` public API。 + +## 概述 + +`IClock.h` 是 `XCEngine/Platform` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `IClock` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~IClock()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetAbsoluteTime](GetAbsoluteTime.md) | 获取相关状态或对象。 | +| [GetTimeSinceInit](GetTimeSinceInit.md) | 获取相关状态或对象。 | +| [GetDeltaTime](GetDeltaTime.md) | 获取相关状态或对象。 | +| [Update](Update.md) | 更新运行时状态。 | + +## 相关文档 + +- [当前目录](../Platform.md) - 返回 `Platform` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Platform/IClock/Update.md b/docs/api/XCEngine/Platform/IClock/Update.md new file mode 100644 index 00000000..24d26023 --- /dev/null +++ b/docs/api/XCEngine/Platform/IClock/Update.md @@ -0,0 +1,30 @@ +# IClock::Update + +更新运行时状态。 + +```cpp +virtual void Update() = 0; +``` + +该方法声明于 `XCEngine/Platform/IClock.h`,当前页面用于固定 `IClock` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IClock object; + // 根据上下文补齐参数后调用 IClock::Update(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IClock.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IDisplayEnumerator/Destructor.md b/docs/api/XCEngine/Platform/IDisplayEnumerator/Destructor.md new file mode 100644 index 00000000..33246d75 --- /dev/null +++ b/docs/api/XCEngine/Platform/IDisplayEnumerator/Destructor.md @@ -0,0 +1,29 @@ +# IDisplayEnumerator::~IDisplayEnumerator() + +销毁对象并释放相关资源。 + +```cpp +virtual ~IDisplayEnumerator() = default; +``` + +该方法声明于 `XCEngine/Platform/IDisplayEnumerator.h`,当前页面用于固定 `IDisplayEnumerator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IDisplayEnumerator object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](IDisplayEnumerator.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IDisplayEnumerator/GetDPIForDisplay.md b/docs/api/XCEngine/Platform/IDisplayEnumerator/GetDPIForDisplay.md new file mode 100644 index 00000000..50e0b919 --- /dev/null +++ b/docs/api/XCEngine/Platform/IDisplayEnumerator/GetDPIForDisplay.md @@ -0,0 +1,31 @@ +# IDisplayEnumerator::GetDPIForDisplay + +获取相关状态或对象。 + +```cpp +virtual float GetDPIForDisplay(Core::uint32_t index) const = 0; +``` + +该方法声明于 `XCEngine/Platform/IDisplayEnumerator.h`,当前页面用于固定 `IDisplayEnumerator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IDisplayEnumerator object; + // 根据上下文补齐参数后调用 IDisplayEnumerator::GetDPIForDisplay(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IDisplayEnumerator.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IDisplayEnumerator/GetDisplayCount.md b/docs/api/XCEngine/Platform/IDisplayEnumerator/GetDisplayCount.md new file mode 100644 index 00000000..dc2e3576 --- /dev/null +++ b/docs/api/XCEngine/Platform/IDisplayEnumerator/GetDisplayCount.md @@ -0,0 +1,30 @@ +# IDisplayEnumerator::GetDisplayCount + +获取相关状态或对象。 + +```cpp +virtual Core::uint32_t GetDisplayCount() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IDisplayEnumerator.h`,当前页面用于固定 `IDisplayEnumerator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IDisplayEnumerator object; + // 根据上下文补齐参数后调用 IDisplayEnumerator::GetDisplayCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IDisplayEnumerator.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IDisplayEnumerator/GetDisplayInfo.md b/docs/api/XCEngine/Platform/IDisplayEnumerator/GetDisplayInfo.md new file mode 100644 index 00000000..cb5cadcb --- /dev/null +++ b/docs/api/XCEngine/Platform/IDisplayEnumerator/GetDisplayInfo.md @@ -0,0 +1,31 @@ +# IDisplayEnumerator::GetDisplayInfo + +获取相关状态或对象。 + +```cpp +virtual DisplayInfo GetDisplayInfo(Core::uint32_t index) const = 0; +``` + +该方法声明于 `XCEngine/Platform/IDisplayEnumerator.h`,当前页面用于固定 `IDisplayEnumerator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `DisplayInfo` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IDisplayEnumerator object; + // 根据上下文补齐参数后调用 IDisplayEnumerator::GetDisplayInfo(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IDisplayEnumerator.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IDisplayEnumerator/GetPrimaryDisplay.md b/docs/api/XCEngine/Platform/IDisplayEnumerator/GetPrimaryDisplay.md new file mode 100644 index 00000000..6b3b18db --- /dev/null +++ b/docs/api/XCEngine/Platform/IDisplayEnumerator/GetPrimaryDisplay.md @@ -0,0 +1,30 @@ +# IDisplayEnumerator::GetPrimaryDisplay + +获取相关状态或对象。 + +```cpp +virtual DisplayInfo GetPrimaryDisplay() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IDisplayEnumerator.h`,当前页面用于固定 `IDisplayEnumerator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `DisplayInfo` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IDisplayEnumerator object; + // 根据上下文补齐参数后调用 IDisplayEnumerator::GetPrimaryDisplay(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IDisplayEnumerator.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IDisplayEnumerator/IDisplayEnumerator.md b/docs/api/XCEngine/Platform/IDisplayEnumerator/IDisplayEnumerator.md new file mode 100644 index 00000000..63fac10a --- /dev/null +++ b/docs/api/XCEngine/Platform/IDisplayEnumerator/IDisplayEnumerator.md @@ -0,0 +1,35 @@ +# IDisplayEnumerator + +**命名空间**: `XCEngine::Platform` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/Platform/IDisplayEnumerator.h` + +**描述**: 定义 `XCEngine/Platform` 子目录中的 `IDisplayEnumerator` public API。 + +## 概述 + +`IDisplayEnumerator.h` 是 `XCEngine/Platform` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `DisplayInfo` | `struct` | 头文件中的公开声明。 | +| `IDisplayEnumerator` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~IDisplayEnumerator()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetDisplayCount](GetDisplayCount.md) | 获取相关状态或对象。 | +| [GetDisplayInfo](GetDisplayInfo.md) | 获取相关状态或对象。 | +| [GetPrimaryDisplay](GetPrimaryDisplay.md) | 获取相关状态或对象。 | +| [GetDPIForDisplay](GetDPIForDisplay.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Platform.md) - 返回 `Platform` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Platform/IDynamicLibrary/Destructor.md b/docs/api/XCEngine/Platform/IDynamicLibrary/Destructor.md new file mode 100644 index 00000000..e34f0ff8 --- /dev/null +++ b/docs/api/XCEngine/Platform/IDynamicLibrary/Destructor.md @@ -0,0 +1,29 @@ +# IDynamicLibrary::~IDynamicLibrary() + +销毁对象并释放相关资源。 + +```cpp +virtual ~IDynamicLibrary() = default; +``` + +该方法声明于 `XCEngine/Platform/IDynamicLibrary.h`,当前页面用于固定 `IDynamicLibrary` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IDynamicLibrary object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](IDynamicLibrary.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IDynamicLibrary/GetPath.md b/docs/api/XCEngine/Platform/IDynamicLibrary/GetPath.md new file mode 100644 index 00000000..46795dc0 --- /dev/null +++ b/docs/api/XCEngine/Platform/IDynamicLibrary/GetPath.md @@ -0,0 +1,30 @@ +# IDynamicLibrary::GetPath + +获取相关状态或对象。 + +```cpp +virtual const char* GetPath() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IDynamicLibrary.h`,当前页面用于固定 `IDynamicLibrary` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const char*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IDynamicLibrary object; + // 根据上下文补齐参数后调用 IDynamicLibrary::GetPath(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IDynamicLibrary.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IDynamicLibrary/GetSymbol.md b/docs/api/XCEngine/Platform/IDynamicLibrary/GetSymbol.md new file mode 100644 index 00000000..38e6dd6f --- /dev/null +++ b/docs/api/XCEngine/Platform/IDynamicLibrary/GetSymbol.md @@ -0,0 +1,44 @@ +# IDynamicLibrary::GetSymbol + +获取相关状态或对象。 + +该方法在 `XCEngine/Platform/IDynamicLibrary.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +virtual void* GetSymbol(const char* symbolName) = 0; +``` + +**参数:** +- `symbolName` - 参数语义详见头文件声明。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +template T GetSymbol(const char* symbolName); +``` + +**参数:** +- `symbolName` - 参数语义详见头文件声明。 + +**返回:** `template T` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IDynamicLibrary object; + // 根据上下文补齐参数后调用 IDynamicLibrary::GetSymbol(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IDynamicLibrary.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IDynamicLibrary/IDynamicLibrary.md b/docs/api/XCEngine/Platform/IDynamicLibrary/IDynamicLibrary.md new file mode 100644 index 00000000..7312e06b --- /dev/null +++ b/docs/api/XCEngine/Platform/IDynamicLibrary/IDynamicLibrary.md @@ -0,0 +1,35 @@ +# IDynamicLibrary + +**命名空间**: `XCEngine::Platform` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/Platform/IDynamicLibrary.h` + +**描述**: 定义 `XCEngine/Platform` 子目录中的 `IDynamicLibrary` public API。 + +## 概述 + +`IDynamicLibrary.h` 是 `XCEngine/Platform` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `IDynamicLibrary` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~IDynamicLibrary()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Load](Load.md) | 加载资源或数据。 | +| [Unload](Unload.md) | 卸载资源或释放缓存。 | +| [IsLoaded](IsLoaded.md) | 查询当前状态。 | +| [GetSymbol](GetSymbol.md) | 获取相关状态或对象。 | +| [GetPath](GetPath.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Platform.md) - 返回 `Platform` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Platform/IDynamicLibrary/IsLoaded.md b/docs/api/XCEngine/Platform/IDynamicLibrary/IsLoaded.md new file mode 100644 index 00000000..c7eef613 --- /dev/null +++ b/docs/api/XCEngine/Platform/IDynamicLibrary/IsLoaded.md @@ -0,0 +1,30 @@ +# IDynamicLibrary::IsLoaded + +查询当前状态。 + +```cpp +virtual bool IsLoaded() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IDynamicLibrary.h`,当前页面用于固定 `IDynamicLibrary` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IDynamicLibrary object; + // 根据上下文补齐参数后调用 IDynamicLibrary::IsLoaded(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IDynamicLibrary.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IDynamicLibrary/Load.md b/docs/api/XCEngine/Platform/IDynamicLibrary/Load.md new file mode 100644 index 00000000..f5fa9c22 --- /dev/null +++ b/docs/api/XCEngine/Platform/IDynamicLibrary/Load.md @@ -0,0 +1,31 @@ +# IDynamicLibrary::Load + +加载资源或数据。 + +```cpp +virtual bool Load(const char* path) = 0; +``` + +该方法声明于 `XCEngine/Platform/IDynamicLibrary.h`,当前页面用于固定 `IDynamicLibrary` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IDynamicLibrary object; + // 根据上下文补齐参数后调用 IDynamicLibrary::Load(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IDynamicLibrary.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IDynamicLibrary/Unload.md b/docs/api/XCEngine/Platform/IDynamicLibrary/Unload.md new file mode 100644 index 00000000..9cfb65d5 --- /dev/null +++ b/docs/api/XCEngine/Platform/IDynamicLibrary/Unload.md @@ -0,0 +1,30 @@ +# IDynamicLibrary::Unload + +卸载资源或释放缓存。 + +```cpp +virtual void Unload() = 0; +``` + +该方法声明于 `XCEngine/Platform/IDynamicLibrary.h`,当前页面用于固定 `IDynamicLibrary` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IDynamicLibrary object; + // 根据上下文补齐参数后调用 IDynamicLibrary::Unload(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IDynamicLibrary.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IFileSystem/CombinePaths.md b/docs/api/XCEngine/Platform/IFileSystem/CombinePaths.md new file mode 100644 index 00000000..36c7af24 --- /dev/null +++ b/docs/api/XCEngine/Platform/IFileSystem/CombinePaths.md @@ -0,0 +1,32 @@ +# IFileSystem::CombinePaths + +公开方法,详见头文件声明。 + +```cpp +virtual Containers::String CombinePaths(const Containers::String& base, const Containers::String& relative) const = 0; +``` + +该方法声明于 `XCEngine/Platform/IFileSystem.h`,当前页面用于固定 `IFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `base` - 参数语义详见头文件声明。 +- `relative` - 参数语义详见头文件声明。 + +**返回:** `Containers::String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IFileSystem object; + // 根据上下文补齐参数后调用 IFileSystem::CombinePaths(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IFileSystem.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IFileSystem/CreateDirectory.md b/docs/api/XCEngine/Platform/IFileSystem/CreateDirectory.md new file mode 100644 index 00000000..04495eaf --- /dev/null +++ b/docs/api/XCEngine/Platform/IFileSystem/CreateDirectory.md @@ -0,0 +1,31 @@ +# IFileSystem::CreateDirectory + +创建新对象或资源。 + +```cpp +virtual bool CreateDirectory(const char* path) = 0; +``` + +该方法声明于 `XCEngine/Platform/IFileSystem.h`,当前页面用于固定 `IFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IFileSystem object; + // 根据上下文补齐参数后调用 IFileSystem::CreateDirectory(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IFileSystem.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IFileSystem/DeleteFile.md b/docs/api/XCEngine/Platform/IFileSystem/DeleteFile.md new file mode 100644 index 00000000..98fc415a --- /dev/null +++ b/docs/api/XCEngine/Platform/IFileSystem/DeleteFile.md @@ -0,0 +1,31 @@ +# IFileSystem::DeleteFile + +公开方法,详见头文件声明。 + +```cpp +virtual bool DeleteFile(const char* path) = 0; +``` + +该方法声明于 `XCEngine/Platform/IFileSystem.h`,当前页面用于固定 `IFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IFileSystem object; + // 根据上下文补齐参数后调用 IFileSystem::DeleteFile(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IFileSystem.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IFileSystem/Destructor.md b/docs/api/XCEngine/Platform/IFileSystem/Destructor.md new file mode 100644 index 00000000..4a6058af --- /dev/null +++ b/docs/api/XCEngine/Platform/IFileSystem/Destructor.md @@ -0,0 +1,29 @@ +# IFileSystem::~IFileSystem() + +销毁对象并释放相关资源。 + +```cpp +virtual ~IFileSystem() = default; +``` + +该方法声明于 `XCEngine/Platform/IFileSystem.h`,当前页面用于固定 `IFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IFileSystem object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](IFileSystem.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IFileSystem/DirectoryExists.md b/docs/api/XCEngine/Platform/IFileSystem/DirectoryExists.md new file mode 100644 index 00000000..c4a5cc42 --- /dev/null +++ b/docs/api/XCEngine/Platform/IFileSystem/DirectoryExists.md @@ -0,0 +1,31 @@ +# IFileSystem::DirectoryExists + +公开方法,详见头文件声明。 + +```cpp +virtual bool DirectoryExists(const char* path) const = 0; +``` + +该方法声明于 `XCEngine/Platform/IFileSystem.h`,当前页面用于固定 `IFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IFileSystem object; + // 根据上下文补齐参数后调用 IFileSystem::DirectoryExists(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IFileSystem.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IFileSystem/FileExists.md b/docs/api/XCEngine/Platform/IFileSystem/FileExists.md new file mode 100644 index 00000000..7e4d62a8 --- /dev/null +++ b/docs/api/XCEngine/Platform/IFileSystem/FileExists.md @@ -0,0 +1,31 @@ +# IFileSystem::FileExists + +公开方法,详见头文件声明。 + +```cpp +virtual bool FileExists(const char* path) const = 0; +``` + +该方法声明于 `XCEngine/Platform/IFileSystem.h`,当前页面用于固定 `IFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IFileSystem object; + // 根据上下文补齐参数后调用 IFileSystem::FileExists(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IFileSystem.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IFileSystem/GetExecutablePath.md b/docs/api/XCEngine/Platform/IFileSystem/GetExecutablePath.md new file mode 100644 index 00000000..d46de2da --- /dev/null +++ b/docs/api/XCEngine/Platform/IFileSystem/GetExecutablePath.md @@ -0,0 +1,30 @@ +# IFileSystem::GetExecutablePath + +获取相关状态或对象。 + +```cpp +virtual Containers::String GetExecutablePath() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IFileSystem.h`,当前页面用于固定 `IFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IFileSystem object; + // 根据上下文补齐参数后调用 IFileSystem::GetExecutablePath(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IFileSystem.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IFileSystem/GetFileSize.md b/docs/api/XCEngine/Platform/IFileSystem/GetFileSize.md new file mode 100644 index 00000000..d470f67d --- /dev/null +++ b/docs/api/XCEngine/Platform/IFileSystem/GetFileSize.md @@ -0,0 +1,31 @@ +# IFileSystem::GetFileSize + +获取相关状态或对象。 + +```cpp +virtual int64_t GetFileSize(const char* path) const = 0; +``` + +该方法声明于 `XCEngine/Platform/IFileSystem.h`,当前页面用于固定 `IFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `int64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IFileSystem object; + // 根据上下文补齐参数后调用 IFileSystem::GetFileSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IFileSystem.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IFileSystem/GetTempDirectory.md b/docs/api/XCEngine/Platform/IFileSystem/GetTempDirectory.md new file mode 100644 index 00000000..e6ac97c8 --- /dev/null +++ b/docs/api/XCEngine/Platform/IFileSystem/GetTempDirectory.md @@ -0,0 +1,30 @@ +# IFileSystem::GetTempDirectory + +获取相关状态或对象。 + +```cpp +virtual Containers::String GetTempDirectory() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IFileSystem.h`,当前页面用于固定 `IFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IFileSystem object; + // 根据上下文补齐参数后调用 IFileSystem::GetTempDirectory(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IFileSystem.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IFileSystem/GetUserDirectory.md b/docs/api/XCEngine/Platform/IFileSystem/GetUserDirectory.md new file mode 100644 index 00000000..eb84776b --- /dev/null +++ b/docs/api/XCEngine/Platform/IFileSystem/GetUserDirectory.md @@ -0,0 +1,30 @@ +# IFileSystem::GetUserDirectory + +获取相关状态或对象。 + +```cpp +virtual Containers::String GetUserDirectory() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IFileSystem.h`,当前页面用于固定 `IFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IFileSystem object; + // 根据上下文补齐参数后调用 IFileSystem::GetUserDirectory(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IFileSystem.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IFileSystem/GetWorkingDirectory.md b/docs/api/XCEngine/Platform/IFileSystem/GetWorkingDirectory.md new file mode 100644 index 00000000..1fea72f9 --- /dev/null +++ b/docs/api/XCEngine/Platform/IFileSystem/GetWorkingDirectory.md @@ -0,0 +1,30 @@ +# IFileSystem::GetWorkingDirectory + +获取相关状态或对象。 + +```cpp +virtual Containers::String GetWorkingDirectory() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IFileSystem.h`,当前页面用于固定 `IFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IFileSystem object; + // 根据上下文补齐参数后调用 IFileSystem::GetWorkingDirectory(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IFileSystem.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IFileSystem/IFileSystem.md b/docs/api/XCEngine/Platform/IFileSystem/IFileSystem.md new file mode 100644 index 00000000..fcadad44 --- /dev/null +++ b/docs/api/XCEngine/Platform/IFileSystem/IFileSystem.md @@ -0,0 +1,43 @@ +# IFileSystem + +**命名空间**: `XCEngine::Platform` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/Platform/IFileSystem.h` + +**描述**: 定义 `XCEngine/Platform` 子目录中的 `IFileSystem` public API。 + +## 概述 + +`IFileSystem.h` 是 `XCEngine/Platform` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `IFileSystem` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~IFileSystem()](Destructor.md) | 销毁对象并释放相关资源。 | +| [FileExists](FileExists.md) | 公开方法,详见头文件声明。 | +| [DirectoryExists](DirectoryExists.md) | 公开方法,详见头文件声明。 | +| [GetFileSize](GetFileSize.md) | 获取相关状态或对象。 | +| [DeleteFile](DeleteFile.md) | 公开方法,详见头文件声明。 | +| [CreateDirectory](CreateDirectory.md) | 创建新对象或资源。 | +| [ReadFile](ReadFile.md) | 公开方法,详见头文件声明。 | +| [WriteFile](WriteFile.md) | 公开方法,详见头文件声明。 | +| [GetExecutablePath](GetExecutablePath.md) | 获取相关状态或对象。 | +| [GetWorkingDirectory](GetWorkingDirectory.md) | 获取相关状态或对象。 | +| [GetUserDirectory](GetUserDirectory.md) | 获取相关状态或对象。 | +| [GetTempDirectory](GetTempDirectory.md) | 获取相关状态或对象。 | +| [NormalizePath](NormalizePath.md) | 公开方法,详见头文件声明。 | +| [CombinePaths](CombinePaths.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Platform.md) - 返回 `Platform` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Platform/IFileSystem/NormalizePath.md b/docs/api/XCEngine/Platform/IFileSystem/NormalizePath.md new file mode 100644 index 00000000..029e43e5 --- /dev/null +++ b/docs/api/XCEngine/Platform/IFileSystem/NormalizePath.md @@ -0,0 +1,31 @@ +# IFileSystem::NormalizePath + +公开方法,详见头文件声明。 + +```cpp +virtual Containers::String NormalizePath(const Containers::String& path) const = 0; +``` + +该方法声明于 `XCEngine/Platform/IFileSystem.h`,当前页面用于固定 `IFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `Containers::String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IFileSystem object; + // 根据上下文补齐参数后调用 IFileSystem::NormalizePath(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IFileSystem.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IFileSystem/ReadFile.md b/docs/api/XCEngine/Platform/IFileSystem/ReadFile.md new file mode 100644 index 00000000..1e58771f --- /dev/null +++ b/docs/api/XCEngine/Platform/IFileSystem/ReadFile.md @@ -0,0 +1,32 @@ +# IFileSystem::ReadFile + +公开方法,详见头文件声明。 + +```cpp +virtual std::unique_ptr ReadFile(const char* path, size_t* outSize) const = 0; +``` + +该方法声明于 `XCEngine/Platform/IFileSystem.h`,当前页面用于固定 `IFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 +- `outSize` - 参数语义详见头文件声明。 + +**返回:** `std::unique_ptr` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IFileSystem object; + // 根据上下文补齐参数后调用 IFileSystem::ReadFile(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IFileSystem.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IFileSystem/WriteFile.md b/docs/api/XCEngine/Platform/IFileSystem/WriteFile.md new file mode 100644 index 00000000..7c70ef37 --- /dev/null +++ b/docs/api/XCEngine/Platform/IFileSystem/WriteFile.md @@ -0,0 +1,33 @@ +# IFileSystem::WriteFile + +公开方法,详见头文件声明。 + +```cpp +virtual bool WriteFile(const char* path, const void* data, size_t size) = 0; +``` + +该方法声明于 `XCEngine/Platform/IFileSystem.h`,当前页面用于固定 `IFileSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 +- `data` - 参数语义详见头文件声明。 +- `size` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IFileSystem object; + // 根据上下文补齐参数后调用 IFileSystem::WriteFile(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IFileSystem.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IPlatform/CreateClock.md b/docs/api/XCEngine/Platform/IPlatform/CreateClock.md new file mode 100644 index 00000000..a4d2064e --- /dev/null +++ b/docs/api/XCEngine/Platform/IPlatform/CreateClock.md @@ -0,0 +1,30 @@ +# IPlatform::CreateClock + +创建新对象或资源。 + +```cpp +virtual std::unique_ptr CreateClock() = 0; +``` + +该方法声明于 `XCEngine/Platform/IPlatform.h`,当前页面用于固定 `IPlatform` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::unique_ptr` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IPlatform object; + // 根据上下文补齐参数后调用 IPlatform::CreateClock(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IPlatform.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IPlatform/CreateDisplayEnumerator.md b/docs/api/XCEngine/Platform/IPlatform/CreateDisplayEnumerator.md new file mode 100644 index 00000000..1bb14374 --- /dev/null +++ b/docs/api/XCEngine/Platform/IPlatform/CreateDisplayEnumerator.md @@ -0,0 +1,30 @@ +# IPlatform::CreateDisplayEnumerator + +创建新对象或资源。 + +```cpp +virtual std::unique_ptr CreateDisplayEnumerator() = 0; +``` + +该方法声明于 `XCEngine/Platform/IPlatform.h`,当前页面用于固定 `IPlatform` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::unique_ptr` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IPlatform object; + // 根据上下文补齐参数后调用 IPlatform::CreateDisplayEnumerator(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IPlatform.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IPlatform/CreateFileSystem.md b/docs/api/XCEngine/Platform/IPlatform/CreateFileSystem.md new file mode 100644 index 00000000..a083e31e --- /dev/null +++ b/docs/api/XCEngine/Platform/IPlatform/CreateFileSystem.md @@ -0,0 +1,30 @@ +# IPlatform::CreateFileSystem + +创建新对象或资源。 + +```cpp +virtual std::unique_ptr CreateFileSystem() = 0; +``` + +该方法声明于 `XCEngine/Platform/IPlatform.h`,当前页面用于固定 `IPlatform` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::unique_ptr` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IPlatform object; + // 根据上下文补齐参数后调用 IPlatform::CreateFileSystem(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IPlatform.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IPlatform/CreateWindow.md b/docs/api/XCEngine/Platform/IPlatform/CreateWindow.md new file mode 100644 index 00000000..88d783a8 --- /dev/null +++ b/docs/api/XCEngine/Platform/IPlatform/CreateWindow.md @@ -0,0 +1,31 @@ +# IPlatform::CreateWindow + +创建新对象或资源。 + +```cpp +virtual std::unique_ptr CreateWindow(const WindowDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/Platform/IPlatform.h`,当前页面用于固定 `IPlatform` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `std::unique_ptr` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IPlatform object; + // 根据上下文补齐参数后调用 IPlatform::CreateWindow(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IPlatform.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IPlatform/Destructor.md b/docs/api/XCEngine/Platform/IPlatform/Destructor.md new file mode 100644 index 00000000..3e77532c --- /dev/null +++ b/docs/api/XCEngine/Platform/IPlatform/Destructor.md @@ -0,0 +1,29 @@ +# IPlatform::~IPlatform() + +销毁对象并释放相关资源。 + +```cpp +virtual ~IPlatform() = default; +``` + +该方法声明于 `XCEngine/Platform/IPlatform.h`,当前页面用于固定 `IPlatform` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IPlatform object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](IPlatform.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IPlatform/Get.md b/docs/api/XCEngine/Platform/IPlatform/Get.md new file mode 100644 index 00000000..6f76e280 --- /dev/null +++ b/docs/api/XCEngine/Platform/IPlatform/Get.md @@ -0,0 +1,29 @@ +# IPlatform::Get + +获取相关状态或对象。 + +```cpp +static IPlatform& Get(); +``` + +该方法声明于 `XCEngine/Platform/IPlatform.h`,当前页面用于固定 `IPlatform` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `IPlatform&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + auto& instance = XCEngine::Platform::IPlatform::Get(); + (void)instance; +} +``` + +## 相关文档 + +- [返回类总览](IPlatform.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IPlatform/GetName.md b/docs/api/XCEngine/Platform/IPlatform/GetName.md new file mode 100644 index 00000000..03262b24 --- /dev/null +++ b/docs/api/XCEngine/Platform/IPlatform/GetName.md @@ -0,0 +1,30 @@ +# IPlatform::GetName + +获取相关状态或对象。 + +```cpp +virtual const char* GetName() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IPlatform.h`,当前页面用于固定 `IPlatform` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const char*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IPlatform object; + // 根据上下文补齐参数后调用 IPlatform::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IPlatform.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IPlatform/GetType.md b/docs/api/XCEngine/Platform/IPlatform/GetType.md new file mode 100644 index 00000000..95064d09 --- /dev/null +++ b/docs/api/XCEngine/Platform/IPlatform/GetType.md @@ -0,0 +1,30 @@ +# IPlatform::GetType + +获取相关状态或对象。 + +```cpp +virtual PlatformType GetType() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IPlatform.h`,当前页面用于固定 `IPlatform` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `PlatformType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IPlatform object; + // 根据上下文补齐参数后调用 IPlatform::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IPlatform.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IPlatform/IPlatform.md b/docs/api/XCEngine/Platform/IPlatform/IPlatform.md new file mode 100644 index 00000000..7603cc9d --- /dev/null +++ b/docs/api/XCEngine/Platform/IPlatform/IPlatform.md @@ -0,0 +1,39 @@ +# IPlatform + +**命名空间**: `XCEngine::Platform` + +**类型**: `class (singleton)` + +**头文件**: `XCEngine/Platform/IPlatform.h` + +**描述**: 定义 `XCEngine/Platform` 子目录中的 `IPlatform` public API。 + +## 概述 + +`IPlatform.h` 是 `XCEngine/Platform` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `IPlatform` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~IPlatform()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [CreateWindow](CreateWindow.md) | 创建新对象或资源。 | +| [CreateFileSystem](CreateFileSystem.md) | 创建新对象或资源。 | +| [CreateClock](CreateClock.md) | 创建新对象或资源。 | +| [LoadDynamicLibrary](LoadDynamicLibrary.md) | 加载资源或数据。 | +| [CreateDisplayEnumerator](CreateDisplayEnumerator.md) | 创建新对象或资源。 | +| [PumpPlatformMessages](PumpPlatformMessages.md) | 公开方法,详见头文件声明。 | +| [Get](Get.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Platform.md) - 返回 `Platform` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Platform/IPlatform/LoadDynamicLibrary.md b/docs/api/XCEngine/Platform/IPlatform/LoadDynamicLibrary.md new file mode 100644 index 00000000..bc2e0fde --- /dev/null +++ b/docs/api/XCEngine/Platform/IPlatform/LoadDynamicLibrary.md @@ -0,0 +1,31 @@ +# IPlatform::LoadDynamicLibrary + +加载资源或数据。 + +```cpp +virtual std::unique_ptr LoadDynamicLibrary(const char* path) = 0; +``` + +该方法声明于 `XCEngine/Platform/IPlatform.h`,当前页面用于固定 `IPlatform` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `std::unique_ptr` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IPlatform object; + // 根据上下文补齐参数后调用 IPlatform::LoadDynamicLibrary(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IPlatform.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IPlatform/PumpPlatformMessages.md b/docs/api/XCEngine/Platform/IPlatform/PumpPlatformMessages.md new file mode 100644 index 00000000..55ba22b7 --- /dev/null +++ b/docs/api/XCEngine/Platform/IPlatform/PumpPlatformMessages.md @@ -0,0 +1,30 @@ +# IPlatform::PumpPlatformMessages + +公开方法,详见头文件声明。 + +```cpp +virtual void PumpPlatformMessages() = 0; +``` + +该方法声明于 `XCEngine/Platform/IPlatform.h`,当前页面用于固定 `IPlatform` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IPlatform object; + // 根据上下文补齐参数后调用 IPlatform::PumpPlatformMessages(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IPlatform.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/Create.md b/docs/api/XCEngine/Platform/IWindow/Create.md new file mode 100644 index 00000000..dd882292 --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/Create.md @@ -0,0 +1,31 @@ +# IWindow::Create + +创建新对象或资源。 + +```cpp +virtual bool Create(const WindowDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 根据上下文补齐参数后调用 IWindow::Create(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/Destroy.md b/docs/api/XCEngine/Platform/IWindow/Destroy.md new file mode 100644 index 00000000..f40610f7 --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/Destroy.md @@ -0,0 +1,30 @@ +# IWindow::Destroy + +公开方法,详见头文件声明。 + +```cpp +virtual void Destroy() = 0; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 根据上下文补齐参数后调用 IWindow::Destroy(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/Destructor.md b/docs/api/XCEngine/Platform/IWindow/Destructor.md new file mode 100644 index 00000000..53312697 --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/Destructor.md @@ -0,0 +1,29 @@ +# IWindow::~IWindow() + +销毁对象并释放相关资源。 + +```cpp +virtual ~IWindow() = default; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/GetHeight.md b/docs/api/XCEngine/Platform/IWindow/GetHeight.md new file mode 100644 index 00000000..2158284a --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/GetHeight.md @@ -0,0 +1,30 @@ +# IWindow::GetHeight + +获取相关状态或对象。 + +```cpp +virtual Core::uint32_t GetHeight() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 根据上下文补齐参数后调用 IWindow::GetHeight(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/GetNativeHandle.md b/docs/api/XCEngine/Platform/IWindow/GetNativeHandle.md new file mode 100644 index 00000000..651a8a82 --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/GetNativeHandle.md @@ -0,0 +1,30 @@ +# IWindow::GetNativeHandle + +获取相关状态或对象。 + +```cpp +virtual WindowHandle GetNativeHandle() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `WindowHandle` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 根据上下文补齐参数后调用 IWindow::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/GetWidth.md b/docs/api/XCEngine/Platform/IWindow/GetWidth.md new file mode 100644 index 00000000..40dd3d62 --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/GetWidth.md @@ -0,0 +1,30 @@ +# IWindow::GetWidth + +获取相关状态或对象。 + +```cpp +virtual Core::uint32_t GetWidth() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 根据上下文补齐参数后调用 IWindow::GetWidth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/IWindow.md b/docs/api/XCEngine/Platform/IWindow/IWindow.md new file mode 100644 index 00000000..ce7c0a93 --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/IWindow.md @@ -0,0 +1,49 @@ +# IWindow + +**命名空间**: `XCEngine::Platform` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/Platform/IWindow.h` + +**描述**: 定义 `XCEngine/Platform` 子目录中的 `IWindow` public API。 + +## 概述 + +`IWindow.h` 是 `XCEngine/Platform` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `IWindow` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~IWindow()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Create](Create.md) | 创建新对象或资源。 | +| [Destroy](Destroy.md) | 公开方法,详见头文件声明。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [PumpEvents](PumpEvents.md) | 公开方法,详见头文件声明。 | +| [SetTitle](SetTitle.md) | 设置相关状态或配置。 | +| [SetFullscreen](SetFullscreen.md) | 设置相关状态或配置。 | +| [IsFullscreen](IsFullscreen.md) | 查询当前状态。 | +| [Minimize](Minimize.md) | 公开方法,详见头文件声明。 | +| [Maximize](Maximize.md) | 公开方法,详见头文件声明。 | +| [Restore](Restore.md) | 公开方法,详见头文件声明。 | +| [SetVSync](SetVSync.md) | 设置相关状态或配置。 | +| [IsVSync](IsVSync.md) | 查询当前状态。 | +| [GetWidth](GetWidth.md) | 获取相关状态或对象。 | +| [GetHeight](GetHeight.md) | 获取相关状态或对象。 | +| [ShouldClose](ShouldClose.md) | 公开方法,详见头文件声明。 | +| [SetShouldClose](SetShouldClose.md) | 设置相关状态或配置。 | +| [SetCloseCallback](SetCloseCallback.md) | 设置相关状态或配置。 | +| [SetResizeCallback](SetResizeCallback.md) | 设置相关状态或配置。 | + +## 相关文档 + +- [当前目录](../Platform.md) - 返回 `Platform` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Platform/IWindow/IsFullscreen.md b/docs/api/XCEngine/Platform/IWindow/IsFullscreen.md new file mode 100644 index 00000000..9ada3279 --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/IsFullscreen.md @@ -0,0 +1,30 @@ +# IWindow::IsFullscreen + +查询当前状态。 + +```cpp +virtual bool IsFullscreen() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 根据上下文补齐参数后调用 IWindow::IsFullscreen(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/IsVSync.md b/docs/api/XCEngine/Platform/IWindow/IsVSync.md new file mode 100644 index 00000000..07ba4d05 --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/IsVSync.md @@ -0,0 +1,30 @@ +# IWindow::IsVSync + +查询当前状态。 + +```cpp +virtual bool IsVSync() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 根据上下文补齐参数后调用 IWindow::IsVSync(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/IsValid.md b/docs/api/XCEngine/Platform/IWindow/IsValid.md new file mode 100644 index 00000000..aba83f1b --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/IsValid.md @@ -0,0 +1,30 @@ +# IWindow::IsValid + +查询当前状态。 + +```cpp +virtual bool IsValid() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 根据上下文补齐参数后调用 IWindow::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/Maximize.md b/docs/api/XCEngine/Platform/IWindow/Maximize.md new file mode 100644 index 00000000..d28db1b2 --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/Maximize.md @@ -0,0 +1,30 @@ +# IWindow::Maximize + +公开方法,详见头文件声明。 + +```cpp +virtual void Maximize() = 0; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 根据上下文补齐参数后调用 IWindow::Maximize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/Minimize.md b/docs/api/XCEngine/Platform/IWindow/Minimize.md new file mode 100644 index 00000000..ddbcc17d --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/Minimize.md @@ -0,0 +1,30 @@ +# IWindow::Minimize + +公开方法,详见头文件声明。 + +```cpp +virtual void Minimize() = 0; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 根据上下文补齐参数后调用 IWindow::Minimize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/PumpEvents.md b/docs/api/XCEngine/Platform/IWindow/PumpEvents.md new file mode 100644 index 00000000..e4a6f488 --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/PumpEvents.md @@ -0,0 +1,30 @@ +# IWindow::PumpEvents + +公开方法,详见头文件声明。 + +```cpp +virtual void PumpEvents() = 0; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 根据上下文补齐参数后调用 IWindow::PumpEvents(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/Restore.md b/docs/api/XCEngine/Platform/IWindow/Restore.md new file mode 100644 index 00000000..9cf93e55 --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/Restore.md @@ -0,0 +1,30 @@ +# IWindow::Restore + +公开方法,详见头文件声明。 + +```cpp +virtual void Restore() = 0; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 根据上下文补齐参数后调用 IWindow::Restore(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/SetCloseCallback.md b/docs/api/XCEngine/Platform/IWindow/SetCloseCallback.md new file mode 100644 index 00000000..9291045e --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/SetCloseCallback.md @@ -0,0 +1,31 @@ +# IWindow::SetCloseCallback + +设置相关状态或配置。 + +```cpp +virtual void SetCloseCallback(CloseCallback callback) = 0; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** +- `callback` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 根据上下文补齐参数后调用 IWindow::SetCloseCallback(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/SetFullscreen.md b/docs/api/XCEngine/Platform/IWindow/SetFullscreen.md new file mode 100644 index 00000000..186f5846 --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/SetFullscreen.md @@ -0,0 +1,31 @@ +# IWindow::SetFullscreen + +设置相关状态或配置。 + +```cpp +virtual void SetFullscreen(bool fullscreen) = 0; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** +- `fullscreen` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 根据上下文补齐参数后调用 IWindow::SetFullscreen(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/SetResizeCallback.md b/docs/api/XCEngine/Platform/IWindow/SetResizeCallback.md new file mode 100644 index 00000000..09b5e754 --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/SetResizeCallback.md @@ -0,0 +1,31 @@ +# IWindow::SetResizeCallback + +设置相关状态或配置。 + +```cpp +virtual void SetResizeCallback(ResizeCallback callback) = 0; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** +- `callback` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 根据上下文补齐参数后调用 IWindow::SetResizeCallback(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/SetShouldClose.md b/docs/api/XCEngine/Platform/IWindow/SetShouldClose.md new file mode 100644 index 00000000..bffa0a37 --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/SetShouldClose.md @@ -0,0 +1,31 @@ +# IWindow::SetShouldClose + +设置相关状态或配置。 + +```cpp +virtual void SetShouldClose(bool shouldClose) = 0; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** +- `shouldClose` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 根据上下文补齐参数后调用 IWindow::SetShouldClose(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/SetTitle.md b/docs/api/XCEngine/Platform/IWindow/SetTitle.md new file mode 100644 index 00000000..89b585d3 --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/SetTitle.md @@ -0,0 +1,31 @@ +# IWindow::SetTitle + +设置相关状态或配置。 + +```cpp +virtual void SetTitle(const Containers::String& title) = 0; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** +- `title` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 根据上下文补齐参数后调用 IWindow::SetTitle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/SetVSync.md b/docs/api/XCEngine/Platform/IWindow/SetVSync.md new file mode 100644 index 00000000..8edbb331 --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/SetVSync.md @@ -0,0 +1,31 @@ +# IWindow::SetVSync + +设置相关状态或配置。 + +```cpp +virtual void SetVSync(bool enabled) = 0; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** +- `enabled` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 根据上下文补齐参数后调用 IWindow::SetVSync(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/IWindow/ShouldClose.md b/docs/api/XCEngine/Platform/IWindow/ShouldClose.md new file mode 100644 index 00000000..95fbdbb7 --- /dev/null +++ b/docs/api/XCEngine/Platform/IWindow/ShouldClose.md @@ -0,0 +1,30 @@ +# IWindow::ShouldClose + +公开方法,详见头文件声明。 + +```cpp +virtual bool ShouldClose() const = 0; +``` + +该方法声明于 `XCEngine/Platform/IWindow.h`,当前页面用于固定 `IWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::IWindow object; + // 根据上下文补齐参数后调用 IWindow::ShouldClose(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](IWindow.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/Platform.md b/docs/api/XCEngine/Platform/Platform.md new file mode 100644 index 00000000..2ab90bdf --- /dev/null +++ b/docs/api/XCEngine/Platform/Platform.md @@ -0,0 +1,32 @@ +# Platform + +**命名空间**: `XCEngine::Platform` + +**类型**: `module` + +**描述**: 窗口、时钟、文件系统和平台抽象。 + +## 概览 + +该目录与 `XCEngine/Platform` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 子目录 + +- [Windows](Windows/Windows.md) + +## 头文件 + +- [GameTime](GameTime/GameTime.md) - `GameTime.h` +- [IClock](IClock/IClock.md) - `IClock.h` +- [IDisplayEnumerator](IDisplayEnumerator/IDisplayEnumerator.md) - `IDisplayEnumerator.h` +- [IDynamicLibrary](IDynamicLibrary/IDynamicLibrary.md) - `IDynamicLibrary.h` +- [IFileSystem](IFileSystem/IFileSystem.md) - `IFileSystem.h` +- [IPlatform](IPlatform/IPlatform.md) - `IPlatform.h` +- [IWindow](IWindow/IWindow.md) - `IWindow.h` +- [PlatformTypes](PlatformTypes/PlatformTypes.md) - `PlatformTypes.h` +- [Window](Window/Window.md) - `Window.h` + +## 相关文档 + +- [上级目录](../XCEngine.md) +- [API 总索引](../../main.md) diff --git a/docs/api/XCEngine/Platform/PlatformTypes/PlatformTypes.md b/docs/api/XCEngine/Platform/PlatformTypes/PlatformTypes.md new file mode 100644 index 00000000..6056a7ab --- /dev/null +++ b/docs/api/XCEngine/Platform/PlatformTypes/PlatformTypes.md @@ -0,0 +1,35 @@ +# PlatformTypes + +**命名空间**: `XCEngine::Platform` + +**类型**: `struct` + +**头文件**: `XCEngine/Platform/PlatformTypes.h` + +**描述**: 定义 `XCEngine/Platform` 子目录中的 `PlatformTypes` public API。 + +## 概述 + +`PlatformTypes.h` 是 `XCEngine/Platform` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `WindowDesc` | `struct` | 头文件中的公开声明。 | +| `Point` | `struct` | 头文件中的公开声明。 | +| `Rect` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `title` | `Containers::String` | 结构体公开字段。 | - | +| `width` | `Core::uint32` | 结构体公开字段。 | - | +| `height` | `Core::uint32` | 结构体公开字段。 | - | +| `fullscreen` | `bool` | 结构体公开字段。 | - | + +## 相关文档 + +- [当前目录](../Platform.md) - 返回 `Platform` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Platform/Window/Create.md b/docs/api/XCEngine/Platform/Window/Create.md new file mode 100644 index 00000000..a8e5d495 --- /dev/null +++ b/docs/api/XCEngine/Platform/Window/Create.md @@ -0,0 +1,31 @@ +# Window::Create + +创建新对象或资源。 + +```cpp +virtual bool Create(const WindowDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/Platform/Window.h`,当前页面用于固定 `Window` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::Window object; + // 根据上下文补齐参数后调用 Window::Create(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Window.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/Window/Destroy.md b/docs/api/XCEngine/Platform/Window/Destroy.md new file mode 100644 index 00000000..9d8f8c5a --- /dev/null +++ b/docs/api/XCEngine/Platform/Window/Destroy.md @@ -0,0 +1,30 @@ +# Window::Destroy + +公开方法,详见头文件声明。 + +```cpp +virtual void Destroy() = 0; +``` + +该方法声明于 `XCEngine/Platform/Window.h`,当前页面用于固定 `Window` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::Window object; + // 根据上下文补齐参数后调用 Window::Destroy(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Window.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/Window/Destructor.md b/docs/api/XCEngine/Platform/Window/Destructor.md new file mode 100644 index 00000000..d1edd308 --- /dev/null +++ b/docs/api/XCEngine/Platform/Window/Destructor.md @@ -0,0 +1,29 @@ +# Window::~Window() + +销毁对象并释放相关资源。 + +```cpp +virtual ~Window() = default; +``` + +该方法声明于 `XCEngine/Platform/Window.h`,当前页面用于固定 `Window` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::Window object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](Window.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/Window/GetHandle.md b/docs/api/XCEngine/Platform/Window/GetHandle.md new file mode 100644 index 00000000..a7c7e850 --- /dev/null +++ b/docs/api/XCEngine/Platform/Window/GetHandle.md @@ -0,0 +1,30 @@ +# Window::GetHandle + +获取相关状态或对象。 + +```cpp +virtual WindowHandle GetHandle() const = 0; +``` + +该方法声明于 `XCEngine/Platform/Window.h`,当前页面用于固定 `Window` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `WindowHandle` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::Window object; + // 根据上下文补齐参数后调用 Window::GetHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Window.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/Window/GetInputModule.md b/docs/api/XCEngine/Platform/Window/GetInputModule.md new file mode 100644 index 00000000..c8e17f03 --- /dev/null +++ b/docs/api/XCEngine/Platform/Window/GetInputModule.md @@ -0,0 +1,30 @@ +# Window::GetInputModule + +获取相关状态或对象。 + +```cpp +Input::InputModule* GetInputModule() const; +``` + +该方法声明于 `XCEngine/Platform/Window.h`,当前页面用于固定 `Window` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Input::InputModule*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::Window object; + // 根据上下文补齐参数后调用 Window::GetInputModule(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Window.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/Window/GetNativeHandle.md b/docs/api/XCEngine/Platform/Window/GetNativeHandle.md new file mode 100644 index 00000000..c6e44888 --- /dev/null +++ b/docs/api/XCEngine/Platform/Window/GetNativeHandle.md @@ -0,0 +1,30 @@ +# Window::GetNativeHandle + +获取相关状态或对象。 + +```cpp +virtual void* GetNativeHandle() = 0; +``` + +该方法声明于 `XCEngine/Platform/Window.h`,当前页面用于固定 `Window` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::Window object; + // 根据上下文补齐参数后调用 Window::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Window.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/Window/IsFullscreen.md b/docs/api/XCEngine/Platform/Window/IsFullscreen.md new file mode 100644 index 00000000..81e3d371 --- /dev/null +++ b/docs/api/XCEngine/Platform/Window/IsFullscreen.md @@ -0,0 +1,30 @@ +# Window::IsFullscreen + +查询当前状态。 + +```cpp +virtual bool IsFullscreen() const = 0; +``` + +该方法声明于 `XCEngine/Platform/Window.h`,当前页面用于固定 `Window` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::Window object; + // 根据上下文补齐参数后调用 Window::IsFullscreen(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Window.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/Window/Maximize.md b/docs/api/XCEngine/Platform/Window/Maximize.md new file mode 100644 index 00000000..1496f9e9 --- /dev/null +++ b/docs/api/XCEngine/Platform/Window/Maximize.md @@ -0,0 +1,30 @@ +# Window::Maximize + +公开方法,详见头文件声明。 + +```cpp +virtual void Maximize() = 0; +``` + +该方法声明于 `XCEngine/Platform/Window.h`,当前页面用于固定 `Window` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::Window object; + // 根据上下文补齐参数后调用 Window::Maximize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Window.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/Window/Minimize.md b/docs/api/XCEngine/Platform/Window/Minimize.md new file mode 100644 index 00000000..8921a884 --- /dev/null +++ b/docs/api/XCEngine/Platform/Window/Minimize.md @@ -0,0 +1,30 @@ +# Window::Minimize + +公开方法,详见头文件声明。 + +```cpp +virtual void Minimize() = 0; +``` + +该方法声明于 `XCEngine/Platform/Window.h`,当前页面用于固定 `Window` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::Window object; + // 根据上下文补齐参数后调用 Window::Minimize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Window.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/Window/PumpEvents.md b/docs/api/XCEngine/Platform/Window/PumpEvents.md new file mode 100644 index 00000000..140050dd --- /dev/null +++ b/docs/api/XCEngine/Platform/Window/PumpEvents.md @@ -0,0 +1,30 @@ +# Window::PumpEvents + +公开方法,详见头文件声明。 + +```cpp +virtual void PumpEvents() = 0; +``` + +该方法声明于 `XCEngine/Platform/Window.h`,当前页面用于固定 `Window` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::Window object; + // 根据上下文补齐参数后调用 Window::PumpEvents(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Window.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/Window/Restore.md b/docs/api/XCEngine/Platform/Window/Restore.md new file mode 100644 index 00000000..fd5bc310 --- /dev/null +++ b/docs/api/XCEngine/Platform/Window/Restore.md @@ -0,0 +1,30 @@ +# Window::Restore + +公开方法,详见头文件声明。 + +```cpp +virtual void Restore() = 0; +``` + +该方法声明于 `XCEngine/Platform/Window.h`,当前页面用于固定 `Window` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::Window object; + // 根据上下文补齐参数后调用 Window::Restore(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Window.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/Window/SetFullscreen.md b/docs/api/XCEngine/Platform/Window/SetFullscreen.md new file mode 100644 index 00000000..b99b5a79 --- /dev/null +++ b/docs/api/XCEngine/Platform/Window/SetFullscreen.md @@ -0,0 +1,31 @@ +# Window::SetFullscreen + +设置相关状态或配置。 + +```cpp +virtual void SetFullscreen(bool fullscreen) = 0; +``` + +该方法声明于 `XCEngine/Platform/Window.h`,当前页面用于固定 `Window` 类目录下的方法级 canonical 路径。 + +**参数:** +- `fullscreen` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::Window object; + // 根据上下文补齐参数后调用 Window::SetFullscreen(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Window.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/Window/SetInputModule.md b/docs/api/XCEngine/Platform/Window/SetInputModule.md new file mode 100644 index 00000000..e3b51451 --- /dev/null +++ b/docs/api/XCEngine/Platform/Window/SetInputModule.md @@ -0,0 +1,31 @@ +# Window::SetInputModule + +设置相关状态或配置。 + +```cpp +void SetInputModule(Input::InputModule* module); +``` + +该方法声明于 `XCEngine/Platform/Window.h`,当前页面用于固定 `Window` 类目录下的方法级 canonical 路径。 + +**参数:** +- `module` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::Window object; + // 根据上下文补齐参数后调用 Window::SetInputModule(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Window.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/Window/SetTitle.md b/docs/api/XCEngine/Platform/Window/SetTitle.md new file mode 100644 index 00000000..41714fc2 --- /dev/null +++ b/docs/api/XCEngine/Platform/Window/SetTitle.md @@ -0,0 +1,31 @@ +# Window::SetTitle + +设置相关状态或配置。 + +```cpp +virtual void SetTitle(const Containers::String& title) = 0; +``` + +该方法声明于 `XCEngine/Platform/Window.h`,当前页面用于固定 `Window` 类目录下的方法级 canonical 路径。 + +**参数:** +- `title` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::Window object; + // 根据上下文补齐参数后调用 Window::SetTitle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Window.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/Window/ShouldClose.md b/docs/api/XCEngine/Platform/Window/ShouldClose.md new file mode 100644 index 00000000..06c86df8 --- /dev/null +++ b/docs/api/XCEngine/Platform/Window/ShouldClose.md @@ -0,0 +1,30 @@ +# Window::ShouldClose + +公开方法,详见头文件声明。 + +```cpp +virtual bool ShouldClose() const = 0; +``` + +该方法声明于 `XCEngine/Platform/Window.h`,当前页面用于固定 `Window` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::Window object; + // 根据上下文补齐参数后调用 Window::ShouldClose(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Window.md) +- [返回模块目录](../Platform.md) diff --git a/docs/api/XCEngine/Platform/Window/Window.md b/docs/api/XCEngine/Platform/Window/Window.md new file mode 100644 index 00000000..8da0f1fb --- /dev/null +++ b/docs/api/XCEngine/Platform/Window/Window.md @@ -0,0 +1,44 @@ +# Window + +**命名空间**: `XCEngine::Platform` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/Platform/Window.h` + +**描述**: 定义 `XCEngine/Platform` 子目录中的 `Window` public API。 + +## 概述 + +`Window.h` 是 `XCEngine/Platform` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Window` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~Window()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Create](Create.md) | 创建新对象或资源。 | +| [Destroy](Destroy.md) | 公开方法,详见头文件声明。 | +| [GetHandle](GetHandle.md) | 获取相关状态或对象。 | +| [PumpEvents](PumpEvents.md) | 公开方法,详见头文件声明。 | +| [SetTitle](SetTitle.md) | 设置相关状态或配置。 | +| [SetFullscreen](SetFullscreen.md) | 设置相关状态或配置。 | +| [IsFullscreen](IsFullscreen.md) | 查询当前状态。 | +| [Minimize](Minimize.md) | 公开方法,详见头文件声明。 | +| [Maximize](Maximize.md) | 公开方法,详见头文件声明。 | +| [Restore](Restore.md) | 公开方法,详见头文件声明。 | +| [ShouldClose](ShouldClose.md) | 公开方法,详见头文件声明。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [SetInputModule](SetInputModule.md) | 设置相关状态或配置。 | +| [GetInputModule](GetInputModule.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Platform.md) - 返回 `Platform` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Platform/Windows/Windows.md b/docs/api/XCEngine/Platform/Windows/Windows.md new file mode 100644 index 00000000..da2bd1c3 --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/Windows.md @@ -0,0 +1,21 @@ +# Windows + +**命名空间**: `XCEngine::Platform::Windows` + +**类型**: `submodule` + +**描述**: Windows 平台窗口与输入接入实现。 + +## 概览 + +该目录与 `XCEngine/Platform/Windows` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 头文件 + +- [WindowsInputModule](WindowsInputModule/WindowsInputModule.md) - `WindowsInputModule.h` +- [WindowsWindow](WindowsWindow/WindowsWindow.md) - `WindowsWindow.h` + +## 相关文档 + +- [上级目录](../Platform.md) +- [API 总索引](../../../main.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsInputModule/Constructor.md b/docs/api/XCEngine/Platform/Windows/WindowsInputModule/Constructor.md new file mode 100644 index 00000000..bdc5c25b --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsInputModule/Constructor.md @@ -0,0 +1,28 @@ +# WindowsInputModule::WindowsInputModule() + +构造对象。 + +```cpp +WindowsInputModule(); +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsInputModule.h`,当前页面用于固定 `WindowsInputModule` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::Platform::WindowsInputModule object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsInputModule.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsInputModule/Destructor.md b/docs/api/XCEngine/Platform/Windows/WindowsInputModule/Destructor.md new file mode 100644 index 00000000..3106247e --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsInputModule/Destructor.md @@ -0,0 +1,29 @@ +# WindowsInputModule::~WindowsInputModule() + +销毁对象并释放相关资源。 + +```cpp +virtual ~WindowsInputModule(); +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsInputModule.h`,当前页面用于固定 `WindowsInputModule` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::Platform::WindowsInputModule object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](WindowsInputModule.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsInputModule/HandleMessage.md b/docs/api/XCEngine/Platform/Windows/WindowsInputModule/HandleMessage.md new file mode 100644 index 00000000..94d6edea --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsInputModule/HandleMessage.md @@ -0,0 +1,34 @@ +# WindowsInputModule::HandleMessage + +公开方法,详见头文件声明。 + +```cpp +void HandleMessage(size_t hwnd, unsigned int msg, size_t wParam, size_t lParam) override; +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsInputModule.h`,当前页面用于固定 `WindowsInputModule` 类目录下的方法级 canonical 路径。 + +**参数:** +- `hwnd` - 参数语义详见头文件声明。 +- `msg` - 参数语义详见头文件声明。 +- `wParam` - 参数语义详见头文件声明。 +- `lParam` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::Platform::WindowsInputModule object; + // 根据上下文补齐参数后调用 WindowsInputModule::HandleMessage(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsInputModule.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsInputModule/Initialize.md b/docs/api/XCEngine/Platform/Windows/WindowsInputModule/Initialize.md new file mode 100644 index 00000000..563b8d05 --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsInputModule/Initialize.md @@ -0,0 +1,31 @@ +# WindowsInputModule::Initialize + +初始化内部状态。 + +```cpp +void Initialize(void* windowHandle) override; +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsInputModule.h`,当前页面用于固定 `WindowsInputModule` 类目录下的方法级 canonical 路径。 + +**参数:** +- `windowHandle` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::Platform::WindowsInputModule object; + // 根据上下文补齐参数后调用 WindowsInputModule::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsInputModule.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsInputModule/PumpEvents.md b/docs/api/XCEngine/Platform/Windows/WindowsInputModule/PumpEvents.md new file mode 100644 index 00000000..77879c10 --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsInputModule/PumpEvents.md @@ -0,0 +1,30 @@ +# WindowsInputModule::PumpEvents + +公开方法,详见头文件声明。 + +```cpp +void PumpEvents() override; +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsInputModule.h`,当前页面用于固定 `WindowsInputModule` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::Platform::WindowsInputModule object; + // 根据上下文补齐参数后调用 WindowsInputModule::PumpEvents(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsInputModule.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsInputModule/Shutdown.md b/docs/api/XCEngine/Platform/Windows/WindowsInputModule/Shutdown.md new file mode 100644 index 00000000..d2cd7707 --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsInputModule/Shutdown.md @@ -0,0 +1,30 @@ +# WindowsInputModule::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsInputModule.h`,当前页面用于固定 `WindowsInputModule` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Input::Platform::WindowsInputModule object; + // 根据上下文补齐参数后调用 WindowsInputModule::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsInputModule.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsInputModule/WindowsInputModule.md b/docs/api/XCEngine/Platform/Windows/WindowsInputModule/WindowsInputModule.md new file mode 100644 index 00000000..6c4fda4c --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsInputModule/WindowsInputModule.md @@ -0,0 +1,35 @@ +# WindowsInputModule + +**命名空间**: `XCEngine::Input::Platform` + +**类型**: `class` + +**头文件**: `XCEngine/Platform/Windows/WindowsInputModule.h` + +**描述**: 定义 `XCEngine/Platform/Windows` 子目录中的 `WindowsInputModule` public API。 + +## 概述 + +`WindowsInputModule.h` 是 `XCEngine/Platform/Windows` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `WindowsInputModule` | `class` | 继承自 `InputModule` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [WindowsInputModule()](Constructor.md) | 构造对象。 | +| [~WindowsInputModule()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [PumpEvents](PumpEvents.md) | 公开方法,详见头文件声明。 | +| [HandleMessage](HandleMessage.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Windows.md) - 返回 `Windows` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Platform/Windows/WindowsWindow/Constructor.md b/docs/api/XCEngine/Platform/Windows/WindowsWindow/Constructor.md new file mode 100644 index 00000000..0db0eda8 --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsWindow/Constructor.md @@ -0,0 +1,28 @@ +# WindowsWindow::WindowsWindow() + +构造对象。 + +```cpp +WindowsWindow(); +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsWindow.h`,当前页面用于固定 `WindowsWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::WindowsWindow object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsWindow.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsWindow/Create.md b/docs/api/XCEngine/Platform/Windows/WindowsWindow/Create.md new file mode 100644 index 00000000..63bc3ec4 --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsWindow/Create.md @@ -0,0 +1,31 @@ +# WindowsWindow::Create + +创建新对象或资源。 + +```cpp +bool Create(const WindowDesc& desc) override; +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsWindow.h`,当前页面用于固定 `WindowsWindow` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::WindowsWindow object; + // 根据上下文补齐参数后调用 WindowsWindow::Create(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsWindow.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsWindow/Destroy.md b/docs/api/XCEngine/Platform/Windows/WindowsWindow/Destroy.md new file mode 100644 index 00000000..734b4800 --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsWindow/Destroy.md @@ -0,0 +1,30 @@ +# WindowsWindow::Destroy + +公开方法,详见头文件声明。 + +```cpp +void Destroy() override; +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsWindow.h`,当前页面用于固定 `WindowsWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::WindowsWindow object; + // 根据上下文补齐参数后调用 WindowsWindow::Destroy(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsWindow.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsWindow/Destructor.md b/docs/api/XCEngine/Platform/Windows/WindowsWindow/Destructor.md new file mode 100644 index 00000000..3ab4e162 --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsWindow/Destructor.md @@ -0,0 +1,29 @@ +# WindowsWindow::~WindowsWindow() + +销毁对象并释放相关资源。 + +```cpp +virtual ~WindowsWindow(); +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsWindow.h`,当前页面用于固定 `WindowsWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::WindowsWindow object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](WindowsWindow.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsWindow/GetHandle.md b/docs/api/XCEngine/Platform/Windows/WindowsWindow/GetHandle.md new file mode 100644 index 00000000..31751efa --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsWindow/GetHandle.md @@ -0,0 +1,30 @@ +# WindowsWindow::GetHandle + +获取相关状态或对象。 + +```cpp +WindowHandle GetHandle() const override; +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsWindow.h`,当前页面用于固定 `WindowsWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `WindowHandle` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::WindowsWindow object; + // 根据上下文补齐参数后调用 WindowsWindow::GetHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsWindow.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsWindow/GetNativeHandle.md b/docs/api/XCEngine/Platform/Windows/WindowsWindow/GetNativeHandle.md new file mode 100644 index 00000000..6cc47c02 --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsWindow/GetNativeHandle.md @@ -0,0 +1,30 @@ +# WindowsWindow::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsWindow.h`,当前页面用于固定 `WindowsWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::WindowsWindow object; + // 根据上下文补齐参数后调用 WindowsWindow::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsWindow.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsWindow/IsFullscreen.md b/docs/api/XCEngine/Platform/Windows/WindowsWindow/IsFullscreen.md new file mode 100644 index 00000000..3de6e3e5 --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsWindow/IsFullscreen.md @@ -0,0 +1,30 @@ +# WindowsWindow::IsFullscreen + +查询当前状态。 + +```cpp +bool IsFullscreen() const override; +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsWindow.h`,当前页面用于固定 `WindowsWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::WindowsWindow object; + // 根据上下文补齐参数后调用 WindowsWindow::IsFullscreen(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsWindow.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsWindow/Maximize.md b/docs/api/XCEngine/Platform/Windows/WindowsWindow/Maximize.md new file mode 100644 index 00000000..21c0d426 --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsWindow/Maximize.md @@ -0,0 +1,30 @@ +# WindowsWindow::Maximize + +公开方法,详见头文件声明。 + +```cpp +void Maximize() override; +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsWindow.h`,当前页面用于固定 `WindowsWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::WindowsWindow object; + // 根据上下文补齐参数后调用 WindowsWindow::Maximize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsWindow.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsWindow/Minimize.md b/docs/api/XCEngine/Platform/Windows/WindowsWindow/Minimize.md new file mode 100644 index 00000000..b47335e7 --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsWindow/Minimize.md @@ -0,0 +1,30 @@ +# WindowsWindow::Minimize + +公开方法,详见头文件声明。 + +```cpp +void Minimize() override; +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsWindow.h`,当前页面用于固定 `WindowsWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::WindowsWindow object; + // 根据上下文补齐参数后调用 WindowsWindow::Minimize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsWindow.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsWindow/PumpEvents.md b/docs/api/XCEngine/Platform/Windows/WindowsWindow/PumpEvents.md new file mode 100644 index 00000000..e72c4d53 --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsWindow/PumpEvents.md @@ -0,0 +1,30 @@ +# WindowsWindow::PumpEvents + +公开方法,详见头文件声明。 + +```cpp +void PumpEvents() override; +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsWindow.h`,当前页面用于固定 `WindowsWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::WindowsWindow object; + // 根据上下文补齐参数后调用 WindowsWindow::PumpEvents(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsWindow.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsWindow/Restore.md b/docs/api/XCEngine/Platform/Windows/WindowsWindow/Restore.md new file mode 100644 index 00000000..ab828ea2 --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsWindow/Restore.md @@ -0,0 +1,30 @@ +# WindowsWindow::Restore + +公开方法,详见头文件声明。 + +```cpp +void Restore() override; +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsWindow.h`,当前页面用于固定 `WindowsWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::WindowsWindow object; + // 根据上下文补齐参数后调用 WindowsWindow::Restore(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsWindow.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsWindow/SetFullscreen.md b/docs/api/XCEngine/Platform/Windows/WindowsWindow/SetFullscreen.md new file mode 100644 index 00000000..9abbc57c --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsWindow/SetFullscreen.md @@ -0,0 +1,31 @@ +# WindowsWindow::SetFullscreen + +设置相关状态或配置。 + +```cpp +void SetFullscreen(bool fullscreen) override; +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsWindow.h`,当前页面用于固定 `WindowsWindow` 类目录下的方法级 canonical 路径。 + +**参数:** +- `fullscreen` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::WindowsWindow object; + // 根据上下文补齐参数后调用 WindowsWindow::SetFullscreen(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsWindow.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsWindow/SetMessageCallback.md b/docs/api/XCEngine/Platform/Windows/WindowsWindow/SetMessageCallback.md new file mode 100644 index 00000000..b9d3bcc6 --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsWindow/SetMessageCallback.md @@ -0,0 +1,31 @@ +# WindowsWindow::SetMessageCallback + +设置相关状态或配置。 + +```cpp +void SetMessageCallback(std::function callback); +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsWindow.h`,当前页面用于固定 `WindowsWindow` 类目录下的方法级 canonical 路径。 + +**参数:** +- `callback` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::WindowsWindow object; + // 根据上下文补齐参数后调用 WindowsWindow::SetMessageCallback(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsWindow.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsWindow/SetTitle.md b/docs/api/XCEngine/Platform/Windows/WindowsWindow/SetTitle.md new file mode 100644 index 00000000..63dd9a93 --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsWindow/SetTitle.md @@ -0,0 +1,31 @@ +# WindowsWindow::SetTitle + +设置相关状态或配置。 + +```cpp +void SetTitle(const Containers::String& title) override; +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsWindow.h`,当前页面用于固定 `WindowsWindow` 类目录下的方法级 canonical 路径。 + +**参数:** +- `title` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::WindowsWindow object; + // 根据上下文补齐参数后调用 WindowsWindow::SetTitle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsWindow.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsWindow/ShouldClose.md b/docs/api/XCEngine/Platform/Windows/WindowsWindow/ShouldClose.md new file mode 100644 index 00000000..d6cbc49e --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsWindow/ShouldClose.md @@ -0,0 +1,30 @@ +# WindowsWindow::ShouldClose + +公开方法,详见头文件声明。 + +```cpp +bool ShouldClose() const override; +``` + +该方法声明于 `XCEngine/Platform/Windows/WindowsWindow.h`,当前页面用于固定 `WindowsWindow` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Platform::WindowsWindow object; + // 根据上下文补齐参数后调用 WindowsWindow::ShouldClose(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](WindowsWindow.md) +- [返回模块目录](../Windows.md) diff --git a/docs/api/XCEngine/Platform/Windows/WindowsWindow/WindowsWindow.md b/docs/api/XCEngine/Platform/Windows/WindowsWindow/WindowsWindow.md new file mode 100644 index 00000000..0c166d65 --- /dev/null +++ b/docs/api/XCEngine/Platform/Windows/WindowsWindow/WindowsWindow.md @@ -0,0 +1,44 @@ +# WindowsWindow + +**命名空间**: `XCEngine::Platform` + +**类型**: `class` + +**头文件**: `XCEngine/Platform/Windows/WindowsWindow.h` + +**描述**: 定义 `XCEngine/Platform/Windows` 子目录中的 `WindowsWindow` public API。 + +## 概述 + +`WindowsWindow.h` 是 `XCEngine/Platform/Windows` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `WindowsWindow` | `class` | 继承自 `Window` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [WindowsWindow()](Constructor.md) | 构造对象。 | +| [~WindowsWindow()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Create](Create.md) | 创建新对象或资源。 | +| [Destroy](Destroy.md) | 公开方法,详见头文件声明。 | +| [GetHandle](GetHandle.md) | 获取相关状态或对象。 | +| [PumpEvents](PumpEvents.md) | 公开方法,详见头文件声明。 | +| [SetTitle](SetTitle.md) | 设置相关状态或配置。 | +| [SetFullscreen](SetFullscreen.md) | 设置相关状态或配置。 | +| [IsFullscreen](IsFullscreen.md) | 查询当前状态。 | +| [Minimize](Minimize.md) | 公开方法,详见头文件声明。 | +| [Maximize](Maximize.md) | 公开方法,详见头文件声明。 | +| [Restore](Restore.md) | 公开方法,详见头文件声明。 | +| [ShouldClose](ShouldClose.md) | 公开方法,详见头文件声明。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [SetMessageCallback](SetMessageCallback.md) | 设置相关状态或配置。 | + +## 相关文档 + +- [当前目录](../Windows.md) - 返回 `Windows` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12.md b/docs/api/XCEngine/RHI/D3D12/D3D12.md new file mode 100644 index 00000000..36cdd0e8 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12.md @@ -0,0 +1,42 @@ +# D3D12 + +**命名空间**: `XCEngine::RHI::D3D12` + +**类型**: `submodule` + +**描述**: DirectX 12 后端 public headers。 + +## 概览 + +该目录与 `XCEngine/RHI/D3D12` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 头文件 + +- [D3D12Buffer](D3D12Buffer/D3D12Buffer.md) - `D3D12Buffer.h` +- [D3D12CommandAllocator](D3D12CommandAllocator/D3D12CommandAllocator.md) - `D3D12CommandAllocator.h` +- [D3D12CommandList](D3D12CommandList/D3D12CommandList.md) - `D3D12CommandList.h` +- [D3D12CommandQueue](D3D12CommandQueue/D3D12CommandQueue.md) - `D3D12CommandQueue.h` +- [D3D12Common](D3D12Common/D3D12Common.md) - `D3D12Common.h` +- [D3D12DescriptorHeap](D3D12DescriptorHeap/D3D12DescriptorHeap.md) - `D3D12DescriptorHeap.h` +- [D3D12DescriptorSet](D3D12DescriptorSet/D3D12DescriptorSet.md) - `D3D12DescriptorSet.h` +- [D3D12Device](D3D12Device/D3D12Device.md) - `D3D12Device.h` +- [D3D12Enums](D3D12Enums/D3D12Enums.md) - `D3D12Enums.h` +- [D3D12Fence](D3D12Fence/D3D12Fence.md) - `D3D12Fence.h` +- [D3D12Framebuffer](D3D12Framebuffer/D3D12Framebuffer.md) - `D3D12Framebuffer.h` +- [D3D12PipelineLayout](D3D12PipelineLayout/D3D12PipelineLayout.md) - `D3D12PipelineLayout.h` +- [D3D12PipelineState](D3D12PipelineState/D3D12PipelineState.md) - `D3D12PipelineState.h` +- [D3D12QueryHeap](D3D12QueryHeap/D3D12QueryHeap.md) - `D3D12QueryHeap.h` +- [D3D12RenderPass](D3D12RenderPass/D3D12RenderPass.md) - `D3D12RenderPass.h` +- [D3D12ResourceView](D3D12ResourceView/D3D12ResourceView.md) - `D3D12ResourceView.h` +- [D3D12RootSignature](D3D12RootSignature/D3D12RootSignature.md) - `D3D12RootSignature.h` +- [D3D12Sampler](D3D12Sampler/D3D12Sampler.md) - `D3D12Sampler.h` +- [D3D12Screenshot](D3D12Screenshot/D3D12Screenshot.md) - `D3D12Screenshot.h` +- [D3D12Shader](D3D12Shader/D3D12Shader.md) - `D3D12Shader.h` +- [D3D12SwapChain](D3D12SwapChain/D3D12SwapChain.md) - `D3D12SwapChain.h` +- [D3D12Texture](D3D12Texture/D3D12Texture.md) - `D3D12Texture.h` +- [D3D12Types](D3D12Types/D3D12Types.md) - `D3D12Types.h` + +## 相关文档 + +- [上级目录](../RHI.md) +- [API 总索引](../../../main.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Constructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Constructor.md new file mode 100644 index 00000000..65f0493d --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Constructor.md @@ -0,0 +1,28 @@ +# D3D12Buffer::D3D12Buffer() + +构造对象。 + +```cpp +D3D12Buffer(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/D3D12Buffer.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/D3D12Buffer.md new file mode 100644 index 00000000..f26408b5 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/D3D12Buffer.md @@ -0,0 +1,53 @@ +# D3D12Buffer + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12Buffer.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12Buffer` public API。 + +## 概述 + +`D3D12Buffer.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `D3D12Buffer` | `class` | 继承自 `RHIBuffer` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [D3D12Buffer()](Constructor.md) | 构造对象。 | +| [~D3D12Buffer()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [InitializeFromExisting](InitializeFromExisting.md) | 初始化内部状态。 | +| [InitializeWithData](InitializeWithData.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetResource](GetResource.md) | 获取相关状态或对象。 | +| [GetDesc](GetDesc.md) | 获取相关状态或对象。 | +| [GetGPUVirtualAddress](GetGPUVirtualAddress.md) | 获取相关状态或对象。 | +| [UpdateData](UpdateData.md) | 更新运行时状态。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetState](GetState.md) | 获取相关状态或对象。 | +| [SetState](SetState.md) | 设置相关状态或配置。 | +| [GetGPUAddress](GetGPUAddress.md) | 获取相关状态或对象。 | +| [GetSize](GetSize.md) | 获取相关状态或对象。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [SetName](SetName.md) | 设置相关状态或配置。 | +| [GetStride](GetStride.md) | 获取相关状态或对象。 | +| [GetBufferType](GetBufferType.md) | 获取相关状态或对象。 | +| [SetStride](SetStride.md) | 设置相关状态或配置。 | +| [SetBufferType](SetBufferType.md) | 设置相关状态或配置。 | +| [Map](Map.md) | 公开方法,详见头文件声明。 | +| [Unmap](Unmap.md) | 公开方法,详见头文件声明。 | +| [SetData](SetData.md) | 设置相关状态或配置。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Destructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Destructor.md new file mode 100644 index 00000000..00beab11 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Destructor.md @@ -0,0 +1,29 @@ +# D3D12Buffer::~D3D12Buffer() + +销毁对象并释放相关资源。 + +```cpp +~D3D12Buffer() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetBufferType.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetBufferType.md new file mode 100644 index 00000000..ef67ee16 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetBufferType.md @@ -0,0 +1,30 @@ +# D3D12Buffer::GetBufferType + +获取相关状态或对象。 + +```cpp +BufferType GetBufferType() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `BufferType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::GetBufferType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetDesc.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetDesc.md new file mode 100644 index 00000000..fb3e668c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetDesc.md @@ -0,0 +1,30 @@ +# D3D12Buffer::GetDesc + +获取相关状态或对象。 + +```cpp +D3D12_RESOURCE_DESC GetDesc() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `D3D12_RESOURCE_DESC` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::GetDesc(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetGPUAddress.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetGPUAddress.md new file mode 100644 index 00000000..61fa03a4 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetGPUAddress.md @@ -0,0 +1,30 @@ +# D3D12Buffer::GetGPUAddress + +获取相关状态或对象。 + +```cpp +uint64_t GetGPUAddress() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::GetGPUAddress(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetGPUVirtualAddress.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetGPUVirtualAddress.md new file mode 100644 index 00000000..227e57ee --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetGPUVirtualAddress.md @@ -0,0 +1,30 @@ +# D3D12Buffer::GetGPUVirtualAddress + +获取相关状态或对象。 + +```cpp +D3D12_GPU_VIRTUAL_ADDRESS GetGPUVirtualAddress() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `D3D12_GPU_VIRTUAL_ADDRESS` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::GetGPUVirtualAddress(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetName.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetName.md new file mode 100644 index 00000000..523a14a8 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetName.md @@ -0,0 +1,30 @@ +# D3D12Buffer::GetName + +获取相关状态或对象。 + +```cpp +const std::string& GetName() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const std::string&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetNativeHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetNativeHandle.md new file mode 100644 index 00000000..3c8130f1 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetNativeHandle.md @@ -0,0 +1,30 @@ +# D3D12Buffer::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetResource.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetResource.md new file mode 100644 index 00000000..7b1940c1 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetResource.md @@ -0,0 +1,30 @@ +# D3D12Buffer::GetResource + +获取相关状态或对象。 + +```cpp +ID3D12Resource* GetResource() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ID3D12Resource*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::GetResource(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetSize.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetSize.md new file mode 100644 index 00000000..a75c254d --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetSize.md @@ -0,0 +1,30 @@ +# D3D12Buffer::GetSize + +获取相关状态或对象。 + +```cpp +uint64_t GetSize() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::GetSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetState.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetState.md new file mode 100644 index 00000000..5143b1cc --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetState.md @@ -0,0 +1,30 @@ +# D3D12Buffer::GetState + +获取相关状态或对象。 + +```cpp +ResourceStates GetState() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceStates` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::GetState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetStride.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetStride.md new file mode 100644 index 00000000..66241936 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/GetStride.md @@ -0,0 +1,30 @@ +# D3D12Buffer::GetStride + +获取相关状态或对象。 + +```cpp +uint32_t GetStride() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::GetStride(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Initialize.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Initialize.md new file mode 100644 index 00000000..f140e03b --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Initialize.md @@ -0,0 +1,34 @@ +# D3D12Buffer::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(ID3D12Device* device, uint64_t size, D3D12_RESOURCE_STATES initialState = D3D12_RESOURCE_STATE_COMMON, D3D12_HEAP_TYPE heapType = D3D12_HEAP_TYPE_DEFAULT); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `size` - 参数语义详见头文件声明。 +- `initialState` - 参数语义详见头文件声明。 +- `heapType` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/InitializeFromExisting.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/InitializeFromExisting.md new file mode 100644 index 00000000..c7d5db42 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/InitializeFromExisting.md @@ -0,0 +1,31 @@ +# D3D12Buffer::InitializeFromExisting + +初始化内部状态。 + +```cpp +bool InitializeFromExisting(ID3D12Resource* resource); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `resource` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::InitializeFromExisting(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/InitializeWithData.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/InitializeWithData.md new file mode 100644 index 00000000..31fbb418 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/InitializeWithData.md @@ -0,0 +1,35 @@ +# D3D12Buffer::InitializeWithData + +初始化内部状态。 + +```cpp +bool InitializeWithData(ID3D12Device* device, ID3D12GraphicsCommandList* commandList, const void* data, uint64_t size, D3D12_RESOURCE_STATES finalState); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `commandList` - 参数语义详见头文件声明。 +- `data` - 参数语义详见头文件声明。 +- `size` - 参数语义详见头文件声明。 +- `finalState` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::InitializeWithData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Map.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Map.md new file mode 100644 index 00000000..2cde14a9 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Map.md @@ -0,0 +1,30 @@ +# D3D12Buffer::Map + +公开方法,详见头文件声明。 + +```cpp +void* Map() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::Map(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetBufferType.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetBufferType.md new file mode 100644 index 00000000..91f6c2dd --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetBufferType.md @@ -0,0 +1,31 @@ +# D3D12Buffer::SetBufferType + +设置相关状态或配置。 + +```cpp +void SetBufferType(BufferType type) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::SetBufferType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetData.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetData.md new file mode 100644 index 00000000..8780b0d8 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetData.md @@ -0,0 +1,33 @@ +# D3D12Buffer::SetData + +设置相关状态或配置。 + +```cpp +void SetData(const void* data, size_t size, size_t offset = 0) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `data` - 参数语义详见头文件声明。 +- `size` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::SetData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetName.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetName.md new file mode 100644 index 00000000..842ee802 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetName.md @@ -0,0 +1,31 @@ +# D3D12Buffer::SetName + +设置相关状态或配置。 + +```cpp +void SetName(const std::string& name) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::SetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetState.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetState.md new file mode 100644 index 00000000..c67e03eb --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetState.md @@ -0,0 +1,31 @@ +# D3D12Buffer::SetState + +设置相关状态或配置。 + +```cpp +void SetState(ResourceStates state); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::SetState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetStride.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetStride.md new file mode 100644 index 00000000..3d8cd0ab --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/SetStride.md @@ -0,0 +1,31 @@ +# D3D12Buffer::SetStride + +设置相关状态或配置。 + +```cpp +void SetStride(uint32_t stride) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `stride` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::SetStride(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Shutdown.md new file mode 100644 index 00000000..11fa110e --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12Buffer::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Unmap.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Unmap.md new file mode 100644 index 00000000..c18520d8 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/Unmap.md @@ -0,0 +1,30 @@ +# D3D12Buffer::Unmap + +公开方法,详见头文件声明。 + +```cpp +void Unmap() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::Unmap(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/UpdateData.md b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/UpdateData.md new file mode 100644 index 00000000..2cd0d791 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Buffer/UpdateData.md @@ -0,0 +1,32 @@ +# D3D12Buffer::UpdateData + +更新运行时状态。 + +```cpp +void UpdateData(const void* data, uint64_t size); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Buffer.h`,当前页面用于固定 `D3D12Buffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `data` - 参数语义详见头文件声明。 +- `size` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Buffer object; + // 根据上下文补齐参数后调用 D3D12Buffer::UpdateData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Buffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Constructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Constructor.md new file mode 100644 index 00000000..e3f22fd6 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Constructor.md @@ -0,0 +1,28 @@ +# D3D12CommandAllocator::D3D12CommandAllocator() + +构造对象。 + +```cpp +D3D12CommandAllocator(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandAllocator.h`,当前页面用于固定 `D3D12CommandAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandAllocator object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandAllocator.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/D3D12CommandAllocator.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/D3D12CommandAllocator.md new file mode 100644 index 00000000..e68f7242 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/D3D12CommandAllocator.md @@ -0,0 +1,36 @@ +# D3D12CommandAllocator + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12CommandAllocator.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12CommandAllocator` public API。 + +## 概述 + +`D3D12CommandAllocator.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `D3D12CommandAllocator` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [D3D12CommandAllocator()](Constructor.md) | 构造对象。 | +| [~D3D12CommandAllocator()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Reset](Reset.md) | 公开方法,详见头文件声明。 | +| [IsReady](IsReady.md) | 查询当前状态。 | +| [GetCommandAllocator](GetCommandAllocator.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Destructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Destructor.md new file mode 100644 index 00000000..5e26413c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Destructor.md @@ -0,0 +1,29 @@ +# D3D12CommandAllocator::~D3D12CommandAllocator() + +销毁对象并释放相关资源。 + +```cpp +~D3D12CommandAllocator(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandAllocator.h`,当前页面用于固定 `D3D12CommandAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandAllocator object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandAllocator.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/GetCommandAllocator.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/GetCommandAllocator.md new file mode 100644 index 00000000..d75248b4 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/GetCommandAllocator.md @@ -0,0 +1,30 @@ +# D3D12CommandAllocator::GetCommandAllocator + +获取相关状态或对象。 + +```cpp +ID3D12CommandAllocator* GetCommandAllocator() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandAllocator.h`,当前页面用于固定 `D3D12CommandAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ID3D12CommandAllocator*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandAllocator object; + // 根据上下文补齐参数后调用 D3D12CommandAllocator::GetCommandAllocator(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandAllocator.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Initialize.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Initialize.md new file mode 100644 index 00000000..6e9dc5a1 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Initialize.md @@ -0,0 +1,32 @@ +# D3D12CommandAllocator::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(ID3D12Device* device, CommandQueueType type = CommandQueueType::Direct); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandAllocator.h`,当前页面用于固定 `D3D12CommandAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `type` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandAllocator object; + // 根据上下文补齐参数后调用 D3D12CommandAllocator::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandAllocator.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/IsReady.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/IsReady.md new file mode 100644 index 00000000..3557b09e --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/IsReady.md @@ -0,0 +1,30 @@ +# D3D12CommandAllocator::IsReady + +查询当前状态。 + +```cpp +bool IsReady() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandAllocator.h`,当前页面用于固定 `D3D12CommandAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandAllocator object; + // 根据上下文补齐参数后调用 D3D12CommandAllocator::IsReady(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandAllocator.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Reset.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Reset.md new file mode 100644 index 00000000..8e941d1e --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Reset.md @@ -0,0 +1,30 @@ +# D3D12CommandAllocator::Reset + +公开方法,详见头文件声明。 + +```cpp +void Reset(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandAllocator.h`,当前页面用于固定 `D3D12CommandAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandAllocator object; + // 根据上下文补齐参数后调用 D3D12CommandAllocator::Reset(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandAllocator.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Shutdown.md new file mode 100644 index 00000000..c98441d2 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandAllocator/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12CommandAllocator::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandAllocator.h`,当前页面用于固定 `D3D12CommandAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandAllocator object; + // 根据上下文补齐参数后调用 D3D12CommandAllocator::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandAllocator.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/AliasBarrier.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/AliasBarrier.md new file mode 100644 index 00000000..8f0c5370 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/AliasBarrier.md @@ -0,0 +1,32 @@ +# D3D12CommandList::AliasBarrier + +公开方法,详见头文件声明。 + +```cpp +void AliasBarrier(ID3D12Resource* beforeResource = nullptr, ID3D12Resource* afterResource = nullptr); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `beforeResource` - 参数语义详见头文件声明。 +- `afterResource` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::AliasBarrier(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/AliasBarrierInternal.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/AliasBarrierInternal.md new file mode 100644 index 00000000..3c316590 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/AliasBarrierInternal.md @@ -0,0 +1,32 @@ +# D3D12CommandList::AliasBarrierInternal + +公开方法,详见头文件声明。 + +```cpp +void AliasBarrierInternal(ID3D12Resource* beforeResource, ID3D12Resource* afterResource); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `beforeResource` - 参数语义详见头文件声明。 +- `afterResource` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::AliasBarrierInternal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/BeginQuery.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/BeginQuery.md new file mode 100644 index 00000000..f5d69252 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/BeginQuery.md @@ -0,0 +1,33 @@ +# D3D12CommandList::BeginQuery + +公开方法,详见头文件声明。 + +```cpp +void BeginQuery(ID3D12QueryHeap* queryHeap, QueryType type, uint32_t index); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `queryHeap` - 参数语义详见头文件声明。 +- `type` - 参数语义详见头文件声明。 +- `index` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::BeginQuery(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/BeginRenderPass.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/BeginRenderPass.md new file mode 100644 index 00000000..31d294ec --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/BeginRenderPass.md @@ -0,0 +1,35 @@ +# D3D12CommandList::BeginRenderPass + +公开方法,详见头文件声明。 + +```cpp +void BeginRenderPass(class RHIRenderPass* renderPass, class RHIFramebuffer* framebuffer, const Rect& renderArea, uint32_t clearValueCount, const ClearValue* clearValues) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `renderPass` - 参数语义详见头文件声明。 +- `framebuffer` - 参数语义详见头文件声明。 +- `renderArea` - 参数语义详见头文件声明。 +- `clearValueCount` - 参数语义详见头文件声明。 +- `clearValues` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::BeginRenderPass(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Clear.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Clear.md new file mode 100644 index 00000000..1be9b4e9 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Clear.md @@ -0,0 +1,35 @@ +# D3D12CommandList::Clear + +清空内部数据。 + +```cpp +void Clear(float r, float g, float b, float a, uint32_t buffers) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `r` - 参数语义详见头文件声明。 +- `g` - 参数语义详见头文件声明。 +- `b` - 参数语义详见头文件声明。 +- `a` - 参数语义详见头文件声明。 +- `buffers` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::Clear(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearDepthStencil.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearDepthStencil.md new file mode 100644 index 00000000..dda64670 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearDepthStencil.md @@ -0,0 +1,33 @@ +# D3D12CommandList::ClearDepthStencil + +清空内部数据。 + +```cpp +void ClearDepthStencil(RHIResourceView* depthStencil, float depth, uint8_t stencil) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `depthStencil` - 参数语义详见头文件声明。 +- `depth` - 参数语义详见头文件声明。 +- `stencil` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::ClearDepthStencil(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearDepthStencilView.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearDepthStencilView.md new file mode 100644 index 00000000..45e3a718 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearDepthStencilView.md @@ -0,0 +1,54 @@ +# D3D12CommandList::ClearDepthStencilView + +清空内部数据。 + +该方法在 `XCEngine/RHI/D3D12/D3D12CommandList.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void ClearDepthStencilView(ID3D12Resource* depthStencil, uint32_t clearFlags, float depth = 1.0f, uint8_t stencil = 0, uint32_t rectCount = 0, const D3D12_RECT* rects = nullptr); +``` + +**参数:** +- `depthStencil` - 参数语义详见头文件声明。 +- `clearFlags` - 参数语义详见头文件声明。 +- `depth` - 参数语义详见头文件声明。 +- `stencil` - 参数语义详见头文件声明。 +- `rectCount` - 参数语义详见头文件声明。 +- `rects` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void ClearDepthStencilView(D3D12_CPU_DESCRIPTOR_HANDLE depthStencilHandle, uint32_t clearFlags, float depth = 1.0f, uint8_t stencil = 0, uint32_t rectCount = 0, const D3D12_RECT* rects = nullptr); +``` + +**参数:** +- `depthStencilHandle` - 参数语义详见头文件声明。 +- `clearFlags` - 参数语义详见头文件声明。 +- `depth` - 参数语义详见头文件声明。 +- `stencil` - 参数语义详见头文件声明。 +- `rectCount` - 参数语义详见头文件声明。 +- `rects` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::ClearDepthStencilView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearRenderTarget.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearRenderTarget.md new file mode 100644 index 00000000..beb1ed9a --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearRenderTarget.md @@ -0,0 +1,32 @@ +# D3D12CommandList::ClearRenderTarget + +清空内部数据。 + +```cpp +void ClearRenderTarget(RHIResourceView* renderTarget, const float color[4]) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `renderTarget` - 参数语义详见头文件声明。 +- `param` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::ClearRenderTarget(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearRenderTargetView.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearRenderTargetView.md new file mode 100644 index 00000000..9fab3586 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearRenderTargetView.md @@ -0,0 +1,50 @@ +# D3D12CommandList::ClearRenderTargetView + +清空内部数据。 + +该方法在 `XCEngine/RHI/D3D12/D3D12CommandList.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void ClearRenderTargetView(ID3D12Resource* renderTarget, const float color[4], uint32_t rectCount = 0, const D3D12_RECT* rects = nullptr); +``` + +**参数:** +- `renderTarget` - 参数语义详见头文件声明。 +- `param` - 参数语义详见头文件声明。 +- `rectCount` - 参数语义详见头文件声明。 +- `rects` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void ClearRenderTargetView(D3D12_CPU_DESCRIPTOR_HANDLE renderTargetHandle, const float color[4], uint32_t rectCount = 0, const D3D12_RECT* rects = nullptr); +``` + +**参数:** +- `renderTargetHandle` - 参数语义详见头文件声明。 +- `param` - 参数语义详见头文件声明。 +- `rectCount` - 参数语义详见头文件声明。 +- `rects` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::ClearRenderTargetView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearUnorderedAccessView.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearUnorderedAccessView.md new file mode 100644 index 00000000..5cbb4103 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ClearUnorderedAccessView.md @@ -0,0 +1,36 @@ +# D3D12CommandList::ClearUnorderedAccessView + +清空内部数据。 + +```cpp +void ClearUnorderedAccessView(D3D12_GPU_DESCRIPTOR_HANDLE viewHandle, D3D12_CPU_DESCRIPTOR_HANDLE resourceHandle, ID3D12Resource* unorderedAccess, const float values[4], uint32_t rectCount = 0, const D3D12_RECT* rects = nullptr); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `viewHandle` - 参数语义详见头文件声明。 +- `resourceHandle` - 参数语义详见头文件声明。 +- `unorderedAccess` - 参数语义详见头文件声明。 +- `param` - 参数语义详见头文件声明。 +- `rectCount` - 参数语义详见头文件声明。 +- `rects` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::ClearUnorderedAccessView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Close.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Close.md new file mode 100644 index 00000000..932bef61 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Close.md @@ -0,0 +1,30 @@ +# D3D12CommandList::Close + +公开方法,详见头文件声明。 + +```cpp +void Close() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::Close(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Constructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Constructor.md new file mode 100644 index 00000000..2fc594c8 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Constructor.md @@ -0,0 +1,28 @@ +# D3D12CommandList::D3D12CommandList() + +构造对象。 + +```cpp +D3D12CommandList(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/CopyBuffer.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/CopyBuffer.md new file mode 100644 index 00000000..e8b589fe --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/CopyBuffer.md @@ -0,0 +1,35 @@ +# D3D12CommandList::CopyBuffer + +公开方法,详见头文件声明。 + +```cpp +void CopyBuffer(ID3D12Resource* dst, uint64_t dstOffset, ID3D12Resource* src, uint64_t srcOffset, uint64_t size); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `dst` - 参数语义详见头文件声明。 +- `dstOffset` - 参数语义详见头文件声明。 +- `src` - 参数语义详见头文件声明。 +- `srcOffset` - 参数语义详见头文件声明。 +- `size` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::CopyBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/CopyResource.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/CopyResource.md new file mode 100644 index 00000000..a3233fc5 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/CopyResource.md @@ -0,0 +1,32 @@ +# D3D12CommandList::CopyResource + +公开方法,详见头文件声明。 + +```cpp +void CopyResource(RHIResourceView* dst, RHIResourceView* src) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `dst` - 参数语义详见头文件声明。 +- `src` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::CopyResource(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/CopyResourceInternal.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/CopyResourceInternal.md new file mode 100644 index 00000000..9c18e069 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/CopyResourceInternal.md @@ -0,0 +1,32 @@ +# D3D12CommandList::CopyResourceInternal + +公开方法,详见头文件声明。 + +```cpp +void CopyResourceInternal(ID3D12Resource* dst, ID3D12Resource* src); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `dst` - 参数语义详见头文件声明。 +- `src` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::CopyResourceInternal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/CopyTexture.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/CopyTexture.md new file mode 100644 index 00000000..f476a191 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/CopyTexture.md @@ -0,0 +1,34 @@ +# D3D12CommandList::CopyTexture + +公开方法,详见头文件声明。 + +```cpp +void CopyTexture(ID3D12Resource* dst, const D3D12_TEXTURE_COPY_LOCATION& dstLocation, ID3D12Resource* src, const D3D12_TEXTURE_COPY_LOCATION& srcLocation); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `dst` - 参数语义详见头文件声明。 +- `dstLocation` - 参数语义详见头文件声明。 +- `src` - 参数语义详见头文件声明。 +- `srcLocation` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::CopyTexture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/D3D12CommandList.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/D3D12CommandList.md new file mode 100644 index 00000000..fa7a5f26 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/D3D12CommandList.md @@ -0,0 +1,101 @@ +# D3D12CommandList + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12CommandList.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12CommandList` public API。 + +## 概述 + +`D3D12CommandList.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `D3D12CommandList` | `class` | 继承自 `RHICommandList` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [D3D12CommandList()](Constructor.md) | 构造对象。 | +| [~D3D12CommandList()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Reset](Reset.md) | 公开方法,详见头文件声明。 | +| [Close](Close.md) | 公开方法,详见头文件声明。 | +| [GetCommandList](GetCommandList.md) | 获取相关状态或对象。 | +| [SetShader](SetShader.md) | 设置相关状态或配置。 | +| [TransitionBarrier](TransitionBarrier.md) | 公开方法,详见头文件声明。 | +| [TransitionBarrierInternal](TransitionBarrierInternal.md) | 公开方法,详见头文件声明。 | +| [UAVBarrier](UAVBarrier.md) | 公开方法,详见头文件声明。 | +| [UAVBarrierInternal](UAVBarrierInternal.md) | 公开方法,详见头文件声明。 | +| [AliasBarrier](AliasBarrier.md) | 公开方法,详见头文件声明。 | +| [AliasBarrierInternal](AliasBarrierInternal.md) | 公开方法,详见头文件声明。 | +| [BeginRenderPass](BeginRenderPass.md) | 公开方法,详见头文件声明。 | +| [EndRenderPass](EndRenderPass.md) | 公开方法,详见头文件声明。 | +| [SetPipelineState](SetPipelineState.md) | 设置相关状态或配置。 | +| [SetPipelineStateInternal](SetPipelineStateInternal.md) | 设置相关状态或配置。 | +| [SetPipelineLayout](SetPipelineLayout.md) | 设置相关状态或配置。 | +| [SetRootSignature](SetRootSignature.md) | 设置相关状态或配置。 | +| [SetGraphicsDescriptorSets](SetGraphicsDescriptorSets.md) | 设置相关状态或配置。 | +| [SetComputeDescriptorSets](SetComputeDescriptorSets.md) | 设置相关状态或配置。 | +| [SetViewport](SetViewport.md) | 设置相关状态或配置。 | +| [SetViewports](SetViewports.md) | 设置相关状态或配置。 | +| [SetScissorRect](SetScissorRect.md) | 设置相关状态或配置。 | +| [SetScissorRects](SetScissorRects.md) | 设置相关状态或配置。 | +| [SetPrimitiveTopology](SetPrimitiveTopology.md) | 设置相关状态或配置。 | +| [SetRenderTargets](SetRenderTargets.md) | 设置相关状态或配置。 | +| [SetRenderTargetsInternal](SetRenderTargetsInternal.md) | 设置相关状态或配置。 | +| [SetRenderTargetsHandle](SetRenderTargetsHandle.md) | 设置相关状态或配置。 | +| [SetVertexBuffers](SetVertexBuffers.md) | 设置相关状态或配置。 | +| [SetVertexBuffersInternal](SetVertexBuffersInternal.md) | 设置相关状态或配置。 | +| [SetVertexBuffer](SetVertexBuffer.md) | 设置相关状态或配置。 | +| [SetIndexBuffer](SetIndexBuffer.md) | 设置相关状态或配置。 | +| [SetIndexBufferInternal](SetIndexBufferInternal.md) | 设置相关状态或配置。 | +| [SetDescriptorHeap](SetDescriptorHeap.md) | 设置相关状态或配置。 | +| [SetDescriptorHeaps](SetDescriptorHeaps.md) | 设置相关状态或配置。 | +| [SetGraphicsDescriptorTable](SetGraphicsDescriptorTable.md) | 设置相关状态或配置。 | +| [SetComputeDescriptorTable](SetComputeDescriptorTable.md) | 设置相关状态或配置。 | +| [SetGraphicsRootConstantBufferView](SetGraphicsRootConstantBufferView.md) | 设置相关状态或配置。 | +| [SetGraphicsRoot32BitConstants](SetGraphicsRoot32BitConstants.md) | 设置相关状态或配置。 | +| [SetGraphicsRootDescriptorTable](SetGraphicsRootDescriptorTable.md) | 设置相关状态或配置。 | +| [SetGraphicsRootShaderResourceView](SetGraphicsRootShaderResourceView.md) | 设置相关状态或配置。 | +| [SetStencilRef](SetStencilRef.md) | 设置相关状态或配置。 | +| [SetBlendFactor](SetBlendFactor.md) | 设置相关状态或配置。 | +| [SetDepthBias](SetDepthBias.md) | 设置相关状态或配置。 | +| [Draw](Draw.md) | 公开方法,详见头文件声明。 | +| [DrawIndexed](DrawIndexed.md) | 公开方法,详见头文件声明。 | +| [DrawInstancedIndirect](DrawInstancedIndirect.md) | 公开方法,详见头文件声明。 | +| [DrawInstancedIndirectInternal](DrawInstancedIndirectInternal.md) | 公开方法,详见头文件声明。 | +| [DrawIndexedInstancedIndirect](DrawIndexedInstancedIndirect.md) | 公开方法,详见头文件声明。 | +| [DrawIndexedInstancedIndirectInternal](DrawIndexedInstancedIndirectInternal.md) | 公开方法,详见头文件声明。 | +| [Clear](Clear.md) | 清空内部数据。 | +| [ClearRenderTarget](ClearRenderTarget.md) | 清空内部数据。 | +| [ClearRenderTargetView](ClearRenderTargetView.md) | 清空内部数据。 | +| [ClearDepthStencil](ClearDepthStencil.md) | 清空内部数据。 | +| [ClearDepthStencilView](ClearDepthStencilView.md) | 清空内部数据。 | +| [ClearUnorderedAccessView](ClearUnorderedAccessView.md) | 清空内部数据。 | +| [CopyResource](CopyResource.md) | 公开方法,详见头文件声明。 | +| [CopyResourceInternal](CopyResourceInternal.md) | 公开方法,详见头文件声明。 | +| [CopyBuffer](CopyBuffer.md) | 公开方法,详见头文件声明。 | +| [CopyTexture](CopyTexture.md) | 公开方法,详见头文件声明。 | +| [BeginQuery](BeginQuery.md) | 公开方法,详见头文件声明。 | +| [EndQuery](EndQuery.md) | 公开方法,详见头文件声明。 | +| [ResolveQueryData](ResolveQueryData.md) | 解析并返回目标结果。 | +| [Dispatch](Dispatch.md) | 公开方法,详见头文件声明。 | +| [DispatchIndirect](DispatchIndirect.md) | 公开方法,详见头文件声明。 | +| [DispatchIndirectInternal](DispatchIndirectInternal.md) | 公开方法,详见头文件声明。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [ExecuteBundle](ExecuteBundle.md) | 公开方法,详见头文件声明。 | +| [GetResourceState](GetResourceState.md) | 获取相关状态或对象。 | +| [TrackResource](TrackResource.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Destructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Destructor.md new file mode 100644 index 00000000..2d6a7a5b --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Destructor.md @@ -0,0 +1,29 @@ +# D3D12CommandList::~D3D12CommandList() + +销毁对象并释放相关资源。 + +```cpp +~D3D12CommandList() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Dispatch.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Dispatch.md new file mode 100644 index 00000000..f4252b1b --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Dispatch.md @@ -0,0 +1,33 @@ +# D3D12CommandList::Dispatch + +公开方法,详见头文件声明。 + +```cpp +void Dispatch(uint32_t x, uint32_t y, uint32_t z) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `x` - 参数语义详见头文件声明。 +- `y` - 参数语义详见头文件声明。 +- `z` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::Dispatch(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DispatchIndirect.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DispatchIndirect.md new file mode 100644 index 00000000..ac68a486 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DispatchIndirect.md @@ -0,0 +1,32 @@ +# D3D12CommandList::DispatchIndirect + +公开方法,详见头文件声明。 + +```cpp +void DispatchIndirect(ID3D12Resource* argBuffer, uint64_t alignedByteOffset); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `argBuffer` - 参数语义详见头文件声明。 +- `alignedByteOffset` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::DispatchIndirect(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DispatchIndirectInternal.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DispatchIndirectInternal.md new file mode 100644 index 00000000..507550b8 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DispatchIndirectInternal.md @@ -0,0 +1,32 @@ +# D3D12CommandList::DispatchIndirectInternal + +公开方法,详见头文件声明。 + +```cpp +void DispatchIndirectInternal(ID3D12Resource* argBuffer, uint64_t alignedByteOffset); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `argBuffer` - 参数语义详见头文件声明。 +- `alignedByteOffset` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::DispatchIndirectInternal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Draw.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Draw.md new file mode 100644 index 00000000..d4758496 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Draw.md @@ -0,0 +1,34 @@ +# D3D12CommandList::Draw + +公开方法,详见头文件声明。 + +```cpp +void Draw(uint32_t vertexCount, uint32_t instanceCount = 1, uint32_t startVertex = 0, uint32_t startInstance = 0) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `vertexCount` - 参数语义详见头文件声明。 +- `instanceCount` - 参数语义详见头文件声明。 +- `startVertex` - 参数语义详见头文件声明。 +- `startInstance` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::Draw(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawIndexed.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawIndexed.md new file mode 100644 index 00000000..f9625fa1 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawIndexed.md @@ -0,0 +1,35 @@ +# D3D12CommandList::DrawIndexed + +公开方法,详见头文件声明。 + +```cpp +void DrawIndexed(uint32_t indexCount, uint32_t instanceCount = 1, uint32_t startIndex = 0, int32_t baseVertex = 0, uint32_t startInstance = 0) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `indexCount` - 参数语义详见头文件声明。 +- `instanceCount` - 参数语义详见头文件声明。 +- `startIndex` - 参数语义详见头文件声明。 +- `baseVertex` - 参数语义详见头文件声明。 +- `startInstance` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::DrawIndexed(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawIndexedInstancedIndirect.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawIndexedInstancedIndirect.md new file mode 100644 index 00000000..5cc5a04a --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawIndexedInstancedIndirect.md @@ -0,0 +1,32 @@ +# D3D12CommandList::DrawIndexedInstancedIndirect + +公开方法,详见头文件声明。 + +```cpp +void DrawIndexedInstancedIndirect(ID3D12Resource* argBuffer, uint64_t alignedByteOffset); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `argBuffer` - 参数语义详见头文件声明。 +- `alignedByteOffset` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::DrawIndexedInstancedIndirect(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawIndexedInstancedIndirectInternal.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawIndexedInstancedIndirectInternal.md new file mode 100644 index 00000000..e7af3090 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawIndexedInstancedIndirectInternal.md @@ -0,0 +1,32 @@ +# D3D12CommandList::DrawIndexedInstancedIndirectInternal + +公开方法,详见头文件声明。 + +```cpp +void DrawIndexedInstancedIndirectInternal(ID3D12Resource* argBuffer, uint64_t alignedByteOffset); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `argBuffer` - 参数语义详见头文件声明。 +- `alignedByteOffset` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::DrawIndexedInstancedIndirectInternal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawInstancedIndirect.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawInstancedIndirect.md new file mode 100644 index 00000000..9a39683b --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawInstancedIndirect.md @@ -0,0 +1,32 @@ +# D3D12CommandList::DrawInstancedIndirect + +公开方法,详见头文件声明。 + +```cpp +void DrawInstancedIndirect(ID3D12Resource* argBuffer, uint64_t alignedByteOffset); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `argBuffer` - 参数语义详见头文件声明。 +- `alignedByteOffset` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::DrawInstancedIndirect(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawInstancedIndirectInternal.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawInstancedIndirectInternal.md new file mode 100644 index 00000000..43bfe23b --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/DrawInstancedIndirectInternal.md @@ -0,0 +1,32 @@ +# D3D12CommandList::DrawInstancedIndirectInternal + +公开方法,详见头文件声明。 + +```cpp +void DrawInstancedIndirectInternal(ID3D12Resource* argBuffer, uint64_t alignedByteOffset); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `argBuffer` - 参数语义详见头文件声明。 +- `alignedByteOffset` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::DrawInstancedIndirectInternal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/EndQuery.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/EndQuery.md new file mode 100644 index 00000000..0497c8a0 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/EndQuery.md @@ -0,0 +1,33 @@ +# D3D12CommandList::EndQuery + +公开方法,详见头文件声明。 + +```cpp +void EndQuery(ID3D12QueryHeap* queryHeap, QueryType type, uint32_t index); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `queryHeap` - 参数语义详见头文件声明。 +- `type` - 参数语义详见头文件声明。 +- `index` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::EndQuery(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/EndRenderPass.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/EndRenderPass.md new file mode 100644 index 00000000..a081ca22 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/EndRenderPass.md @@ -0,0 +1,30 @@ +# D3D12CommandList::EndRenderPass + +公开方法,详见头文件声明。 + +```cpp +void EndRenderPass() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::EndRenderPass(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ExecuteBundle.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ExecuteBundle.md new file mode 100644 index 00000000..d90292a7 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ExecuteBundle.md @@ -0,0 +1,31 @@ +# D3D12CommandList::ExecuteBundle + +公开方法,详见头文件声明。 + +```cpp +void ExecuteBundle(ID3D12GraphicsCommandList* bundle); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `bundle` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::ExecuteBundle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/GetCommandList.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/GetCommandList.md new file mode 100644 index 00000000..d40372fe --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/GetCommandList.md @@ -0,0 +1,30 @@ +# D3D12CommandList::GetCommandList + +获取相关状态或对象。 + +```cpp +ID3D12GraphicsCommandList* GetCommandList() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ID3D12GraphicsCommandList*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::GetCommandList(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/GetNativeHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/GetNativeHandle.md new file mode 100644 index 00000000..9f9e64f0 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/GetNativeHandle.md @@ -0,0 +1,30 @@ +# D3D12CommandList::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/GetResourceState.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/GetResourceState.md new file mode 100644 index 00000000..68969c1c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/GetResourceState.md @@ -0,0 +1,31 @@ +# D3D12CommandList::GetResourceState + +获取相关状态或对象。 + +```cpp +ResourceStates GetResourceState(ID3D12Resource* resource) const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `resource` - 参数语义详见头文件声明。 + +**返回:** `ResourceStates` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::GetResourceState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Initialize.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Initialize.md new file mode 100644 index 00000000..f550c3e2 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Initialize.md @@ -0,0 +1,33 @@ +# D3D12CommandList::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(ID3D12Device* device, CommandQueueType type = CommandQueueType::Direct, ID3D12CommandAllocator* allocator = nullptr); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `type` - 参数语义详见头文件声明。 +- `allocator` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Reset.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Reset.md new file mode 100644 index 00000000..21c55444 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Reset.md @@ -0,0 +1,30 @@ +# D3D12CommandList::Reset + +公开方法,详见头文件声明。 + +```cpp +void Reset() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::Reset(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ResolveQueryData.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ResolveQueryData.md new file mode 100644 index 00000000..4edbde73 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/ResolveQueryData.md @@ -0,0 +1,36 @@ +# D3D12CommandList::ResolveQueryData + +解析并返回目标结果。 + +```cpp +void ResolveQueryData(ID3D12QueryHeap* queryHeap, QueryType type, uint32_t startIndex, uint32_t count, ID3D12Resource* resultBuffer, uint64_t resultOffset); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `queryHeap` - 参数语义详见头文件声明。 +- `type` - 参数语义详见头文件声明。 +- `startIndex` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `resultBuffer` - 参数语义详见头文件声明。 +- `resultOffset` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::ResolveQueryData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetBlendFactor.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetBlendFactor.md new file mode 100644 index 00000000..e0870e05 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetBlendFactor.md @@ -0,0 +1,31 @@ +# D3D12CommandList::SetBlendFactor + +设置相关状态或配置。 + +```cpp +void SetBlendFactor(const float blendFactor[4]); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `param` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetBlendFactor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetComputeDescriptorSets.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetComputeDescriptorSets.md new file mode 100644 index 00000000..0e163df2 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetComputeDescriptorSets.md @@ -0,0 +1,34 @@ +# D3D12CommandList::SetComputeDescriptorSets + +设置相关状态或配置。 + +```cpp +void SetComputeDescriptorSets( uint32_t firstSet, uint32_t count, RHIDescriptorSet** descriptorSets, RHIPipelineLayout* pipelineLayout) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `firstSet` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `descriptorSets` - 参数语义详见头文件声明。 +- `pipelineLayout` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetComputeDescriptorSets(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetComputeDescriptorTable.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetComputeDescriptorTable.md new file mode 100644 index 00000000..dc238d65 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetComputeDescriptorTable.md @@ -0,0 +1,32 @@ +# D3D12CommandList::SetComputeDescriptorTable + +设置相关状态或配置。 + +```cpp +void SetComputeDescriptorTable(uint32_t rootParameterIndex, D3D12_GPU_DESCRIPTOR_HANDLE baseHandle); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `rootParameterIndex` - 参数语义详见头文件声明。 +- `baseHandle` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetComputeDescriptorTable(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetDepthBias.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetDepthBias.md new file mode 100644 index 00000000..255cfb51 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetDepthBias.md @@ -0,0 +1,33 @@ +# D3D12CommandList::SetDepthBias + +设置相关状态或配置。 + +```cpp +void SetDepthBias(float depthBias, float slopeScaledDepthBias, float depthBiasClamp); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `depthBias` - 参数语义详见头文件声明。 +- `slopeScaledDepthBias` - 参数语义详见头文件声明。 +- `depthBiasClamp` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetDepthBias(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetDescriptorHeap.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetDescriptorHeap.md new file mode 100644 index 00000000..84a3599d --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetDescriptorHeap.md @@ -0,0 +1,31 @@ +# D3D12CommandList::SetDescriptorHeap + +设置相关状态或配置。 + +```cpp +void SetDescriptorHeap(ID3D12DescriptorHeap* heap); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `heap` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetDescriptorHeap(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetDescriptorHeaps.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetDescriptorHeaps.md new file mode 100644 index 00000000..140bc5ea --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetDescriptorHeaps.md @@ -0,0 +1,32 @@ +# D3D12CommandList::SetDescriptorHeaps + +设置相关状态或配置。 + +```cpp +void SetDescriptorHeaps(uint32_t count, ID3D12DescriptorHeap** heaps); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `heaps` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetDescriptorHeaps(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsDescriptorSets.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsDescriptorSets.md new file mode 100644 index 00000000..403ac018 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsDescriptorSets.md @@ -0,0 +1,34 @@ +# D3D12CommandList::SetGraphicsDescriptorSets + +设置相关状态或配置。 + +```cpp +void SetGraphicsDescriptorSets( uint32_t firstSet, uint32_t count, RHIDescriptorSet** descriptorSets, RHIPipelineLayout* pipelineLayout) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `firstSet` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `descriptorSets` - 参数语义详见头文件声明。 +- `pipelineLayout` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetGraphicsDescriptorSets(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsDescriptorTable.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsDescriptorTable.md new file mode 100644 index 00000000..c3bc3a1f --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsDescriptorTable.md @@ -0,0 +1,32 @@ +# D3D12CommandList::SetGraphicsDescriptorTable + +设置相关状态或配置。 + +```cpp +void SetGraphicsDescriptorTable(uint32_t rootParameterIndex, D3D12_GPU_DESCRIPTOR_HANDLE baseHandle); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `rootParameterIndex` - 参数语义详见头文件声明。 +- `baseHandle` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetGraphicsDescriptorTable(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsRoot32BitConstants.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsRoot32BitConstants.md new file mode 100644 index 00000000..0bb4b80f --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsRoot32BitConstants.md @@ -0,0 +1,34 @@ +# D3D12CommandList::SetGraphicsRoot32BitConstants + +设置相关状态或配置。 + +```cpp +void SetGraphicsRoot32BitConstants(uint32_t rootParameterIndex, uint32_t num32BitValuesToSet, const void* pSrcData, uint32_t destOffsetIn32BitValues); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `rootParameterIndex` - 参数语义详见头文件声明。 +- `num32BitValuesToSet` - 参数语义详见头文件声明。 +- `pSrcData` - 参数语义详见头文件声明。 +- `destOffsetIn32BitValues` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetGraphicsRoot32BitConstants(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsRootConstantBufferView.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsRootConstantBufferView.md new file mode 100644 index 00000000..84b7fa6e --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsRootConstantBufferView.md @@ -0,0 +1,32 @@ +# D3D12CommandList::SetGraphicsRootConstantBufferView + +设置相关状态或配置。 + +```cpp +void SetGraphicsRootConstantBufferView(uint32_t rootParameterIndex, D3D12_GPU_VIRTUAL_ADDRESS bufferLocation); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `rootParameterIndex` - 参数语义详见头文件声明。 +- `bufferLocation` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetGraphicsRootConstantBufferView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsRootDescriptorTable.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsRootDescriptorTable.md new file mode 100644 index 00000000..cd7f7324 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsRootDescriptorTable.md @@ -0,0 +1,32 @@ +# D3D12CommandList::SetGraphicsRootDescriptorTable + +设置相关状态或配置。 + +```cpp +void SetGraphicsRootDescriptorTable(uint32_t rootParameterIndex, D3D12_GPU_DESCRIPTOR_HANDLE baseDescriptor); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `rootParameterIndex` - 参数语义详见头文件声明。 +- `baseDescriptor` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetGraphicsRootDescriptorTable(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsRootShaderResourceView.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsRootShaderResourceView.md new file mode 100644 index 00000000..260bb42c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetGraphicsRootShaderResourceView.md @@ -0,0 +1,32 @@ +# D3D12CommandList::SetGraphicsRootShaderResourceView + +设置相关状态或配置。 + +```cpp +void SetGraphicsRootShaderResourceView(uint32_t rootParameterIndex, D3D12_GPU_VIRTUAL_ADDRESS shaderResource); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `rootParameterIndex` - 参数语义详见头文件声明。 +- `shaderResource` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetGraphicsRootShaderResourceView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetIndexBuffer.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetIndexBuffer.md new file mode 100644 index 00000000..1add5463 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetIndexBuffer.md @@ -0,0 +1,47 @@ +# D3D12CommandList::SetIndexBuffer + +设置相关状态或配置。 + +该方法在 `XCEngine/RHI/D3D12/D3D12CommandList.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void SetIndexBuffer(RHIResourceView* buffer, uint64_t offset) override; +``` + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void SetIndexBuffer(ID3D12Resource* buffer, uint64_t offset, Format format); +``` + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 +- `format` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetIndexBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetIndexBufferInternal.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetIndexBufferInternal.md new file mode 100644 index 00000000..afe38bf0 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetIndexBufferInternal.md @@ -0,0 +1,33 @@ +# D3D12CommandList::SetIndexBufferInternal + +设置相关状态或配置。 + +```cpp +void SetIndexBufferInternal(ID3D12Resource* buffer, uint64_t offset, Format indexFormat); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 +- `indexFormat` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetIndexBufferInternal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetPipelineLayout.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetPipelineLayout.md new file mode 100644 index 00000000..d3754374 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetPipelineLayout.md @@ -0,0 +1,31 @@ +# D3D12CommandList::SetPipelineLayout + +设置相关状态或配置。 + +```cpp +void SetPipelineLayout(D3D12PipelineLayout* layout); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `layout` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetPipelineLayout(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetPipelineState.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetPipelineState.md new file mode 100644 index 00000000..7a7dc9cd --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetPipelineState.md @@ -0,0 +1,44 @@ +# D3D12CommandList::SetPipelineState + +设置相关状态或配置。 + +该方法在 `XCEngine/RHI/D3D12/D3D12CommandList.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void SetPipelineState(RHIPipelineState* pso) override; +``` + +**参数:** +- `pso` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void SetPipelineState(ID3D12PipelineState* pso); +``` + +**参数:** +- `pso` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetPipelineState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetPipelineStateInternal.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetPipelineStateInternal.md new file mode 100644 index 00000000..6ccd5d81 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetPipelineStateInternal.md @@ -0,0 +1,31 @@ +# D3D12CommandList::SetPipelineStateInternal + +设置相关状态或配置。 + +```cpp +void SetPipelineStateInternal(ID3D12PipelineState* pso); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `pso` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetPipelineStateInternal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetPrimitiveTopology.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetPrimitiveTopology.md new file mode 100644 index 00000000..929ea7d3 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetPrimitiveTopology.md @@ -0,0 +1,31 @@ +# D3D12CommandList::SetPrimitiveTopology + +设置相关状态或配置。 + +```cpp +void SetPrimitiveTopology(PrimitiveTopology topology); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `topology` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetPrimitiveTopology(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetRenderTargets.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetRenderTargets.md new file mode 100644 index 00000000..883c572c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetRenderTargets.md @@ -0,0 +1,33 @@ +# D3D12CommandList::SetRenderTargets + +设置相关状态或配置。 + +```cpp +void SetRenderTargets(uint32_t count, RHIResourceView** renderTargets, RHIResourceView* depthStencil = nullptr) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `renderTargets` - 参数语义详见头文件声明。 +- `depthStencil` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetRenderTargets(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetRenderTargetsHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetRenderTargetsHandle.md new file mode 100644 index 00000000..b7a6e35a --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetRenderTargetsHandle.md @@ -0,0 +1,33 @@ +# D3D12CommandList::SetRenderTargetsHandle + +设置相关状态或配置。 + +```cpp +void SetRenderTargetsHandle(uint32_t count, const D3D12_CPU_DESCRIPTOR_HANDLE* renderTargetHandles, const D3D12_CPU_DESCRIPTOR_HANDLE* depthStencilHandle = nullptr); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `renderTargetHandles` - 参数语义详见头文件声明。 +- `depthStencilHandle` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetRenderTargetsHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetRenderTargetsInternal.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetRenderTargetsInternal.md new file mode 100644 index 00000000..9192c780 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetRenderTargetsInternal.md @@ -0,0 +1,33 @@ +# D3D12CommandList::SetRenderTargetsInternal + +设置相关状态或配置。 + +```cpp +void SetRenderTargetsInternal(uint32_t count, ID3D12Resource** renderTargets, ID3D12Resource* depthStencil = nullptr); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `renderTargets` - 参数语义详见头文件声明。 +- `depthStencil` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetRenderTargetsInternal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetRootSignature.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetRootSignature.md new file mode 100644 index 00000000..c6646863 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetRootSignature.md @@ -0,0 +1,31 @@ +# D3D12CommandList::SetRootSignature + +设置相关状态或配置。 + +```cpp +void SetRootSignature(ID3D12RootSignature* signature); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `signature` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetRootSignature(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetScissorRect.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetScissorRect.md new file mode 100644 index 00000000..3fe4afec --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetScissorRect.md @@ -0,0 +1,31 @@ +# D3D12CommandList::SetScissorRect + +设置相关状态或配置。 + +```cpp +void SetScissorRect(const Rect& rect) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `rect` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetScissorRect(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetScissorRects.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetScissorRects.md new file mode 100644 index 00000000..c582f4dc --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetScissorRects.md @@ -0,0 +1,32 @@ +# D3D12CommandList::SetScissorRects + +设置相关状态或配置。 + +```cpp +void SetScissorRects(uint32_t count, const Rect* rects) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `rects` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetScissorRects(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetShader.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetShader.md new file mode 100644 index 00000000..1e1d227f --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetShader.md @@ -0,0 +1,31 @@ +# D3D12CommandList::SetShader + +设置相关状态或配置。 + +```cpp +void SetShader(RHIShader* shader) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `shader` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetStencilRef.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetStencilRef.md new file mode 100644 index 00000000..b6300d19 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetStencilRef.md @@ -0,0 +1,31 @@ +# D3D12CommandList::SetStencilRef + +设置相关状态或配置。 + +```cpp +void SetStencilRef(uint8_t stencilRef) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `stencilRef` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetStencilRef(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetVertexBuffer.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetVertexBuffer.md new file mode 100644 index 00000000..5d819098 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetVertexBuffer.md @@ -0,0 +1,34 @@ +# D3D12CommandList::SetVertexBuffer + +设置相关状态或配置。 + +```cpp +void SetVertexBuffer(uint32_t slot, ID3D12Resource* resource, uint64_t offset, uint32_t stride); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `slot` - 参数语义详见头文件声明。 +- `resource` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 +- `stride` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetVertexBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetVertexBuffers.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetVertexBuffers.md new file mode 100644 index 00000000..62a6cc6b --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetVertexBuffers.md @@ -0,0 +1,35 @@ +# D3D12CommandList::SetVertexBuffers + +设置相关状态或配置。 + +```cpp +void SetVertexBuffers(uint32_t startSlot, uint32_t count, RHIResourceView** buffers, const uint64_t* offsets, const uint32_t* strides) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `startSlot` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `buffers` - 参数语义详见头文件声明。 +- `offsets` - 参数语义详见头文件声明。 +- `strides` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetVertexBuffers(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetVertexBuffersInternal.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetVertexBuffersInternal.md new file mode 100644 index 00000000..d64da34d --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetVertexBuffersInternal.md @@ -0,0 +1,33 @@ +# D3D12CommandList::SetVertexBuffersInternal + +设置相关状态或配置。 + +```cpp +void SetVertexBuffersInternal(uint32_t startSlot, uint32_t count, const D3D12_VERTEX_BUFFER_VIEW* views); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `startSlot` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `views` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetVertexBuffersInternal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetViewport.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetViewport.md new file mode 100644 index 00000000..4157c76f --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetViewport.md @@ -0,0 +1,31 @@ +# D3D12CommandList::SetViewport + +设置相关状态或配置。 + +```cpp +void SetViewport(const Viewport& viewport) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `viewport` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetViewport(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetViewports.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetViewports.md new file mode 100644 index 00000000..a720548c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/SetViewports.md @@ -0,0 +1,32 @@ +# D3D12CommandList::SetViewports + +设置相关状态或配置。 + +```cpp +void SetViewports(uint32_t count, const Viewport* viewports) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `viewports` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::SetViewports(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Shutdown.md new file mode 100644 index 00000000..3e276452 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12CommandList::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/TrackResource.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/TrackResource.md new file mode 100644 index 00000000..59fca6dd --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/TrackResource.md @@ -0,0 +1,31 @@ +# D3D12CommandList::TrackResource + +公开方法,详见头文件声明。 + +```cpp +void TrackResource(ID3D12Resource* resource); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `resource` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::TrackResource(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/TransitionBarrier.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/TransitionBarrier.md new file mode 100644 index 00000000..aee75989 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/TransitionBarrier.md @@ -0,0 +1,48 @@ +# D3D12CommandList::TransitionBarrier + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/RHI/D3D12/D3D12CommandList.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void TransitionBarrier(RHIResourceView* resource, ResourceStates stateBefore, ResourceStates stateAfter) override; +``` + +**参数:** +- `resource` - 参数语义详见头文件声明。 +- `stateBefore` - 参数语义详见头文件声明。 +- `stateAfter` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void TransitionBarrier(ID3D12Resource* resource, ResourceStates stateBefore, ResourceStates stateAfter); +``` + +**参数:** +- `resource` - 参数语义详见头文件声明。 +- `stateBefore` - 参数语义详见头文件声明。 +- `stateAfter` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::TransitionBarrier(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/TransitionBarrierInternal.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/TransitionBarrierInternal.md new file mode 100644 index 00000000..90bffe55 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/TransitionBarrierInternal.md @@ -0,0 +1,34 @@ +# D3D12CommandList::TransitionBarrierInternal + +公开方法,详见头文件声明。 + +```cpp +void TransitionBarrierInternal(ID3D12Resource* resource, ResourceStates stateBefore, ResourceStates stateAfter, uint32_t subresource = D3D12_RESOURCE_BARRIER_ALL_SUBRESOURCES); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `resource` - 参数语义详见头文件声明。 +- `stateBefore` - 参数语义详见头文件声明。 +- `stateAfter` - 参数语义详见头文件声明。 +- `subresource` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::TransitionBarrierInternal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/UAVBarrier.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/UAVBarrier.md new file mode 100644 index 00000000..5d5a8f2b --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/UAVBarrier.md @@ -0,0 +1,31 @@ +# D3D12CommandList::UAVBarrier + +公开方法,详见头文件声明。 + +```cpp +void UAVBarrier(ID3D12Resource* resource = nullptr); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `resource` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::UAVBarrier(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/UAVBarrierInternal.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/UAVBarrierInternal.md new file mode 100644 index 00000000..510bf9f0 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandList/UAVBarrierInternal.md @@ -0,0 +1,31 @@ +# D3D12CommandList::UAVBarrierInternal + +公开方法,详见头文件声明。 + +```cpp +void UAVBarrierInternal(ID3D12Resource* resource); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandList.h`,当前页面用于固定 `D3D12CommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `resource` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandList object; + // 根据上下文补齐参数后调用 D3D12CommandList::UAVBarrierInternal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandList.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Constructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Constructor.md new file mode 100644 index 00000000..9320d108 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Constructor.md @@ -0,0 +1,28 @@ +# D3D12CommandQueue::D3D12CommandQueue() + +构造对象。 + +```cpp +D3D12CommandQueue(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandQueue.h`,当前页面用于固定 `D3D12CommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandQueue object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandQueue.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/D3D12CommandQueue.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/D3D12CommandQueue.md new file mode 100644 index 00000000..422710e8 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/D3D12CommandQueue.md @@ -0,0 +1,45 @@ +# D3D12CommandQueue + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12CommandQueue.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12CommandQueue` public API。 + +## 概述 + +`D3D12CommandQueue.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `D3D12CommandQueue` | `class` | 继承自 `RHICommandQueue` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [D3D12CommandQueue()](Constructor.md) | 构造对象。 | +| [~D3D12CommandQueue()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [ExecuteCommandLists](ExecuteCommandLists.md) | 公开方法,详见头文件声明。 | +| [Signal](Signal.md) | 公开方法,详见头文件声明。 | +| [Wait](Wait.md) | 公开方法,详见头文件声明。 | +| [GetCompletedValue](GetCompletedValue.md) | 获取相关状态或对象。 | +| [WaitForIdle](WaitForIdle.md) | 公开方法,详见头文件声明。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [GetTimestampFrequency](GetTimestampFrequency.md) | 获取相关状态或对象。 | +| [GetCommandQueue](GetCommandQueue.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [ExecuteCommandListsInternal](ExecuteCommandListsInternal.md) | 公开方法,详见头文件声明。 | +| [WaitForPreviousFrame](WaitForPreviousFrame.md) | 公开方法,详见头文件声明。 | +| [GetCurrentFrame](GetCurrentFrame.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Destructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Destructor.md new file mode 100644 index 00000000..bf41dd0d --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Destructor.md @@ -0,0 +1,29 @@ +# D3D12CommandQueue::~D3D12CommandQueue() + +销毁对象并释放相关资源。 + +```cpp +~D3D12CommandQueue() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandQueue.h`,当前页面用于固定 `D3D12CommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandQueue object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandQueue.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/ExecuteCommandLists.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/ExecuteCommandLists.md new file mode 100644 index 00000000..8d8d4b26 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/ExecuteCommandLists.md @@ -0,0 +1,32 @@ +# D3D12CommandQueue::ExecuteCommandLists + +公开方法,详见头文件声明。 + +```cpp +void ExecuteCommandLists(uint32_t count, void** lists) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandQueue.h`,当前页面用于固定 `D3D12CommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `lists` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandQueue object; + // 根据上下文补齐参数后调用 D3D12CommandQueue::ExecuteCommandLists(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandQueue.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/ExecuteCommandListsInternal.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/ExecuteCommandListsInternal.md new file mode 100644 index 00000000..063a1f33 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/ExecuteCommandListsInternal.md @@ -0,0 +1,32 @@ +# D3D12CommandQueue::ExecuteCommandListsInternal + +公开方法,详见头文件声明。 + +```cpp +void ExecuteCommandListsInternal(uint32_t count, ID3D12CommandList** lists); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandQueue.h`,当前页面用于固定 `D3D12CommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `lists` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandQueue object; + // 根据上下文补齐参数后调用 D3D12CommandQueue::ExecuteCommandListsInternal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandQueue.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetCommandQueue.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetCommandQueue.md new file mode 100644 index 00000000..bfadcb5c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetCommandQueue.md @@ -0,0 +1,30 @@ +# D3D12CommandQueue::GetCommandQueue + +获取相关状态或对象。 + +```cpp +ID3D12CommandQueue* GetCommandQueue() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandQueue.h`,当前页面用于固定 `D3D12CommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ID3D12CommandQueue*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandQueue object; + // 根据上下文补齐参数后调用 D3D12CommandQueue::GetCommandQueue(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandQueue.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetCompletedValue.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetCompletedValue.md new file mode 100644 index 00000000..d1651cb7 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetCompletedValue.md @@ -0,0 +1,30 @@ +# D3D12CommandQueue::GetCompletedValue + +获取相关状态或对象。 + +```cpp +uint64_t GetCompletedValue() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandQueue.h`,当前页面用于固定 `D3D12CommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandQueue object; + // 根据上下文补齐参数后调用 D3D12CommandQueue::GetCompletedValue(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandQueue.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetCurrentFrame.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetCurrentFrame.md new file mode 100644 index 00000000..bc023e0c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetCurrentFrame.md @@ -0,0 +1,30 @@ +# D3D12CommandQueue::GetCurrentFrame + +获取相关状态或对象。 + +```cpp +uint64_t GetCurrentFrame() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandQueue.h`,当前页面用于固定 `D3D12CommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandQueue object; + // 根据上下文补齐参数后调用 D3D12CommandQueue::GetCurrentFrame(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandQueue.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetNativeHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetNativeHandle.md new file mode 100644 index 00000000..a5644e1b --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetNativeHandle.md @@ -0,0 +1,30 @@ +# D3D12CommandQueue::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandQueue.h`,当前页面用于固定 `D3D12CommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandQueue object; + // 根据上下文补齐参数后调用 D3D12CommandQueue::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandQueue.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetTimestampFrequency.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetTimestampFrequency.md new file mode 100644 index 00000000..0584f724 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetTimestampFrequency.md @@ -0,0 +1,30 @@ +# D3D12CommandQueue::GetTimestampFrequency + +获取相关状态或对象。 + +```cpp +uint64_t GetTimestampFrequency() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandQueue.h`,当前页面用于固定 `D3D12CommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandQueue object; + // 根据上下文补齐参数后调用 D3D12CommandQueue::GetTimestampFrequency(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandQueue.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetType.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetType.md new file mode 100644 index 00000000..5d1087ea --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/GetType.md @@ -0,0 +1,30 @@ +# D3D12CommandQueue::GetType + +获取相关状态或对象。 + +```cpp +CommandQueueType GetType() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandQueue.h`,当前页面用于固定 `D3D12CommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `CommandQueueType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandQueue object; + // 根据上下文补齐参数后调用 D3D12CommandQueue::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandQueue.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Initialize.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Initialize.md new file mode 100644 index 00000000..95f2a5b7 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Initialize.md @@ -0,0 +1,32 @@ +# D3D12CommandQueue::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(ID3D12Device* device, CommandQueueType type = CommandQueueType::Direct); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandQueue.h`,当前页面用于固定 `D3D12CommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `type` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandQueue object; + // 根据上下文补齐参数后调用 D3D12CommandQueue::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandQueue.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Shutdown.md new file mode 100644 index 00000000..1f194b35 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12CommandQueue::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandQueue.h`,当前页面用于固定 `D3D12CommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandQueue object; + // 根据上下文补齐参数后调用 D3D12CommandQueue::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandQueue.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Signal.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Signal.md new file mode 100644 index 00000000..76545da5 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Signal.md @@ -0,0 +1,46 @@ +# D3D12CommandQueue::Signal + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/RHI/D3D12/D3D12CommandQueue.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void Signal(RHIFence* fence, uint64_t value) override; +``` + +**参数:** +- `fence` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void Signal(ID3D12Fence* fence, uint64_t value); +``` + +**参数:** +- `fence` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandQueue object; + // 根据上下文补齐参数后调用 D3D12CommandQueue::Signal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandQueue.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Wait.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Wait.md new file mode 100644 index 00000000..93284663 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/Wait.md @@ -0,0 +1,46 @@ +# D3D12CommandQueue::Wait + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/RHI/D3D12/D3D12CommandQueue.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void Wait(RHIFence* fence, uint64_t value) override; +``` + +**参数:** +- `fence` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void Wait(ID3D12Fence* fence, uint64_t value); +``` + +**参数:** +- `fence` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandQueue object; + // 根据上下文补齐参数后调用 D3D12CommandQueue::Wait(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandQueue.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/WaitForIdle.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/WaitForIdle.md new file mode 100644 index 00000000..ce14f28a --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/WaitForIdle.md @@ -0,0 +1,30 @@ +# D3D12CommandQueue::WaitForIdle + +公开方法,详见头文件声明。 + +```cpp +void WaitForIdle() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandQueue.h`,当前页面用于固定 `D3D12CommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandQueue object; + // 根据上下文补齐参数后调用 D3D12CommandQueue::WaitForIdle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandQueue.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/WaitForPreviousFrame.md b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/WaitForPreviousFrame.md new file mode 100644 index 00000000..a332e13a --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12CommandQueue/WaitForPreviousFrame.md @@ -0,0 +1,30 @@ +# D3D12CommandQueue::WaitForPreviousFrame + +公开方法,详见头文件声明。 + +```cpp +void WaitForPreviousFrame(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12CommandQueue.h`,当前页面用于固定 `D3D12CommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12CommandQueue object; + // 根据上下文补齐参数后调用 D3D12CommandQueue::WaitForPreviousFrame(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12CommandQueue.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Common/D3D12Common.md b/docs/api/XCEngine/RHI/D3D12/D3D12Common/D3D12Common.md new file mode 100644 index 00000000..b14f7e1f --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Common/D3D12Common.md @@ -0,0 +1,18 @@ +# D3D12Common + +**命名空间**: `XCEngine` + +**类型**: `header` + +**头文件**: `XCEngine/RHI/D3D12/D3D12Common.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12Common` public API。 + +## 概述 + +`D3D12Common.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/AllocateSet.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/AllocateSet.md new file mode 100644 index 00000000..02e095f5 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/AllocateSet.md @@ -0,0 +1,31 @@ +# D3D12DescriptorHeap::AllocateSet + +公开方法,详见头文件声明。 + +```cpp +RHIDescriptorSet* AllocateSet(const DescriptorSetLayoutDesc& layout) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorHeap.h`,当前页面用于固定 `D3D12DescriptorHeap` 类目录下的方法级 canonical 路径。 + +**参数:** +- `layout` - 参数语义详见头文件声明。 + +**返回:** `RHIDescriptorSet*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorHeap object; + // 根据上下文补齐参数后调用 D3D12DescriptorHeap::AllocateSet(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/Constructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/Constructor.md new file mode 100644 index 00000000..09d9c784 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/Constructor.md @@ -0,0 +1,28 @@ +# D3D12DescriptorHeap::D3D12DescriptorHeap() + +构造对象。 + +```cpp +D3D12DescriptorHeap(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorHeap.h`,当前页面用于固定 `D3D12DescriptorHeap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorHeap object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/CreateDesc.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/CreateDesc.md new file mode 100644 index 00000000..201cf3d1 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/CreateDesc.md @@ -0,0 +1,33 @@ +# D3D12DescriptorHeap::CreateDesc + +创建新对象或资源。 + +```cpp +static D3D12_DESCRIPTOR_HEAP_DESC CreateDesc(DescriptorHeapType type, uint32_t numDescriptors, bool shaderVisible = false); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorHeap.h`,当前页面用于固定 `D3D12DescriptorHeap` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 +- `numDescriptors` - 参数语义详见头文件声明。 +- `shaderVisible` - 参数语义详见头文件声明。 + +**返回:** `D3D12_DESCRIPTOR_HEAP_DESC` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorHeap object; + // 根据上下文补齐参数后调用 D3D12DescriptorHeap::CreateDesc(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/D3D12DescriptorHeap.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/D3D12DescriptorHeap.md new file mode 100644 index 00000000..5be99185 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/D3D12DescriptorHeap.md @@ -0,0 +1,47 @@ +# D3D12DescriptorHeap + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12DescriptorHeap.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12DescriptorHeap` public API。 + +## 概述 + +`D3D12DescriptorHeap.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `D3D12DescriptorHeap` | `class` | 继承自 `RHIDescriptorPool` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [D3D12DescriptorHeap()](Constructor.md) | 构造对象。 | +| [~D3D12DescriptorHeap()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetDevice](GetDevice.md) | 获取相关状态或对象。 | +| [GetDescriptorHeap](GetDescriptorHeap.md) | 获取相关状态或对象。 | +| [GetCPUDescriptorHandle](GetCPUDescriptorHandle.md) | 获取相关状态或对象。 | +| [GetGPUDescriptorHandle](GetGPUDescriptorHandle.md) | 获取相关状态或对象。 | +| [GetDescriptorCount](GetDescriptorCount.md) | 获取相关状态或对象。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [IsShaderVisible](IsShaderVisible.md) | 查询当前状态。 | +| [GetDescriptorSize](GetDescriptorSize.md) | 获取相关状态或对象。 | +| [GetCPUDescriptorHandleForHeapStart](GetCPUDescriptorHandleForHeapStart.md) | 获取相关状态或对象。 | +| [GetGPUDescriptorHandleForHeapStart](GetGPUDescriptorHandleForHeapStart.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [CreateDesc](CreateDesc.md) | 创建新对象或资源。 | +| [AllocateSet](AllocateSet.md) | 公开方法,详见头文件声明。 | +| [FreeSet](FreeSet.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/Destructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/Destructor.md new file mode 100644 index 00000000..06cd9880 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/Destructor.md @@ -0,0 +1,29 @@ +# D3D12DescriptorHeap::~D3D12DescriptorHeap() + +销毁对象并释放相关资源。 + +```cpp +~D3D12DescriptorHeap() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorHeap.h`,当前页面用于固定 `D3D12DescriptorHeap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorHeap object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/FreeSet.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/FreeSet.md new file mode 100644 index 00000000..dc2737b7 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/FreeSet.md @@ -0,0 +1,31 @@ +# D3D12DescriptorHeap::FreeSet + +公开方法,详见头文件声明。 + +```cpp +void FreeSet(RHIDescriptorSet* set) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorHeap.h`,当前页面用于固定 `D3D12DescriptorHeap` 类目录下的方法级 canonical 路径。 + +**参数:** +- `set` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorHeap object; + // 根据上下文补齐参数后调用 D3D12DescriptorHeap::FreeSet(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetCPUDescriptorHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetCPUDescriptorHandle.md new file mode 100644 index 00000000..8aa0b870 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetCPUDescriptorHandle.md @@ -0,0 +1,31 @@ +# D3D12DescriptorHeap::GetCPUDescriptorHandle + +获取相关状态或对象。 + +```cpp +CPUDescriptorHandle GetCPUDescriptorHandle(uint32_t index); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorHeap.h`,当前页面用于固定 `D3D12DescriptorHeap` 类目录下的方法级 canonical 路径。 + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `CPUDescriptorHandle` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorHeap object; + // 根据上下文补齐参数后调用 D3D12DescriptorHeap::GetCPUDescriptorHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetCPUDescriptorHandleForHeapStart.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetCPUDescriptorHandleForHeapStart.md new file mode 100644 index 00000000..384050d5 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetCPUDescriptorHandleForHeapStart.md @@ -0,0 +1,30 @@ +# D3D12DescriptorHeap::GetCPUDescriptorHandleForHeapStart + +获取相关状态或对象。 + +```cpp +D3D12_CPU_DESCRIPTOR_HANDLE GetCPUDescriptorHandleForHeapStart() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorHeap.h`,当前页面用于固定 `D3D12DescriptorHeap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `D3D12_CPU_DESCRIPTOR_HANDLE` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorHeap object; + // 根据上下文补齐参数后调用 D3D12DescriptorHeap::GetCPUDescriptorHandleForHeapStart(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetDescriptorCount.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetDescriptorCount.md new file mode 100644 index 00000000..36e1fbc1 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetDescriptorCount.md @@ -0,0 +1,30 @@ +# D3D12DescriptorHeap::GetDescriptorCount + +获取相关状态或对象。 + +```cpp +uint32_t GetDescriptorCount() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorHeap.h`,当前页面用于固定 `D3D12DescriptorHeap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorHeap object; + // 根据上下文补齐参数后调用 D3D12DescriptorHeap::GetDescriptorCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetDescriptorHeap.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetDescriptorHeap.md new file mode 100644 index 00000000..6fb9ab82 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetDescriptorHeap.md @@ -0,0 +1,30 @@ +# D3D12DescriptorHeap::GetDescriptorHeap + +获取相关状态或对象。 + +```cpp +ID3D12DescriptorHeap* GetDescriptorHeap() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorHeap.h`,当前页面用于固定 `D3D12DescriptorHeap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ID3D12DescriptorHeap*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorHeap object; + // 根据上下文补齐参数后调用 D3D12DescriptorHeap::GetDescriptorHeap(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetDescriptorSize.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetDescriptorSize.md new file mode 100644 index 00000000..2e0777c2 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetDescriptorSize.md @@ -0,0 +1,30 @@ +# D3D12DescriptorHeap::GetDescriptorSize + +获取相关状态或对象。 + +```cpp +uint32_t GetDescriptorSize() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorHeap.h`,当前页面用于固定 `D3D12DescriptorHeap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorHeap object; + // 根据上下文补齐参数后调用 D3D12DescriptorHeap::GetDescriptorSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetDevice.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetDevice.md new file mode 100644 index 00000000..653ad5f9 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetDevice.md @@ -0,0 +1,30 @@ +# D3D12DescriptorHeap::GetDevice + +获取相关状态或对象。 + +```cpp +ID3D12Device* GetDevice() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorHeap.h`,当前页面用于固定 `D3D12DescriptorHeap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ID3D12Device*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorHeap object; + // 根据上下文补齐参数后调用 D3D12DescriptorHeap::GetDevice(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetGPUDescriptorHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetGPUDescriptorHandle.md new file mode 100644 index 00000000..51775e2c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetGPUDescriptorHandle.md @@ -0,0 +1,31 @@ +# D3D12DescriptorHeap::GetGPUDescriptorHandle + +获取相关状态或对象。 + +```cpp +GPUDescriptorHandle GetGPUDescriptorHandle(uint32_t index); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorHeap.h`,当前页面用于固定 `D3D12DescriptorHeap` 类目录下的方法级 canonical 路径。 + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `GPUDescriptorHandle` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorHeap object; + // 根据上下文补齐参数后调用 D3D12DescriptorHeap::GetGPUDescriptorHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetGPUDescriptorHandleForHeapStart.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetGPUDescriptorHandleForHeapStart.md new file mode 100644 index 00000000..9ad4312c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetGPUDescriptorHandleForHeapStart.md @@ -0,0 +1,30 @@ +# D3D12DescriptorHeap::GetGPUDescriptorHandleForHeapStart + +获取相关状态或对象。 + +```cpp +D3D12_GPU_DESCRIPTOR_HANDLE GetGPUDescriptorHandleForHeapStart() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorHeap.h`,当前页面用于固定 `D3D12DescriptorHeap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `D3D12_GPU_DESCRIPTOR_HANDLE` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorHeap object; + // 根据上下文补齐参数后调用 D3D12DescriptorHeap::GetGPUDescriptorHandleForHeapStart(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetNativeHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetNativeHandle.md new file mode 100644 index 00000000..d9964cee --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetNativeHandle.md @@ -0,0 +1,30 @@ +# D3D12DescriptorHeap::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorHeap.h`,当前页面用于固定 `D3D12DescriptorHeap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorHeap object; + // 根据上下文补齐参数后调用 D3D12DescriptorHeap::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetType.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetType.md new file mode 100644 index 00000000..72288211 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/GetType.md @@ -0,0 +1,30 @@ +# D3D12DescriptorHeap::GetType + +获取相关状态或对象。 + +```cpp +DescriptorHeapType GetType() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorHeap.h`,当前页面用于固定 `D3D12DescriptorHeap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `DescriptorHeapType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorHeap object; + // 根据上下文补齐参数后调用 D3D12DescriptorHeap::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/Initialize.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/Initialize.md new file mode 100644 index 00000000..66b989e1 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/Initialize.md @@ -0,0 +1,47 @@ +# D3D12DescriptorHeap::Initialize + +初始化内部状态。 + +该方法在 `XCEngine/RHI/D3D12/D3D12DescriptorHeap.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool Initialize(ID3D12Device* device, DescriptorHeapType type, uint32_t numDescriptors, bool shaderVisible = false); +``` + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `type` - 参数语义详见头文件声明。 +- `numDescriptors` - 参数语义详见头文件声明。 +- `shaderVisible` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +bool Initialize(const DescriptorPoolDesc& desc) override; +``` + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorHeap object; + // 根据上下文补齐参数后调用 D3D12DescriptorHeap::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/IsShaderVisible.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/IsShaderVisible.md new file mode 100644 index 00000000..425f8eb3 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/IsShaderVisible.md @@ -0,0 +1,30 @@ +# D3D12DescriptorHeap::IsShaderVisible + +查询当前状态。 + +```cpp +bool IsShaderVisible() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorHeap.h`,当前页面用于固定 `D3D12DescriptorHeap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorHeap object; + // 根据上下文补齐参数后调用 D3D12DescriptorHeap::IsShaderVisible(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/Shutdown.md new file mode 100644 index 00000000..95a111bc --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorHeap/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12DescriptorHeap::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorHeap.h`,当前页面用于固定 `D3D12DescriptorHeap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorHeap object; + // 根据上下文补齐参数后调用 D3D12DescriptorHeap::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Bind.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Bind.md new file mode 100644 index 00000000..fd6cc517 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Bind.md @@ -0,0 +1,30 @@ +# D3D12DescriptorSet::Bind + +公开方法,详见头文件声明。 + +```cpp +void Bind() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::Bind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Constructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Constructor.md new file mode 100644 index 00000000..a7a69d32 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Constructor.md @@ -0,0 +1,28 @@ +# D3D12DescriptorSet::D3D12DescriptorSet() + +构造对象。 + +```cpp +D3D12DescriptorSet(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/D3D12DescriptorSet.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/D3D12DescriptorSet.md new file mode 100644 index 00000000..c3accd24 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/D3D12DescriptorSet.md @@ -0,0 +1,54 @@ +# D3D12DescriptorSet + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12DescriptorSet.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12DescriptorSet` public API。 + +## 概述 + +`D3D12DescriptorSet.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `D3D12DescriptorSet` | `class` | 继承自 `RHIDescriptorSet` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [D3D12DescriptorSet()](Constructor.md) | 构造对象。 | +| [~D3D12DescriptorSet()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Bind](Bind.md) | 公开方法,详见头文件声明。 | +| [Unbind](Unbind.md) | 公开方法,详见头文件声明。 | +| [Update](Update.md) | 更新运行时状态。 | +| [UpdateSampler](UpdateSampler.md) | 更新运行时状态。 | +| [WriteConstant](WriteConstant.md) | 公开方法,详见头文件声明。 | +| [GetBindingCount](GetBindingCount.md) | 获取相关状态或对象。 | +| [GetBindings](GetBindings.md) | 获取相关状态或对象。 | +| [GetConstantBufferData](GetConstantBufferData.md) | 获取相关状态或对象。 | +| [GetConstantBufferSize](GetConstantBufferSize.md) | 获取相关状态或对象。 | +| [IsConstantDirty](IsConstantDirty.md) | 查询当前状态。 | +| [MarkConstantClean](MarkConstantClean.md) | 公开方法,详见头文件声明。 | +| [GetGPUHandle](GetGPUHandle.md) | 获取相关状态或对象。 | +| [GetGPUHandleForBinding](GetGPUHandleForBinding.md) | 获取相关状态或对象。 | +| [GetOffset](GetOffset.md) | 获取相关状态或对象。 | +| [GetCount](GetCount.md) | 获取相关状态或对象。 | +| [GetHeap](GetHeap.md) | 获取相关状态或对象。 | +| [HasBindingType](HasBindingType.md) | 判断是否具备指定状态或能力。 | +| [GetFirstBindingOfType](GetFirstBindingOfType.md) | 获取相关状态或对象。 | +| [GetDescriptorIndexForBinding](GetDescriptorIndexForBinding.md) | 获取相关状态或对象。 | +| [UploadConstantBuffer](UploadConstantBuffer.md) | 公开方法,详见头文件声明。 | +| [GetConstantBufferGPUAddress](GetConstantBufferGPUAddress.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Destructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Destructor.md new file mode 100644 index 00000000..0e47329f --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Destructor.md @@ -0,0 +1,29 @@ +# D3D12DescriptorSet::~D3D12DescriptorSet() + +销毁对象并释放相关资源。 + +```cpp +~D3D12DescriptorSet() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetBindingCount.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetBindingCount.md new file mode 100644 index 00000000..0ccbca1b --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetBindingCount.md @@ -0,0 +1,30 @@ +# D3D12DescriptorSet::GetBindingCount + +获取相关状态或对象。 + +```cpp +uint32_t GetBindingCount() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::GetBindingCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetBindings.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetBindings.md new file mode 100644 index 00000000..dc157213 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetBindings.md @@ -0,0 +1,30 @@ +# D3D12DescriptorSet::GetBindings + +获取相关状态或对象。 + +```cpp +const DescriptorSetLayoutBinding* GetBindings() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const DescriptorSetLayoutBinding*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::GetBindings(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetConstantBufferData.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetConstantBufferData.md new file mode 100644 index 00000000..4d4270eb --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetConstantBufferData.md @@ -0,0 +1,30 @@ +# D3D12DescriptorSet::GetConstantBufferData + +获取相关状态或对象。 + +```cpp +void* GetConstantBufferData() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::GetConstantBufferData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetConstantBufferGPUAddress.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetConstantBufferGPUAddress.md new file mode 100644 index 00000000..2e02bc18 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetConstantBufferGPUAddress.md @@ -0,0 +1,31 @@ +# D3D12DescriptorSet::GetConstantBufferGPUAddress + +获取相关状态或对象。 + +```cpp +D3D12_GPU_VIRTUAL_ADDRESS GetConstantBufferGPUAddress(uint32_t binding) const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `binding` - 参数语义详见头文件声明。 + +**返回:** `D3D12_GPU_VIRTUAL_ADDRESS` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::GetConstantBufferGPUAddress(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetConstantBufferSize.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetConstantBufferSize.md new file mode 100644 index 00000000..d9f953a2 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetConstantBufferSize.md @@ -0,0 +1,30 @@ +# D3D12DescriptorSet::GetConstantBufferSize + +获取相关状态或对象。 + +```cpp +size_t GetConstantBufferSize() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::GetConstantBufferSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetCount.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetCount.md new file mode 100644 index 00000000..04315e56 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetCount.md @@ -0,0 +1,30 @@ +# D3D12DescriptorSet::GetCount + +获取相关状态或对象。 + +```cpp +uint32_t GetCount() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::GetCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetDescriptorIndexForBinding.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetDescriptorIndexForBinding.md new file mode 100644 index 00000000..c5dc54e4 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetDescriptorIndexForBinding.md @@ -0,0 +1,31 @@ +# D3D12DescriptorSet::GetDescriptorIndexForBinding + +获取相关状态或对象。 + +```cpp +uint32_t GetDescriptorIndexForBinding(uint32_t binding) const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `binding` - 参数语义详见头文件声明。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::GetDescriptorIndexForBinding(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetFirstBindingOfType.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetFirstBindingOfType.md new file mode 100644 index 00000000..e1573be8 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetFirstBindingOfType.md @@ -0,0 +1,31 @@ +# D3D12DescriptorSet::GetFirstBindingOfType + +获取相关状态或对象。 + +```cpp +uint32_t GetFirstBindingOfType(DescriptorType type) const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::GetFirstBindingOfType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetGPUHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetGPUHandle.md new file mode 100644 index 00000000..f682d462 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetGPUHandle.md @@ -0,0 +1,31 @@ +# D3D12DescriptorSet::GetGPUHandle + +获取相关状态或对象。 + +```cpp +D3D12_GPU_DESCRIPTOR_HANDLE GetGPUHandle(uint32_t index = 0) const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `D3D12_GPU_DESCRIPTOR_HANDLE` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::GetGPUHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetGPUHandleForBinding.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetGPUHandleForBinding.md new file mode 100644 index 00000000..be70eaef --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetGPUHandleForBinding.md @@ -0,0 +1,31 @@ +# D3D12DescriptorSet::GetGPUHandleForBinding + +获取相关状态或对象。 + +```cpp +D3D12_GPU_DESCRIPTOR_HANDLE GetGPUHandleForBinding(uint32_t binding) const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `binding` - 参数语义详见头文件声明。 + +**返回:** `D3D12_GPU_DESCRIPTOR_HANDLE` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::GetGPUHandleForBinding(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetHeap.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetHeap.md new file mode 100644 index 00000000..cafe9386 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetHeap.md @@ -0,0 +1,30 @@ +# D3D12DescriptorSet::GetHeap + +获取相关状态或对象。 + +```cpp +D3D12DescriptorHeap* GetHeap() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `D3D12DescriptorHeap*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::GetHeap(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetOffset.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetOffset.md new file mode 100644 index 00000000..0a790888 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/GetOffset.md @@ -0,0 +1,30 @@ +# D3D12DescriptorSet::GetOffset + +获取相关状态或对象。 + +```cpp +uint32_t GetOffset() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::GetOffset(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/HasBindingType.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/HasBindingType.md new file mode 100644 index 00000000..d11d5d62 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/HasBindingType.md @@ -0,0 +1,31 @@ +# D3D12DescriptorSet::HasBindingType + +判断是否具备指定状态或能力。 + +```cpp +bool HasBindingType(DescriptorType type) const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::HasBindingType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Initialize.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Initialize.md new file mode 100644 index 00000000..fe7d37c6 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Initialize.md @@ -0,0 +1,34 @@ +# D3D12DescriptorSet::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(D3D12DescriptorHeap* heap, uint32_t offset, uint32_t count, const DescriptorSetLayoutDesc& layout); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `heap` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `layout` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/IsConstantDirty.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/IsConstantDirty.md new file mode 100644 index 00000000..321f44e5 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/IsConstantDirty.md @@ -0,0 +1,30 @@ +# D3D12DescriptorSet::IsConstantDirty + +查询当前状态。 + +```cpp +bool IsConstantDirty() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::IsConstantDirty(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/MarkConstantClean.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/MarkConstantClean.md new file mode 100644 index 00000000..9f603d8f --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/MarkConstantClean.md @@ -0,0 +1,30 @@ +# D3D12DescriptorSet::MarkConstantClean + +公开方法,详见头文件声明。 + +```cpp +void MarkConstantClean() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::MarkConstantClean(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Shutdown.md new file mode 100644 index 00000000..c1251f9a --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12DescriptorSet::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Unbind.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Unbind.md new file mode 100644 index 00000000..faaba23f --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Unbind.md @@ -0,0 +1,30 @@ +# D3D12DescriptorSet::Unbind + +公开方法,详见头文件声明。 + +```cpp +void Unbind() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::Unbind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Update.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Update.md new file mode 100644 index 00000000..cd36bbbf --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/Update.md @@ -0,0 +1,32 @@ +# D3D12DescriptorSet::Update + +更新运行时状态。 + +```cpp +void Update(uint32_t offset, RHIResourceView* view) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `offset` - 参数语义详见头文件声明。 +- `view` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::Update(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/UpdateSampler.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/UpdateSampler.md new file mode 100644 index 00000000..f9d3659c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/UpdateSampler.md @@ -0,0 +1,32 @@ +# D3D12DescriptorSet::UpdateSampler + +更新运行时状态。 + +```cpp +void UpdateSampler(uint32_t offset, RHISampler* sampler) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `offset` - 参数语义详见头文件声明。 +- `sampler` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::UpdateSampler(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/UploadConstantBuffer.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/UploadConstantBuffer.md new file mode 100644 index 00000000..fcb29c1d --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/UploadConstantBuffer.md @@ -0,0 +1,31 @@ +# D3D12DescriptorSet::UploadConstantBuffer + +公开方法,详见头文件声明。 + +```cpp +bool UploadConstantBuffer(uint32_t binding); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `binding` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::UploadConstantBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/WriteConstant.md b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/WriteConstant.md new file mode 100644 index 00000000..14d3acd5 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12DescriptorSet/WriteConstant.md @@ -0,0 +1,34 @@ +# D3D12DescriptorSet::WriteConstant + +公开方法,详见头文件声明。 + +```cpp +void WriteConstant(uint32_t binding, const void* data, size_t size, size_t offset = 0) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12DescriptorSet.h`,当前页面用于固定 `D3D12DescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `binding` - 参数语义详见头文件声明。 +- `data` - 参数语义详见头文件声明。 +- `size` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12DescriptorSet object; + // 根据上下文补齐参数后调用 D3D12DescriptorSet::WriteConstant(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12DescriptorSet.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CheckFeatureSupport.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CheckFeatureSupport.md new file mode 100644 index 00000000..1f40ac9d --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CheckFeatureSupport.md @@ -0,0 +1,33 @@ +# D3D12Device::CheckFeatureSupport + +公开方法,详见头文件声明。 + +```cpp +bool CheckFeatureSupport(D3D12_FEATURE feature, void* featureSupportData, uint32_t featureSupportDataSize); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `feature` - 参数语义详见头文件声明。 +- `featureSupportData` - 参数语义详见头文件声明。 +- `featureSupportDataSize` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CheckFeatureSupport(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/Constructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/Constructor.md new file mode 100644 index 00000000..a59ce09b --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/Constructor.md @@ -0,0 +1,28 @@ +# D3D12Device::D3D12Device() + +构造对象。 + +```cpp +D3D12Device(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateBuffer.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateBuffer.md new file mode 100644 index 00000000..8e37b94e --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateBuffer.md @@ -0,0 +1,31 @@ +# D3D12Device::CreateBuffer + +创建新对象或资源。 + +```cpp +RHIBuffer* CreateBuffer(const BufferDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIBuffer*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandAllocator.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandAllocator.md new file mode 100644 index 00000000..7024727e --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandAllocator.md @@ -0,0 +1,31 @@ +# D3D12Device::CreateCommandAllocator + +创建新对象或资源。 + +```cpp +D3D12CommandAllocator* CreateCommandAllocator(const CommandAllocatorDesc& desc); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `D3D12CommandAllocator*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateCommandAllocator(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandList.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandList.md new file mode 100644 index 00000000..eb4d1580 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandList.md @@ -0,0 +1,31 @@ +# D3D12Device::CreateCommandList + +创建新对象或资源。 + +```cpp +RHICommandList* CreateCommandList(const CommandListDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHICommandList*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateCommandList(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandListImpl.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandListImpl.md new file mode 100644 index 00000000..e0654f80 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandListImpl.md @@ -0,0 +1,31 @@ +# D3D12Device::CreateCommandListImpl + +创建新对象或资源。 + +```cpp +D3D12CommandList* CreateCommandListImpl(const CommandListDesc& desc); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `D3D12CommandList*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateCommandListImpl(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandQueue.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandQueue.md new file mode 100644 index 00000000..4c3e4a05 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandQueue.md @@ -0,0 +1,31 @@ +# D3D12Device::CreateCommandQueue + +创建新对象或资源。 + +```cpp +RHICommandQueue* CreateCommandQueue(const CommandQueueDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHICommandQueue*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateCommandQueue(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandQueueImpl.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandQueueImpl.md new file mode 100644 index 00000000..24087e14 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateCommandQueueImpl.md @@ -0,0 +1,31 @@ +# D3D12Device::CreateCommandQueueImpl + +创建新对象或资源。 + +```cpp +D3D12CommandQueue* CreateCommandQueueImpl(const CommandQueueDesc& desc); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `D3D12CommandQueue*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateCommandQueueImpl(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateDepthStencilView.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateDepthStencilView.md new file mode 100644 index 00000000..137a08cb --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateDepthStencilView.md @@ -0,0 +1,32 @@ +# D3D12Device::CreateDepthStencilView + +创建新对象或资源。 + +```cpp +RHIResourceView* CreateDepthStencilView(RHITexture* texture, const ResourceViewDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIResourceView*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateDepthStencilView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateDescriptorHeap.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateDescriptorHeap.md new file mode 100644 index 00000000..6a04f479 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateDescriptorHeap.md @@ -0,0 +1,31 @@ +# D3D12Device::CreateDescriptorHeap + +创建新对象或资源。 + +```cpp +D3D12DescriptorHeap* CreateDescriptorHeap(const DescriptorHeapDesc& desc); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `D3D12DescriptorHeap*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateDescriptorHeap(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateDescriptorPool.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateDescriptorPool.md new file mode 100644 index 00000000..ba4db0af --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateDescriptorPool.md @@ -0,0 +1,31 @@ +# D3D12Device::CreateDescriptorPool + +创建新对象或资源。 + +```cpp +RHIDescriptorPool* CreateDescriptorPool(const DescriptorPoolDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIDescriptorPool*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateDescriptorPool(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateDescriptorSet.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateDescriptorSet.md new file mode 100644 index 00000000..6b2f38df --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateDescriptorSet.md @@ -0,0 +1,32 @@ +# D3D12Device::CreateDescriptorSet + +创建新对象或资源。 + +```cpp +RHIDescriptorSet* CreateDescriptorSet(RHIDescriptorPool* pool, const DescriptorSetLayoutDesc& layout) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `pool` - 参数语义详见头文件声明。 +- `layout` - 参数语义详见头文件声明。 + +**返回:** `RHIDescriptorSet*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateDescriptorSet(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateFence.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateFence.md new file mode 100644 index 00000000..fbbb2b6a --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateFence.md @@ -0,0 +1,31 @@ +# D3D12Device::CreateFence + +创建新对象或资源。 + +```cpp +RHIFence* CreateFence(const FenceDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIFence*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateFence(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateFramebuffer.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateFramebuffer.md new file mode 100644 index 00000000..fc460616 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateFramebuffer.md @@ -0,0 +1,36 @@ +# D3D12Device::CreateFramebuffer + +创建新对象或资源。 + +```cpp +RHIFramebuffer* CreateFramebuffer( class RHIRenderPass* renderPass, uint32_t width, uint32_t height, uint32_t colorAttachmentCount, RHIResourceView** colorAttachments, RHIResourceView* depthStencilAttachment) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `renderPass` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 +- `colorAttachmentCount` - 参数语义详见头文件声明。 +- `colorAttachments` - 参数语义详见头文件声明。 +- `depthStencilAttachment` - 参数语义详见头文件声明。 + +**返回:** `RHIFramebuffer*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateFramebuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateIndexBufferView.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateIndexBufferView.md new file mode 100644 index 00000000..a02f8e68 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateIndexBufferView.md @@ -0,0 +1,32 @@ +# D3D12Device::CreateIndexBufferView + +创建新对象或资源。 + +```cpp +RHIResourceView* CreateIndexBufferView(RHIBuffer* buffer, const ResourceViewDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIResourceView*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateIndexBufferView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreatePipelineLayout.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreatePipelineLayout.md new file mode 100644 index 00000000..04ad989c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreatePipelineLayout.md @@ -0,0 +1,31 @@ +# D3D12Device::CreatePipelineLayout + +创建新对象或资源。 + +```cpp +RHIPipelineLayout* CreatePipelineLayout(const RHIPipelineLayoutDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIPipelineLayout*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreatePipelineLayout(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreatePipelineState.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreatePipelineState.md new file mode 100644 index 00000000..84391ef8 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreatePipelineState.md @@ -0,0 +1,31 @@ +# D3D12Device::CreatePipelineState + +创建新对象或资源。 + +```cpp +RHIPipelineState* CreatePipelineState(const GraphicsPipelineDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIPipelineState*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreatePipelineState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateQueryHeap.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateQueryHeap.md new file mode 100644 index 00000000..00594177 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateQueryHeap.md @@ -0,0 +1,31 @@ +# D3D12Device::CreateQueryHeap + +创建新对象或资源。 + +```cpp +D3D12QueryHeap* CreateQueryHeap(const QueryHeapDesc& desc); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `D3D12QueryHeap*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateQueryHeap(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateRenderPass.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateRenderPass.md new file mode 100644 index 00000000..18c047e7 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateRenderPass.md @@ -0,0 +1,33 @@ +# D3D12Device::CreateRenderPass + +创建新对象或资源。 + +```cpp +RHIRenderPass* CreateRenderPass( uint32_t colorAttachmentCount, const AttachmentDesc* colorAttachments, const AttachmentDesc* depthStencilAttachment) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `colorAttachmentCount` - 参数语义详见头文件声明。 +- `colorAttachments` - 参数语义详见头文件声明。 +- `depthStencilAttachment` - 参数语义详见头文件声明。 + +**返回:** `RHIRenderPass*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateRenderPass(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateRenderTargetView.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateRenderTargetView.md new file mode 100644 index 00000000..3aec5a83 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateRenderTargetView.md @@ -0,0 +1,32 @@ +# D3D12Device::CreateRenderTargetView + +创建新对象或资源。 + +```cpp +RHIResourceView* CreateRenderTargetView(RHITexture* texture, const ResourceViewDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIResourceView*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateRenderTargetView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateRootSignature.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateRootSignature.md new file mode 100644 index 00000000..7797c53e --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateRootSignature.md @@ -0,0 +1,31 @@ +# D3D12Device::CreateRootSignature + +创建新对象或资源。 + +```cpp +D3D12RootSignature* CreateRootSignature(const RootSignatureDesc& desc); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `D3D12RootSignature*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateRootSignature(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateSampler.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateSampler.md new file mode 100644 index 00000000..6e82db85 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateSampler.md @@ -0,0 +1,31 @@ +# D3D12Device::CreateSampler + +创建新对象或资源。 + +```cpp +RHISampler* CreateSampler(const SamplerDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHISampler*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateSampler(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateShader.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateShader.md new file mode 100644 index 00000000..e1c3c795 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateShader.md @@ -0,0 +1,31 @@ +# D3D12Device::CreateShader + +创建新对象或资源。 + +```cpp +RHIShader* CreateShader(const ShaderCompileDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIShader*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateShaderResourceView.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateShaderResourceView.md new file mode 100644 index 00000000..d5aea442 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateShaderResourceView.md @@ -0,0 +1,32 @@ +# D3D12Device::CreateShaderResourceView + +创建新对象或资源。 + +```cpp +RHIResourceView* CreateShaderResourceView(RHITexture* texture, const ResourceViewDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIResourceView*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateShaderResourceView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateSwapChain.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateSwapChain.md new file mode 100644 index 00000000..33716a0c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateSwapChain.md @@ -0,0 +1,32 @@ +# D3D12Device::CreateSwapChain + +创建新对象或资源。 + +```cpp +RHISwapChain* CreateSwapChain(const SwapChainDesc& desc, RHICommandQueue* presentQueue) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 +- `presentQueue` - 参数语义详见头文件声明。 + +**返回:** `RHISwapChain*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateSwapChain(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateTexture.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateTexture.md new file mode 100644 index 00000000..1bdfeb4d --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateTexture.md @@ -0,0 +1,47 @@ +# D3D12Device::CreateTexture + +创建新对象或资源。 + +该方法在 `XCEngine/RHI/D3D12/D3D12Device.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +RHITexture* CreateTexture(const TextureDesc& desc) override; +``` + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHITexture*` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +RHITexture* CreateTexture(const TextureDesc& desc, const void* initialData, size_t initialDataSize, uint32_t rowPitch = 0) override; +``` + +**参数:** +- `desc` - 参数语义详见头文件声明。 +- `initialData` - 参数语义详见头文件声明。 +- `initialDataSize` - 参数语义详见头文件声明。 +- `rowPitch` - 参数语义详见头文件声明。 + +**返回:** `RHITexture*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateTexture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateUnorderedAccessView.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateUnorderedAccessView.md new file mode 100644 index 00000000..e3cc00b3 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateUnorderedAccessView.md @@ -0,0 +1,32 @@ +# D3D12Device::CreateUnorderedAccessView + +创建新对象或资源。 + +```cpp +RHIResourceView* CreateUnorderedAccessView(RHITexture* texture, const ResourceViewDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIResourceView*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateUnorderedAccessView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateVertexBufferView.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateVertexBufferView.md new file mode 100644 index 00000000..18058418 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/CreateVertexBufferView.md @@ -0,0 +1,32 @@ +# D3D12Device::CreateVertexBufferView + +创建新对象或资源。 + +```cpp +RHIResourceView* CreateVertexBufferView(RHIBuffer* buffer, const ResourceViewDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIResourceView*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::CreateVertexBufferView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/D3D12Device.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/D3D12Device.md new file mode 100644 index 00000000..19f3595b --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/D3D12Device.md @@ -0,0 +1,72 @@ +# D3D12Device + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12Device.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12Device` public API。 + +## 概述 + +`D3D12Device.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `AdapterInfo` | `struct` | 头文件中的公开声明。 | +| `D3D12Device` | `class` | 继承自 `RHIDevice` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [D3D12Device()](Constructor.md) | 构造对象。 | +| [~D3D12Device()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetDevice](GetDevice.md) | 获取相关状态或对象。 | +| [GetFactory](GetFactory.md) | 获取相关状态或对象。 | +| [GetAdapterInfo](GetAdapterInfo.md) | 获取相关状态或对象。 | +| [EnumerateAdapters](EnumerateAdapters.md) | 公开方法,详见头文件声明。 | +| [GetDescriptorHandleIncrementSize](GetDescriptorHandleIncrementSize.md) | 获取相关状态或对象。 | +| [CheckFeatureSupport](CheckFeatureSupport.md) | 公开方法,详见头文件声明。 | +| [SetDeviceRemoved](SetDeviceRemoved.md) | 设置相关状态或配置。 | +| [IsDeviceRemoved](IsDeviceRemoved.md) | 查询当前状态。 | +| [CreateBuffer](CreateBuffer.md) | 创建新对象或资源。 | +| [CreateTexture](CreateTexture.md) | 创建新对象或资源。 | +| [CreateSwapChain](CreateSwapChain.md) | 创建新对象或资源。 | +| [CreateCommandList](CreateCommandList.md) | 创建新对象或资源。 | +| [CreateCommandQueue](CreateCommandQueue.md) | 创建新对象或资源。 | +| [CreateShader](CreateShader.md) | 创建新对象或资源。 | +| [CreatePipelineState](CreatePipelineState.md) | 创建新对象或资源。 | +| [CreatePipelineLayout](CreatePipelineLayout.md) | 创建新对象或资源。 | +| [CreateFence](CreateFence.md) | 创建新对象或资源。 | +| [CreateSampler](CreateSampler.md) | 创建新对象或资源。 | +| [CreateRenderPass](CreateRenderPass.md) | 创建新对象或资源。 | +| [CreateFramebuffer](CreateFramebuffer.md) | 创建新对象或资源。 | +| [CreateDescriptorPool](CreateDescriptorPool.md) | 创建新对象或资源。 | +| [CreateDescriptorSet](CreateDescriptorSet.md) | 创建新对象或资源。 | +| [CreateVertexBufferView](CreateVertexBufferView.md) | 创建新对象或资源。 | +| [CreateIndexBufferView](CreateIndexBufferView.md) | 创建新对象或资源。 | +| [CreateRenderTargetView](CreateRenderTargetView.md) | 创建新对象或资源。 | +| [CreateDepthStencilView](CreateDepthStencilView.md) | 创建新对象或资源。 | +| [CreateShaderResourceView](CreateShaderResourceView.md) | 创建新对象或资源。 | +| [CreateUnorderedAccessView](CreateUnorderedAccessView.md) | 创建新对象或资源。 | +| [GetCapabilities](GetCapabilities.md) | 获取相关状态或对象。 | +| [GetDeviceInfo](GetDeviceInfo.md) | 获取相关状态或对象。 | +| [GetNativeDevice](GetNativeDevice.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [CreateCommandQueueImpl](CreateCommandQueueImpl.md) | 创建新对象或资源。 | +| [CreateCommandListImpl](CreateCommandListImpl.md) | 创建新对象或资源。 | +| [CreateCommandAllocator](CreateCommandAllocator.md) | 创建新对象或资源。 | +| [CreateDescriptorHeap](CreateDescriptorHeap.md) | 创建新对象或资源。 | +| [CreateQueryHeap](CreateQueryHeap.md) | 创建新对象或资源。 | +| [CreateRootSignature](CreateRootSignature.md) | 创建新对象或资源。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/Destructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/Destructor.md new file mode 100644 index 00000000..4beee559 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/Destructor.md @@ -0,0 +1,29 @@ +# D3D12Device::~D3D12Device() + +销毁对象并释放相关资源。 + +```cpp +~D3D12Device() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/EnumerateAdapters.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/EnumerateAdapters.md new file mode 100644 index 00000000..945ac45e --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/EnumerateAdapters.md @@ -0,0 +1,30 @@ +# D3D12Device::EnumerateAdapters + +公开方法,详见头文件声明。 + +```cpp +std::vector EnumerateAdapters(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::vector` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::EnumerateAdapters(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetAdapterInfo.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetAdapterInfo.md new file mode 100644 index 00000000..4f916c77 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetAdapterInfo.md @@ -0,0 +1,30 @@ +# D3D12Device::GetAdapterInfo + +获取相关状态或对象。 + +```cpp +const AdapterInfo& GetAdapterInfo() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const AdapterInfo&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::GetAdapterInfo(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetCapabilities.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetCapabilities.md new file mode 100644 index 00000000..a618ca39 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetCapabilities.md @@ -0,0 +1,30 @@ +# D3D12Device::GetCapabilities + +获取相关状态或对象。 + +```cpp +const RHICapabilities& GetCapabilities() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const RHICapabilities&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::GetCapabilities(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetDescriptorHandleIncrementSize.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetDescriptorHandleIncrementSize.md new file mode 100644 index 00000000..af495738 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetDescriptorHandleIncrementSize.md @@ -0,0 +1,31 @@ +# D3D12Device::GetDescriptorHandleIncrementSize + +获取相关状态或对象。 + +```cpp +UINT GetDescriptorHandleIncrementSize(DescriptorHeapType type) const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 + +**返回:** `UINT` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::GetDescriptorHandleIncrementSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetDevice.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetDevice.md new file mode 100644 index 00000000..248ddd3e --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetDevice.md @@ -0,0 +1,30 @@ +# D3D12Device::GetDevice + +获取相关状态或对象。 + +```cpp +ID3D12Device* GetDevice() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ID3D12Device*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::GetDevice(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetDeviceInfo.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetDeviceInfo.md new file mode 100644 index 00000000..9e151fec --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetDeviceInfo.md @@ -0,0 +1,30 @@ +# D3D12Device::GetDeviceInfo + +获取相关状态或对象。 + +```cpp +const RHIDeviceInfo& GetDeviceInfo() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const RHIDeviceInfo&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::GetDeviceInfo(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetFactory.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetFactory.md new file mode 100644 index 00000000..232d0091 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetFactory.md @@ -0,0 +1,30 @@ +# D3D12Device::GetFactory + +获取相关状态或对象。 + +```cpp +IDXGIFactory4* GetFactory() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `IDXGIFactory4*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::GetFactory(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetNativeDevice.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetNativeDevice.md new file mode 100644 index 00000000..7647a32d --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetNativeDevice.md @@ -0,0 +1,30 @@ +# D3D12Device::GetNativeDevice + +获取相关状态或对象。 + +```cpp +void* GetNativeDevice() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::GetNativeDevice(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetNativeHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetNativeHandle.md new file mode 100644 index 00000000..e70fc01d --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/GetNativeHandle.md @@ -0,0 +1,30 @@ +# D3D12Device::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/Initialize.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/Initialize.md new file mode 100644 index 00000000..75d2f0f7 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/Initialize.md @@ -0,0 +1,31 @@ +# D3D12Device::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(const RHIDeviceDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/IsDeviceRemoved.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/IsDeviceRemoved.md new file mode 100644 index 00000000..db990b4c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/IsDeviceRemoved.md @@ -0,0 +1,30 @@ +# D3D12Device::IsDeviceRemoved + +查询当前状态。 + +```cpp +bool IsDeviceRemoved() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::IsDeviceRemoved(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/SetDeviceRemoved.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/SetDeviceRemoved.md new file mode 100644 index 00000000..f55a046b --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/SetDeviceRemoved.md @@ -0,0 +1,30 @@ +# D3D12Device::SetDeviceRemoved + +设置相关状态或配置。 + +```cpp +void SetDeviceRemoved(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::SetDeviceRemoved(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Device/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12Device/Shutdown.md new file mode 100644 index 00000000..4d4cb08b --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Device/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12Device::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Device.h`,当前页面用于固定 `D3D12Device` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Device object; + // 根据上下文补齐参数后调用 D3D12Device::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Device.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Enums/D3D12Enums.md b/docs/api/XCEngine/RHI/D3D12/D3D12Enums/D3D12Enums.md new file mode 100644 index 00000000..a801cadc --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Enums/D3D12Enums.md @@ -0,0 +1,18 @@ +# D3D12Enums + +**命名空间**: `XCEngine` + +**类型**: `header` + +**头文件**: `XCEngine/RHI/D3D12/D3D12Enums.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12Enums` public API。 + +## 概述 + +`D3D12Enums.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Fence/Constructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/Constructor.md new file mode 100644 index 00000000..d3d3bf9e --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/Constructor.md @@ -0,0 +1,28 @@ +# D3D12Fence::D3D12Fence() + +构造对象。 + +```cpp +D3D12Fence(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Fence.h`,当前页面用于固定 `D3D12Fence` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Fence object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Fence.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Fence/D3D12Fence.md b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/D3D12Fence.md new file mode 100644 index 00000000..ff26c99f --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/D3D12Fence.md @@ -0,0 +1,39 @@ +# D3D12Fence + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12Fence.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12Fence` public API。 + +## 概述 + +`D3D12Fence.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `D3D12Fence` | `class` | 继承自 `RHIFence` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [D3D12Fence()](Constructor.md) | 构造对象。 | +| [~D3D12Fence()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Signal](Signal.md) | 公开方法,详见头文件声明。 | +| [Wait](Wait.md) | 公开方法,详见头文件声明。 | +| [GetCompletedValue](GetCompletedValue.md) | 获取相关状态或对象。 | +| [GetEventHandle](GetEventHandle.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetFence](GetFence.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Fence/Destructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/Destructor.md new file mode 100644 index 00000000..f0f11310 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/Destructor.md @@ -0,0 +1,29 @@ +# D3D12Fence::~D3D12Fence() + +销毁对象并释放相关资源。 + +```cpp +~D3D12Fence() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Fence.h`,当前页面用于固定 `D3D12Fence` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Fence object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](D3D12Fence.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Fence/GetCompletedValue.md b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/GetCompletedValue.md new file mode 100644 index 00000000..48b09bdb --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/GetCompletedValue.md @@ -0,0 +1,30 @@ +# D3D12Fence::GetCompletedValue + +获取相关状态或对象。 + +```cpp +uint64_t GetCompletedValue() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Fence.h`,当前页面用于固定 `D3D12Fence` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Fence object; + // 根据上下文补齐参数后调用 D3D12Fence::GetCompletedValue(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Fence.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Fence/GetEventHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/GetEventHandle.md new file mode 100644 index 00000000..889e82d3 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/GetEventHandle.md @@ -0,0 +1,30 @@ +# D3D12Fence::GetEventHandle + +获取相关状态或对象。 + +```cpp +void* GetEventHandle(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Fence.h`,当前页面用于固定 `D3D12Fence` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Fence object; + // 根据上下文补齐参数后调用 D3D12Fence::GetEventHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Fence.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Fence/GetFence.md b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/GetFence.md new file mode 100644 index 00000000..c80b7266 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/GetFence.md @@ -0,0 +1,30 @@ +# D3D12Fence::GetFence + +获取相关状态或对象。 + +```cpp +ID3D12Fence* GetFence() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Fence.h`,当前页面用于固定 `D3D12Fence` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ID3D12Fence*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Fence object; + // 根据上下文补齐参数后调用 D3D12Fence::GetFence(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Fence.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Fence/GetNativeHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/GetNativeHandle.md new file mode 100644 index 00000000..c65264b4 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/GetNativeHandle.md @@ -0,0 +1,30 @@ +# D3D12Fence::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Fence.h`,当前页面用于固定 `D3D12Fence` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Fence object; + // 根据上下文补齐参数后调用 D3D12Fence::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Fence.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Fence/Initialize.md b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/Initialize.md new file mode 100644 index 00000000..1d2f5c1f --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/Initialize.md @@ -0,0 +1,32 @@ +# D3D12Fence::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(ID3D12Device* device, uint64_t initialValue = 0); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Fence.h`,当前页面用于固定 `D3D12Fence` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `initialValue` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Fence object; + // 根据上下文补齐参数后调用 D3D12Fence::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Fence.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Fence/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/Shutdown.md new file mode 100644 index 00000000..d455e064 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12Fence::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Fence.h`,当前页面用于固定 `D3D12Fence` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Fence object; + // 根据上下文补齐参数后调用 D3D12Fence::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Fence.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Fence/Signal.md b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/Signal.md new file mode 100644 index 00000000..578721c5 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/Signal.md @@ -0,0 +1,43 @@ +# D3D12Fence::Signal + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/RHI/D3D12/D3D12Fence.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void Signal() override; +``` + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void Signal(uint64_t value) override; +``` + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Fence object; + // 根据上下文补齐参数后调用 D3D12Fence::Signal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Fence.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Fence/Wait.md b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/Wait.md new file mode 100644 index 00000000..d8c8ada0 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Fence/Wait.md @@ -0,0 +1,31 @@ +# D3D12Fence::Wait + +公开方法,详见头文件声明。 + +```cpp +void Wait(uint64_t value) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Fence.h`,当前页面用于固定 `D3D12Fence` 类目录下的方法级 canonical 路径。 + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Fence object; + // 根据上下文补齐参数后调用 D3D12Fence::Wait(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Fence.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/Constructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/Constructor.md new file mode 100644 index 00000000..6624d599 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/Constructor.md @@ -0,0 +1,28 @@ +# D3D12Framebuffer::D3D12Framebuffer() + +构造对象。 + +```cpp +D3D12Framebuffer(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Framebuffer.h`,当前页面用于固定 `D3D12Framebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Framebuffer object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Framebuffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/D3D12Framebuffer.md b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/D3D12Framebuffer.md new file mode 100644 index 00000000..2d29bd95 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/D3D12Framebuffer.md @@ -0,0 +1,43 @@ +# D3D12Framebuffer + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12Framebuffer.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12Framebuffer` public API。 + +## 概述 + +`D3D12Framebuffer.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `D3D12Framebuffer` | `class` | 继承自 `RHIFramebuffer` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [D3D12Framebuffer()](Constructor.md) | 构造对象。 | +| [~D3D12Framebuffer()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetWidth](GetWidth.md) | 获取相关状态或对象。 | +| [GetHeight](GetHeight.md) | 获取相关状态或对象。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [GetRenderTargetHandle](GetRenderTargetHandle.md) | 获取相关状态或对象。 | +| [GetDepthStencilHandle](GetDepthStencilHandle.md) | 获取相关状态或对象。 | +| [HasDepthStencil](HasDepthStencil.md) | 判断是否具备指定状态或能力。 | +| [GetRenderTargetCount](GetRenderTargetCount.md) | 获取相关状态或对象。 | +| [GetRenderTargetHandles](GetRenderTargetHandles.md) | 获取相关状态或对象。 | +| [GetRenderPass](GetRenderPass.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/Destructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/Destructor.md new file mode 100644 index 00000000..afab6afe --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/Destructor.md @@ -0,0 +1,29 @@ +# D3D12Framebuffer::~D3D12Framebuffer() + +销毁对象并释放相关资源。 + +```cpp +~D3D12Framebuffer() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Framebuffer.h`,当前页面用于固定 `D3D12Framebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Framebuffer object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](D3D12Framebuffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetDepthStencilHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetDepthStencilHandle.md new file mode 100644 index 00000000..8bddb36f --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetDepthStencilHandle.md @@ -0,0 +1,30 @@ +# D3D12Framebuffer::GetDepthStencilHandle + +获取相关状态或对象。 + +```cpp +D3D12_CPU_DESCRIPTOR_HANDLE GetDepthStencilHandle() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Framebuffer.h`,当前页面用于固定 `D3D12Framebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `D3D12_CPU_DESCRIPTOR_HANDLE` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Framebuffer object; + // 根据上下文补齐参数后调用 D3D12Framebuffer::GetDepthStencilHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Framebuffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetHeight.md b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetHeight.md new file mode 100644 index 00000000..ae1fdb37 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetHeight.md @@ -0,0 +1,30 @@ +# D3D12Framebuffer::GetHeight + +获取相关状态或对象。 + +```cpp +uint32_t GetHeight() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Framebuffer.h`,当前页面用于固定 `D3D12Framebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Framebuffer object; + // 根据上下文补齐参数后调用 D3D12Framebuffer::GetHeight(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Framebuffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetNativeHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetNativeHandle.md new file mode 100644 index 00000000..6a804ede --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetNativeHandle.md @@ -0,0 +1,30 @@ +# D3D12Framebuffer::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Framebuffer.h`,当前页面用于固定 `D3D12Framebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Framebuffer object; + // 根据上下文补齐参数后调用 D3D12Framebuffer::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Framebuffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetRenderPass.md b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetRenderPass.md new file mode 100644 index 00000000..95b85e9a --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetRenderPass.md @@ -0,0 +1,30 @@ +# D3D12Framebuffer::GetRenderPass + +获取相关状态或对象。 + +```cpp +D3D12RenderPass* GetRenderPass() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Framebuffer.h`,当前页面用于固定 `D3D12Framebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `D3D12RenderPass*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Framebuffer object; + // 根据上下文补齐参数后调用 D3D12Framebuffer::GetRenderPass(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Framebuffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetRenderTargetCount.md b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetRenderTargetCount.md new file mode 100644 index 00000000..62f7b6ad --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetRenderTargetCount.md @@ -0,0 +1,30 @@ +# D3D12Framebuffer::GetRenderTargetCount + +获取相关状态或对象。 + +```cpp +uint32_t GetRenderTargetCount() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Framebuffer.h`,当前页面用于固定 `D3D12Framebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Framebuffer object; + // 根据上下文补齐参数后调用 D3D12Framebuffer::GetRenderTargetCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Framebuffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetRenderTargetHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetRenderTargetHandle.md new file mode 100644 index 00000000..2175585c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetRenderTargetHandle.md @@ -0,0 +1,31 @@ +# D3D12Framebuffer::GetRenderTargetHandle + +获取相关状态或对象。 + +```cpp +D3D12_CPU_DESCRIPTOR_HANDLE GetRenderTargetHandle(uint32_t index) const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Framebuffer.h`,当前页面用于固定 `D3D12Framebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `D3D12_CPU_DESCRIPTOR_HANDLE` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Framebuffer object; + // 根据上下文补齐参数后调用 D3D12Framebuffer::GetRenderTargetHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Framebuffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetRenderTargetHandles.md b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetRenderTargetHandles.md new file mode 100644 index 00000000..f69a08eb --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetRenderTargetHandles.md @@ -0,0 +1,30 @@ +# D3D12Framebuffer::GetRenderTargetHandles + +获取相关状态或对象。 + +```cpp +const D3D12_CPU_DESCRIPTOR_HANDLE* GetRenderTargetHandles() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Framebuffer.h`,当前页面用于固定 `D3D12Framebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const D3D12_CPU_DESCRIPTOR_HANDLE*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Framebuffer object; + // 根据上下文补齐参数后调用 D3D12Framebuffer::GetRenderTargetHandles(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Framebuffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetWidth.md b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetWidth.md new file mode 100644 index 00000000..114bf2bf --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/GetWidth.md @@ -0,0 +1,30 @@ +# D3D12Framebuffer::GetWidth + +获取相关状态或对象。 + +```cpp +uint32_t GetWidth() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Framebuffer.h`,当前页面用于固定 `D3D12Framebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Framebuffer object; + // 根据上下文补齐参数后调用 D3D12Framebuffer::GetWidth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Framebuffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/HasDepthStencil.md b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/HasDepthStencil.md new file mode 100644 index 00000000..fadb135b --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/HasDepthStencil.md @@ -0,0 +1,30 @@ +# D3D12Framebuffer::HasDepthStencil + +判断是否具备指定状态或能力。 + +```cpp +bool HasDepthStencil() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Framebuffer.h`,当前页面用于固定 `D3D12Framebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Framebuffer object; + // 根据上下文补齐参数后调用 D3D12Framebuffer::HasDepthStencil(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Framebuffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/Initialize.md b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/Initialize.md new file mode 100644 index 00000000..ac5d27de --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/Initialize.md @@ -0,0 +1,36 @@ +# D3D12Framebuffer::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(class RHIRenderPass* renderPass, uint32_t width, uint32_t height, uint32_t colorAttachmentCount, RHIResourceView** colorAttachments, RHIResourceView* depthStencilAttachment) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Framebuffer.h`,当前页面用于固定 `D3D12Framebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `renderPass` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 +- `colorAttachmentCount` - 参数语义详见头文件声明。 +- `colorAttachments` - 参数语义详见头文件声明。 +- `depthStencilAttachment` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Framebuffer object; + // 根据上下文补齐参数后调用 D3D12Framebuffer::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Framebuffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/IsValid.md b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/IsValid.md new file mode 100644 index 00000000..f131ad0d --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/IsValid.md @@ -0,0 +1,30 @@ +# D3D12Framebuffer::IsValid + +查询当前状态。 + +```cpp +bool IsValid() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Framebuffer.h`,当前页面用于固定 `D3D12Framebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Framebuffer object; + // 根据上下文补齐参数后调用 D3D12Framebuffer::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Framebuffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/Shutdown.md new file mode 100644 index 00000000..dc3e5242 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Framebuffer/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12Framebuffer::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Framebuffer.h`,当前页面用于固定 `D3D12Framebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Framebuffer object; + // 根据上下文补齐参数后调用 D3D12Framebuffer::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Framebuffer.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/Constructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/Constructor.md new file mode 100644 index 00000000..7012be8c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/Constructor.md @@ -0,0 +1,28 @@ +# D3D12PipelineLayout::D3D12PipelineLayout() + +构造对象。 + +```cpp +D3D12PipelineLayout(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineLayout.h`,当前页面用于固定 `D3D12PipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineLayout object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineLayout.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/D3D12PipelineLayout.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/D3D12PipelineLayout.md new file mode 100644 index 00000000..ff271303 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/D3D12PipelineLayout.md @@ -0,0 +1,47 @@ +# D3D12PipelineLayout + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12PipelineLayout.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12PipelineLayout` public API。 + +## 概述 + +`D3D12PipelineLayout.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `D3D12PipelineLayout` | `class` | 继承自 `RHIPipelineLayout` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [D3D12PipelineLayout()](Constructor.md) | 构造对象。 | +| [~D3D12PipelineLayout()](Destructor.md) | 销毁对象并释放相关资源。 | +| [InitializeWithDevice](InitializeWithDevice.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetRootSignature](GetRootSignature.md) | 获取相关状态或对象。 | +| [UsesSetLayouts](UsesSetLayouts.md) | 公开方法,详见头文件声明。 | +| [GetSetLayoutCount](GetSetLayoutCount.md) | 获取相关状态或对象。 | +| [HasConstantBufferBinding](HasConstantBufferBinding.md) | 判断是否具备指定状态或能力。 | +| [GetConstantBufferRootParameterIndex](GetConstantBufferRootParameterIndex.md) | 获取相关状态或对象。 | +| [HasShaderResourceTable](HasShaderResourceTable.md) | 判断是否具备指定状态或能力。 | +| [GetShaderResourceTableRootParameterIndex](GetShaderResourceTableRootParameterIndex.md) | 获取相关状态或对象。 | +| [HasUnorderedAccessTable](HasUnorderedAccessTable.md) | 判断是否具备指定状态或能力。 | +| [GetUnorderedAccessTableRootParameterIndex](GetUnorderedAccessTableRootParameterIndex.md) | 获取相关状态或对象。 | +| [HasSamplerTable](HasSamplerTable.md) | 判断是否具备指定状态或能力。 | +| [GetSamplerTableRootParameterIndex](GetSamplerTableRootParameterIndex.md) | 获取相关状态或对象。 | +| [GetDesc](GetDesc.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/Destructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/Destructor.md new file mode 100644 index 00000000..ca38279f --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/Destructor.md @@ -0,0 +1,29 @@ +# D3D12PipelineLayout::~D3D12PipelineLayout() + +销毁对象并释放相关资源。 + +```cpp +~D3D12PipelineLayout() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineLayout.h`,当前页面用于固定 `D3D12PipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineLayout object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineLayout.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetConstantBufferRootParameterIndex.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetConstantBufferRootParameterIndex.md new file mode 100644 index 00000000..5d4bd942 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetConstantBufferRootParameterIndex.md @@ -0,0 +1,45 @@ +# D3D12PipelineLayout::GetConstantBufferRootParameterIndex + +获取相关状态或对象。 + +该方法在 `XCEngine/RHI/D3D12/D3D12PipelineLayout.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +uint32_t GetConstantBufferRootParameterIndex(uint32_t binding) const; +``` + +**参数:** +- `binding` - 参数语义详见头文件声明。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +uint32_t GetConstantBufferRootParameterIndex(uint32_t setIndex, uint32_t binding) const; +``` + +**参数:** +- `setIndex` - 参数语义详见头文件声明。 +- `binding` - 参数语义详见头文件声明。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineLayout object; + // 根据上下文补齐参数后调用 D3D12PipelineLayout::GetConstantBufferRootParameterIndex(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineLayout.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetDesc.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetDesc.md new file mode 100644 index 00000000..7d31f7e3 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetDesc.md @@ -0,0 +1,30 @@ +# D3D12PipelineLayout::GetDesc + +获取相关状态或对象。 + +```cpp +const RHIPipelineLayoutDesc& GetDesc() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineLayout.h`,当前页面用于固定 `D3D12PipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const RHIPipelineLayoutDesc&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineLayout object; + // 根据上下文补齐参数后调用 D3D12PipelineLayout::GetDesc(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineLayout.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetNativeHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetNativeHandle.md new file mode 100644 index 00000000..4035d8f5 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetNativeHandle.md @@ -0,0 +1,30 @@ +# D3D12PipelineLayout::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineLayout.h`,当前页面用于固定 `D3D12PipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineLayout object; + // 根据上下文补齐参数后调用 D3D12PipelineLayout::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineLayout.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetRootSignature.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetRootSignature.md new file mode 100644 index 00000000..8cb67c73 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetRootSignature.md @@ -0,0 +1,30 @@ +# D3D12PipelineLayout::GetRootSignature + +获取相关状态或对象。 + +```cpp +ID3D12RootSignature* GetRootSignature() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineLayout.h`,当前页面用于固定 `D3D12PipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ID3D12RootSignature*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineLayout object; + // 根据上下文补齐参数后调用 D3D12PipelineLayout::GetRootSignature(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineLayout.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetSamplerTableRootParameterIndex.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetSamplerTableRootParameterIndex.md new file mode 100644 index 00000000..ed82f100 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetSamplerTableRootParameterIndex.md @@ -0,0 +1,43 @@ +# D3D12PipelineLayout::GetSamplerTableRootParameterIndex + +获取相关状态或对象。 + +该方法在 `XCEngine/RHI/D3D12/D3D12PipelineLayout.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +uint32_t GetSamplerTableRootParameterIndex() const; +``` + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +uint32_t GetSamplerTableRootParameterIndex(uint32_t setIndex) const; +``` + +**参数:** +- `setIndex` - 参数语义详见头文件声明。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineLayout object; + // 根据上下文补齐参数后调用 D3D12PipelineLayout::GetSamplerTableRootParameterIndex(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineLayout.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetSetLayoutCount.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetSetLayoutCount.md new file mode 100644 index 00000000..dade979d --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetSetLayoutCount.md @@ -0,0 +1,30 @@ +# D3D12PipelineLayout::GetSetLayoutCount + +获取相关状态或对象。 + +```cpp +uint32_t GetSetLayoutCount() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineLayout.h`,当前页面用于固定 `D3D12PipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineLayout object; + // 根据上下文补齐参数后调用 D3D12PipelineLayout::GetSetLayoutCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineLayout.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetShaderResourceTableRootParameterIndex.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetShaderResourceTableRootParameterIndex.md new file mode 100644 index 00000000..a0862567 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetShaderResourceTableRootParameterIndex.md @@ -0,0 +1,43 @@ +# D3D12PipelineLayout::GetShaderResourceTableRootParameterIndex + +获取相关状态或对象。 + +该方法在 `XCEngine/RHI/D3D12/D3D12PipelineLayout.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +uint32_t GetShaderResourceTableRootParameterIndex() const; +``` + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +uint32_t GetShaderResourceTableRootParameterIndex(uint32_t setIndex) const; +``` + +**参数:** +- `setIndex` - 参数语义详见头文件声明。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineLayout object; + // 根据上下文补齐参数后调用 D3D12PipelineLayout::GetShaderResourceTableRootParameterIndex(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineLayout.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetUnorderedAccessTableRootParameterIndex.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetUnorderedAccessTableRootParameterIndex.md new file mode 100644 index 00000000..d03d2eaa --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/GetUnorderedAccessTableRootParameterIndex.md @@ -0,0 +1,43 @@ +# D3D12PipelineLayout::GetUnorderedAccessTableRootParameterIndex + +获取相关状态或对象。 + +该方法在 `XCEngine/RHI/D3D12/D3D12PipelineLayout.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +uint32_t GetUnorderedAccessTableRootParameterIndex() const; +``` + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +uint32_t GetUnorderedAccessTableRootParameterIndex(uint32_t setIndex) const; +``` + +**参数:** +- `setIndex` - 参数语义详见头文件声明。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineLayout object; + // 根据上下文补齐参数后调用 D3D12PipelineLayout::GetUnorderedAccessTableRootParameterIndex(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineLayout.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/HasConstantBufferBinding.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/HasConstantBufferBinding.md new file mode 100644 index 00000000..8d3815fc --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/HasConstantBufferBinding.md @@ -0,0 +1,45 @@ +# D3D12PipelineLayout::HasConstantBufferBinding + +判断是否具备指定状态或能力。 + +该方法在 `XCEngine/RHI/D3D12/D3D12PipelineLayout.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool HasConstantBufferBinding(uint32_t binding) const; +``` + +**参数:** +- `binding` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +bool HasConstantBufferBinding(uint32_t setIndex, uint32_t binding) const; +``` + +**参数:** +- `setIndex` - 参数语义详见头文件声明。 +- `binding` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineLayout object; + // 根据上下文补齐参数后调用 D3D12PipelineLayout::HasConstantBufferBinding(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineLayout.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/HasSamplerTable.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/HasSamplerTable.md new file mode 100644 index 00000000..e655084e --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/HasSamplerTable.md @@ -0,0 +1,43 @@ +# D3D12PipelineLayout::HasSamplerTable + +判断是否具备指定状态或能力。 + +该方法在 `XCEngine/RHI/D3D12/D3D12PipelineLayout.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool HasSamplerTable() const; +``` + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +bool HasSamplerTable(uint32_t setIndex) const; +``` + +**参数:** +- `setIndex` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineLayout object; + // 根据上下文补齐参数后调用 D3D12PipelineLayout::HasSamplerTable(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineLayout.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/HasShaderResourceTable.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/HasShaderResourceTable.md new file mode 100644 index 00000000..4e98b1a8 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/HasShaderResourceTable.md @@ -0,0 +1,43 @@ +# D3D12PipelineLayout::HasShaderResourceTable + +判断是否具备指定状态或能力。 + +该方法在 `XCEngine/RHI/D3D12/D3D12PipelineLayout.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool HasShaderResourceTable() const; +``` + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +bool HasShaderResourceTable(uint32_t setIndex) const; +``` + +**参数:** +- `setIndex` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineLayout object; + // 根据上下文补齐参数后调用 D3D12PipelineLayout::HasShaderResourceTable(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineLayout.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/HasUnorderedAccessTable.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/HasUnorderedAccessTable.md new file mode 100644 index 00000000..1cc2f070 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/HasUnorderedAccessTable.md @@ -0,0 +1,43 @@ +# D3D12PipelineLayout::HasUnorderedAccessTable + +判断是否具备指定状态或能力。 + +该方法在 `XCEngine/RHI/D3D12/D3D12PipelineLayout.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool HasUnorderedAccessTable() const; +``` + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +bool HasUnorderedAccessTable(uint32_t setIndex) const; +``` + +**参数:** +- `setIndex` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineLayout object; + // 根据上下文补齐参数后调用 D3D12PipelineLayout::HasUnorderedAccessTable(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineLayout.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/Initialize.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/Initialize.md new file mode 100644 index 00000000..8041e809 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/Initialize.md @@ -0,0 +1,31 @@ +# D3D12PipelineLayout::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(const RHIPipelineLayoutDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineLayout.h`,当前页面用于固定 `D3D12PipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineLayout object; + // 根据上下文补齐参数后调用 D3D12PipelineLayout::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineLayout.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/InitializeWithDevice.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/InitializeWithDevice.md new file mode 100644 index 00000000..25438617 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/InitializeWithDevice.md @@ -0,0 +1,32 @@ +# D3D12PipelineLayout::InitializeWithDevice + +初始化内部状态。 + +```cpp +bool InitializeWithDevice(D3D12Device* device, const RHIPipelineLayoutDesc& desc); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineLayout.h`,当前页面用于固定 `D3D12PipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineLayout object; + // 根据上下文补齐参数后调用 D3D12PipelineLayout::InitializeWithDevice(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineLayout.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/Shutdown.md new file mode 100644 index 00000000..89abd3f8 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12PipelineLayout::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineLayout.h`,当前页面用于固定 `D3D12PipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineLayout object; + // 根据上下文补齐参数后调用 D3D12PipelineLayout::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineLayout.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/UsesSetLayouts.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/UsesSetLayouts.md new file mode 100644 index 00000000..3f324862 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineLayout/UsesSetLayouts.md @@ -0,0 +1,30 @@ +# D3D12PipelineLayout::UsesSetLayouts + +公开方法,详见头文件声明。 + +```cpp +bool UsesSetLayouts() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineLayout.h`,当前页面用于固定 `D3D12PipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineLayout object; + // 根据上下文补齐参数后调用 D3D12PipelineLayout::UsesSetLayouts(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineLayout.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Bind.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Bind.md new file mode 100644 index 00000000..168f00f4 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Bind.md @@ -0,0 +1,30 @@ +# D3D12PipelineState::Bind + +公开方法,详见头文件声明。 + +```cpp +void Bind() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::Bind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Constructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Constructor.md new file mode 100644 index 00000000..22ab843e --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Constructor.md @@ -0,0 +1,41 @@ +# D3D12PipelineState::D3D12PipelineState() + +构造对象。 + +该方法在 `XCEngine/RHI/D3D12/D3D12PipelineState.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +D3D12PipelineState() = default; +``` + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +D3D12PipelineState(ID3D12Device* device); +``` + +**参数:** +- `device` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/CreateInputElement.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/CreateInputElement.md new file mode 100644 index 00000000..57290b13 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/CreateInputElement.md @@ -0,0 +1,51 @@ +# D3D12PipelineState::CreateInputElement + +创建新对象或资源。 + +该方法在 `XCEngine/RHI/D3D12/D3D12PipelineState.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +static D3D12_INPUT_ELEMENT_DESC CreateInputElement( const char* semanticName, uint32_t semanticIndex, Format format, uint32_t inputSlot, uint32_t alignedByteOffset); +``` + +**参数:** +- `semanticName` - 参数语义详见头文件声明。 +- `semanticIndex` - 参数语义详见头文件声明。 +- `format` - 参数语义详见头文件声明。 +- `inputSlot` - 参数语义详见头文件声明。 +- `alignedByteOffset` - 参数语义详见头文件声明。 + +**返回:** `D3D12_INPUT_ELEMENT_DESC` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +static D3D12_INPUT_ELEMENT_DESC CreateInputElement( const char* semanticName, uint32_t semanticIndex, Format format, uint32_t inputSlot); +``` + +**参数:** +- `semanticName` - 参数语义详见头文件声明。 +- `semanticIndex` - 参数语义详见头文件声明。 +- `format` - 参数语义详见头文件声明。 +- `inputSlot` - 参数语义详见头文件声明。 + +**返回:** `D3D12_INPUT_ELEMENT_DESC` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::CreateInputElement(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/D3D12PipelineState.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/D3D12PipelineState.md new file mode 100644 index 00000000..e126f1c7 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/D3D12PipelineState.md @@ -0,0 +1,61 @@ +# D3D12PipelineState + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12PipelineState.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12PipelineState` public API。 + +## 概述 + +`D3D12PipelineState.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `D3D12PipelineState` | `class` | 继承自 `RHIPipelineState` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [D3D12PipelineState()](Constructor.md) | 构造对象。 | +| [~D3D12PipelineState()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [SetInputLayout](SetInputLayout.md) | 设置相关状态或配置。 | +| [SetRasterizerState](SetRasterizerState.md) | 设置相关状态或配置。 | +| [SetBlendState](SetBlendState.md) | 设置相关状态或配置。 | +| [SetDepthStencilState](SetDepthStencilState.md) | 设置相关状态或配置。 | +| [SetTopology](SetTopology.md) | 设置相关状态或配置。 | +| [SetRenderTargetFormats](SetRenderTargetFormats.md) | 设置相关状态或配置。 | +| [SetSampleCount](SetSampleCount.md) | 设置相关状态或配置。 | +| [SetComputeShader](SetComputeShader.md) | 设置相关状态或配置。 | +| [SetRootSignature](SetRootSignature.md) | 设置相关状态或配置。 | +| [GetRasterizerState](GetRasterizerState.md) | 获取相关状态或对象。 | +| [GetBlendState](GetBlendState.md) | 获取相关状态或对象。 | +| [GetDepthStencilState](GetDepthStencilState.md) | 获取相关状态或对象。 | +| [GetInputLayout](GetInputLayout.md) | 获取相关状态或对象。 | +| [GetHash](GetHash.md) | 获取相关状态或对象。 | +| [GetComputeShader](GetComputeShader.md) | 获取相关状态或对象。 | +| [HasComputeShader](HasComputeShader.md) | 判断是否具备指定状态或能力。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [EnsureValid](EnsureValid.md) | 公开方法,详见头文件声明。 | +| [SetShaderBytecodes](SetShaderBytecodes.md) | 设置相关状态或配置。 | +| [SetComputeShaderBytecodes](SetComputeShaderBytecodes.md) | 设置相关状态或配置。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetPipelineState](GetPipelineState.md) | 获取相关状态或对象。 | +| [GetComputePipelineState](GetComputePipelineState.md) | 获取相关状态或对象。 | +| [GetRootSignature](GetRootSignature.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [Bind](Bind.md) | 公开方法,详见头文件声明。 | +| [Unbind](Unbind.md) | 公开方法,详见头文件声明。 | +| [CreateInputElement](CreateInputElement.md) | 创建新对象或资源。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Destructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Destructor.md new file mode 100644 index 00000000..85f57547 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Destructor.md @@ -0,0 +1,29 @@ +# D3D12PipelineState::~D3D12PipelineState() + +销毁对象并释放相关资源。 + +```cpp +~D3D12PipelineState() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/EnsureValid.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/EnsureValid.md new file mode 100644 index 00000000..ddf11ff3 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/EnsureValid.md @@ -0,0 +1,30 @@ +# D3D12PipelineState::EnsureValid + +公开方法,详见头文件声明。 + +```cpp +void EnsureValid() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::EnsureValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetBlendState.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetBlendState.md new file mode 100644 index 00000000..39514e99 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetBlendState.md @@ -0,0 +1,30 @@ +# D3D12PipelineState::GetBlendState + +获取相关状态或对象。 + +```cpp +const BlendDesc& GetBlendState() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const BlendDesc&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::GetBlendState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetComputePipelineState.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetComputePipelineState.md new file mode 100644 index 00000000..bdf634fe --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetComputePipelineState.md @@ -0,0 +1,30 @@ +# D3D12PipelineState::GetComputePipelineState + +获取相关状态或对象。 + +```cpp +ID3D12PipelineState* GetComputePipelineState() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ID3D12PipelineState*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::GetComputePipelineState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetComputeShader.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetComputeShader.md new file mode 100644 index 00000000..973afe37 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetComputeShader.md @@ -0,0 +1,30 @@ +# D3D12PipelineState::GetComputeShader + +获取相关状态或对象。 + +```cpp +RHIShader* GetComputeShader() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `RHIShader*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::GetComputeShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetDepthStencilState.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetDepthStencilState.md new file mode 100644 index 00000000..f4f4c021 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetDepthStencilState.md @@ -0,0 +1,30 @@ +# D3D12PipelineState::GetDepthStencilState + +获取相关状态或对象。 + +```cpp +const DepthStencilStateDesc& GetDepthStencilState() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const DepthStencilStateDesc&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::GetDepthStencilState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetHash.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetHash.md new file mode 100644 index 00000000..8930b54d --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetHash.md @@ -0,0 +1,30 @@ +# D3D12PipelineState::GetHash + +获取相关状态或对象。 + +```cpp +PipelineStateHash GetHash() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `PipelineStateHash` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::GetHash(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetInputLayout.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetInputLayout.md new file mode 100644 index 00000000..928e5eb3 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetInputLayout.md @@ -0,0 +1,30 @@ +# D3D12PipelineState::GetInputLayout + +获取相关状态或对象。 + +```cpp +const InputLayoutDesc& GetInputLayout() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const InputLayoutDesc&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::GetInputLayout(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetNativeHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetNativeHandle.md new file mode 100644 index 00000000..a9288d4d --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetNativeHandle.md @@ -0,0 +1,30 @@ +# D3D12PipelineState::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetPipelineState.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetPipelineState.md new file mode 100644 index 00000000..f69b1205 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetPipelineState.md @@ -0,0 +1,30 @@ +# D3D12PipelineState::GetPipelineState + +获取相关状态或对象。 + +```cpp +ID3D12PipelineState* GetPipelineState() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ID3D12PipelineState*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::GetPipelineState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetRasterizerState.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetRasterizerState.md new file mode 100644 index 00000000..8c37f372 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetRasterizerState.md @@ -0,0 +1,30 @@ +# D3D12PipelineState::GetRasterizerState + +获取相关状态或对象。 + +```cpp +const RasterizerDesc& GetRasterizerState() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const RasterizerDesc&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::GetRasterizerState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetRootSignature.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetRootSignature.md new file mode 100644 index 00000000..d50de5a7 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetRootSignature.md @@ -0,0 +1,30 @@ +# D3D12PipelineState::GetRootSignature + +获取相关状态或对象。 + +```cpp +ID3D12RootSignature* GetRootSignature() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ID3D12RootSignature*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::GetRootSignature(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetType.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetType.md new file mode 100644 index 00000000..00bb2e33 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/GetType.md @@ -0,0 +1,30 @@ +# D3D12PipelineState::GetType + +获取相关状态或对象。 + +```cpp +PipelineType GetType() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `PipelineType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/HasComputeShader.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/HasComputeShader.md new file mode 100644 index 00000000..4fcf58f7 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/HasComputeShader.md @@ -0,0 +1,30 @@ +# D3D12PipelineState::HasComputeShader + +判断是否具备指定状态或能力。 + +```cpp +bool HasComputeShader() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::HasComputeShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Initialize.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Initialize.md new file mode 100644 index 00000000..3429d1b7 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Initialize.md @@ -0,0 +1,32 @@ +# D3D12PipelineState::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(ID3D12Device* device, const D3D12_GRAPHICS_PIPELINE_STATE_DESC& desc); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/IsValid.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/IsValid.md new file mode 100644 index 00000000..432897a5 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/IsValid.md @@ -0,0 +1,30 @@ +# D3D12PipelineState::IsValid + +查询当前状态。 + +```cpp +bool IsValid() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetBlendState.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetBlendState.md new file mode 100644 index 00000000..cb272cf3 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetBlendState.md @@ -0,0 +1,31 @@ +# D3D12PipelineState::SetBlendState + +设置相关状态或配置。 + +```cpp +void SetBlendState(const BlendDesc& state) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::SetBlendState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetComputeShader.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetComputeShader.md new file mode 100644 index 00000000..4726892c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetComputeShader.md @@ -0,0 +1,31 @@ +# D3D12PipelineState::SetComputeShader + +设置相关状态或配置。 + +```cpp +void SetComputeShader(RHIShader* shader) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `shader` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::SetComputeShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetComputeShaderBytecodes.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetComputeShaderBytecodes.md new file mode 100644 index 00000000..3ca0f5a7 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetComputeShaderBytecodes.md @@ -0,0 +1,31 @@ +# D3D12PipelineState::SetComputeShaderBytecodes + +设置相关状态或配置。 + +```cpp +void SetComputeShaderBytecodes(const D3D12_SHADER_BYTECODE& cs); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `cs` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::SetComputeShaderBytecodes(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetDepthStencilState.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetDepthStencilState.md new file mode 100644 index 00000000..f6c2cccf --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetDepthStencilState.md @@ -0,0 +1,31 @@ +# D3D12PipelineState::SetDepthStencilState + +设置相关状态或配置。 + +```cpp +void SetDepthStencilState(const DepthStencilStateDesc& state) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::SetDepthStencilState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetInputLayout.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetInputLayout.md new file mode 100644 index 00000000..bfd9e605 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetInputLayout.md @@ -0,0 +1,31 @@ +# D3D12PipelineState::SetInputLayout + +设置相关状态或配置。 + +```cpp +void SetInputLayout(const InputLayoutDesc& layout) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `layout` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::SetInputLayout(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetRasterizerState.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetRasterizerState.md new file mode 100644 index 00000000..d7cf4437 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetRasterizerState.md @@ -0,0 +1,31 @@ +# D3D12PipelineState::SetRasterizerState + +设置相关状态或配置。 + +```cpp +void SetRasterizerState(const RasterizerDesc& state) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::SetRasterizerState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetRenderTargetFormats.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetRenderTargetFormats.md new file mode 100644 index 00000000..6a4a7587 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetRenderTargetFormats.md @@ -0,0 +1,33 @@ +# D3D12PipelineState::SetRenderTargetFormats + +设置相关状态或配置。 + +```cpp +void SetRenderTargetFormats(uint32_t count, const uint32_t* formats, uint32_t depthFormat) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `formats` - 参数语义详见头文件声明。 +- `depthFormat` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::SetRenderTargetFormats(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetRootSignature.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetRootSignature.md new file mode 100644 index 00000000..f6861c50 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetRootSignature.md @@ -0,0 +1,31 @@ +# D3D12PipelineState::SetRootSignature + +设置相关状态或配置。 + +```cpp +void SetRootSignature(ID3D12RootSignature* rootSignature); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `rootSignature` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::SetRootSignature(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetSampleCount.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetSampleCount.md new file mode 100644 index 00000000..7c5fd872 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetSampleCount.md @@ -0,0 +1,31 @@ +# D3D12PipelineState::SetSampleCount + +设置相关状态或配置。 + +```cpp +void SetSampleCount(uint32_t count) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::SetSampleCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetShaderBytecodes.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetShaderBytecodes.md new file mode 100644 index 00000000..c2caf2bf --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetShaderBytecodes.md @@ -0,0 +1,30 @@ +# D3D12PipelineState::SetShaderBytecodes + +设置相关状态或配置。 + +```cpp +void SetShaderBytecodes(const D3D12_SHADER_BYTECODE& vs, const D3D12_SHADER_BYTECODE& ps, const D3D12_SHADER_BYTECODE& gs =; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::SetShaderBytecodes(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetTopology.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetTopology.md new file mode 100644 index 00000000..1f5a7d1a --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/SetTopology.md @@ -0,0 +1,31 @@ +# D3D12PipelineState::SetTopology + +设置相关状态或配置。 + +```cpp +void SetTopology(uint32_t topologyType) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `topologyType` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::SetTopology(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Shutdown.md new file mode 100644 index 00000000..9f4435c0 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12PipelineState::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Unbind.md b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Unbind.md new file mode 100644 index 00000000..b2013746 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12PipelineState/Unbind.md @@ -0,0 +1,30 @@ +# D3D12PipelineState::Unbind + +公开方法,详见头文件声明。 + +```cpp +void Unbind() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12PipelineState.h`,当前页面用于固定 `D3D12PipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12PipelineState object; + // 根据上下文补齐参数后调用 D3D12PipelineState::Unbind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12PipelineState.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/Constructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/Constructor.md new file mode 100644 index 00000000..75be8c32 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/Constructor.md @@ -0,0 +1,28 @@ +# D3D12QueryHeap::D3D12QueryHeap() + +构造对象。 + +```cpp +D3D12QueryHeap(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12QueryHeap.h`,当前页面用于固定 `D3D12QueryHeap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12QueryHeap object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12QueryHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/D3D12QueryHeap.md b/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/D3D12QueryHeap.md new file mode 100644 index 00000000..426df0e8 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/D3D12QueryHeap.md @@ -0,0 +1,37 @@ +# D3D12QueryHeap + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12QueryHeap.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12QueryHeap` public API。 + +## 概述 + +`D3D12QueryHeap.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `D3D12QueryHeap` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [D3D12QueryHeap()](Constructor.md) | 构造对象。 | +| [~D3D12QueryHeap()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetQueryHeap](GetQueryHeap.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [GetCount](GetCount.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/Destructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/Destructor.md new file mode 100644 index 00000000..36e812e8 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/Destructor.md @@ -0,0 +1,29 @@ +# D3D12QueryHeap::~D3D12QueryHeap() + +销毁对象并释放相关资源。 + +```cpp +~D3D12QueryHeap(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12QueryHeap.h`,当前页面用于固定 `D3D12QueryHeap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12QueryHeap object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](D3D12QueryHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/GetCount.md b/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/GetCount.md new file mode 100644 index 00000000..459fa03d --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/GetCount.md @@ -0,0 +1,30 @@ +# D3D12QueryHeap::GetCount + +获取相关状态或对象。 + +```cpp +uint32_t GetCount() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12QueryHeap.h`,当前页面用于固定 `D3D12QueryHeap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12QueryHeap object; + // 根据上下文补齐参数后调用 D3D12QueryHeap::GetCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12QueryHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/GetNativeHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/GetNativeHandle.md new file mode 100644 index 00000000..68bd7f16 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/GetNativeHandle.md @@ -0,0 +1,30 @@ +# D3D12QueryHeap::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12QueryHeap.h`,当前页面用于固定 `D3D12QueryHeap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12QueryHeap object; + // 根据上下文补齐参数后调用 D3D12QueryHeap::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12QueryHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/GetQueryHeap.md b/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/GetQueryHeap.md new file mode 100644 index 00000000..82ad1fe8 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/GetQueryHeap.md @@ -0,0 +1,30 @@ +# D3D12QueryHeap::GetQueryHeap + +获取相关状态或对象。 + +```cpp +ID3D12QueryHeap* GetQueryHeap() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12QueryHeap.h`,当前页面用于固定 `D3D12QueryHeap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ID3D12QueryHeap*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12QueryHeap object; + // 根据上下文补齐参数后调用 D3D12QueryHeap::GetQueryHeap(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12QueryHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/GetType.md b/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/GetType.md new file mode 100644 index 00000000..6d3dccf4 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/GetType.md @@ -0,0 +1,30 @@ +# D3D12QueryHeap::GetType + +获取相关状态或对象。 + +```cpp +QueryType GetType() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12QueryHeap.h`,当前页面用于固定 `D3D12QueryHeap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `QueryType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12QueryHeap object; + // 根据上下文补齐参数后调用 D3D12QueryHeap::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12QueryHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/Initialize.md b/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/Initialize.md new file mode 100644 index 00000000..10b8256a --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/Initialize.md @@ -0,0 +1,33 @@ +# D3D12QueryHeap::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(ID3D12Device* device, QueryType type, uint32_t count); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12QueryHeap.h`,当前页面用于固定 `D3D12QueryHeap` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `type` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12QueryHeap object; + // 根据上下文补齐参数后调用 D3D12QueryHeap::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12QueryHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/Shutdown.md new file mode 100644 index 00000000..c6c6d7b7 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12QueryHeap/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12QueryHeap::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12QueryHeap.h`,当前页面用于固定 `D3D12QueryHeap` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12QueryHeap object; + // 根据上下文补齐参数后调用 D3D12QueryHeap::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12QueryHeap.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/Constructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/Constructor.md new file mode 100644 index 00000000..f4fc35de --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/Constructor.md @@ -0,0 +1,28 @@ +# D3D12RenderPass::D3D12RenderPass() + +构造对象。 + +```cpp +D3D12RenderPass(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RenderPass.h`,当前页面用于固定 `D3D12RenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RenderPass object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RenderPass.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/D3D12RenderPass.md b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/D3D12RenderPass.md new file mode 100644 index 00000000..24676baa --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/D3D12RenderPass.md @@ -0,0 +1,41 @@ +# D3D12RenderPass + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12RenderPass.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12RenderPass` public API。 + +## 概述 + +`D3D12RenderPass.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `D3D12RenderPass` | `class` | 继承自 `RHIRenderPass` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [D3D12RenderPass()](Constructor.md) | 构造对象。 | +| [~D3D12RenderPass()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [GetColorAttachmentCount](GetColorAttachmentCount.md) | 获取相关状态或对象。 | +| [GetColorAttachments](GetColorAttachments.md) | 获取相关状态或对象。 | +| [GetDepthStencilAttachment](GetDepthStencilAttachment.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetBeginningAccessType](GetBeginningAccessType.md) | 获取相关状态或对象。 | +| [GetEndingAccessType](GetEndingAccessType.md) | 获取相关状态或对象。 | +| [GetDepthBeginningAccessType](GetDepthBeginningAccessType.md) | 获取相关状态或对象。 | +| [GetDepthEndingAccessType](GetDepthEndingAccessType.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/Destructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/Destructor.md new file mode 100644 index 00000000..8453c1f8 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/Destructor.md @@ -0,0 +1,29 @@ +# D3D12RenderPass::~D3D12RenderPass() + +销毁对象并释放相关资源。 + +```cpp +~D3D12RenderPass() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RenderPass.h`,当前页面用于固定 `D3D12RenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RenderPass object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](D3D12RenderPass.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetBeginningAccessType.md b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetBeginningAccessType.md new file mode 100644 index 00000000..c450c18e --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetBeginningAccessType.md @@ -0,0 +1,31 @@ +# D3D12RenderPass::GetBeginningAccessType + +获取相关状态或对象。 + +```cpp +D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE GetBeginningAccessType(uint32_t index) const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RenderPass.h`,当前页面用于固定 `D3D12RenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RenderPass object; + // 根据上下文补齐参数后调用 D3D12RenderPass::GetBeginningAccessType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RenderPass.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetColorAttachmentCount.md b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetColorAttachmentCount.md new file mode 100644 index 00000000..be9fffe5 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetColorAttachmentCount.md @@ -0,0 +1,30 @@ +# D3D12RenderPass::GetColorAttachmentCount + +获取相关状态或对象。 + +```cpp +uint32_t GetColorAttachmentCount() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RenderPass.h`,当前页面用于固定 `D3D12RenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RenderPass object; + // 根据上下文补齐参数后调用 D3D12RenderPass::GetColorAttachmentCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RenderPass.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetColorAttachments.md b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetColorAttachments.md new file mode 100644 index 00000000..8ed9f5e1 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetColorAttachments.md @@ -0,0 +1,30 @@ +# D3D12RenderPass::GetColorAttachments + +获取相关状态或对象。 + +```cpp +const AttachmentDesc* GetColorAttachments() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RenderPass.h`,当前页面用于固定 `D3D12RenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const AttachmentDesc*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RenderPass object; + // 根据上下文补齐参数后调用 D3D12RenderPass::GetColorAttachments(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RenderPass.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetDepthBeginningAccessType.md b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetDepthBeginningAccessType.md new file mode 100644 index 00000000..36a9cdfe --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetDepthBeginningAccessType.md @@ -0,0 +1,30 @@ +# D3D12RenderPass::GetDepthBeginningAccessType + +获取相关状态或对象。 + +```cpp +D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE GetDepthBeginningAccessType() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RenderPass.h`,当前页面用于固定 `D3D12RenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RenderPass object; + // 根据上下文补齐参数后调用 D3D12RenderPass::GetDepthBeginningAccessType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RenderPass.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetDepthEndingAccessType.md b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetDepthEndingAccessType.md new file mode 100644 index 00000000..4f38408c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetDepthEndingAccessType.md @@ -0,0 +1,30 @@ +# D3D12RenderPass::GetDepthEndingAccessType + +获取相关状态或对象。 + +```cpp +D3D12_RENDER_PASS_ENDING_ACCESS_TYPE GetDepthEndingAccessType() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RenderPass.h`,当前页面用于固定 `D3D12RenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `D3D12_RENDER_PASS_ENDING_ACCESS_TYPE` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RenderPass object; + // 根据上下文补齐参数后调用 D3D12RenderPass::GetDepthEndingAccessType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RenderPass.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetDepthStencilAttachment.md b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetDepthStencilAttachment.md new file mode 100644 index 00000000..0d06f9a7 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetDepthStencilAttachment.md @@ -0,0 +1,30 @@ +# D3D12RenderPass::GetDepthStencilAttachment + +获取相关状态或对象。 + +```cpp +const AttachmentDesc* GetDepthStencilAttachment() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RenderPass.h`,当前页面用于固定 `D3D12RenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const AttachmentDesc*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RenderPass object; + // 根据上下文补齐参数后调用 D3D12RenderPass::GetDepthStencilAttachment(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RenderPass.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetEndingAccessType.md b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetEndingAccessType.md new file mode 100644 index 00000000..09cb0f38 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetEndingAccessType.md @@ -0,0 +1,31 @@ +# D3D12RenderPass::GetEndingAccessType + +获取相关状态或对象。 + +```cpp +D3D12_RENDER_PASS_ENDING_ACCESS_TYPE GetEndingAccessType(uint32_t index) const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RenderPass.h`,当前页面用于固定 `D3D12RenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `D3D12_RENDER_PASS_ENDING_ACCESS_TYPE` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RenderPass object; + // 根据上下文补齐参数后调用 D3D12RenderPass::GetEndingAccessType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RenderPass.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetNativeHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetNativeHandle.md new file mode 100644 index 00000000..c560ad8a --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/GetNativeHandle.md @@ -0,0 +1,30 @@ +# D3D12RenderPass::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RenderPass.h`,当前页面用于固定 `D3D12RenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RenderPass object; + // 根据上下文补齐参数后调用 D3D12RenderPass::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RenderPass.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/Initialize.md b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/Initialize.md new file mode 100644 index 00000000..b2389cf3 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/Initialize.md @@ -0,0 +1,33 @@ +# D3D12RenderPass::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(uint32_t colorAttachmentCount, const AttachmentDesc* colorAttachments, const AttachmentDesc* depthStencilAttachment) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RenderPass.h`,当前页面用于固定 `D3D12RenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** +- `colorAttachmentCount` - 参数语义详见头文件声明。 +- `colorAttachments` - 参数语义详见头文件声明。 +- `depthStencilAttachment` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RenderPass object; + // 根据上下文补齐参数后调用 D3D12RenderPass::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RenderPass.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/Shutdown.md new file mode 100644 index 00000000..38e0bad3 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RenderPass/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12RenderPass::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RenderPass.h`,当前页面用于固定 `D3D12RenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RenderPass object; + // 根据上下文补齐参数后调用 D3D12RenderPass::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RenderPass.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/Constructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/Constructor.md new file mode 100644 index 00000000..dc48711a --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/Constructor.md @@ -0,0 +1,28 @@ +# D3D12ResourceView::D3D12ResourceView() + +构造对象。 + +```cpp +D3D12ResourceView(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/CreateDepthStencilDesc.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/CreateDepthStencilDesc.md new file mode 100644 index 00000000..fe924893 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/CreateDepthStencilDesc.md @@ -0,0 +1,32 @@ +# D3D12ResourceView::CreateDepthStencilDesc + +创建新对象或资源。 + +```cpp +static D3D12_DEPTH_STENCIL_VIEW_DESC CreateDepthStencilDesc(Format format, D3D12_DSV_DIMENSION dimension); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `format` - 参数语义详见头文件声明。 +- `dimension` - 参数语义详见头文件声明。 + +**返回:** `D3D12_DEPTH_STENCIL_VIEW_DESC` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::CreateDepthStencilDesc(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/CreateRenderTargetDesc.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/CreateRenderTargetDesc.md new file mode 100644 index 00000000..58da9582 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/CreateRenderTargetDesc.md @@ -0,0 +1,32 @@ +# D3D12ResourceView::CreateRenderTargetDesc + +创建新对象或资源。 + +```cpp +static D3D12_RENDER_TARGET_VIEW_DESC CreateRenderTargetDesc(Format format, D3D12_RTV_DIMENSION dimension); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `format` - 参数语义详见头文件声明。 +- `dimension` - 参数语义详见头文件声明。 + +**返回:** `D3D12_RENDER_TARGET_VIEW_DESC` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::CreateRenderTargetDesc(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/CreateShaderResourceDesc.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/CreateShaderResourceDesc.md new file mode 100644 index 00000000..774f089f --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/CreateShaderResourceDesc.md @@ -0,0 +1,33 @@ +# D3D12ResourceView::CreateShaderResourceDesc + +创建新对象或资源。 + +```cpp +static D3D12_SHADER_RESOURCE_VIEW_DESC CreateShaderResourceDesc(Format format, D3D12_SRV_DIMENSION dimension, uint32_t mipLevels = 0); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `format` - 参数语义详见头文件声明。 +- `dimension` - 参数语义详见头文件声明。 +- `mipLevels` - 参数语义详见头文件声明。 + +**返回:** `D3D12_SHADER_RESOURCE_VIEW_DESC` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::CreateShaderResourceDesc(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/CreateUnorderedAccessDesc.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/CreateUnorderedAccessDesc.md new file mode 100644 index 00000000..7d2042a5 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/CreateUnorderedAccessDesc.md @@ -0,0 +1,32 @@ +# D3D12ResourceView::CreateUnorderedAccessDesc + +创建新对象或资源。 + +```cpp +static D3D12_UNORDERED_ACCESS_VIEW_DESC CreateUnorderedAccessDesc(Format format, D3D12_UAV_DIMENSION dimension); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `format` - 参数语义详见头文件声明。 +- `dimension` - 参数语义详见头文件声明。 + +**返回:** `D3D12_UNORDERED_ACCESS_VIEW_DESC` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::CreateUnorderedAccessDesc(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/D3D12ResourceView.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/D3D12ResourceView.md new file mode 100644 index 00000000..35b9920b --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/D3D12ResourceView.md @@ -0,0 +1,59 @@ +# D3D12ResourceView + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12ResourceView.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12ResourceView` public API。 + +## 概述 + +`D3D12ResourceView.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `D3D12ResourceView` | `class` | 继承自 `RHIResourceView` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [D3D12ResourceView()](Constructor.md) | 构造对象。 | +| [~D3D12ResourceView()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [SetViewType](SetViewType.md) | 设置相关状态或配置。 | +| [GetViewType](GetViewType.md) | 获取相关状态或对象。 | +| [GetDimension](GetDimension.md) | 获取相关状态或对象。 | +| [GetFormat](GetFormat.md) | 获取相关状态或对象。 | +| [SetOwnedHeap](SetOwnedHeap.md) | 设置相关状态或配置。 | +| [InitializeAsRenderTarget](InitializeAsRenderTarget.md) | 初始化内部状态。 | +| [InitializeAsDepthStencil](InitializeAsDepthStencil.md) | 初始化内部状态。 | +| [InitializeAsShaderResource](InitializeAsShaderResource.md) | 初始化内部状态。 | +| [InitializeAsUnorderedAccess](InitializeAsUnorderedAccess.md) | 初始化内部状态。 | +| [InitializeAsConstantBuffer](InitializeAsConstantBuffer.md) | 初始化内部状态。 | +| [InitializeAsVertexBuffer](InitializeAsVertexBuffer.md) | 初始化内部状态。 | +| [InitializeAsIndexBuffer](InitializeAsIndexBuffer.md) | 初始化内部状态。 | +| [GetCPUHandle](GetCPUHandle.md) | 获取相关状态或对象。 | +| [GetGPUHandle](GetGPUHandle.md) | 获取相关状态或对象。 | +| [GetResource](GetResource.md) | 获取相关状态或对象。 | +| [GetHeap](GetHeap.md) | 获取相关状态或对象。 | +| [GetSlotIndex](GetSlotIndex.md) | 获取相关状态或对象。 | +| [GetBufferLocation](GetBufferLocation.md) | 获取相关状态或对象。 | +| [GetBufferSize](GetBufferSize.md) | 获取相关状态或对象。 | +| [GetBufferStride](GetBufferStride.md) | 获取相关状态或对象。 | +| [GetBufferOffset](GetBufferOffset.md) | 获取相关状态或对象。 | +| [CreateRenderTargetDesc](CreateRenderTargetDesc.md) | 创建新对象或资源。 | +| [CreateDepthStencilDesc](CreateDepthStencilDesc.md) | 创建新对象或资源。 | +| [CreateShaderResourceDesc](CreateShaderResourceDesc.md) | 创建新对象或资源。 | +| [CreateUnorderedAccessDesc](CreateUnorderedAccessDesc.md) | 创建新对象或资源。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/Destructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/Destructor.md new file mode 100644 index 00000000..28ddbe6a --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/Destructor.md @@ -0,0 +1,29 @@ +# D3D12ResourceView::~D3D12ResourceView() + +销毁对象并释放相关资源。 + +```cpp +~D3D12ResourceView() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetBufferLocation.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetBufferLocation.md new file mode 100644 index 00000000..a086f98d --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetBufferLocation.md @@ -0,0 +1,30 @@ +# D3D12ResourceView::GetBufferLocation + +获取相关状态或对象。 + +```cpp +uint64_t GetBufferLocation() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::GetBufferLocation(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetBufferOffset.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetBufferOffset.md new file mode 100644 index 00000000..0673a7a6 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetBufferOffset.md @@ -0,0 +1,30 @@ +# D3D12ResourceView::GetBufferOffset + +获取相关状态或对象。 + +```cpp +uint64_t GetBufferOffset() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::GetBufferOffset(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetBufferSize.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetBufferSize.md new file mode 100644 index 00000000..eaa848f3 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetBufferSize.md @@ -0,0 +1,30 @@ +# D3D12ResourceView::GetBufferSize + +获取相关状态或对象。 + +```cpp +uint32_t GetBufferSize() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::GetBufferSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetBufferStride.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetBufferStride.md new file mode 100644 index 00000000..6f1f5b16 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetBufferStride.md @@ -0,0 +1,30 @@ +# D3D12ResourceView::GetBufferStride + +获取相关状态或对象。 + +```cpp +uint32_t GetBufferStride() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::GetBufferStride(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetCPUHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetCPUHandle.md new file mode 100644 index 00000000..bcc849d9 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetCPUHandle.md @@ -0,0 +1,30 @@ +# D3D12ResourceView::GetCPUHandle + +获取相关状态或对象。 + +```cpp +D3D12_CPU_DESCRIPTOR_HANDLE GetCPUHandle() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `D3D12_CPU_DESCRIPTOR_HANDLE` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::GetCPUHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetDimension.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetDimension.md new file mode 100644 index 00000000..bd94e646 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetDimension.md @@ -0,0 +1,30 @@ +# D3D12ResourceView::GetDimension + +获取相关状态或对象。 + +```cpp +ResourceViewDimension GetDimension() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceViewDimension` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::GetDimension(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetFormat.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetFormat.md new file mode 100644 index 00000000..aa6b95ec --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetFormat.md @@ -0,0 +1,30 @@ +# D3D12ResourceView::GetFormat + +获取相关状态或对象。 + +```cpp +Format GetFormat() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Format` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::GetFormat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetGPUHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetGPUHandle.md new file mode 100644 index 00000000..c3c2f2e2 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetGPUHandle.md @@ -0,0 +1,30 @@ +# D3D12ResourceView::GetGPUHandle + +获取相关状态或对象。 + +```cpp +GPUDescriptorHandle GetGPUHandle() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `GPUDescriptorHandle` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::GetGPUHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetHeap.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetHeap.md new file mode 100644 index 00000000..de0dc497 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetHeap.md @@ -0,0 +1,30 @@ +# D3D12ResourceView::GetHeap + +获取相关状态或对象。 + +```cpp +D3D12DescriptorHeap* GetHeap() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `D3D12DescriptorHeap*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::GetHeap(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetNativeHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetNativeHandle.md new file mode 100644 index 00000000..b7500e99 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetNativeHandle.md @@ -0,0 +1,30 @@ +# D3D12ResourceView::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetResource.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetResource.md new file mode 100644 index 00000000..0d3d15ac --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetResource.md @@ -0,0 +1,30 @@ +# D3D12ResourceView::GetResource + +获取相关状态或对象。 + +```cpp +ID3D12Resource* GetResource() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ID3D12Resource*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::GetResource(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetSlotIndex.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetSlotIndex.md new file mode 100644 index 00000000..cdc22ce8 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetSlotIndex.md @@ -0,0 +1,30 @@ +# D3D12ResourceView::GetSlotIndex + +获取相关状态或对象。 + +```cpp +uint32_t GetSlotIndex() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::GetSlotIndex(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetViewType.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetViewType.md new file mode 100644 index 00000000..2fa3b949 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/GetViewType.md @@ -0,0 +1,30 @@ +# D3D12ResourceView::GetViewType + +获取相关状态或对象。 + +```cpp +ResourceViewType GetViewType() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceViewType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::GetViewType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsConstantBuffer.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsConstantBuffer.md new file mode 100644 index 00000000..71777b42 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsConstantBuffer.md @@ -0,0 +1,35 @@ +# D3D12ResourceView::InitializeAsConstantBuffer + +初始化内部状态。 + +```cpp +void InitializeAsConstantBuffer(ID3D12Device* device, ID3D12Resource* resource, const D3D12_CONSTANT_BUFFER_VIEW_DESC* desc, D3D12DescriptorHeap* heap, uint32_t slotIndex); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `resource` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 +- `heap` - 参数语义详见头文件声明。 +- `slotIndex` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::InitializeAsConstantBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsDepthStencil.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsDepthStencil.md new file mode 100644 index 00000000..0ffed9e1 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsDepthStencil.md @@ -0,0 +1,35 @@ +# D3D12ResourceView::InitializeAsDepthStencil + +初始化内部状态。 + +```cpp +void InitializeAsDepthStencil(ID3D12Device* device, ID3D12Resource* resource, const D3D12_DEPTH_STENCIL_VIEW_DESC* desc, D3D12DescriptorHeap* heap, uint32_t slotIndex); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `resource` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 +- `heap` - 参数语义详见头文件声明。 +- `slotIndex` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::InitializeAsDepthStencil(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsIndexBuffer.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsIndexBuffer.md new file mode 100644 index 00000000..4bf49fde --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsIndexBuffer.md @@ -0,0 +1,32 @@ +# D3D12ResourceView::InitializeAsIndexBuffer + +初始化内部状态。 + +```cpp +void InitializeAsIndexBuffer(D3D12Buffer* buffer, const ResourceViewDesc& desc); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::InitializeAsIndexBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsRenderTarget.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsRenderTarget.md new file mode 100644 index 00000000..df3352d1 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsRenderTarget.md @@ -0,0 +1,35 @@ +# D3D12ResourceView::InitializeAsRenderTarget + +初始化内部状态。 + +```cpp +void InitializeAsRenderTarget(ID3D12Device* device, ID3D12Resource* resource, const D3D12_RENDER_TARGET_VIEW_DESC* desc, D3D12DescriptorHeap* heap, uint32_t slotIndex); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `resource` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 +- `heap` - 参数语义详见头文件声明。 +- `slotIndex` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::InitializeAsRenderTarget(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsShaderResource.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsShaderResource.md new file mode 100644 index 00000000..b72aa1ad --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsShaderResource.md @@ -0,0 +1,35 @@ +# D3D12ResourceView::InitializeAsShaderResource + +初始化内部状态。 + +```cpp +void InitializeAsShaderResource(ID3D12Device* device, ID3D12Resource* resource, const D3D12_SHADER_RESOURCE_VIEW_DESC* desc, D3D12DescriptorHeap* heap, uint32_t slotIndex); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `resource` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 +- `heap` - 参数语义详见头文件声明。 +- `slotIndex` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::InitializeAsShaderResource(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsUnorderedAccess.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsUnorderedAccess.md new file mode 100644 index 00000000..45c0c643 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsUnorderedAccess.md @@ -0,0 +1,35 @@ +# D3D12ResourceView::InitializeAsUnorderedAccess + +初始化内部状态。 + +```cpp +void InitializeAsUnorderedAccess(ID3D12Device* device, ID3D12Resource* resource, const D3D12_UNORDERED_ACCESS_VIEW_DESC* desc, D3D12DescriptorHeap* heap, uint32_t slotIndex); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `resource` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 +- `heap` - 参数语义详见头文件声明。 +- `slotIndex` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::InitializeAsUnorderedAccess(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsVertexBuffer.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsVertexBuffer.md new file mode 100644 index 00000000..6b8e55f2 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/InitializeAsVertexBuffer.md @@ -0,0 +1,32 @@ +# D3D12ResourceView::InitializeAsVertexBuffer + +初始化内部状态。 + +```cpp +void InitializeAsVertexBuffer(D3D12Buffer* buffer, const ResourceViewDesc& desc); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::InitializeAsVertexBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/IsValid.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/IsValid.md new file mode 100644 index 00000000..638b60c6 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/IsValid.md @@ -0,0 +1,30 @@ +# D3D12ResourceView::IsValid + +查询当前状态。 + +```cpp +bool IsValid() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/SetOwnedHeap.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/SetOwnedHeap.md new file mode 100644 index 00000000..4d6234e4 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/SetOwnedHeap.md @@ -0,0 +1,31 @@ +# D3D12ResourceView::SetOwnedHeap + +设置相关状态或配置。 + +```cpp +void SetOwnedHeap(std::unique_ptr heap); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `heap` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::SetOwnedHeap(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/SetViewType.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/SetViewType.md new file mode 100644 index 00000000..bd691162 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/SetViewType.md @@ -0,0 +1,31 @@ +# D3D12ResourceView::SetViewType + +设置相关状态或配置。 + +```cpp +void SetViewType(ResourceViewType type); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::SetViewType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/Shutdown.md new file mode 100644 index 00000000..12f1f9d4 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12ResourceView/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12ResourceView::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12ResourceView.h`,当前页面用于固定 `D3D12ResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12ResourceView object; + // 根据上下文补齐参数后调用 D3D12ResourceView::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12ResourceView.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Constructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Constructor.md new file mode 100644 index 00000000..f218195e --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Constructor.md @@ -0,0 +1,28 @@ +# D3D12RootSignature::D3D12RootSignature() + +构造对象。 + +```cpp +D3D12RootSignature(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RootSignature.h`,当前页面用于固定 `D3D12RootSignature` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RootSignature object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RootSignature.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Create32BitConstants.md b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Create32BitConstants.md new file mode 100644 index 00000000..dbf44f87 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Create32BitConstants.md @@ -0,0 +1,34 @@ +# D3D12RootSignature::Create32BitConstants + +创建新对象或资源。 + +```cpp +static D3D12_ROOT_PARAMETER Create32BitConstants(uint32_t shaderRegister, uint32_t num32BitValues, ShaderVisibility visibility = ShaderVisibility::All, uint32_t registerSpace = 0); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RootSignature.h`,当前页面用于固定 `D3D12RootSignature` 类目录下的方法级 canonical 路径。 + +**参数:** +- `shaderRegister` - 参数语义详见头文件声明。 +- `num32BitValues` - 参数语义详见头文件声明。 +- `visibility` - 参数语义详见头文件声明。 +- `registerSpace` - 参数语义详见头文件声明。 + +**返回:** `D3D12_ROOT_PARAMETER` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RootSignature object; + // 根据上下文补齐参数后调用 D3D12RootSignature::Create32BitConstants(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RootSignature.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateCBV.md b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateCBV.md new file mode 100644 index 00000000..ce66c504 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateCBV.md @@ -0,0 +1,33 @@ +# D3D12RootSignature::CreateCBV + +创建新对象或资源。 + +```cpp +static D3D12_ROOT_PARAMETER CreateCBV(uint32_t shaderRegister, ShaderVisibility visibility = ShaderVisibility::All, uint32_t registerSpace = 0); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RootSignature.h`,当前页面用于固定 `D3D12RootSignature` 类目录下的方法级 canonical 路径。 + +**参数:** +- `shaderRegister` - 参数语义详见头文件声明。 +- `visibility` - 参数语义详见头文件声明。 +- `registerSpace` - 参数语义详见头文件声明。 + +**返回:** `D3D12_ROOT_PARAMETER` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RootSignature object; + // 根据上下文补齐参数后调用 D3D12RootSignature::CreateCBV(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RootSignature.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateDesc.md b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateDesc.md new file mode 100644 index 00000000..40af1bc9 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateDesc.md @@ -0,0 +1,35 @@ +# D3D12RootSignature::CreateDesc + +创建新对象或资源。 + +```cpp +static D3D12_ROOT_SIGNATURE_DESC CreateDesc( D3D12_ROOT_PARAMETER* parameters, uint32_t parameterCount, D3D12_STATIC_SAMPLER_DESC* samplers = nullptr, uint32_t samplerCount = 0, D3D12_ROOT_SIGNATURE_FLAGS flags = D3D12_ROOT_SIGNATURE_FLAG_ALLOW_INPUT_ASSEMBLER_INPUT_LAYOUT); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RootSignature.h`,当前页面用于固定 `D3D12RootSignature` 类目录下的方法级 canonical 路径。 + +**参数:** +- `parameters` - 参数语义详见头文件声明。 +- `parameterCount` - 参数语义详见头文件声明。 +- `samplers` - 参数语义详见头文件声明。 +- `samplerCount` - 参数语义详见头文件声明。 +- `flags` - 参数语义详见头文件声明。 + +**返回:** `D3D12_ROOT_SIGNATURE_DESC` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RootSignature object; + // 根据上下文补齐参数后调用 D3D12RootSignature::CreateDesc(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RootSignature.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateDescriptorRange.md b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateDescriptorRange.md new file mode 100644 index 00000000..2038efec --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateDescriptorRange.md @@ -0,0 +1,34 @@ +# D3D12RootSignature::CreateDescriptorRange + +创建新对象或资源。 + +```cpp +static D3D12_DESCRIPTOR_RANGE CreateDescriptorRange(D3D12_DESCRIPTOR_RANGE_TYPE type, uint32_t baseShaderRegister, uint32_t numDescriptors, uint32_t registerSpace = 0); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RootSignature.h`,当前页面用于固定 `D3D12RootSignature` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 +- `baseShaderRegister` - 参数语义详见头文件声明。 +- `numDescriptors` - 参数语义详见头文件声明。 +- `registerSpace` - 参数语义详见头文件声明。 + +**返回:** `D3D12_DESCRIPTOR_RANGE` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RootSignature object; + // 根据上下文补齐参数后调用 D3D12RootSignature::CreateDescriptorRange(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RootSignature.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateDescriptorTable.md b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateDescriptorTable.md new file mode 100644 index 00000000..5a3402cd --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateDescriptorTable.md @@ -0,0 +1,33 @@ +# D3D12RootSignature::CreateDescriptorTable + +创建新对象或资源。 + +```cpp +static D3D12_ROOT_PARAMETER CreateDescriptorTable(uint32_t numRanges, const D3D12_DESCRIPTOR_RANGE* ranges, ShaderVisibility visibility = ShaderVisibility::All); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RootSignature.h`,当前页面用于固定 `D3D12RootSignature` 类目录下的方法级 canonical 路径。 + +**参数:** +- `numRanges` - 参数语义详见头文件声明。 +- `ranges` - 参数语义详见头文件声明。 +- `visibility` - 参数语义详见头文件声明。 + +**返回:** `D3D12_ROOT_PARAMETER` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RootSignature object; + // 根据上下文补齐参数后调用 D3D12RootSignature::CreateDescriptorTable(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RootSignature.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateSRV.md b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateSRV.md new file mode 100644 index 00000000..6992f235 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateSRV.md @@ -0,0 +1,33 @@ +# D3D12RootSignature::CreateSRV + +创建新对象或资源。 + +```cpp +static D3D12_ROOT_PARAMETER CreateSRV(uint32_t shaderRegister, ShaderVisibility visibility = ShaderVisibility::All, uint32_t registerSpace = 0); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RootSignature.h`,当前页面用于固定 `D3D12RootSignature` 类目录下的方法级 canonical 路径。 + +**参数:** +- `shaderRegister` - 参数语义详见头文件声明。 +- `visibility` - 参数语义详见头文件声明。 +- `registerSpace` - 参数语义详见头文件声明。 + +**返回:** `D3D12_ROOT_PARAMETER` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RootSignature object; + // 根据上下文补齐参数后调用 D3D12RootSignature::CreateSRV(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RootSignature.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateSamplerDesc.md b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateSamplerDesc.md new file mode 100644 index 00000000..eaab7bca --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateSamplerDesc.md @@ -0,0 +1,33 @@ +# D3D12RootSignature::CreateSamplerDesc + +创建新对象或资源。 + +```cpp +static D3D12_SAMPLER_DESC CreateSamplerDesc(FilterMode filter, TextureAddressMode address, float maxLOD = D3D12_FLOAT32_MAX); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RootSignature.h`,当前页面用于固定 `D3D12RootSignature` 类目录下的方法级 canonical 路径。 + +**参数:** +- `filter` - 参数语义详见头文件声明。 +- `address` - 参数语义详见头文件声明。 +- `maxLOD` - 参数语义详见头文件声明。 + +**返回:** `D3D12_SAMPLER_DESC` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RootSignature object; + // 根据上下文补齐参数后调用 D3D12RootSignature::CreateSamplerDesc(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RootSignature.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateStaticSampler.md b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateStaticSampler.md new file mode 100644 index 00000000..b3903eca --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateStaticSampler.md @@ -0,0 +1,33 @@ +# D3D12RootSignature::CreateStaticSampler + +创建新对象或资源。 + +```cpp +static D3D12_STATIC_SAMPLER_DESC CreateStaticSampler(uint32_t shaderRegister, const D3D12_SAMPLER_DESC& desc, ShaderVisibility visibility = ShaderVisibility::Pixel); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RootSignature.h`,当前页面用于固定 `D3D12RootSignature` 类目录下的方法级 canonical 路径。 + +**参数:** +- `shaderRegister` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 +- `visibility` - 参数语义详见头文件声明。 + +**返回:** `D3D12_STATIC_SAMPLER_DESC` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RootSignature object; + // 根据上下文补齐参数后调用 D3D12RootSignature::CreateStaticSampler(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RootSignature.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateUAV.md b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateUAV.md new file mode 100644 index 00000000..02c0118a --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/CreateUAV.md @@ -0,0 +1,33 @@ +# D3D12RootSignature::CreateUAV + +创建新对象或资源。 + +```cpp +static D3D12_ROOT_PARAMETER CreateUAV(uint32_t shaderRegister, ShaderVisibility visibility = ShaderVisibility::All, uint32_t registerSpace = 0); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RootSignature.h`,当前页面用于固定 `D3D12RootSignature` 类目录下的方法级 canonical 路径。 + +**参数:** +- `shaderRegister` - 参数语义详见头文件声明。 +- `visibility` - 参数语义详见头文件声明。 +- `registerSpace` - 参数语义详见头文件声明。 + +**返回:** `D3D12_ROOT_PARAMETER` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RootSignature object; + // 根据上下文补齐参数后调用 D3D12RootSignature::CreateUAV(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RootSignature.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/D3D12RootSignature.md b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/D3D12RootSignature.md new file mode 100644 index 00000000..1e094736 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/D3D12RootSignature.md @@ -0,0 +1,45 @@ +# D3D12RootSignature + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12RootSignature.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12RootSignature` public API。 + +## 概述 + +`D3D12RootSignature.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `D3D12RootSignature` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [D3D12RootSignature()](Constructor.md) | 构造对象。 | +| [~D3D12RootSignature()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetRootSignature](GetRootSignature.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetParameterCount](GetParameterCount.md) | 获取相关状态或对象。 | +| [CreateDesc](CreateDesc.md) | 创建新对象或资源。 | +| [CreateCBV](CreateCBV.md) | 创建新对象或资源。 | +| [CreateSRV](CreateSRV.md) | 创建新对象或资源。 | +| [CreateUAV](CreateUAV.md) | 创建新对象或资源。 | +| [Create32BitConstants](Create32BitConstants.md) | 创建新对象或资源。 | +| [CreateDescriptorTable](CreateDescriptorTable.md) | 创建新对象或资源。 | +| [CreateStaticSampler](CreateStaticSampler.md) | 创建新对象或资源。 | +| [CreateSamplerDesc](CreateSamplerDesc.md) | 创建新对象或资源。 | +| [CreateDescriptorRange](CreateDescriptorRange.md) | 创建新对象或资源。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Destructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Destructor.md new file mode 100644 index 00000000..c1e1daa2 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Destructor.md @@ -0,0 +1,29 @@ +# D3D12RootSignature::~D3D12RootSignature() + +销毁对象并释放相关资源。 + +```cpp +~D3D12RootSignature(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RootSignature.h`,当前页面用于固定 `D3D12RootSignature` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RootSignature object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](D3D12RootSignature.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/GetNativeHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/GetNativeHandle.md new file mode 100644 index 00000000..64ffe654 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/GetNativeHandle.md @@ -0,0 +1,30 @@ +# D3D12RootSignature::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RootSignature.h`,当前页面用于固定 `D3D12RootSignature` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RootSignature object; + // 根据上下文补齐参数后调用 D3D12RootSignature::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RootSignature.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/GetParameterCount.md b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/GetParameterCount.md new file mode 100644 index 00000000..5943d487 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/GetParameterCount.md @@ -0,0 +1,30 @@ +# D3D12RootSignature::GetParameterCount + +获取相关状态或对象。 + +```cpp +uint32_t GetParameterCount() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RootSignature.h`,当前页面用于固定 `D3D12RootSignature` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RootSignature object; + // 根据上下文补齐参数后调用 D3D12RootSignature::GetParameterCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RootSignature.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/GetRootSignature.md b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/GetRootSignature.md new file mode 100644 index 00000000..e644e77e --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/GetRootSignature.md @@ -0,0 +1,30 @@ +# D3D12RootSignature::GetRootSignature + +获取相关状态或对象。 + +```cpp +ID3D12RootSignature* GetRootSignature() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RootSignature.h`,当前页面用于固定 `D3D12RootSignature` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ID3D12RootSignature*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RootSignature object; + // 根据上下文补齐参数后调用 D3D12RootSignature::GetRootSignature(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RootSignature.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Initialize.md b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Initialize.md new file mode 100644 index 00000000..c8962e00 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Initialize.md @@ -0,0 +1,32 @@ +# D3D12RootSignature::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(ID3D12Device* device, const D3D12_ROOT_SIGNATURE_DESC& desc); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RootSignature.h`,当前页面用于固定 `D3D12RootSignature` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RootSignature object; + // 根据上下文补齐参数后调用 D3D12RootSignature::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RootSignature.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Shutdown.md new file mode 100644 index 00000000..ccd73d4c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12RootSignature/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12RootSignature::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12RootSignature.h`,当前页面用于固定 `D3D12RootSignature` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12RootSignature object; + // 根据上下文补齐参数后调用 D3D12RootSignature::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12RootSignature.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Bind.md b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Bind.md new file mode 100644 index 00000000..94ff89bf --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Bind.md @@ -0,0 +1,31 @@ +# D3D12Sampler::Bind + +公开方法,详见头文件声明。 + +```cpp +void Bind(unsigned int unit) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Sampler.h`,当前页面用于固定 `D3D12Sampler` 类目录下的方法级 canonical 路径。 + +**参数:** +- `unit` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Sampler object; + // 根据上下文补齐参数后调用 D3D12Sampler::Bind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Sampler.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Constructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Constructor.md new file mode 100644 index 00000000..08cd974c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Constructor.md @@ -0,0 +1,28 @@ +# D3D12Sampler::D3D12Sampler() + +构造对象。 + +```cpp +D3D12Sampler(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Sampler.h`,当前页面用于固定 `D3D12Sampler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Sampler object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Sampler.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/D3D12Sampler.md b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/D3D12Sampler.md new file mode 100644 index 00000000..c0c224ec --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/D3D12Sampler.md @@ -0,0 +1,38 @@ +# D3D12Sampler + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12Sampler.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12Sampler` public API。 + +## 概述 + +`D3D12Sampler.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `D3D12Sampler` | `class` | 继承自 `RHISampler` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [D3D12Sampler()](Constructor.md) | 构造对象。 | +| [~D3D12Sampler()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetDesc](GetDesc.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetID](GetID.md) | 获取相关状态或对象。 | +| [Bind](Bind.md) | 公开方法,详见头文件声明。 | +| [Unbind](Unbind.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Destructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Destructor.md new file mode 100644 index 00000000..546ed85b --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Destructor.md @@ -0,0 +1,29 @@ +# D3D12Sampler::~D3D12Sampler() + +销毁对象并释放相关资源。 + +```cpp +~D3D12Sampler() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Sampler.h`,当前页面用于固定 `D3D12Sampler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Sampler object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](D3D12Sampler.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/GetDesc.md b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/GetDesc.md new file mode 100644 index 00000000..78bd7f0e --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/GetDesc.md @@ -0,0 +1,30 @@ +# D3D12Sampler::GetDesc + +获取相关状态或对象。 + +```cpp +const D3D12_SAMPLER_DESC& GetDesc() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Sampler.h`,当前页面用于固定 `D3D12Sampler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const D3D12_SAMPLER_DESC&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Sampler object; + // 根据上下文补齐参数后调用 D3D12Sampler::GetDesc(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Sampler.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/GetID.md b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/GetID.md new file mode 100644 index 00000000..fa0274b5 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/GetID.md @@ -0,0 +1,30 @@ +# D3D12Sampler::GetID + +获取相关状态或对象。 + +```cpp +unsigned int GetID() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Sampler.h`,当前页面用于固定 `D3D12Sampler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `unsigned int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Sampler object; + // 根据上下文补齐参数后调用 D3D12Sampler::GetID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Sampler.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/GetNativeHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/GetNativeHandle.md new file mode 100644 index 00000000..69326b43 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/GetNativeHandle.md @@ -0,0 +1,30 @@ +# D3D12Sampler::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Sampler.h`,当前页面用于固定 `D3D12Sampler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Sampler object; + // 根据上下文补齐参数后调用 D3D12Sampler::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Sampler.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Initialize.md b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Initialize.md new file mode 100644 index 00000000..0ae31ed2 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Initialize.md @@ -0,0 +1,32 @@ +# D3D12Sampler::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(ID3D12Device* device, const D3D12_SAMPLER_DESC& desc); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Sampler.h`,当前页面用于固定 `D3D12Sampler` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Sampler object; + // 根据上下文补齐参数后调用 D3D12Sampler::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Sampler.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Shutdown.md new file mode 100644 index 00000000..df1144e6 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12Sampler::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Sampler.h`,当前页面用于固定 `D3D12Sampler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Sampler object; + // 根据上下文补齐参数后调用 D3D12Sampler::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Sampler.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Unbind.md b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Unbind.md new file mode 100644 index 00000000..a60b14ca --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Sampler/Unbind.md @@ -0,0 +1,31 @@ +# D3D12Sampler::Unbind + +公开方法,详见头文件声明。 + +```cpp +void Unbind(unsigned int unit) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Sampler.h`,当前页面用于固定 `D3D12Sampler` 类目录下的方法级 canonical 路径。 + +**参数:** +- `unit` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Sampler object; + // 根据上下文补齐参数后调用 D3D12Sampler::Unbind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Sampler.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Screenshot/Capture.md b/docs/api/XCEngine/RHI/D3D12/D3D12Screenshot/Capture.md new file mode 100644 index 00000000..49882cae --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Screenshot/Capture.md @@ -0,0 +1,65 @@ +# D3D12Screenshot::Capture + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/RHI/D3D12/D3D12Screenshot.h` 中提供了 3 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool Capture(RHIDevice* device, RHISwapChain* swapChain, const char* filename) override; +``` + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `swapChain` - 参数语义详见头文件声明。 +- `filename` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +static bool Capture(ID3D12Device* device, ID3D12CommandQueue* commandQueue, ID3D12Resource* renderTarget, const char* filename, uint32_t width, uint32_t height); +``` + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `commandQueue` - 参数语义详见头文件声明。 +- `renderTarget` - 参数语义详见头文件声明。 +- `filename` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 3: 声明 + +```cpp +static bool Capture(D3D12Device& device, D3D12CommandQueue& commandQueue, D3D12Texture& texture, const char* filename); +``` + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `commandQueue` - 参数语义详见头文件声明。 +- `texture` - 参数语义详见头文件声明。 +- `filename` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Screenshot object; + // 根据上下文补齐参数后调用 D3D12Screenshot::Capture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Screenshot.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Screenshot/D3D12Screenshot.md b/docs/api/XCEngine/RHI/D3D12/D3D12Screenshot/D3D12Screenshot.md new file mode 100644 index 00000000..53fd1024 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Screenshot/D3D12Screenshot.md @@ -0,0 +1,31 @@ +# D3D12Screenshot + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12Screenshot.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12Screenshot` public API。 + +## 概述 + +`D3D12Screenshot.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `D3D12Screenshot` | `class` | 继承自 `RHIScreenshot` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Capture](Capture.md) | 公开方法,详见头文件声明。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Screenshot/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12Screenshot/Shutdown.md new file mode 100644 index 00000000..e7eaca5f --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Screenshot/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12Screenshot::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Screenshot.h`,当前页面用于固定 `D3D12Screenshot` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Screenshot object; + // 根据上下文补齐参数后调用 D3D12Screenshot::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Screenshot.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Shader/Compile.md b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/Compile.md new file mode 100644 index 00000000..3ba2a3ac --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/Compile.md @@ -0,0 +1,34 @@ +# D3D12Shader::Compile + +公开方法,详见头文件声明。 + +```cpp +bool Compile(const void* sourceData, size_t sourceSize, const char* entryPoint, const char* target) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Shader.h`,当前页面用于固定 `D3D12Shader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `sourceData` - 参数语义详见头文件声明。 +- `sourceSize` - 参数语义详见头文件声明。 +- `entryPoint` - 参数语义详见头文件声明。 +- `target` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Shader object; + // 根据上下文补齐参数后调用 D3D12Shader::Compile(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Shader.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Shader/CompileFromFile.md b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/CompileFromFile.md new file mode 100644 index 00000000..7a665998 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/CompileFromFile.md @@ -0,0 +1,33 @@ +# D3D12Shader::CompileFromFile + +公开方法,详见头文件声明。 + +```cpp +bool CompileFromFile(const wchar_t* filePath, const char* entryPoint, const char* target) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Shader.h`,当前页面用于固定 `D3D12Shader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `filePath` - 参数语义详见头文件声明。 +- `entryPoint` - 参数语义详见头文件声明。 +- `target` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Shader object; + // 根据上下文补齐参数后调用 D3D12Shader::CompileFromFile(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Shader.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Shader/Constructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/Constructor.md new file mode 100644 index 00000000..96208723 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/Constructor.md @@ -0,0 +1,28 @@ +# D3D12Shader::D3D12Shader() + +构造对象。 + +```cpp +D3D12Shader(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Shader.h`,当前页面用于固定 `D3D12Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Shader object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Shader.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Shader/D3D12Shader.md b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/D3D12Shader.md new file mode 100644 index 00000000..2911c6fe --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/D3D12Shader.md @@ -0,0 +1,43 @@ +# D3D12Shader + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12Shader.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12Shader` public API。 + +## 概述 + +`D3D12Shader.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `D3D12Shader` | `class` | 继承自 `RHIShader` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [D3D12Shader()](Constructor.md) | 构造对象。 | +| [~D3D12Shader()](Destructor.md) | 销毁对象并释放相关资源。 | +| [CompileFromFile](CompileFromFile.md) | 公开方法,详见头文件声明。 | +| [Compile](Compile.md) | 公开方法,详见头文件声明。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetD3D12Bytecode](GetD3D12Bytecode.md) | 获取相关状态或对象。 | +| [GetBytecode](GetBytecode.md) | 获取相关状态或对象。 | +| [GetBytecodeSize](GetBytecodeSize.md) | 获取相关状态或对象。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [GetInputLayout](GetInputLayout.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [GetUniformInfos](GetUniformInfos.md) | 获取相关状态或对象。 | +| [GetUniformInfo](GetUniformInfo.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Shader/Destructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/Destructor.md new file mode 100644 index 00000000..5a7e091d --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/Destructor.md @@ -0,0 +1,29 @@ +# D3D12Shader::~D3D12Shader() + +销毁对象并释放相关资源。 + +```cpp +~D3D12Shader() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Shader.h`,当前页面用于固定 `D3D12Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Shader object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](D3D12Shader.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetBytecode.md b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetBytecode.md new file mode 100644 index 00000000..985e5cbd --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetBytecode.md @@ -0,0 +1,30 @@ +# D3D12Shader::GetBytecode + +获取相关状态或对象。 + +```cpp +const void* GetBytecode() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Shader.h`,当前页面用于固定 `D3D12Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Shader object; + // 根据上下文补齐参数后调用 D3D12Shader::GetBytecode(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Shader.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetBytecodeSize.md b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetBytecodeSize.md new file mode 100644 index 00000000..f658e516 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetBytecodeSize.md @@ -0,0 +1,30 @@ +# D3D12Shader::GetBytecodeSize + +获取相关状态或对象。 + +```cpp +size_t GetBytecodeSize() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Shader.h`,当前页面用于固定 `D3D12Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Shader object; + // 根据上下文补齐参数后调用 D3D12Shader::GetBytecodeSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Shader.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetD3D12Bytecode.md b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetD3D12Bytecode.md new file mode 100644 index 00000000..9eb3d6d5 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetD3D12Bytecode.md @@ -0,0 +1,30 @@ +# D3D12Shader::GetD3D12Bytecode + +获取相关状态或对象。 + +```cpp +const D3D12_SHADER_BYTECODE GetD3D12Bytecode() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Shader.h`,当前页面用于固定 `D3D12Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const D3D12_SHADER_BYTECODE` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Shader object; + // 根据上下文补齐参数后调用 D3D12Shader::GetD3D12Bytecode(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Shader.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetInputLayout.md b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetInputLayout.md new file mode 100644 index 00000000..ee1723dc --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetInputLayout.md @@ -0,0 +1,30 @@ +# D3D12Shader::GetInputLayout + +获取相关状态或对象。 + +```cpp +const InputLayoutDesc& GetInputLayout() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Shader.h`,当前页面用于固定 `D3D12Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const InputLayoutDesc&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Shader object; + // 根据上下文补齐参数后调用 D3D12Shader::GetInputLayout(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Shader.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetNativeHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetNativeHandle.md new file mode 100644 index 00000000..f9e99017 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetNativeHandle.md @@ -0,0 +1,30 @@ +# D3D12Shader::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Shader.h`,当前页面用于固定 `D3D12Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Shader object; + // 根据上下文补齐参数后调用 D3D12Shader::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Shader.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetType.md b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetType.md new file mode 100644 index 00000000..7bc6614c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetType.md @@ -0,0 +1,30 @@ +# D3D12Shader::GetType + +获取相关状态或对象。 + +```cpp +ShaderType GetType() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Shader.h`,当前页面用于固定 `D3D12Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ShaderType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Shader object; + // 根据上下文补齐参数后调用 D3D12Shader::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Shader.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetUniformInfo.md b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetUniformInfo.md new file mode 100644 index 00000000..f034b06a --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetUniformInfo.md @@ -0,0 +1,31 @@ +# D3D12Shader::GetUniformInfo + +获取相关状态或对象。 + +```cpp +const UniformInfo* GetUniformInfo(const char* name) const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Shader.h`,当前页面用于固定 `D3D12Shader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `const UniformInfo*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Shader object; + // 根据上下文补齐参数后调用 D3D12Shader::GetUniformInfo(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Shader.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetUniformInfos.md b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetUniformInfos.md new file mode 100644 index 00000000..24c88603 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/GetUniformInfos.md @@ -0,0 +1,30 @@ +# D3D12Shader::GetUniformInfos + +获取相关状态或对象。 + +```cpp +const std::vector& GetUniformInfos() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Shader.h`,当前页面用于固定 `D3D12Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const std::vector&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Shader object; + // 根据上下文补齐参数后调用 D3D12Shader::GetUniformInfos(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Shader.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Shader/IsValid.md b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/IsValid.md new file mode 100644 index 00000000..83024481 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/IsValid.md @@ -0,0 +1,30 @@ +# D3D12Shader::IsValid + +查询当前状态。 + +```cpp +bool IsValid() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Shader.h`,当前页面用于固定 `D3D12Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Shader object; + // 根据上下文补齐参数后调用 D3D12Shader::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Shader.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Shader/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/Shutdown.md new file mode 100644 index 00000000..9b5a2730 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Shader/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12Shader::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Shader.h`,当前页面用于固定 `D3D12Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Shader object; + // 根据上下文补齐参数后调用 D3D12Shader::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Shader.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Constructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Constructor.md new file mode 100644 index 00000000..114f5b3d --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Constructor.md @@ -0,0 +1,28 @@ +# D3D12SwapChain::D3D12SwapChain() + +构造对象。 + +```cpp +D3D12SwapChain(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12SwapChain.h`,当前页面用于固定 `D3D12SwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12SwapChain object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12SwapChain.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/D3D12SwapChain.md b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/D3D12SwapChain.md new file mode 100644 index 00000000..6dd5702b --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/D3D12SwapChain.md @@ -0,0 +1,40 @@ +# D3D12SwapChain + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12SwapChain.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12SwapChain` public API。 + +## 概述 + +`D3D12SwapChain.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `D3D12SwapChain` | `class` | 继承自 `RHISwapChain` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [D3D12SwapChain()](Constructor.md) | 构造对象。 | +| [~D3D12SwapChain()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetCurrentBackBufferIndex](GetCurrentBackBufferIndex.md) | 获取相关状态或对象。 | +| [GetCurrentBackBuffer](GetCurrentBackBuffer.md) | 获取相关状态或对象。 | +| [GetBackBuffer](GetBackBuffer.md) | 获取相关状态或对象。 | +| [GetNativeCommandQueue](GetNativeCommandQueue.md) | 获取相关状态或对象。 | +| [Present](Present.md) | 公开方法,详见头文件声明。 | +| [Resize](Resize.md) | 公开方法,详见头文件声明。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Destructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Destructor.md new file mode 100644 index 00000000..0bd1d04a --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Destructor.md @@ -0,0 +1,29 @@ +# D3D12SwapChain::~D3D12SwapChain() + +销毁对象并释放相关资源。 + +```cpp +~D3D12SwapChain() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12SwapChain.h`,当前页面用于固定 `D3D12SwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12SwapChain object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](D3D12SwapChain.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetBackBuffer.md b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetBackBuffer.md new file mode 100644 index 00000000..40d2d8f4 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetBackBuffer.md @@ -0,0 +1,44 @@ +# D3D12SwapChain::GetBackBuffer + +获取相关状态或对象。 + +该方法在 `XCEngine/RHI/D3D12/D3D12SwapChain.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +D3D12Texture& GetBackBuffer(uint32_t index); +``` + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `D3D12Texture&` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +const D3D12Texture& GetBackBuffer(uint32_t index) const; +``` + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `const D3D12Texture&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12SwapChain object; + // 根据上下文补齐参数后调用 D3D12SwapChain::GetBackBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12SwapChain.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetCurrentBackBuffer.md b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetCurrentBackBuffer.md new file mode 100644 index 00000000..4090ba33 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetCurrentBackBuffer.md @@ -0,0 +1,30 @@ +# D3D12SwapChain::GetCurrentBackBuffer + +获取相关状态或对象。 + +```cpp +RHITexture* GetCurrentBackBuffer() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12SwapChain.h`,当前页面用于固定 `D3D12SwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `RHITexture*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12SwapChain object; + // 根据上下文补齐参数后调用 D3D12SwapChain::GetCurrentBackBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12SwapChain.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetCurrentBackBufferIndex.md b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetCurrentBackBufferIndex.md new file mode 100644 index 00000000..23143f4f --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetCurrentBackBufferIndex.md @@ -0,0 +1,30 @@ +# D3D12SwapChain::GetCurrentBackBufferIndex + +获取相关状态或对象。 + +```cpp +uint32_t GetCurrentBackBufferIndex() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12SwapChain.h`,当前页面用于固定 `D3D12SwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12SwapChain object; + // 根据上下文补齐参数后调用 D3D12SwapChain::GetCurrentBackBufferIndex(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12SwapChain.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetNativeCommandQueue.md b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetNativeCommandQueue.md new file mode 100644 index 00000000..0ea5e0ea --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetNativeCommandQueue.md @@ -0,0 +1,30 @@ +# D3D12SwapChain::GetNativeCommandQueue + +获取相关状态或对象。 + +```cpp +ID3D12CommandQueue* GetNativeCommandQueue() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12SwapChain.h`,当前页面用于固定 `D3D12SwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ID3D12CommandQueue*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12SwapChain object; + // 根据上下文补齐参数后调用 D3D12SwapChain::GetNativeCommandQueue(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12SwapChain.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetNativeHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetNativeHandle.md new file mode 100644 index 00000000..c1be9dfb --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/GetNativeHandle.md @@ -0,0 +1,30 @@ +# D3D12SwapChain::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12SwapChain.h`,当前页面用于固定 `D3D12SwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12SwapChain object; + // 根据上下文补齐参数后调用 D3D12SwapChain::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12SwapChain.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Initialize.md b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Initialize.md new file mode 100644 index 00000000..49c7be38 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Initialize.md @@ -0,0 +1,51 @@ +# D3D12SwapChain::Initialize + +初始化内部状态。 + +该方法在 `XCEngine/RHI/D3D12/D3D12SwapChain.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool Initialize(IDXGIFactory4* factory, ID3D12CommandQueue* commandQueue, HWND windowHandle, uint32_t width, uint32_t height, uint32_t bufferCount = 2); +``` + +**参数:** +- `factory` - 参数语义详见头文件声明。 +- `commandQueue` - 参数语义详见头文件声明。 +- `windowHandle` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 +- `bufferCount` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +bool Initialize(IDXGISwapChain* swapChain, uint32_t width, uint32_t height); +``` + +**参数:** +- `swapChain` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12SwapChain object; + // 根据上下文补齐参数后调用 D3D12SwapChain::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12SwapChain.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Present.md b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Present.md new file mode 100644 index 00000000..82971e13 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Present.md @@ -0,0 +1,32 @@ +# D3D12SwapChain::Present + +公开方法,详见头文件声明。 + +```cpp +void Present(uint32_t syncInterval = 1, uint32_t flags = 0) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12SwapChain.h`,当前页面用于固定 `D3D12SwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** +- `syncInterval` - 参数语义详见头文件声明。 +- `flags` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12SwapChain object; + // 根据上下文补齐参数后调用 D3D12SwapChain::Present(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12SwapChain.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Resize.md b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Resize.md new file mode 100644 index 00000000..741ebfa4 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Resize.md @@ -0,0 +1,32 @@ +# D3D12SwapChain::Resize + +公开方法,详见头文件声明。 + +```cpp +void Resize(uint32_t width, uint32_t height) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12SwapChain.h`,当前页面用于固定 `D3D12SwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12SwapChain object; + // 根据上下文补齐参数后调用 D3D12SwapChain::Resize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12SwapChain.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Shutdown.md new file mode 100644 index 00000000..e962dd7c --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12SwapChain/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12SwapChain::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12SwapChain.h`,当前页面用于固定 `D3D12SwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12SwapChain object; + // 根据上下文补齐参数后调用 D3D12SwapChain::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12SwapChain.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/Constructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/Constructor.md new file mode 100644 index 00000000..f5a25f44 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/Constructor.md @@ -0,0 +1,28 @@ +# D3D12Texture::D3D12Texture() + +构造对象。 + +```cpp +D3D12Texture(); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/D3D12Texture.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/D3D12Texture.md new file mode 100644 index 00000000..559edf38 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/D3D12Texture.md @@ -0,0 +1,55 @@ +# D3D12Texture + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/D3D12/D3D12Texture.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12Texture` public API。 + +## 概述 + +`D3D12Texture.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `D3D12Texture` | `class` | 继承自 `RHITexture` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [D3D12Texture()](Constructor.md) | 构造对象。 | +| [~D3D12Texture()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [InitializeFromExisting](InitializeFromExisting.md) | 初始化内部状态。 | +| [InitializeFromData](InitializeFromData.md) | 初始化内部状态。 | +| [InitializeDepthStencil](InitializeDepthStencil.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetResource](GetResource.md) | 获取相关状态或对象。 | +| [GetDesc](GetDesc.md) | 获取相关状态或对象。 | +| [GetWidth](GetWidth.md) | 获取相关状态或对象。 | +| [GetHeight](GetHeight.md) | 获取相关状态或对象。 | +| [GetDepth](GetDepth.md) | 获取相关状态或对象。 | +| [GetMipLevels](GetMipLevels.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetState](GetState.md) | 获取相关状态或对象。 | +| [SetState](SetState.md) | 设置相关状态或配置。 | +| [GetGPUAddress](GetGPUAddress.md) | 获取相关状态或对象。 | +| [GetSize](GetSize.md) | 获取相关状态或对象。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [SetName](SetName.md) | 设置相关状态或配置。 | +| [GetArraySize](GetArraySize.md) | 获取相关状态或对象。 | +| [GetFormat](GetFormat.md) | 获取相关状态或对象。 | +| [GetTextureType](GetTextureType.md) | 获取相关状态或对象。 | +| [SetFormat](SetFormat.md) | 设置相关状态或配置。 | +| [SetTextureType](SetTextureType.md) | 设置相关状态或配置。 | +| [OwnsResource](OwnsResource.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/Destructor.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/Destructor.md new file mode 100644 index 00000000..390e2d00 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/Destructor.md @@ -0,0 +1,29 @@ +# D3D12Texture::~D3D12Texture() + +销毁对象并释放相关资源。 + +```cpp +~D3D12Texture() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetArraySize.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetArraySize.md new file mode 100644 index 00000000..d1edc73f --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetArraySize.md @@ -0,0 +1,30 @@ +# D3D12Texture::GetArraySize + +获取相关状态或对象。 + +```cpp +uint32_t GetArraySize() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::GetArraySize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetDepth.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetDepth.md new file mode 100644 index 00000000..f6114f20 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetDepth.md @@ -0,0 +1,30 @@ +# D3D12Texture::GetDepth + +获取相关状态或对象。 + +```cpp +uint32_t GetDepth() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::GetDepth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetDesc.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetDesc.md new file mode 100644 index 00000000..7e88b62b --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetDesc.md @@ -0,0 +1,30 @@ +# D3D12Texture::GetDesc + +获取相关状态或对象。 + +```cpp +D3D12_RESOURCE_DESC GetDesc() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `D3D12_RESOURCE_DESC` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::GetDesc(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetFormat.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetFormat.md new file mode 100644 index 00000000..5584925e --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetFormat.md @@ -0,0 +1,30 @@ +# D3D12Texture::GetFormat + +获取相关状态或对象。 + +```cpp +Format GetFormat() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Format` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::GetFormat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetGPUAddress.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetGPUAddress.md new file mode 100644 index 00000000..77b07c8d --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetGPUAddress.md @@ -0,0 +1,30 @@ +# D3D12Texture::GetGPUAddress + +获取相关状态或对象。 + +```cpp +uint64_t GetGPUAddress() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::GetGPUAddress(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetHeight.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetHeight.md new file mode 100644 index 00000000..b14baece --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetHeight.md @@ -0,0 +1,30 @@ +# D3D12Texture::GetHeight + +获取相关状态或对象。 + +```cpp +uint32_t GetHeight() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::GetHeight(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetMipLevels.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetMipLevels.md new file mode 100644 index 00000000..0f365d5f --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetMipLevels.md @@ -0,0 +1,30 @@ +# D3D12Texture::GetMipLevels + +获取相关状态或对象。 + +```cpp +uint32_t GetMipLevels() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::GetMipLevels(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetName.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetName.md new file mode 100644 index 00000000..166a69e3 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetName.md @@ -0,0 +1,30 @@ +# D3D12Texture::GetName + +获取相关状态或对象。 + +```cpp +const std::string& GetName() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const std::string&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetNativeHandle.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetNativeHandle.md new file mode 100644 index 00000000..ed7c2fe1 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetNativeHandle.md @@ -0,0 +1,30 @@ +# D3D12Texture::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetResource.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetResource.md new file mode 100644 index 00000000..164e8fea --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetResource.md @@ -0,0 +1,30 @@ +# D3D12Texture::GetResource + +获取相关状态或对象。 + +```cpp +ID3D12Resource* GetResource() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ID3D12Resource*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::GetResource(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetSize.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetSize.md new file mode 100644 index 00000000..df74b0b0 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetSize.md @@ -0,0 +1,30 @@ +# D3D12Texture::GetSize + +获取相关状态或对象。 + +```cpp +size_t GetSize() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::GetSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetState.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetState.md new file mode 100644 index 00000000..4be980c3 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetState.md @@ -0,0 +1,30 @@ +# D3D12Texture::GetState + +获取相关状态或对象。 + +```cpp +ResourceStates GetState() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceStates` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::GetState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetTextureType.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetTextureType.md new file mode 100644 index 00000000..7bd80f14 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetTextureType.md @@ -0,0 +1,30 @@ +# D3D12Texture::GetTextureType + +获取相关状态或对象。 + +```cpp +TextureType GetTextureType() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `TextureType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::GetTextureType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetWidth.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetWidth.md new file mode 100644 index 00000000..2476356a --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/GetWidth.md @@ -0,0 +1,30 @@ +# D3D12Texture::GetWidth + +获取相关状态或对象。 + +```cpp +uint32_t GetWidth() const override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::GetWidth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/Initialize.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/Initialize.md new file mode 100644 index 00000000..4ecffa5f --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/Initialize.md @@ -0,0 +1,33 @@ +# D3D12Texture::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(ID3D12Device* device, const D3D12_RESOURCE_DESC& desc, D3D12_RESOURCE_STATES initialState = D3D12_RESOURCE_STATE_COMMON); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 +- `initialState` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/InitializeDepthStencil.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/InitializeDepthStencil.md new file mode 100644 index 00000000..12f3c003 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/InitializeDepthStencil.md @@ -0,0 +1,34 @@ +# D3D12Texture::InitializeDepthStencil + +初始化内部状态。 + +```cpp +bool InitializeDepthStencil(ID3D12Device* device, uint32_t width, uint32_t height, DXGI_FORMAT format = DXGI_FORMAT_D24_UNORM_S8_UINT); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 +- `format` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::InitializeDepthStencil(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/InitializeFromData.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/InitializeFromData.md new file mode 100644 index 00000000..476043f8 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/InitializeFromData.md @@ -0,0 +1,38 @@ +# D3D12Texture::InitializeFromData + +初始化内部状态。 + +```cpp +bool InitializeFromData(ID3D12Device* device, ID3D12GraphicsCommandList* commandList, const void* pixelData, uint32_t width, uint32_t height, DXGI_FORMAT format, uint32_t rowPitch = 0, ComPtr* uploadBuffer = nullptr); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `commandList` - 参数语义详见头文件声明。 +- `pixelData` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 +- `format` - 参数语义详见头文件声明。 +- `rowPitch` - 参数语义详见头文件声明。 +- `uploadBuffer` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::InitializeFromData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/InitializeFromExisting.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/InitializeFromExisting.md new file mode 100644 index 00000000..d58fd8c1 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/InitializeFromExisting.md @@ -0,0 +1,32 @@ +# D3D12Texture::InitializeFromExisting + +初始化内部状态。 + +```cpp +bool InitializeFromExisting(ID3D12Resource* resource, bool ownsResource = false); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `resource` - 参数语义详见头文件声明。 +- `ownsResource` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::InitializeFromExisting(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/OwnsResource.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/OwnsResource.md new file mode 100644 index 00000000..63faa268 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/OwnsResource.md @@ -0,0 +1,30 @@ +# D3D12Texture::OwnsResource + +公开方法,详见头文件声明。 + +```cpp +bool OwnsResource() const; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::OwnsResource(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/SetFormat.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/SetFormat.md new file mode 100644 index 00000000..f7436b28 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/SetFormat.md @@ -0,0 +1,31 @@ +# D3D12Texture::SetFormat + +设置相关状态或配置。 + +```cpp +void SetFormat(Format format); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `format` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::SetFormat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/SetName.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/SetName.md new file mode 100644 index 00000000..f61de6d2 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/SetName.md @@ -0,0 +1,31 @@ +# D3D12Texture::SetName + +设置相关状态或配置。 + +```cpp +void SetName(const std::string& name) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::SetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/SetState.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/SetState.md new file mode 100644 index 00000000..1043ad25 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/SetState.md @@ -0,0 +1,31 @@ +# D3D12Texture::SetState + +设置相关状态或配置。 + +```cpp +void SetState(ResourceStates state) override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::SetState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/SetTextureType.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/SetTextureType.md new file mode 100644 index 00000000..df5736bf --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/SetTextureType.md @@ -0,0 +1,31 @@ +# D3D12Texture::SetTextureType + +设置相关状态或配置。 + +```cpp +void SetTextureType(TextureType type); +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::SetTextureType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Texture/Shutdown.md b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/Shutdown.md new file mode 100644 index 00000000..92285f56 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Texture/Shutdown.md @@ -0,0 +1,30 @@ +# D3D12Texture::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/D3D12/D3D12Texture.h`,当前页面用于固定 `D3D12Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::D3D12Texture object; + // 根据上下文补齐参数后调用 D3D12Texture::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](D3D12Texture.md) +- [返回模块目录](../D3D12.md) diff --git a/docs/api/XCEngine/RHI/D3D12/D3D12Types/D3D12Types.md b/docs/api/XCEngine/RHI/D3D12/D3D12Types/D3D12Types.md new file mode 100644 index 00000000..35b5ca59 --- /dev/null +++ b/docs/api/XCEngine/RHI/D3D12/D3D12Types/D3D12Types.md @@ -0,0 +1,18 @@ +# D3D12Types + +**命名空间**: `XCEngine` + +**类型**: `header` + +**头文件**: `XCEngine/RHI/D3D12/D3D12Types.h` + +**描述**: 定义 `XCEngine/RHI/D3D12` 子目录中的 `D3D12Types` public API。 + +## 概述 + +`D3D12Types.h` 是 `XCEngine/RHI/D3D12` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 相关文档 + +- [当前目录](../D3D12.md) - 返回 `D3D12` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGL.md b/docs/api/XCEngine/RHI/OpenGL/OpenGL.md new file mode 100644 index 00000000..ea6bc86c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGL.md @@ -0,0 +1,42 @@ +# OpenGL + +**命名空间**: `XCEngine::RHI::OpenGL` + +**类型**: `submodule` + +**描述**: OpenGL 后端 public headers。 + +## 概览 + +该目录与 `XCEngine/RHI/OpenGL` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 头文件 + +- [OpenGLBuffer](OpenGLBuffer/OpenGLBuffer.md) - `OpenGLBuffer.h` +- [OpenGLCommandList](OpenGLCommandList/OpenGLCommandList.md) - `OpenGLCommandList.h` +- [OpenGLCommandQueue](OpenGLCommandQueue/OpenGLCommandQueue.md) - `OpenGLCommandQueue.h` +- [OpenGLDepthStencilView](OpenGLDepthStencilView/OpenGLDepthStencilView.md) - `OpenGLDepthStencilView.h` +- [OpenGLDescriptorPool](OpenGLDescriptorPool/OpenGLDescriptorPool.md) - `OpenGLDescriptorPool.h` +- [OpenGLDescriptorSet](OpenGLDescriptorSet/OpenGLDescriptorSet.md) - `OpenGLDescriptorSet.h` +- [OpenGLDevice](OpenGLDevice/OpenGLDevice.md) - `OpenGLDevice.h` +- [OpenGLEnums](OpenGLEnums/OpenGLEnums.md) - `OpenGLEnums.h` +- [OpenGLFence](OpenGLFence/OpenGLFence.md) - `OpenGLFence.h` +- [OpenGLFramebuffer](OpenGLFramebuffer/OpenGLFramebuffer.md) - `OpenGLFramebuffer.h` +- [OpenGLPipelineLayout](OpenGLPipelineLayout/OpenGLPipelineLayout.md) - `OpenGLPipelineLayout.h` +- [OpenGLPipelineState](OpenGLPipelineState/OpenGLPipelineState.md) - `OpenGLPipelineState.h` +- [OpenGLRenderPass](OpenGLRenderPass/OpenGLRenderPass.md) - `OpenGLRenderPass.h` +- [OpenGLRenderTargetView](OpenGLRenderTargetView/OpenGLRenderTargetView.md) - `OpenGLRenderTargetView.h` +- [OpenGLResourceView](OpenGLResourceView/OpenGLResourceView.md) - `OpenGLResourceView.h` +- [OpenGLSampler](OpenGLSampler/OpenGLSampler.md) - `OpenGLSampler.h` +- [OpenGLScreenshot](OpenGLScreenshot/OpenGLScreenshot.md) - `OpenGLScreenshot.h` +- [OpenGLShader](OpenGLShader/OpenGLShader.md) - `OpenGLShader.h` +- [OpenGLSwapChain](OpenGLSwapChain/OpenGLSwapChain.md) - `OpenGLSwapChain.h` +- [OpenGLTexture](OpenGLTexture/OpenGLTexture.md) - `OpenGLTexture.h` +- [OpenGLTextureUnitAllocator](OpenGLTextureUnitAllocator/OpenGLTextureUnitAllocator.md) - `OpenGLTextureUnitAllocator.h` +- [OpenGLUniformBufferManager](OpenGLUniformBufferManager/OpenGLUniformBufferManager.md) - `OpenGLUniformBufferManager.h` +- [OpenGLVertexArray](OpenGLVertexArray/OpenGLVertexArray.md) - `OpenGLVertexArray.h` + +## 相关文档 + +- [上级目录](../RHI.md) +- [API 总索引](../../../main.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Bind.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Bind.md new file mode 100644 index 00000000..96716bf5 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Bind.md @@ -0,0 +1,30 @@ +# OpenGLBuffer::Bind + +公开方法,详见头文件声明。 + +```cpp +void Bind() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::Bind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/BindBase.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/BindBase.md new file mode 100644 index 00000000..8db9cceb --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/BindBase.md @@ -0,0 +1,32 @@ +# OpenGLBuffer::BindBase + +公开方法,详见头文件声明。 + +```cpp +void BindBase(unsigned int target, unsigned int index) const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `target` - 参数语义详见头文件声明。 +- `index` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::BindBase(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Constructor.md new file mode 100644 index 00000000..83759032 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLBuffer::OpenGLBuffer() + +构造对象。 + +```cpp +OpenGLBuffer(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Destructor.md new file mode 100644 index 00000000..3a80e338 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLBuffer::~OpenGLBuffer() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLBuffer() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetBufferType.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetBufferType.md new file mode 100644 index 00000000..5cff0658 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetBufferType.md @@ -0,0 +1,30 @@ +# OpenGLBuffer::GetBufferType + +获取相关状态或对象。 + +```cpp +BufferType GetBufferType() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `BufferType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::GetBufferType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetID.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetID.md new file mode 100644 index 00000000..6ac571f8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetID.md @@ -0,0 +1,30 @@ +# OpenGLBuffer::GetID + +获取相关状态或对象。 + +```cpp +unsigned int GetID() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `unsigned int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::GetID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetName.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetName.md new file mode 100644 index 00000000..63525097 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetName.md @@ -0,0 +1,30 @@ +# OpenGLBuffer::GetName + +获取相关状态或对象。 + +```cpp +const std::string& GetName() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const std::string&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetNativeHandle.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetNativeHandle.md new file mode 100644 index 00000000..c016dd9d --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetNativeHandle.md @@ -0,0 +1,30 @@ +# OpenGLBuffer::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetSize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetSize.md new file mode 100644 index 00000000..efe53848 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetSize.md @@ -0,0 +1,30 @@ +# OpenGLBuffer::GetSize + +获取相关状态或对象。 + +```cpp +uint64_t GetSize() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::GetSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetState.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetState.md new file mode 100644 index 00000000..70a5ab5c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetState.md @@ -0,0 +1,30 @@ +# OpenGLBuffer::GetState + +获取相关状态或对象。 + +```cpp +ResourceStates GetState() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceStates` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::GetState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetStride.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetStride.md new file mode 100644 index 00000000..05c4df2a --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetStride.md @@ -0,0 +1,30 @@ +# OpenGLBuffer::GetStride + +获取相关状态或对象。 + +```cpp +uint32_t GetStride() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::GetStride(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetType.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetType.md new file mode 100644 index 00000000..97331e07 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/GetType.md @@ -0,0 +1,30 @@ +# OpenGLBuffer::GetType + +获取相关状态或对象。 + +```cpp +OpenGLBufferType GetType() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `OpenGLBufferType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Initialize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Initialize.md new file mode 100644 index 00000000..74831cce --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Initialize.md @@ -0,0 +1,34 @@ +# OpenGLBuffer::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(OpenGLBufferType type, size_t size, const void* data = nullptr, bool dynamic = false); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 +- `size` - 参数语义详见头文件声明。 +- `data` - 参数语义详见头文件声明。 +- `dynamic` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/InitializeIndexBuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/InitializeIndexBuffer.md new file mode 100644 index 00000000..2b9dcd3f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/InitializeIndexBuffer.md @@ -0,0 +1,32 @@ +# OpenGLBuffer::InitializeIndexBuffer + +初始化内部状态。 + +```cpp +bool InitializeIndexBuffer(const void* data, size_t size); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `data` - 参数语义详见头文件声明。 +- `size` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::InitializeIndexBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/InitializeVertexBuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/InitializeVertexBuffer.md new file mode 100644 index 00000000..f3fb7c81 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/InitializeVertexBuffer.md @@ -0,0 +1,32 @@ +# OpenGLBuffer::InitializeVertexBuffer + +初始化内部状态。 + +```cpp +bool InitializeVertexBuffer(const void* data, size_t size); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `data` - 参数语义详见头文件声明。 +- `size` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::InitializeVertexBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/IsDynamic.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/IsDynamic.md new file mode 100644 index 00000000..2cf69617 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/IsDynamic.md @@ -0,0 +1,30 @@ +# OpenGLBuffer::IsDynamic + +查询当前状态。 + +```cpp +bool IsDynamic() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::IsDynamic(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Map.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Map.md new file mode 100644 index 00000000..2018ca58 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Map.md @@ -0,0 +1,30 @@ +# OpenGLBuffer::Map + +公开方法,详见头文件声明。 + +```cpp +void* Map() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::Map(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/OpenGLBuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/OpenGLBuffer.md new file mode 100644 index 00000000..6dec49f5 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/OpenGLBuffer.md @@ -0,0 +1,55 @@ +# OpenGLBuffer + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLBuffer.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLBuffer` public API。 + +## 概述 + +`OpenGLBuffer.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `OpenGLBufferType` | `enum class` | 头文件中的公开声明。 | +| `OpenGLBuffer` | `class` | 继承自 `RHIBuffer` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLBuffer()](Constructor.md) | 构造对象。 | +| [~OpenGLBuffer()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [InitializeVertexBuffer](InitializeVertexBuffer.md) | 初始化内部状态。 | +| [InitializeIndexBuffer](InitializeIndexBuffer.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Bind](Bind.md) | 公开方法,详见头文件声明。 | +| [Unbind](Unbind.md) | 公开方法,详见头文件声明。 | +| [BindBase](BindBase.md) | 公开方法,详见头文件声明。 | +| [Map](Map.md) | 公开方法,详见头文件声明。 | +| [Unmap](Unmap.md) | 公开方法,详见头文件声明。 | +| [SetData](SetData.md) | 设置相关状态或配置。 | +| [GetID](GetID.md) | 获取相关状态或对象。 | +| [GetSize](GetSize.md) | 获取相关状态或对象。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [IsDynamic](IsDynamic.md) | 查询当前状态。 | +| [GetBufferType](GetBufferType.md) | 获取相关状态或对象。 | +| [SetBufferType](SetBufferType.md) | 设置相关状态或配置。 | +| [GetStride](GetStride.md) | 获取相关状态或对象。 | +| [SetStride](SetStride.md) | 设置相关状态或配置。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetState](GetState.md) | 获取相关状态或对象。 | +| [SetState](SetState.md) | 设置相关状态或配置。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [SetName](SetName.md) | 设置相关状态或配置。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetBufferType.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetBufferType.md new file mode 100644 index 00000000..138c9b43 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetBufferType.md @@ -0,0 +1,31 @@ +# OpenGLBuffer::SetBufferType + +设置相关状态或配置。 + +```cpp +void SetBufferType(BufferType type) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::SetBufferType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetData.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetData.md new file mode 100644 index 00000000..67a12d96 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetData.md @@ -0,0 +1,33 @@ +# OpenGLBuffer::SetData + +设置相关状态或配置。 + +```cpp +void SetData(const void* data, size_t size, size_t offset = 0) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `data` - 参数语义详见头文件声明。 +- `size` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::SetData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetName.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetName.md new file mode 100644 index 00000000..a2c7d266 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetName.md @@ -0,0 +1,31 @@ +# OpenGLBuffer::SetName + +设置相关状态或配置。 + +```cpp +void SetName(const std::string& name) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::SetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetState.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetState.md new file mode 100644 index 00000000..ae3b02bc --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetState.md @@ -0,0 +1,31 @@ +# OpenGLBuffer::SetState + +设置相关状态或配置。 + +```cpp +void SetState(ResourceStates state) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::SetState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetStride.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetStride.md new file mode 100644 index 00000000..9c9fa977 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/SetStride.md @@ -0,0 +1,31 @@ +# OpenGLBuffer::SetStride + +设置相关状态或配置。 + +```cpp +void SetStride(uint32_t stride) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `stride` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::SetStride(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Shutdown.md new file mode 100644 index 00000000..aa15dbb5 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLBuffer::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Unbind.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Unbind.md new file mode 100644 index 00000000..cec90ee3 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Unbind.md @@ -0,0 +1,30 @@ +# OpenGLBuffer::Unbind + +公开方法,详见头文件声明。 + +```cpp +void Unbind() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::Unbind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Unmap.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Unmap.md new file mode 100644 index 00000000..be6b2ed4 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLBuffer/Unmap.md @@ -0,0 +1,30 @@ +# OpenGLBuffer::Unmap + +公开方法,详见头文件声明。 + +```cpp +void Unmap() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLBuffer.h`,当前页面用于固定 `OpenGLBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLBuffer object; + // 根据上下文补齐参数后调用 OpenGLBuffer::Unmap(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLBuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BeginQuery.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BeginQuery.md new file mode 100644 index 00000000..4be2c1e2 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BeginQuery.md @@ -0,0 +1,32 @@ +# OpenGLCommandList::BeginQuery + +公开方法,详见头文件声明。 + +```cpp +void BeginQuery(unsigned int target, unsigned int id); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `target` - 参数语义详见头文件声明。 +- `id` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::BeginQuery(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BeginRenderPass.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BeginRenderPass.md new file mode 100644 index 00000000..95456b99 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BeginRenderPass.md @@ -0,0 +1,35 @@ +# OpenGLCommandList::BeginRenderPass + +公开方法,详见头文件声明。 + +```cpp +void BeginRenderPass(class RHIRenderPass* renderPass, class RHIFramebuffer* framebuffer, const Rect& renderArea, uint32_t clearValueCount, const ClearValue* clearValues) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `renderPass` - 参数语义详见头文件声明。 +- `framebuffer` - 参数语义详见头文件声明。 +- `renderArea` - 参数语义详见头文件声明。 +- `clearValueCount` - 参数语义详见头文件声明。 +- `clearValues` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::BeginRenderPass(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindBufferBase.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindBufferBase.md new file mode 100644 index 00000000..1151d75a --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindBufferBase.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::BindBufferBase + +公开方法,详见头文件声明。 + +```cpp +void BindBufferBase(unsigned int target, unsigned int index, unsigned int buffer); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `target` - 参数语义详见头文件声明。 +- `index` - 参数语义详见头文件声明。 +- `buffer` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::BindBufferBase(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindBufferRange.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindBufferRange.md new file mode 100644 index 00000000..04182f40 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindBufferRange.md @@ -0,0 +1,35 @@ +# OpenGLCommandList::BindBufferRange + +公开方法,详见头文件声明。 + +```cpp +void BindBufferRange(unsigned int target, unsigned int index, unsigned int buffer, size_t offset, size_t size); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `target` - 参数语义详见头文件声明。 +- `index` - 参数语义详见头文件声明。 +- `buffer` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 +- `size` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::BindBufferRange(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindFragDataLocation.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindFragDataLocation.md new file mode 100644 index 00000000..afa7899b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindFragDataLocation.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::BindFragDataLocation + +公开方法,详见头文件声明。 + +```cpp +void BindFragDataLocation(unsigned int program, unsigned int colorNumber, const char* name); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `program` - 参数语义详见头文件声明。 +- `colorNumber` - 参数语义详见头文件声明。 +- `name` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::BindFragDataLocation(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindFragDataLocationIndexed.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindFragDataLocationIndexed.md new file mode 100644 index 00000000..2e292d77 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindFragDataLocationIndexed.md @@ -0,0 +1,34 @@ +# OpenGLCommandList::BindFragDataLocationIndexed + +公开方法,详见头文件声明。 + +```cpp +void BindFragDataLocationIndexed(unsigned int program, unsigned int colorNumber, unsigned int index, const char* name); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `program` - 参数语义详见头文件声明。 +- `colorNumber` - 参数语义详见头文件声明。 +- `index` - 参数语义详见头文件声明。 +- `name` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::BindFragDataLocationIndexed(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindImageTexture.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindImageTexture.md new file mode 100644 index 00000000..63de9532 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindImageTexture.md @@ -0,0 +1,37 @@ +# OpenGLCommandList::BindImageTexture + +公开方法,详见头文件声明。 + +```cpp +void BindImageTexture(unsigned int unit, unsigned int texture, int level, bool layered, int layer, unsigned int access, unsigned int format); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `unit` - 参数语义详见头文件声明。 +- `texture` - 参数语义详见头文件声明。 +- `level` - 参数语义详见头文件声明。 +- `layered` - 参数语义详见头文件声明。 +- `layer` - 参数语义详见头文件声明。 +- `access` - 参数语义详见头文件声明。 +- `format` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::BindImageTexture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindSampler.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindSampler.md new file mode 100644 index 00000000..19b6fb98 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindSampler.md @@ -0,0 +1,32 @@ +# OpenGLCommandList::BindSampler + +公开方法,详见头文件声明。 + +```cpp +void BindSampler(unsigned int unit, unsigned int sampler); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `unit` - 参数语义详见头文件声明。 +- `sampler` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::BindSampler(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindSamplers.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindSamplers.md new file mode 100644 index 00000000..9917fe4e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindSamplers.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::BindSamplers + +公开方法,详见头文件声明。 + +```cpp +void BindSamplers(unsigned int first, unsigned int count, const unsigned int* samplers); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `first` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `samplers` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::BindSamplers(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindTexture.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindTexture.md new file mode 100644 index 00000000..7298f765 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindTexture.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::BindTexture + +公开方法,详见头文件声明。 + +```cpp +void BindTexture(unsigned int target, unsigned int unit, unsigned int texture); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `target` - 参数语义详见头文件声明。 +- `unit` - 参数语义详见头文件声明。 +- `texture` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::BindTexture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindTextures.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindTextures.md new file mode 100644 index 00000000..3ac80247 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindTextures.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::BindTextures + +公开方法,详见头文件声明。 + +```cpp +void BindTextures(unsigned int first, unsigned int count, const unsigned int* textures); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `first` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `textures` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::BindTextures(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindVertexArray.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindVertexArray.md new file mode 100644 index 00000000..75daffb5 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BindVertexArray.md @@ -0,0 +1,46 @@ +# OpenGLCommandList::BindVertexArray + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLCommandList.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void BindVertexArray(unsigned int vao); +``` + +**参数:** +- `vao` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void BindVertexArray(unsigned int vao, unsigned int indexBuffer, unsigned int indexType); +``` + +**参数:** +- `vao` - 参数语义详见头文件声明。 +- `indexBuffer` - 参数语义详见头文件声明。 +- `indexType` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::BindVertexArray(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BlitFramebuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BlitFramebuffer.md new file mode 100644 index 00000000..a8099704 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/BlitFramebuffer.md @@ -0,0 +1,40 @@ +# OpenGLCommandList::BlitFramebuffer + +公开方法,详见头文件声明。 + +```cpp +void BlitFramebuffer(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, unsigned int mask, unsigned int filter); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `srcX0` - 参数语义详见头文件声明。 +- `srcY0` - 参数语义详见头文件声明。 +- `srcX1` - 参数语义详见头文件声明。 +- `srcY1` - 参数语义详见头文件声明。 +- `dstX0` - 参数语义详见头文件声明。 +- `dstY0` - 参数语义详见头文件声明。 +- `dstX1` - 参数语义详见头文件声明。 +- `dstY1` - 参数语义详见头文件声明。 +- `mask` - 参数语义详见头文件声明。 +- `filter` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::BlitFramebuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Clear.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Clear.md new file mode 100644 index 00000000..6faa7886 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Clear.md @@ -0,0 +1,35 @@ +# OpenGLCommandList::Clear + +清空内部数据。 + +```cpp +void Clear(float r, float g, float b, float a, uint32_t buffers) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `r` - 参数语义详见头文件声明。 +- `g` - 参数语义详见头文件声明。 +- `b` - 参数语义详见头文件声明。 +- `a` - 参数语义详见头文件声明。 +- `buffers` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::Clear(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearColor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearColor.md new file mode 100644 index 00000000..d03b6deb --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearColor.md @@ -0,0 +1,34 @@ +# OpenGLCommandList::ClearColor + +清空内部数据。 + +```cpp +void ClearColor(float r, float g, float b, float a); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `r` - 参数语义详见头文件声明。 +- `g` - 参数语义详见头文件声明。 +- `b` - 参数语义详见头文件声明。 +- `a` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::ClearColor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearDepth.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearDepth.md new file mode 100644 index 00000000..b8c749cb --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearDepth.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::ClearDepth + +清空内部数据。 + +```cpp +void ClearDepth(float depth); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `depth` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::ClearDepth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearDepthStencil.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearDepthStencil.md new file mode 100644 index 00000000..ff2b4cbd --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearDepthStencil.md @@ -0,0 +1,47 @@ +# OpenGLCommandList::ClearDepthStencil + +清空内部数据。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLCommandList.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void ClearDepthStencil(float depth, int stencil); +``` + +**参数:** +- `depth` - 参数语义详见头文件声明。 +- `stencil` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void ClearDepthStencil(RHIResourceView* depthStencil, float depth, uint8_t stencil) override; +``` + +**参数:** +- `depthStencil` - 参数语义详见头文件声明。 +- `depth` - 参数语义详见头文件声明。 +- `stencil` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::ClearDepthStencil(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearRenderTarget.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearRenderTarget.md new file mode 100644 index 00000000..d960736f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearRenderTarget.md @@ -0,0 +1,32 @@ +# OpenGLCommandList::ClearRenderTarget + +清空内部数据。 + +```cpp +void ClearRenderTarget(RHIResourceView* renderTarget, const float color[4]) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `renderTarget` - 参数语义详见头文件声明。 +- `param` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::ClearRenderTarget(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearStencil.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearStencil.md new file mode 100644 index 00000000..2c45ceb8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ClearStencil.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::ClearStencil + +清空内部数据。 + +```cpp +void ClearStencil(int stencil); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `stencil` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::ClearStencil(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Close.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Close.md new file mode 100644 index 00000000..5db96c9b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Close.md @@ -0,0 +1,30 @@ +# OpenGLCommandList::Close + +公开方法,详见头文件声明。 + +```cpp +void Close() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::Close(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Constructor.md new file mode 100644 index 00000000..5a51736e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLCommandList::OpenGLCommandList() + +构造对象。 + +```cpp +OpenGLCommandList(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/CopyImageSubData.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/CopyImageSubData.md new file mode 100644 index 00000000..5e8e0266 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/CopyImageSubData.md @@ -0,0 +1,45 @@ +# OpenGLCommandList::CopyImageSubData + +公开方法,详见头文件声明。 + +```cpp +void CopyImageSubData(unsigned int srcName, unsigned int srcTarget, int srcLevel, int srcX, int srcY, int srcZ, unsigned int dstName, unsigned int dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int width, int height, int depth); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `srcName` - 参数语义详见头文件声明。 +- `srcTarget` - 参数语义详见头文件声明。 +- `srcLevel` - 参数语义详见头文件声明。 +- `srcX` - 参数语义详见头文件声明。 +- `srcY` - 参数语义详见头文件声明。 +- `srcZ` - 参数语义详见头文件声明。 +- `dstName` - 参数语义详见头文件声明。 +- `dstTarget` - 参数语义详见头文件声明。 +- `dstLevel` - 参数语义详见头文件声明。 +- `dstX` - 参数语义详见头文件声明。 +- `dstY` - 参数语义详见头文件声明。 +- `dstZ` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 +- `depth` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::CopyImageSubData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/CopyResource.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/CopyResource.md new file mode 100644 index 00000000..392fed75 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/CopyResource.md @@ -0,0 +1,32 @@ +# OpenGLCommandList::CopyResource + +公开方法,详见头文件声明。 + +```cpp +void CopyResource(RHIResourceView* dst, RHIResourceView* src) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `dst` - 参数语义详见头文件声明。 +- `src` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::CopyResource(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Destructor.md new file mode 100644 index 00000000..6a41143a --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLCommandList::~OpenGLCommandList() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLCommandList() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Disable.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Disable.md new file mode 100644 index 00000000..20fa657e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Disable.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::Disable + +公开方法,详见头文件声明。 + +```cpp +void Disable(unsigned int cap); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `cap` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::Disable(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Disablei.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Disablei.md new file mode 100644 index 00000000..135e2ed7 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Disablei.md @@ -0,0 +1,32 @@ +# OpenGLCommandList::Disablei + +公开方法,详见头文件声明。 + +```cpp +void Disablei(unsigned int cap, unsigned int index); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `cap` - 参数语义详见头文件声明。 +- `index` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::Disablei(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Dispatch.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Dispatch.md new file mode 100644 index 00000000..8217d4e8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Dispatch.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::Dispatch + +公开方法,详见头文件声明。 + +```cpp +void Dispatch(uint32_t x, uint32_t y, uint32_t z) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `x` - 参数语义详见头文件声明。 +- `y` - 参数语义详见头文件声明。 +- `z` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::Dispatch(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DispatchCompute.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DispatchCompute.md new file mode 100644 index 00000000..dc7987a3 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DispatchCompute.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::DispatchCompute + +公开方法,详见头文件声明。 + +```cpp +void DispatchCompute(unsigned int x, unsigned int y, unsigned int z); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `x` - 参数语义详见头文件声明。 +- `y` - 参数语义详见头文件声明。 +- `z` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::DispatchCompute(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DispatchIndirect.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DispatchIndirect.md new file mode 100644 index 00000000..5a49fedd --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DispatchIndirect.md @@ -0,0 +1,32 @@ +# OpenGLCommandList::DispatchIndirect + +公开方法,详见头文件声明。 + +```cpp +void DispatchIndirect(unsigned int buffer, size_t offset); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::DispatchIndirect(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Draw.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Draw.md new file mode 100644 index 00000000..190872bb --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Draw.md @@ -0,0 +1,49 @@ +# OpenGLCommandList::Draw + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLCommandList.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void Draw(PrimitiveType type, unsigned int vertexCount, unsigned int startVertex); +``` + +**参数:** +- `type` - 参数语义详见头文件声明。 +- `vertexCount` - 参数语义详见头文件声明。 +- `startVertex` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void Draw(uint32_t vertexCount, uint32_t instanceCount, uint32_t startVertex, uint32_t startInstance) override; +``` + +**参数:** +- `vertexCount` - 参数语义详见头文件声明。 +- `instanceCount` - 参数语义详见头文件声明。 +- `startVertex` - 参数语义详见头文件声明。 +- `startInstance` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::Draw(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawIndexed.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawIndexed.md new file mode 100644 index 00000000..f2667e83 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawIndexed.md @@ -0,0 +1,51 @@ +# OpenGLCommandList::DrawIndexed + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLCommandList.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void DrawIndexed(PrimitiveType type, unsigned int indexCount, unsigned int startIndex, int baseVertex); +``` + +**参数:** +- `type` - 参数语义详见头文件声明。 +- `indexCount` - 参数语义详见头文件声明。 +- `startIndex` - 参数语义详见头文件声明。 +- `baseVertex` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void DrawIndexed(uint32_t indexCount, uint32_t instanceCount, uint32_t startIndex, int32_t baseVertex, uint32_t startInstance) override; +``` + +**参数:** +- `indexCount` - 参数语义详见头文件声明。 +- `instanceCount` - 参数语义详见头文件声明。 +- `startIndex` - 参数语义详见头文件声明。 +- `baseVertex` - 参数语义详见头文件声明。 +- `startInstance` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::DrawIndexed(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawIndexedIndirect.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawIndexedIndirect.md new file mode 100644 index 00000000..ee28ead3 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawIndexedIndirect.md @@ -0,0 +1,35 @@ +# OpenGLCommandList::DrawIndexedIndirect + +公开方法,详见头文件声明。 + +```cpp +void DrawIndexedIndirect(PrimitiveType type, unsigned int buffer, size_t offset, unsigned int drawCount, unsigned int stride); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 +- `buffer` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 +- `drawCount` - 参数语义详见头文件声明。 +- `stride` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::DrawIndexedIndirect(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawIndexedInstanced.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawIndexedInstanced.md new file mode 100644 index 00000000..3327e3cc --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawIndexedInstanced.md @@ -0,0 +1,36 @@ +# OpenGLCommandList::DrawIndexedInstanced + +公开方法,详见头文件声明。 + +```cpp +void DrawIndexedInstanced(PrimitiveType type, unsigned int indexCount, unsigned int instanceCount, unsigned int startIndex, int baseVertex, unsigned int startInstance); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 +- `indexCount` - 参数语义详见头文件声明。 +- `instanceCount` - 参数语义详见头文件声明。 +- `startIndex` - 参数语义详见头文件声明。 +- `baseVertex` - 参数语义详见头文件声明。 +- `startInstance` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::DrawIndexedInstanced(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawIndirect.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawIndirect.md new file mode 100644 index 00000000..a650ce74 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawIndirect.md @@ -0,0 +1,35 @@ +# OpenGLCommandList::DrawIndirect + +公开方法,详见头文件声明。 + +```cpp +void DrawIndirect(PrimitiveType type, unsigned int buffer, size_t offset, unsigned int drawCount, unsigned int stride); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 +- `buffer` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 +- `drawCount` - 参数语义详见头文件声明。 +- `stride` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::DrawIndirect(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawInstanced.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawInstanced.md new file mode 100644 index 00000000..c1de1a08 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/DrawInstanced.md @@ -0,0 +1,35 @@ +# OpenGLCommandList::DrawInstanced + +公开方法,详见头文件声明。 + +```cpp +void DrawInstanced(PrimitiveType type, unsigned int vertexCount, unsigned int instanceCount, unsigned int startVertex, unsigned int startInstance); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 +- `vertexCount` - 参数语义详见头文件声明。 +- `instanceCount` - 参数语义详见头文件声明。 +- `startVertex` - 参数语义详见头文件声明。 +- `startInstance` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::DrawInstanced(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Enable.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Enable.md new file mode 100644 index 00000000..458c59b7 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Enable.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::Enable + +公开方法,详见头文件声明。 + +```cpp +void Enable(unsigned int cap); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `cap` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::Enable(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableBlending.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableBlending.md new file mode 100644 index 00000000..3fec18d6 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableBlending.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::EnableBlending + +公开方法,详见头文件声明。 + +```cpp +void EnableBlending(bool enable); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `enable` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::EnableBlending(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableCulling.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableCulling.md new file mode 100644 index 00000000..b723664f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableCulling.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::EnableCulling + +公开方法,详见头文件声明。 + +```cpp +void EnableCulling(bool enable); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `enable` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::EnableCulling(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableDepthTest.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableDepthTest.md new file mode 100644 index 00000000..0bf620a6 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableDepthTest.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::EnableDepthTest + +公开方法,详见头文件声明。 + +```cpp +void EnableDepthTest(bool enable); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `enable` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::EnableDepthTest(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableDepthWrite.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableDepthWrite.md new file mode 100644 index 00000000..e51bf159 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableDepthWrite.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::EnableDepthWrite + +公开方法,详见头文件声明。 + +```cpp +void EnableDepthWrite(bool enable); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `enable` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::EnableDepthWrite(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableScissorTest.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableScissorTest.md new file mode 100644 index 00000000..ad4c6626 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableScissorTest.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::EnableScissorTest + +公开方法,详见头文件声明。 + +```cpp +void EnableScissorTest(bool enable); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `enable` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::EnableScissorTest(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableStencilTest.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableStencilTest.md new file mode 100644 index 00000000..61d079db --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EnableStencilTest.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::EnableStencilTest + +公开方法,详见头文件声明。 + +```cpp +void EnableStencilTest(bool enable); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `enable` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::EnableStencilTest(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Enablei.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Enablei.md new file mode 100644 index 00000000..9e4ee82b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Enablei.md @@ -0,0 +1,32 @@ +# OpenGLCommandList::Enablei + +公开方法,详见头文件声明。 + +```cpp +void Enablei(unsigned int cap, unsigned int index); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `cap` - 参数语义详见头文件声明。 +- `index` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::Enablei(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EndQuery.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EndQuery.md new file mode 100644 index 00000000..7e79fd0b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EndQuery.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::EndQuery + +公开方法,详见头文件声明。 + +```cpp +void EndQuery(unsigned int target); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `target` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::EndQuery(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EndRenderPass.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EndRenderPass.md new file mode 100644 index 00000000..8d867f44 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/EndRenderPass.md @@ -0,0 +1,30 @@ +# OpenGLCommandList::EndRenderPass + +公开方法,详见头文件声明。 + +```cpp +void EndRenderPass() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::EndRenderPass(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/GetQueryObjectiv.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/GetQueryObjectiv.md new file mode 100644 index 00000000..f19bc0b5 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/GetQueryObjectiv.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::GetQueryObjectiv + +获取相关状态或对象。 + +```cpp +void GetQueryObjectiv(unsigned int id, unsigned int pname, int* params); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `id` - 参数语义详见头文件声明。 +- `pname` - 参数语义详见头文件声明。 +- `params` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::GetQueryObjectiv(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/GetQueryObjectuiv.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/GetQueryObjectuiv.md new file mode 100644 index 00000000..feec2dc3 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/GetQueryObjectuiv.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::GetQueryObjectuiv + +获取相关状态或对象。 + +```cpp +void GetQueryObjectuiv(unsigned int id, unsigned int pname, unsigned int* params); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `id` - 参数语义详见头文件声明。 +- `pname` - 参数语义详见头文件声明。 +- `params` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::GetQueryObjectuiv(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/InvalidateFramebuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/InvalidateFramebuffer.md new file mode 100644 index 00000000..422132de --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/InvalidateFramebuffer.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::InvalidateFramebuffer + +公开方法,详见头文件声明。 + +```cpp +void InvalidateFramebuffer(unsigned int target, unsigned int count, const unsigned int* attachments); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `target` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `attachments` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::InvalidateFramebuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/InvalidateSubFramebuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/InvalidateSubFramebuffer.md new file mode 100644 index 00000000..7f1658b2 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/InvalidateSubFramebuffer.md @@ -0,0 +1,37 @@ +# OpenGLCommandList::InvalidateSubFramebuffer + +公开方法,详见头文件声明。 + +```cpp +void InvalidateSubFramebuffer(unsigned int target, unsigned int count, const unsigned int* attachments, int x, int y, int width, int height); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `target` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `attachments` - 参数语义详见头文件声明。 +- `x` - 参数语义详见头文件声明。 +- `y` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::InvalidateSubFramebuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/MemoryBarrier.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/MemoryBarrier.md new file mode 100644 index 00000000..b3008adc --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/MemoryBarrier.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::MemoryBarrier + +公开方法,详见头文件声明。 + +```cpp +void MemoryBarrier(unsigned int barriers); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `barriers` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::MemoryBarrier(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/MultiDrawArrays.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/MultiDrawArrays.md new file mode 100644 index 00000000..63ff9bbc --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/MultiDrawArrays.md @@ -0,0 +1,34 @@ +# OpenGLCommandList::MultiDrawArrays + +公开方法,详见头文件声明。 + +```cpp +void MultiDrawArrays(PrimitiveType type, const int* first, const int* count, unsigned int drawCount); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 +- `first` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `drawCount` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::MultiDrawArrays(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/MultiDrawElements.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/MultiDrawElements.md new file mode 100644 index 00000000..b068cb96 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/MultiDrawElements.md @@ -0,0 +1,35 @@ +# OpenGLCommandList::MultiDrawElements + +公开方法,详见头文件声明。 + +```cpp +void MultiDrawElements(PrimitiveType type, const int* count, unsigned int type_, const void* const* indices, unsigned int drawCount); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `type_` - 参数语义详见头文件声明。 +- `indices` - 参数语义详见头文件声明。 +- `drawCount` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::MultiDrawElements(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/OpenGLCommandList.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/OpenGLCommandList.md new file mode 100644 index 00000000..2c0c7063 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/OpenGLCommandList.md @@ -0,0 +1,135 @@ +# OpenGLCommandList + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLCommandList.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLCommandList` public API。 + +## 概述 + +`OpenGLCommandList.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `PrimitiveType` | `enum class` | 头文件中的公开声明。 | +| `ClearFlag` | `enum class` | 头文件中的公开声明。 | +| `OpenGLCommandList` | `class` | 继承自 `RHICommandList` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLCommandList()](Constructor.md) | 构造对象。 | +| [~OpenGLCommandList()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Reset](Reset.md) | 公开方法,详见头文件声明。 | +| [Close](Close.md) | 公开方法,详见头文件声明。 | +| [Clear](Clear.md) | 清空内部数据。 | +| [ClearColor](ClearColor.md) | 清空内部数据。 | +| [ClearDepth](ClearDepth.md) | 清空内部数据。 | +| [ClearStencil](ClearStencil.md) | 清空内部数据。 | +| [ClearDepthStencil](ClearDepthStencil.md) | 清空内部数据。 | +| [SetShader](SetShader.md) | 设置相关状态或配置。 | +| [SetUniformInt](SetUniformInt.md) | 设置相关状态或配置。 | +| [SetUniformFloat](SetUniformFloat.md) | 设置相关状态或配置。 | +| [SetUniformVec3](SetUniformVec3.md) | 设置相关状态或配置。 | +| [SetUniformVec4](SetUniformVec4.md) | 设置相关状态或配置。 | +| [SetUniformMat4](SetUniformMat4.md) | 设置相关状态或配置。 | +| [SetPipelineState](SetPipelineState.md) | 设置相关状态或配置。 | +| [SetGraphicsDescriptorSets](SetGraphicsDescriptorSets.md) | 设置相关状态或配置。 | +| [SetComputeDescriptorSets](SetComputeDescriptorSets.md) | 设置相关状态或配置。 | +| [SetVertexBuffers](SetVertexBuffers.md) | 设置相关状态或配置。 | +| [SetIndexBuffer](SetIndexBuffer.md) | 设置相关状态或配置。 | +| [SetVertexBuffer](SetVertexBuffer.md) | 设置相关状态或配置。 | +| [BindVertexArray](BindVertexArray.md) | 公开方法,详见头文件声明。 | +| [UseShader](UseShader.md) | 公开方法,详见头文件声明。 | +| [SetViewport](SetViewport.md) | 设置相关状态或配置。 | +| [SetViewports](SetViewports.md) | 设置相关状态或配置。 | +| [SetScissor](SetScissor.md) | 设置相关状态或配置。 | +| [SetScissorRects](SetScissorRects.md) | 设置相关状态或配置。 | +| [EnableScissorTest](EnableScissorTest.md) | 公开方法,详见头文件声明。 | +| [EnableDepthTest](EnableDepthTest.md) | 公开方法,详见头文件声明。 | +| [EnableDepthWrite](EnableDepthWrite.md) | 公开方法,详见头文件声明。 | +| [SetDepthFunc](SetDepthFunc.md) | 设置相关状态或配置。 | +| [EnableStencilTest](EnableStencilTest.md) | 公开方法,详见头文件声明。 | +| [SetStencilFunc](SetStencilFunc.md) | 设置相关状态或配置。 | +| [SetStencilOp](SetStencilOp.md) | 设置相关状态或配置。 | +| [EnableBlending](EnableBlending.md) | 公开方法,详见头文件声明。 | +| [SetBlendFunc](SetBlendFunc.md) | 设置相关状态或配置。 | +| [SetBlendFuncSeparate](SetBlendFuncSeparate.md) | 设置相关状态或配置。 | +| [SetBlendEquation](SetBlendEquation.md) | 设置相关状态或配置。 | +| [SetBlendColor](SetBlendColor.md) | 设置相关状态或配置。 | +| [EnableCulling](EnableCulling.md) | 公开方法,详见头文件声明。 | +| [SetCullFace](SetCullFace.md) | 设置相关状态或配置。 | +| [SetFrontFace](SetFrontFace.md) | 设置相关状态或配置。 | +| [SetPolygonMode](SetPolygonMode.md) | 设置相关状态或配置。 | +| [SetPolygonOffset](SetPolygonOffset.md) | 设置相关状态或配置。 | +| [SetPrimitiveType](SetPrimitiveType.md) | 设置相关状态或配置。 | +| [Draw](Draw.md) | 公开方法,详见头文件声明。 | +| [DrawInstanced](DrawInstanced.md) | 公开方法,详见头文件声明。 | +| [DrawIndexed](DrawIndexed.md) | 公开方法,详见头文件声明。 | +| [DrawIndexedInstanced](DrawIndexedInstanced.md) | 公开方法,详见头文件声明。 | +| [DrawIndirect](DrawIndirect.md) | 公开方法,详见头文件声明。 | +| [DrawIndexedIndirect](DrawIndexedIndirect.md) | 公开方法,详见头文件声明。 | +| [MultiDrawArrays](MultiDrawArrays.md) | 公开方法,详见头文件声明。 | +| [MultiDrawElements](MultiDrawElements.md) | 公开方法,详见头文件声明。 | +| [Dispatch](Dispatch.md) | 公开方法,详见头文件声明。 | +| [DispatchIndirect](DispatchIndirect.md) | 公开方法,详见头文件声明。 | +| [DispatchCompute](DispatchCompute.md) | 公开方法,详见头文件声明。 | +| [MemoryBarrier](MemoryBarrier.md) | 公开方法,详见头文件声明。 | +| [TextureBarrier](TextureBarrier.md) | 公开方法,详见头文件声明。 | +| [BindTexture](BindTexture.md) | 公开方法,详见头文件声明。 | +| [BindTextures](BindTextures.md) | 公开方法,详见头文件声明。 | +| [BindSampler](BindSampler.md) | 公开方法,详见头文件声明。 | +| [BindSamplers](BindSamplers.md) | 公开方法,详见头文件声明。 | +| [BindImageTexture](BindImageTexture.md) | 公开方法,详见头文件声明。 | +| [BindBufferBase](BindBufferBase.md) | 公开方法,详见头文件声明。 | +| [BindBufferRange](BindBufferRange.md) | 公开方法,详见头文件声明。 | +| [Enable](Enable.md) | 公开方法,详见头文件声明。 | +| [Disable](Disable.md) | 公开方法,详见头文件声明。 | +| [Enablei](Enablei.md) | 公开方法,详见头文件声明。 | +| [Disablei](Disablei.md) | 公开方法,详见头文件声明。 | +| [SetUniform1i](SetUniform1i.md) | 设置相关状态或配置。 | +| [SetUniform1f](SetUniform1f.md) | 设置相关状态或配置。 | +| [SetUniform2f](SetUniform2f.md) | 设置相关状态或配置。 | +| [SetUniform3f](SetUniform3f.md) | 设置相关状态或配置。 | +| [SetUniform4f](SetUniform4f.md) | 设置相关状态或配置。 | +| [SetUniform1fv](SetUniform1fv.md) | 设置相关状态或配置。 | +| [SetUniform2fv](SetUniform2fv.md) | 设置相关状态或配置。 | +| [SetUniform3fv](SetUniform3fv.md) | 设置相关状态或配置。 | +| [SetUniform4fv](SetUniform4fv.md) | 设置相关状态或配置。 | +| [SetUniformMatrix4fv](SetUniformMatrix4fv.md) | 设置相关状态或配置。 | +| [UseProgram](UseProgram.md) | 公开方法,详见头文件声明。 | +| [BindFragDataLocation](BindFragDataLocation.md) | 公开方法,详见头文件声明。 | +| [BindFragDataLocationIndexed](BindFragDataLocationIndexed.md) | 公开方法,详见头文件声明。 | +| [BeginQuery](BeginQuery.md) | 公开方法,详见头文件声明。 | +| [EndQuery](EndQuery.md) | 公开方法,详见头文件声明。 | +| [GetQueryObjectiv](GetQueryObjectiv.md) | 获取相关状态或对象。 | +| [GetQueryObjectuiv](GetQueryObjectuiv.md) | 获取相关状态或对象。 | +| [ReadPixels](ReadPixels.md) | 公开方法,详见头文件声明。 | +| [BlitFramebuffer](BlitFramebuffer.md) | 公开方法,详见头文件声明。 | +| [CopyImageSubData](CopyImageSubData.md) | 公开方法,详见头文件声明。 | +| [CopyResource](CopyResource.md) | 公开方法,详见头文件声明。 | +| [InvalidateFramebuffer](InvalidateFramebuffer.md) | 公开方法,详见头文件声明。 | +| [InvalidateSubFramebuffer](InvalidateSubFramebuffer.md) | 公开方法,详见头文件声明。 | +| [PushDebugGroup](PushDebugGroup.md) | 公开方法,详见头文件声明。 | +| [PopDebugGroup](PopDebugGroup.md) | 公开方法,详见头文件声明。 | +| [TransitionBarrier](TransitionBarrier.md) | 公开方法,详见头文件声明。 | +| [BeginRenderPass](BeginRenderPass.md) | 公开方法,详见头文件声明。 | +| [EndRenderPass](EndRenderPass.md) | 公开方法,详见头文件声明。 | +| [SetPrimitiveTopology](SetPrimitiveTopology.md) | 设置相关状态或配置。 | +| [SetScissorRect](SetScissorRect.md) | 设置相关状态或配置。 | +| [SetRenderTargets](SetRenderTargets.md) | 设置相关状态或配置。 | +| [SetStencilRef](SetStencilRef.md) | 设置相关状态或配置。 | +| [SetBlendFactor](SetBlendFactor.md) | 设置相关状态或配置。 | +| [ClearRenderTarget](ClearRenderTarget.md) | 清空内部数据。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/PopDebugGroup.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/PopDebugGroup.md new file mode 100644 index 00000000..a4505398 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/PopDebugGroup.md @@ -0,0 +1,30 @@ +# OpenGLCommandList::PopDebugGroup + +公开方法,详见头文件声明。 + +```cpp +void PopDebugGroup(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::PopDebugGroup(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/PushDebugGroup.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/PushDebugGroup.md new file mode 100644 index 00000000..823ac4ec --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/PushDebugGroup.md @@ -0,0 +1,34 @@ +# OpenGLCommandList::PushDebugGroup + +公开方法,详见头文件声明。 + +```cpp +void PushDebugGroup(unsigned int source, unsigned int id, int length, const char* message); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `source` - 参数语义详见头文件声明。 +- `id` - 参数语义详见头文件声明。 +- `length` - 参数语义详见头文件声明。 +- `message` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::PushDebugGroup(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ReadPixels.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ReadPixels.md new file mode 100644 index 00000000..887b2a1b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/ReadPixels.md @@ -0,0 +1,37 @@ +# OpenGLCommandList::ReadPixels + +公开方法,详见头文件声明。 + +```cpp +void ReadPixels(int x, int y, int width, int height, unsigned int format, unsigned int type, void* data); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `x` - 参数语义详见头文件声明。 +- `y` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 +- `format` - 参数语义详见头文件声明。 +- `type` - 参数语义详见头文件声明。 +- `data` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::ReadPixels(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Reset.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Reset.md new file mode 100644 index 00000000..8e7c621a --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Reset.md @@ -0,0 +1,30 @@ +# OpenGLCommandList::Reset + +公开方法,详见头文件声明。 + +```cpp +void Reset() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::Reset(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendColor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendColor.md new file mode 100644 index 00000000..3780e67e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendColor.md @@ -0,0 +1,34 @@ +# OpenGLCommandList::SetBlendColor + +设置相关状态或配置。 + +```cpp +void SetBlendColor(float r, float g, float b, float a); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `r` - 参数语义详见头文件声明。 +- `g` - 参数语义详见头文件声明。 +- `b` - 参数语义详见头文件声明。 +- `a` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetBlendColor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendEquation.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendEquation.md new file mode 100644 index 00000000..13bbde76 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendEquation.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::SetBlendEquation + +设置相关状态或配置。 + +```cpp +void SetBlendEquation(unsigned int mode); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `mode` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetBlendEquation(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendFactor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendFactor.md new file mode 100644 index 00000000..186433a5 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendFactor.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::SetBlendFactor + +设置相关状态或配置。 + +```cpp +void SetBlendFactor(const float factor[4]) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `param` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetBlendFactor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendFunc.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendFunc.md new file mode 100644 index 00000000..5165b972 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendFunc.md @@ -0,0 +1,32 @@ +# OpenGLCommandList::SetBlendFunc + +设置相关状态或配置。 + +```cpp +void SetBlendFunc(unsigned int src, unsigned int dst); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `src` - 参数语义详见头文件声明。 +- `dst` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetBlendFunc(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendFuncSeparate.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendFuncSeparate.md new file mode 100644 index 00000000..f39be590 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetBlendFuncSeparate.md @@ -0,0 +1,34 @@ +# OpenGLCommandList::SetBlendFuncSeparate + +设置相关状态或配置。 + +```cpp +void SetBlendFuncSeparate(unsigned int srcRGB, unsigned int dstRGB, unsigned int srcAlpha, unsigned int dstAlpha); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `srcRGB` - 参数语义详见头文件声明。 +- `dstRGB` - 参数语义详见头文件声明。 +- `srcAlpha` - 参数语义详见头文件声明。 +- `dstAlpha` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetBlendFuncSeparate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetComputeDescriptorSets.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetComputeDescriptorSets.md new file mode 100644 index 00000000..71c0120d --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetComputeDescriptorSets.md @@ -0,0 +1,34 @@ +# OpenGLCommandList::SetComputeDescriptorSets + +设置相关状态或配置。 + +```cpp +void SetComputeDescriptorSets( uint32_t firstSet, uint32_t count, RHIDescriptorSet** descriptorSets, RHIPipelineLayout* pipelineLayout) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `firstSet` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `descriptorSets` - 参数语义详见头文件声明。 +- `pipelineLayout` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetComputeDescriptorSets(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetCullFace.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetCullFace.md new file mode 100644 index 00000000..69ed3040 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetCullFace.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::SetCullFace + +设置相关状态或配置。 + +```cpp +void SetCullFace(unsigned int face); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `face` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetCullFace(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetDepthFunc.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetDepthFunc.md new file mode 100644 index 00000000..19bab3e0 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetDepthFunc.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::SetDepthFunc + +设置相关状态或配置。 + +```cpp +void SetDepthFunc(unsigned int func); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `func` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetDepthFunc(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetFrontFace.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetFrontFace.md new file mode 100644 index 00000000..c72085aa --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetFrontFace.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::SetFrontFace + +设置相关状态或配置。 + +```cpp +void SetFrontFace(unsigned int face); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `face` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetFrontFace(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetGraphicsDescriptorSets.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetGraphicsDescriptorSets.md new file mode 100644 index 00000000..c30a5a94 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetGraphicsDescriptorSets.md @@ -0,0 +1,34 @@ +# OpenGLCommandList::SetGraphicsDescriptorSets + +设置相关状态或配置。 + +```cpp +void SetGraphicsDescriptorSets( uint32_t firstSet, uint32_t count, RHIDescriptorSet** descriptorSets, RHIPipelineLayout* pipelineLayout) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `firstSet` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `descriptorSets` - 参数语义详见头文件声明。 +- `pipelineLayout` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetGraphicsDescriptorSets(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetIndexBuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetIndexBuffer.md new file mode 100644 index 00000000..f1d0b0e5 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetIndexBuffer.md @@ -0,0 +1,59 @@ +# OpenGLCommandList::SetIndexBuffer + +设置相关状态或配置。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLCommandList.h` 中提供了 3 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void SetIndexBuffer(RHIResourceView* buffer, uint64_t offset) override; +``` + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void SetIndexBuffer(unsigned int buffer, unsigned int type); +``` + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `type` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 3: 声明 + +```cpp +void SetIndexBuffer(unsigned int buffer, unsigned int type, size_t offset); +``` + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `type` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetIndexBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPipelineState.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPipelineState.md new file mode 100644 index 00000000..0c427aec --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPipelineState.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::SetPipelineState + +设置相关状态或配置。 + +```cpp +void SetPipelineState(RHIPipelineState* pipelineState) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `pipelineState` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetPipelineState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPolygonMode.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPolygonMode.md new file mode 100644 index 00000000..3c639971 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPolygonMode.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::SetPolygonMode + +设置相关状态或配置。 + +```cpp +void SetPolygonMode(unsigned int mode); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `mode` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetPolygonMode(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPolygonOffset.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPolygonOffset.md new file mode 100644 index 00000000..7818a951 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPolygonOffset.md @@ -0,0 +1,32 @@ +# OpenGLCommandList::SetPolygonOffset + +设置相关状态或配置。 + +```cpp +void SetPolygonOffset(float factor, float units); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `factor` - 参数语义详见头文件声明。 +- `units` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetPolygonOffset(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPrimitiveTopology.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPrimitiveTopology.md new file mode 100644 index 00000000..fcb8ad65 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPrimitiveTopology.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::SetPrimitiveTopology + +设置相关状态或配置。 + +```cpp +void SetPrimitiveTopology(PrimitiveTopology topology) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `topology` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetPrimitiveTopology(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPrimitiveType.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPrimitiveType.md new file mode 100644 index 00000000..d40647b5 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetPrimitiveType.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::SetPrimitiveType + +设置相关状态或配置。 + +```cpp +void SetPrimitiveType(PrimitiveType type); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetPrimitiveType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetRenderTargets.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetRenderTargets.md new file mode 100644 index 00000000..1023a145 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetRenderTargets.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::SetRenderTargets + +设置相关状态或配置。 + +```cpp +void SetRenderTargets(uint32_t count, RHIResourceView** renderTargets, RHIResourceView* depthStencil = nullptr) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `renderTargets` - 参数语义详见头文件声明。 +- `depthStencil` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetRenderTargets(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetScissor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetScissor.md new file mode 100644 index 00000000..743d3f0f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetScissor.md @@ -0,0 +1,34 @@ +# OpenGLCommandList::SetScissor + +设置相关状态或配置。 + +```cpp +void SetScissor(int x, int y, int width, int height); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `x` - 参数语义详见头文件声明。 +- `y` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetScissor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetScissorRect.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetScissorRect.md new file mode 100644 index 00000000..5b913556 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetScissorRect.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::SetScissorRect + +设置相关状态或配置。 + +```cpp +void SetScissorRect(const Rect& rect) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `rect` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetScissorRect(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetScissorRects.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetScissorRects.md new file mode 100644 index 00000000..04a49c31 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetScissorRects.md @@ -0,0 +1,46 @@ +# OpenGLCommandList::SetScissorRects + +设置相关状态或配置。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLCommandList.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void SetScissorRects(unsigned int count, const int* rects); +``` + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `rects` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void SetScissorRects(uint32_t count, const Rect* rects) override; +``` + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `rects` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetScissorRects(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetShader.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetShader.md new file mode 100644 index 00000000..3ab42d9d --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetShader.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::SetShader + +设置相关状态或配置。 + +```cpp +void SetShader(RHIShader* shader) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `shader` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetStencilFunc.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetStencilFunc.md new file mode 100644 index 00000000..f4ff45e8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetStencilFunc.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::SetStencilFunc + +设置相关状态或配置。 + +```cpp +void SetStencilFunc(unsigned int func, int ref, unsigned int mask); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `func` - 参数语义详见头文件声明。 +- `ref` - 参数语义详见头文件声明。 +- `mask` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetStencilFunc(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetStencilOp.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetStencilOp.md new file mode 100644 index 00000000..fd209037 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetStencilOp.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::SetStencilOp + +设置相关状态或配置。 + +```cpp +void SetStencilOp(unsigned int fail, unsigned int zfail, unsigned int zpass); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `fail` - 参数语义详见头文件声明。 +- `zfail` - 参数语义详见头文件声明。 +- `zpass` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetStencilOp(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetStencilRef.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetStencilRef.md new file mode 100644 index 00000000..6e477a67 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetStencilRef.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::SetStencilRef + +设置相关状态或配置。 + +```cpp +void SetStencilRef(uint8_t ref) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `ref` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetStencilRef(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform1f.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform1f.md new file mode 100644 index 00000000..7b61377e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform1f.md @@ -0,0 +1,32 @@ +# OpenGLCommandList::SetUniform1f + +设置相关状态或配置。 + +```cpp +void SetUniform1f(int location, float v); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `location` - 参数语义详见头文件声明。 +- `v` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetUniform1f(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform1fv.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform1fv.md new file mode 100644 index 00000000..5e76d5d8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform1fv.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::SetUniform1fv + +设置相关状态或配置。 + +```cpp +void SetUniform1fv(int location, int count, const float* v); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `location` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `v` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetUniform1fv(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform1i.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform1i.md new file mode 100644 index 00000000..36057344 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform1i.md @@ -0,0 +1,32 @@ +# OpenGLCommandList::SetUniform1i + +设置相关状态或配置。 + +```cpp +void SetUniform1i(int location, int v); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `location` - 参数语义详见头文件声明。 +- `v` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetUniform1i(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform2f.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform2f.md new file mode 100644 index 00000000..5b1d2603 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform2f.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::SetUniform2f + +设置相关状态或配置。 + +```cpp +void SetUniform2f(int location, float x, float y); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `location` - 参数语义详见头文件声明。 +- `x` - 参数语义详见头文件声明。 +- `y` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetUniform2f(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform2fv.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform2fv.md new file mode 100644 index 00000000..96b85af5 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform2fv.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::SetUniform2fv + +设置相关状态或配置。 + +```cpp +void SetUniform2fv(int location, int count, const float* v); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `location` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `v` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetUniform2fv(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform3f.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform3f.md new file mode 100644 index 00000000..2cf95968 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform3f.md @@ -0,0 +1,34 @@ +# OpenGLCommandList::SetUniform3f + +设置相关状态或配置。 + +```cpp +void SetUniform3f(int location, float x, float y, float z); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `location` - 参数语义详见头文件声明。 +- `x` - 参数语义详见头文件声明。 +- `y` - 参数语义详见头文件声明。 +- `z` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetUniform3f(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform3fv.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform3fv.md new file mode 100644 index 00000000..74dbb8c9 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform3fv.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::SetUniform3fv + +设置相关状态或配置。 + +```cpp +void SetUniform3fv(int location, int count, const float* v); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `location` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `v` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetUniform3fv(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform4f.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform4f.md new file mode 100644 index 00000000..3a41274c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform4f.md @@ -0,0 +1,35 @@ +# OpenGLCommandList::SetUniform4f + +设置相关状态或配置。 + +```cpp +void SetUniform4f(int location, float x, float y, float z, float w); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `location` - 参数语义详见头文件声明。 +- `x` - 参数语义详见头文件声明。 +- `y` - 参数语义详见头文件声明。 +- `z` - 参数语义详见头文件声明。 +- `w` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetUniform4f(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform4fv.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform4fv.md new file mode 100644 index 00000000..83d31e90 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniform4fv.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::SetUniform4fv + +设置相关状态或配置。 + +```cpp +void SetUniform4fv(int location, int count, const float* v); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `location` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `v` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetUniform4fv(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformFloat.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformFloat.md new file mode 100644 index 00000000..e91dcced --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformFloat.md @@ -0,0 +1,32 @@ +# OpenGLCommandList::SetUniformFloat + +设置相关状态或配置。 + +```cpp +void SetUniformFloat(const char* name, float value); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetUniformFloat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformInt.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformInt.md new file mode 100644 index 00000000..1f760740 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformInt.md @@ -0,0 +1,32 @@ +# OpenGLCommandList::SetUniformInt + +设置相关状态或配置。 + +```cpp +void SetUniformInt(const char* name, int value); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetUniformInt(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformMat4.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformMat4.md new file mode 100644 index 00000000..8b350b3b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformMat4.md @@ -0,0 +1,32 @@ +# OpenGLCommandList::SetUniformMat4 + +设置相关状态或配置。 + +```cpp +void SetUniformMat4(const char* name, const float* value); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetUniformMat4(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformMatrix4fv.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformMatrix4fv.md new file mode 100644 index 00000000..9997a5fa --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformMatrix4fv.md @@ -0,0 +1,34 @@ +# OpenGLCommandList::SetUniformMatrix4fv + +设置相关状态或配置。 + +```cpp +void SetUniformMatrix4fv(int location, int count, bool transpose, const float* v); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `location` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `transpose` - 参数语义详见头文件声明。 +- `v` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetUniformMatrix4fv(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformVec3.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformVec3.md new file mode 100644 index 00000000..cf09b8b5 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformVec3.md @@ -0,0 +1,34 @@ +# OpenGLCommandList::SetUniformVec3 + +设置相关状态或配置。 + +```cpp +void SetUniformVec3(const char* name, float x, float y, float z); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 +- `x` - 参数语义详见头文件声明。 +- `y` - 参数语义详见头文件声明。 +- `z` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetUniformVec3(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformVec4.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformVec4.md new file mode 100644 index 00000000..c2b5230b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetUniformVec4.md @@ -0,0 +1,35 @@ +# OpenGLCommandList::SetUniformVec4 + +设置相关状态或配置。 + +```cpp +void SetUniformVec4(const char* name, float x, float y, float z, float w); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 +- `x` - 参数语义详见头文件声明。 +- `y` - 参数语义详见头文件声明。 +- `z` - 参数语义详见头文件声明。 +- `w` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetUniformVec4(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetVertexBuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetVertexBuffer.md new file mode 100644 index 00000000..6f896377 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetVertexBuffer.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::SetVertexBuffer + +设置相关状态或配置。 + +```cpp +void SetVertexBuffer(unsigned int buffer, size_t offset, size_t stride); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 +- `stride` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetVertexBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetVertexBuffers.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetVertexBuffers.md new file mode 100644 index 00000000..c18816eb --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetVertexBuffers.md @@ -0,0 +1,52 @@ +# OpenGLCommandList::SetVertexBuffers + +设置相关状态或配置。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLCommandList.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void SetVertexBuffers(uint32_t startSlot, uint32_t count, RHIResourceView** buffers, const uint64_t* offsets, const uint32_t* strides) override; +``` + +**参数:** +- `startSlot` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `buffers` - 参数语义详见头文件声明。 +- `offsets` - 参数语义详见头文件声明。 +- `strides` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void SetVertexBuffers(unsigned int startSlot, unsigned int count, const unsigned int* buffers, const size_t* offsets, const size_t* strides); +``` + +**参数:** +- `startSlot` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `buffers` - 参数语义详见头文件声明。 +- `offsets` - 参数语义详见头文件声明。 +- `strides` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetVertexBuffers(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetViewport.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetViewport.md new file mode 100644 index 00000000..57a6b48f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetViewport.md @@ -0,0 +1,63 @@ +# OpenGLCommandList::SetViewport + +设置相关状态或配置。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLCommandList.h` 中提供了 3 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void SetViewport(int x, int y, int width, int height); +``` + +**参数:** +- `x` - 参数语义详见头文件声明。 +- `y` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void SetViewport(float x, float y, float width, float height, float minDepth, float maxDepth); +``` + +**参数:** +- `x` - 参数语义详见头文件声明。 +- `y` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 +- `minDepth` - 参数语义详见头文件声明。 +- `maxDepth` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 3: 声明 + +```cpp +void SetViewport(const Viewport& viewport) override; +``` + +**参数:** +- `viewport` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetViewport(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetViewports.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetViewports.md new file mode 100644 index 00000000..7e7244ee --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/SetViewports.md @@ -0,0 +1,46 @@ +# OpenGLCommandList::SetViewports + +设置相关状态或配置。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLCommandList.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void SetViewports(unsigned int count, const float* viewports); +``` + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `viewports` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void SetViewports(uint32_t count, const Viewport* viewports) override; +``` + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `viewports` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::SetViewports(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Shutdown.md new file mode 100644 index 00000000..bcc47c60 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLCommandList::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/TextureBarrier.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/TextureBarrier.md new file mode 100644 index 00000000..a395741e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/TextureBarrier.md @@ -0,0 +1,30 @@ +# OpenGLCommandList::TextureBarrier + +公开方法,详见头文件声明。 + +```cpp +void TextureBarrier(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::TextureBarrier(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/TransitionBarrier.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/TransitionBarrier.md new file mode 100644 index 00000000..0cc7f30e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/TransitionBarrier.md @@ -0,0 +1,33 @@ +# OpenGLCommandList::TransitionBarrier + +公开方法,详见头文件声明。 + +```cpp +void TransitionBarrier(RHIResourceView* resource, ResourceStates stateBefore, ResourceStates stateAfter) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `resource` - 参数语义详见头文件声明。 +- `stateBefore` - 参数语义详见头文件声明。 +- `stateAfter` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::TransitionBarrier(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/UseProgram.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/UseProgram.md new file mode 100644 index 00000000..2cee1c2c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/UseProgram.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::UseProgram + +公开方法,详见头文件声明。 + +```cpp +void UseProgram(unsigned int program); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `program` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::UseProgram(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/UseShader.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/UseShader.md new file mode 100644 index 00000000..daa71fcf --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandList/UseShader.md @@ -0,0 +1,31 @@ +# OpenGLCommandList::UseShader + +公开方法,详见头文件声明。 + +```cpp +void UseShader(unsigned int program); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandList.h`,当前页面用于固定 `OpenGLCommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `program` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandList object; + // 根据上下文补齐参数后调用 OpenGLCommandList::UseShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandList.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Constructor.md new file mode 100644 index 00000000..3272f6f2 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLCommandQueue::OpenGLCommandQueue() + +构造对象。 + +```cpp +OpenGLCommandQueue(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandQueue.h`,当前页面用于固定 `OpenGLCommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandQueue object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandQueue.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Destructor.md new file mode 100644 index 00000000..c2857550 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLCommandQueue::~OpenGLCommandQueue() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLCommandQueue() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandQueue.h`,当前页面用于固定 `OpenGLCommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandQueue object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandQueue.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/ExecuteCommandLists.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/ExecuteCommandLists.md new file mode 100644 index 00000000..e023a4d2 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/ExecuteCommandLists.md @@ -0,0 +1,32 @@ +# OpenGLCommandQueue::ExecuteCommandLists + +公开方法,详见头文件声明。 + +```cpp +void ExecuteCommandLists(uint32_t count, void** lists) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandQueue.h`,当前页面用于固定 `OpenGLCommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `lists` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandQueue object; + // 根据上下文补齐参数后调用 OpenGLCommandQueue::ExecuteCommandLists(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandQueue.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetCompletedValue.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetCompletedValue.md new file mode 100644 index 00000000..4a066ea3 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetCompletedValue.md @@ -0,0 +1,30 @@ +# OpenGLCommandQueue::GetCompletedValue + +获取相关状态或对象。 + +```cpp +uint64_t GetCompletedValue() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandQueue.h`,当前页面用于固定 `OpenGLCommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandQueue object; + // 根据上下文补齐参数后调用 OpenGLCommandQueue::GetCompletedValue(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandQueue.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetCurrentFrame.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetCurrentFrame.md new file mode 100644 index 00000000..0577ba71 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetCurrentFrame.md @@ -0,0 +1,30 @@ +# OpenGLCommandQueue::GetCurrentFrame + +获取相关状态或对象。 + +```cpp +uint64_t GetCurrentFrame() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandQueue.h`,当前页面用于固定 `OpenGLCommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandQueue object; + // 根据上下文补齐参数后调用 OpenGLCommandQueue::GetCurrentFrame(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandQueue.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetNativeHandle.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetNativeHandle.md new file mode 100644 index 00000000..2ff82244 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetNativeHandle.md @@ -0,0 +1,30 @@ +# OpenGLCommandQueue::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandQueue.h`,当前页面用于固定 `OpenGLCommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandQueue object; + // 根据上下文补齐参数后调用 OpenGLCommandQueue::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandQueue.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetTimestampFrequency.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetTimestampFrequency.md new file mode 100644 index 00000000..613427b8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetTimestampFrequency.md @@ -0,0 +1,30 @@ +# OpenGLCommandQueue::GetTimestampFrequency + +获取相关状态或对象。 + +```cpp +uint64_t GetTimestampFrequency() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandQueue.h`,当前页面用于固定 `OpenGLCommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandQueue object; + // 根据上下文补齐参数后调用 OpenGLCommandQueue::GetTimestampFrequency(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandQueue.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetType.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetType.md new file mode 100644 index 00000000..16429b9a --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/GetType.md @@ -0,0 +1,30 @@ +# OpenGLCommandQueue::GetType + +获取相关状态或对象。 + +```cpp +CommandQueueType GetType() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandQueue.h`,当前页面用于固定 `OpenGLCommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `CommandQueueType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandQueue object; + // 根据上下文补齐参数后调用 OpenGLCommandQueue::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandQueue.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/OpenGLCommandQueue.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/OpenGLCommandQueue.md new file mode 100644 index 00000000..ac26836c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/OpenGLCommandQueue.md @@ -0,0 +1,42 @@ +# OpenGLCommandQueue + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLCommandQueue.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLCommandQueue` public API。 + +## 概述 + +`OpenGLCommandQueue.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `OpenGLCommandQueue` | `class` | 继承自 `RHICommandQueue` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLCommandQueue()](Constructor.md) | 构造对象。 | +| [~OpenGLCommandQueue()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [ExecuteCommandLists](ExecuteCommandLists.md) | 公开方法,详见头文件声明。 | +| [Signal](Signal.md) | 公开方法,详见头文件声明。 | +| [Wait](Wait.md) | 公开方法,详见头文件声明。 | +| [GetCompletedValue](GetCompletedValue.md) | 获取相关状态或对象。 | +| [WaitForIdle](WaitForIdle.md) | 公开方法,详见头文件声明。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [GetTimestampFrequency](GetTimestampFrequency.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [WaitForPreviousFrame](WaitForPreviousFrame.md) | 公开方法,详见头文件声明。 | +| [GetCurrentFrame](GetCurrentFrame.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Shutdown.md new file mode 100644 index 00000000..630865f4 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLCommandQueue::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandQueue.h`,当前页面用于固定 `OpenGLCommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandQueue object; + // 根据上下文补齐参数后调用 OpenGLCommandQueue::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandQueue.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Signal.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Signal.md new file mode 100644 index 00000000..6a165efe --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Signal.md @@ -0,0 +1,32 @@ +# OpenGLCommandQueue::Signal + +公开方法,详见头文件声明。 + +```cpp +void Signal(RHIFence* fence, uint64_t value) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandQueue.h`,当前页面用于固定 `OpenGLCommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** +- `fence` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandQueue object; + // 根据上下文补齐参数后调用 OpenGLCommandQueue::Signal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandQueue.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Wait.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Wait.md new file mode 100644 index 00000000..b0e31f7e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/Wait.md @@ -0,0 +1,32 @@ +# OpenGLCommandQueue::Wait + +公开方法,详见头文件声明。 + +```cpp +void Wait(RHIFence* fence, uint64_t value) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandQueue.h`,当前页面用于固定 `OpenGLCommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** +- `fence` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandQueue object; + // 根据上下文补齐参数后调用 OpenGLCommandQueue::Wait(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandQueue.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/WaitForIdle.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/WaitForIdle.md new file mode 100644 index 00000000..bf315677 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/WaitForIdle.md @@ -0,0 +1,30 @@ +# OpenGLCommandQueue::WaitForIdle + +公开方法,详见头文件声明。 + +```cpp +void WaitForIdle() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandQueue.h`,当前页面用于固定 `OpenGLCommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandQueue object; + // 根据上下文补齐参数后调用 OpenGLCommandQueue::WaitForIdle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandQueue.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/WaitForPreviousFrame.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/WaitForPreviousFrame.md new file mode 100644 index 00000000..f9b4eb31 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLCommandQueue/WaitForPreviousFrame.md @@ -0,0 +1,30 @@ +# OpenGLCommandQueue::WaitForPreviousFrame + +公开方法,详见头文件声明。 + +```cpp +void WaitForPreviousFrame() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLCommandQueue.h`,当前页面用于固定 `OpenGLCommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLCommandQueue object; + // 根据上下文补齐参数后调用 OpenGLCommandQueue::WaitForPreviousFrame(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLCommandQueue.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Bind.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Bind.md new file mode 100644 index 00000000..33695003 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Bind.md @@ -0,0 +1,30 @@ +# OpenGLDepthStencilView::Bind + +公开方法,详见头文件声明。 + +```cpp +void Bind(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDepthStencilView.h`,当前页面用于固定 `OpenGLDepthStencilView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDepthStencilView object; + // 根据上下文补齐参数后调用 OpenGLDepthStencilView::Bind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDepthStencilView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/BindFramebuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/BindFramebuffer.md new file mode 100644 index 00000000..647a8fe8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/BindFramebuffer.md @@ -0,0 +1,31 @@ +# OpenGLDepthStencilView::BindFramebuffer + +公开方法,详见头文件声明。 + +```cpp +static void BindFramebuffer(unsigned int framebuffer); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDepthStencilView.h`,当前页面用于固定 `OpenGLDepthStencilView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `framebuffer` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDepthStencilView object; + // 根据上下文补齐参数后调用 OpenGLDepthStencilView::BindFramebuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDepthStencilView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/ClearDepth.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/ClearDepth.md new file mode 100644 index 00000000..d8753dbc --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/ClearDepth.md @@ -0,0 +1,31 @@ +# OpenGLDepthStencilView::ClearDepth + +清空内部数据。 + +```cpp +void ClearDepth(float depth); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDepthStencilView.h`,当前页面用于固定 `OpenGLDepthStencilView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `depth` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDepthStencilView object; + // 根据上下文补齐参数后调用 OpenGLDepthStencilView::ClearDepth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDepthStencilView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/ClearDepthStencil.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/ClearDepthStencil.md new file mode 100644 index 00000000..a713ef01 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/ClearDepthStencil.md @@ -0,0 +1,32 @@ +# OpenGLDepthStencilView::ClearDepthStencil + +清空内部数据。 + +```cpp +void ClearDepthStencil(float depth, uint8_t stencil); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDepthStencilView.h`,当前页面用于固定 `OpenGLDepthStencilView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `depth` - 参数语义详见头文件声明。 +- `stencil` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDepthStencilView object; + // 根据上下文补齐参数后调用 OpenGLDepthStencilView::ClearDepthStencil(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDepthStencilView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/ClearStencil.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/ClearStencil.md new file mode 100644 index 00000000..4c68ef89 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/ClearStencil.md @@ -0,0 +1,31 @@ +# OpenGLDepthStencilView::ClearStencil + +清空内部数据。 + +```cpp +void ClearStencil(uint8_t stencil); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDepthStencilView.h`,当前页面用于固定 `OpenGLDepthStencilView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `stencil` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDepthStencilView object; + // 根据上下文补齐参数后调用 OpenGLDepthStencilView::ClearStencil(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDepthStencilView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Constructor.md new file mode 100644 index 00000000..546e2c8d --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLDepthStencilView::OpenGLDepthStencilView() + +构造对象。 + +```cpp +OpenGLDepthStencilView(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDepthStencilView.h`,当前页面用于固定 `OpenGLDepthStencilView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDepthStencilView object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDepthStencilView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Destructor.md new file mode 100644 index 00000000..c27914b8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLDepthStencilView::~OpenGLDepthStencilView() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLDepthStencilView(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDepthStencilView.h`,当前页面用于固定 `OpenGLDepthStencilView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDepthStencilView object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDepthStencilView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetFramebuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetFramebuffer.md new file mode 100644 index 00000000..94e9aac6 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetFramebuffer.md @@ -0,0 +1,30 @@ +# OpenGLDepthStencilView::GetFramebuffer + +获取相关状态或对象。 + +```cpp +unsigned int GetFramebuffer() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDepthStencilView.h`,当前页面用于固定 `OpenGLDepthStencilView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `unsigned int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDepthStencilView object; + // 根据上下文补齐参数后调用 OpenGLDepthStencilView::GetFramebuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDepthStencilView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetHeight.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetHeight.md new file mode 100644 index 00000000..756720ad --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetHeight.md @@ -0,0 +1,30 @@ +# OpenGLDepthStencilView::GetHeight + +获取相关状态或对象。 + +```cpp +int GetHeight() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDepthStencilView.h`,当前页面用于固定 `OpenGLDepthStencilView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDepthStencilView object; + // 根据上下文补齐参数后调用 OpenGLDepthStencilView::GetHeight(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDepthStencilView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetMipLevel.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetMipLevel.md new file mode 100644 index 00000000..c9ea532f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetMipLevel.md @@ -0,0 +1,30 @@ +# OpenGLDepthStencilView::GetMipLevel + +获取相关状态或对象。 + +```cpp +int GetMipLevel() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDepthStencilView.h`,当前页面用于固定 `OpenGLDepthStencilView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDepthStencilView object; + // 根据上下文补齐参数后调用 OpenGLDepthStencilView::GetMipLevel(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDepthStencilView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetTexture.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetTexture.md new file mode 100644 index 00000000..bafd8d4a --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetTexture.md @@ -0,0 +1,30 @@ +# OpenGLDepthStencilView::GetTexture + +获取相关状态或对象。 + +```cpp +unsigned int GetTexture() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDepthStencilView.h`,当前页面用于固定 `OpenGLDepthStencilView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `unsigned int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDepthStencilView object; + // 根据上下文补齐参数后调用 OpenGLDepthStencilView::GetTexture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDepthStencilView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetWidth.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetWidth.md new file mode 100644 index 00000000..06660a72 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/GetWidth.md @@ -0,0 +1,30 @@ +# OpenGLDepthStencilView::GetWidth + +获取相关状态或对象。 + +```cpp +int GetWidth() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDepthStencilView.h`,当前页面用于固定 `OpenGLDepthStencilView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDepthStencilView object; + // 根据上下文补齐参数后调用 OpenGLDepthStencilView::GetWidth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDepthStencilView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Initialize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Initialize.md new file mode 100644 index 00000000..fcbbfdb4 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Initialize.md @@ -0,0 +1,46 @@ +# OpenGLDepthStencilView::Initialize + +初始化内部状态。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLDepthStencilView.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool Initialize(unsigned int texture, const OpenGLDepthStencilViewDesc& desc); +``` + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +bool Initialize(unsigned int texture, int mipLevel = 0); +``` + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `mipLevel` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDepthStencilView object; + // 根据上下文补齐参数后调用 OpenGLDepthStencilView::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDepthStencilView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/InitializeCubemap.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/InitializeCubemap.md new file mode 100644 index 00000000..719b42c5 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/InitializeCubemap.md @@ -0,0 +1,33 @@ +# OpenGLDepthStencilView::InitializeCubemap + +初始化内部状态。 + +```cpp +bool InitializeCubemap(unsigned int cubemap, int face, int mipLevel = 0); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDepthStencilView.h`,当前页面用于固定 `OpenGLDepthStencilView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `cubemap` - 参数语义详见头文件声明。 +- `face` - 参数语义详见头文件声明。 +- `mipLevel` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDepthStencilView object; + // 根据上下文补齐参数后调用 OpenGLDepthStencilView::InitializeCubemap(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDepthStencilView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/OpenGLDepthStencilView.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/OpenGLDepthStencilView.md new file mode 100644 index 00000000..b30b7f5c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/OpenGLDepthStencilView.md @@ -0,0 +1,49 @@ +# OpenGLDepthStencilView + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLDepthStencilView.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLDepthStencilView` public API。 + +## 概述 + +`OpenGLDepthStencilView.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `DepthStencilFormat` | `enum class` | 头文件中的公开声明。 | +| `DepthStencilType` | `enum class` | 头文件中的公开声明。 | +| `OpenGLDepthStencilViewDesc` | `struct` | 头文件中的公开声明。 | +| `OpenGLDepthStencilView` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLDepthStencilView()](Constructor.md) | 构造对象。 | +| [~OpenGLDepthStencilView()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [InitializeCubemap](InitializeCubemap.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Bind](Bind.md) | 公开方法,详见头文件声明。 | +| [Unbind](Unbind.md) | 公开方法,详见头文件声明。 | +| [ClearDepth](ClearDepth.md) | 清空内部数据。 | +| [ClearStencil](ClearStencil.md) | 清空内部数据。 | +| [ClearDepthStencil](ClearDepthStencil.md) | 清空内部数据。 | +| [GetFramebuffer](GetFramebuffer.md) | 获取相关状态或对象。 | +| [GetTexture](GetTexture.md) | 获取相关状态或对象。 | +| [GetMipLevel](GetMipLevel.md) | 获取相关状态或对象。 | +| [GetWidth](GetWidth.md) | 获取相关状态或对象。 | +| [GetHeight](GetHeight.md) | 获取相关状态或对象。 | +| [BindFramebuffer](BindFramebuffer.md) | 公开方法,详见头文件声明。 | +| [UnbindFramebuffer](UnbindFramebuffer.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Shutdown.md new file mode 100644 index 00000000..e85a778a --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLDepthStencilView::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDepthStencilView.h`,当前页面用于固定 `OpenGLDepthStencilView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDepthStencilView object; + // 根据上下文补齐参数后调用 OpenGLDepthStencilView::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDepthStencilView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Unbind.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Unbind.md new file mode 100644 index 00000000..3f8a309b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/Unbind.md @@ -0,0 +1,30 @@ +# OpenGLDepthStencilView::Unbind + +公开方法,详见头文件声明。 + +```cpp +void Unbind(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDepthStencilView.h`,当前页面用于固定 `OpenGLDepthStencilView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDepthStencilView object; + // 根据上下文补齐参数后调用 OpenGLDepthStencilView::Unbind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDepthStencilView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/UnbindFramebuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/UnbindFramebuffer.md new file mode 100644 index 00000000..bd5958ca --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDepthStencilView/UnbindFramebuffer.md @@ -0,0 +1,30 @@ +# OpenGLDepthStencilView::UnbindFramebuffer + +公开方法,详见头文件声明。 + +```cpp +static void UnbindFramebuffer(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDepthStencilView.h`,当前页面用于固定 `OpenGLDepthStencilView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDepthStencilView object; + // 根据上下文补齐参数后调用 OpenGLDepthStencilView::UnbindFramebuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDepthStencilView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/AllocateSet.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/AllocateSet.md new file mode 100644 index 00000000..5332081a --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/AllocateSet.md @@ -0,0 +1,31 @@ +# OpenGLDescriptorPool::AllocateSet + +公开方法,详见头文件声明。 + +```cpp +RHIDescriptorSet* AllocateSet(const DescriptorSetLayoutDesc& layout) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorPool.h`,当前页面用于固定 `OpenGLDescriptorPool` 类目录下的方法级 canonical 路径。 + +**参数:** +- `layout` - 参数语义详见头文件声明。 + +**返回:** `RHIDescriptorSet*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorPool object; + // 根据上下文补齐参数后调用 OpenGLDescriptorPool::AllocateSet(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorPool.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/Constructor.md new file mode 100644 index 00000000..c48f8f2f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLDescriptorPool::OpenGLDescriptorPool() + +构造对象。 + +```cpp +OpenGLDescriptorPool(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorPool.h`,当前页面用于固定 `OpenGLDescriptorPool` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorPool object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorPool.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/Destructor.md new file mode 100644 index 00000000..6de6da59 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLDescriptorPool::~OpenGLDescriptorPool() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLDescriptorPool() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorPool.h`,当前页面用于固定 `OpenGLDescriptorPool` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorPool object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorPool.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/FreeSet.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/FreeSet.md new file mode 100644 index 00000000..26db6767 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/FreeSet.md @@ -0,0 +1,31 @@ +# OpenGLDescriptorPool::FreeSet + +公开方法,详见头文件声明。 + +```cpp +void FreeSet(RHIDescriptorSet* set) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorPool.h`,当前页面用于固定 `OpenGLDescriptorPool` 类目录下的方法级 canonical 路径。 + +**参数:** +- `set` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorPool object; + // 根据上下文补齐参数后调用 OpenGLDescriptorPool::FreeSet(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorPool.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/GetDescriptorCount.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/GetDescriptorCount.md new file mode 100644 index 00000000..3be57f3f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/GetDescriptorCount.md @@ -0,0 +1,30 @@ +# OpenGLDescriptorPool::GetDescriptorCount + +获取相关状态或对象。 + +```cpp +uint32_t GetDescriptorCount() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorPool.h`,当前页面用于固定 `OpenGLDescriptorPool` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorPool object; + // 根据上下文补齐参数后调用 OpenGLDescriptorPool::GetDescriptorCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorPool.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/GetNativeHandle.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/GetNativeHandle.md new file mode 100644 index 00000000..47fdb53c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/GetNativeHandle.md @@ -0,0 +1,30 @@ +# OpenGLDescriptorPool::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorPool.h`,当前页面用于固定 `OpenGLDescriptorPool` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorPool object; + // 根据上下文补齐参数后调用 OpenGLDescriptorPool::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorPool.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/GetType.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/GetType.md new file mode 100644 index 00000000..3ec4e237 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/GetType.md @@ -0,0 +1,30 @@ +# OpenGLDescriptorPool::GetType + +获取相关状态或对象。 + +```cpp +DescriptorHeapType GetType() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorPool.h`,当前页面用于固定 `OpenGLDescriptorPool` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `DescriptorHeapType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorPool object; + // 根据上下文补齐参数后调用 OpenGLDescriptorPool::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorPool.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/Initialize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/Initialize.md new file mode 100644 index 00000000..2afc7ebd --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/Initialize.md @@ -0,0 +1,31 @@ +# OpenGLDescriptorPool::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(const DescriptorPoolDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorPool.h`,当前页面用于固定 `OpenGLDescriptorPool` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorPool object; + // 根据上下文补齐参数后调用 OpenGLDescriptorPool::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorPool.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/OpenGLDescriptorPool.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/OpenGLDescriptorPool.md new file mode 100644 index 00000000..08875391 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/OpenGLDescriptorPool.md @@ -0,0 +1,39 @@ +# OpenGLDescriptorPool + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLDescriptorPool.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLDescriptorPool` public API。 + +## 概述 + +`OpenGLDescriptorPool.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `OpenGLDescriptorPool` | `class` | 继承自 `RHIDescriptorPool` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLDescriptorPool()](Constructor.md) | 构造对象。 | +| [~OpenGLDescriptorPool()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetDescriptorCount](GetDescriptorCount.md) | 获取相关状态或对象。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [AllocateSet](AllocateSet.md) | 公开方法,详见头文件声明。 | +| [FreeSet](FreeSet.md) | 公开方法,详见头文件声明。 | +| [SetTextureUnitAllocator](SetTextureUnitAllocator.md) | 设置相关状态或配置。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/SetTextureUnitAllocator.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/SetTextureUnitAllocator.md new file mode 100644 index 00000000..f3d17353 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/SetTextureUnitAllocator.md @@ -0,0 +1,31 @@ +# OpenGLDescriptorPool::SetTextureUnitAllocator + +设置相关状态或配置。 + +```cpp +void SetTextureUnitAllocator(OpenGLTextureUnitAllocator* allocator); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorPool.h`,当前页面用于固定 `OpenGLDescriptorPool` 类目录下的方法级 canonical 路径。 + +**参数:** +- `allocator` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorPool object; + // 根据上下文补齐参数后调用 OpenGLDescriptorPool::SetTextureUnitAllocator(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorPool.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/Shutdown.md new file mode 100644 index 00000000..2956ffbd --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorPool/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLDescriptorPool::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorPool.h`,当前页面用于固定 `OpenGLDescriptorPool` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorPool object; + // 根据上下文补齐参数后调用 OpenGLDescriptorPool::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorPool.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Bind.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Bind.md new file mode 100644 index 00000000..e3636d8c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Bind.md @@ -0,0 +1,30 @@ +# OpenGLDescriptorSet::Bind + +公开方法,详见头文件声明。 + +```cpp +void Bind() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorSet.h`,当前页面用于固定 `OpenGLDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorSet object; + // 根据上下文补齐参数后调用 OpenGLDescriptorSet::Bind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorSet.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/BindWithPipelineLayout.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/BindWithPipelineLayout.md new file mode 100644 index 00000000..9ad8cb6c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/BindWithPipelineLayout.md @@ -0,0 +1,32 @@ +# OpenGLDescriptorSet::BindWithPipelineLayout + +公开方法,详见头文件声明。 + +```cpp +void BindWithPipelineLayout(const OpenGLPipelineLayout* pipelineLayout, uint32_t setIndex); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorSet.h`,当前页面用于固定 `OpenGLDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `pipelineLayout` - 参数语义详见头文件声明。 +- `setIndex` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorSet object; + // 根据上下文补齐参数后调用 OpenGLDescriptorSet::BindWithPipelineLayout(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorSet.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Constructor.md new file mode 100644 index 00000000..4a27d624 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLDescriptorSet::OpenGLDescriptorSet() + +构造对象。 + +```cpp +OpenGLDescriptorSet(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorSet.h`,当前页面用于固定 `OpenGLDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorSet object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorSet.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Destructor.md new file mode 100644 index 00000000..26957e36 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLDescriptorSet::~OpenGLDescriptorSet() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLDescriptorSet() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorSet.h`,当前页面用于固定 `OpenGLDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorSet object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorSet.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetBindingCount.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetBindingCount.md new file mode 100644 index 00000000..1e534fa9 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetBindingCount.md @@ -0,0 +1,30 @@ +# OpenGLDescriptorSet::GetBindingCount + +获取相关状态或对象。 + +```cpp +uint32_t GetBindingCount() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorSet.h`,当前页面用于固定 `OpenGLDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorSet object; + // 根据上下文补齐参数后调用 OpenGLDescriptorSet::GetBindingCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorSet.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetBindingPoint.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetBindingPoint.md new file mode 100644 index 00000000..4617c4e4 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetBindingPoint.md @@ -0,0 +1,31 @@ +# OpenGLDescriptorSet::GetBindingPoint + +获取相关状态或对象。 + +```cpp +uint32_t GetBindingPoint(uint32_t binding) const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorSet.h`,当前页面用于固定 `OpenGLDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `binding` - 参数语义详见头文件声明。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorSet object; + // 根据上下文补齐参数后调用 OpenGLDescriptorSet::GetBindingPoint(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorSet.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetBindings.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetBindings.md new file mode 100644 index 00000000..88841e67 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetBindings.md @@ -0,0 +1,30 @@ +# OpenGLDescriptorSet::GetBindings + +获取相关状态或对象。 + +```cpp +const DescriptorSetLayoutBinding* GetBindings() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorSet.h`,当前页面用于固定 `OpenGLDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const DescriptorSetLayoutBinding*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorSet object; + // 根据上下文补齐参数后调用 OpenGLDescriptorSet::GetBindings(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorSet.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetConstantBufferData.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetConstantBufferData.md new file mode 100644 index 00000000..6e4247d3 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetConstantBufferData.md @@ -0,0 +1,30 @@ +# OpenGLDescriptorSet::GetConstantBufferData + +获取相关状态或对象。 + +```cpp +void* GetConstantBufferData() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorSet.h`,当前页面用于固定 `OpenGLDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorSet object; + // 根据上下文补齐参数后调用 OpenGLDescriptorSet::GetConstantBufferData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorSet.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetConstantBufferSize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetConstantBufferSize.md new file mode 100644 index 00000000..73d46af0 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/GetConstantBufferSize.md @@ -0,0 +1,30 @@ +# OpenGLDescriptorSet::GetConstantBufferSize + +获取相关状态或对象。 + +```cpp +size_t GetConstantBufferSize() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorSet.h`,当前页面用于固定 `OpenGLDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorSet object; + // 根据上下文补齐参数后调用 OpenGLDescriptorSet::GetConstantBufferSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorSet.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Initialize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Initialize.md new file mode 100644 index 00000000..c47a3bff --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Initialize.md @@ -0,0 +1,33 @@ +# OpenGLDescriptorSet::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(OpenGLTextureUnitAllocator* allocator, uint32_t count, const DescriptorSetLayoutDesc& layout); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorSet.h`,当前页面用于固定 `OpenGLDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `allocator` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `layout` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorSet object; + // 根据上下文补齐参数后调用 OpenGLDescriptorSet::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorSet.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/IsConstantDirty.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/IsConstantDirty.md new file mode 100644 index 00000000..22bb1a61 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/IsConstantDirty.md @@ -0,0 +1,30 @@ +# OpenGLDescriptorSet::IsConstantDirty + +查询当前状态。 + +```cpp +bool IsConstantDirty() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorSet.h`,当前页面用于固定 `OpenGLDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorSet object; + // 根据上下文补齐参数后调用 OpenGLDescriptorSet::IsConstantDirty(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorSet.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/MarkConstantClean.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/MarkConstantClean.md new file mode 100644 index 00000000..d9c7fefd --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/MarkConstantClean.md @@ -0,0 +1,30 @@ +# OpenGLDescriptorSet::MarkConstantClean + +公开方法,详见头文件声明。 + +```cpp +void MarkConstantClean() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorSet.h`,当前页面用于固定 `OpenGLDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorSet object; + // 根据上下文补齐参数后调用 OpenGLDescriptorSet::MarkConstantClean(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorSet.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/OpenGLDescriptorSet.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/OpenGLDescriptorSet.md new file mode 100644 index 00000000..5ba13fcc --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/OpenGLDescriptorSet.md @@ -0,0 +1,47 @@ +# OpenGLDescriptorSet + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLDescriptorSet.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLDescriptorSet` public API。 + +## 概述 + +`OpenGLDescriptorSet.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `DescriptorBinding` | `struct` | 头文件中的公开声明。 | +| `OpenGLDescriptorSet` | `class` | 继承自 `RHIDescriptorSet` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLDescriptorSet()](Constructor.md) | 构造对象。 | +| [~OpenGLDescriptorSet()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Bind](Bind.md) | 公开方法,详见头文件声明。 | +| [Unbind](Unbind.md) | 公开方法,详见头文件声明。 | +| [BindWithPipelineLayout](BindWithPipelineLayout.md) | 公开方法,详见头文件声明。 | +| [Update](Update.md) | 更新运行时状态。 | +| [UpdateSampler](UpdateSampler.md) | 更新运行时状态。 | +| [WriteConstant](WriteConstant.md) | 公开方法,详见头文件声明。 | +| [GetBindingCount](GetBindingCount.md) | 获取相关状态或对象。 | +| [GetBindings](GetBindings.md) | 获取相关状态或对象。 | +| [GetConstantBufferData](GetConstantBufferData.md) | 获取相关状态或对象。 | +| [GetConstantBufferSize](GetConstantBufferSize.md) | 获取相关状态或对象。 | +| [IsConstantDirty](IsConstantDirty.md) | 查询当前状态。 | +| [MarkConstantClean](MarkConstantClean.md) | 公开方法,详见头文件声明。 | +| [GetBindingPoint](GetBindingPoint.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Shutdown.md new file mode 100644 index 00000000..53273a88 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLDescriptorSet::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorSet.h`,当前页面用于固定 `OpenGLDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorSet object; + // 根据上下文补齐参数后调用 OpenGLDescriptorSet::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorSet.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Unbind.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Unbind.md new file mode 100644 index 00000000..47b29bab --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Unbind.md @@ -0,0 +1,30 @@ +# OpenGLDescriptorSet::Unbind + +公开方法,详见头文件声明。 + +```cpp +void Unbind() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorSet.h`,当前页面用于固定 `OpenGLDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorSet object; + // 根据上下文补齐参数后调用 OpenGLDescriptorSet::Unbind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorSet.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Update.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Update.md new file mode 100644 index 00000000..d97a16d8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/Update.md @@ -0,0 +1,32 @@ +# OpenGLDescriptorSet::Update + +更新运行时状态。 + +```cpp +void Update(uint32_t offset, RHIResourceView* view) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorSet.h`,当前页面用于固定 `OpenGLDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `offset` - 参数语义详见头文件声明。 +- `view` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorSet object; + // 根据上下文补齐参数后调用 OpenGLDescriptorSet::Update(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorSet.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/UpdateSampler.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/UpdateSampler.md new file mode 100644 index 00000000..de01017f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/UpdateSampler.md @@ -0,0 +1,32 @@ +# OpenGLDescriptorSet::UpdateSampler + +更新运行时状态。 + +```cpp +void UpdateSampler(uint32_t offset, RHISampler* sampler) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorSet.h`,当前页面用于固定 `OpenGLDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `offset` - 参数语义详见头文件声明。 +- `sampler` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorSet object; + // 根据上下文补齐参数后调用 OpenGLDescriptorSet::UpdateSampler(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorSet.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/WriteConstant.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/WriteConstant.md new file mode 100644 index 00000000..d39464d1 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDescriptorSet/WriteConstant.md @@ -0,0 +1,34 @@ +# OpenGLDescriptorSet::WriteConstant + +公开方法,详见头文件声明。 + +```cpp +void WriteConstant(uint32_t binding, const void* data, size_t size, size_t offset = 0) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDescriptorSet.h`,当前页面用于固定 `OpenGLDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `binding` - 参数语义详见头文件声明。 +- `data` - 参数语义详见头文件声明。 +- `size` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDescriptorSet object; + // 根据上下文补齐参数后调用 OpenGLDescriptorSet::WriteConstant(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDescriptorSet.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/Constructor.md new file mode 100644 index 00000000..dceadf7e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLDevice::OpenGLDevice() + +构造对象。 + +```cpp +OpenGLDevice(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateBuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateBuffer.md new file mode 100644 index 00000000..e7f291eb --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateBuffer.md @@ -0,0 +1,31 @@ +# OpenGLDevice::CreateBuffer + +创建新对象或资源。 + +```cpp +RHIBuffer* CreateBuffer(const BufferDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIBuffer*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreateBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateCommandList.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateCommandList.md new file mode 100644 index 00000000..60bf9161 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateCommandList.md @@ -0,0 +1,31 @@ +# OpenGLDevice::CreateCommandList + +创建新对象或资源。 + +```cpp +RHICommandList* CreateCommandList(const CommandListDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHICommandList*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreateCommandList(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateCommandQueue.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateCommandQueue.md new file mode 100644 index 00000000..8bf1118f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateCommandQueue.md @@ -0,0 +1,31 @@ +# OpenGLDevice::CreateCommandQueue + +创建新对象或资源。 + +```cpp +RHICommandQueue* CreateCommandQueue(const CommandQueueDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHICommandQueue*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreateCommandQueue(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateDepthStencilView.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateDepthStencilView.md new file mode 100644 index 00000000..61bda328 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateDepthStencilView.md @@ -0,0 +1,32 @@ +# OpenGLDevice::CreateDepthStencilView + +创建新对象或资源。 + +```cpp +RHIResourceView* CreateDepthStencilView(RHITexture* texture, const ResourceViewDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIResourceView*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreateDepthStencilView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateDescriptorPool.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateDescriptorPool.md new file mode 100644 index 00000000..9edaa98c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateDescriptorPool.md @@ -0,0 +1,31 @@ +# OpenGLDevice::CreateDescriptorPool + +创建新对象或资源。 + +```cpp +RHIDescriptorPool* CreateDescriptorPool(const DescriptorPoolDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIDescriptorPool*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreateDescriptorPool(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateDescriptorSet.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateDescriptorSet.md new file mode 100644 index 00000000..619c6ea6 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateDescriptorSet.md @@ -0,0 +1,32 @@ +# OpenGLDevice::CreateDescriptorSet + +创建新对象或资源。 + +```cpp +RHIDescriptorSet* CreateDescriptorSet(RHIDescriptorPool* pool, const DescriptorSetLayoutDesc& layout) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `pool` - 参数语义详见头文件声明。 +- `layout` - 参数语义详见头文件声明。 + +**返回:** `RHIDescriptorSet*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreateDescriptorSet(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateFence.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateFence.md new file mode 100644 index 00000000..36ad9713 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateFence.md @@ -0,0 +1,31 @@ +# OpenGLDevice::CreateFence + +创建新对象或资源。 + +```cpp +RHIFence* CreateFence(const FenceDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIFence*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreateFence(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateFramebuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateFramebuffer.md new file mode 100644 index 00000000..ea69dd55 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateFramebuffer.md @@ -0,0 +1,36 @@ +# OpenGLDevice::CreateFramebuffer + +创建新对象或资源。 + +```cpp +RHIFramebuffer* CreateFramebuffer( class RHIRenderPass* renderPass, uint32_t width, uint32_t height, uint32_t colorAttachmentCount, RHIResourceView** colorAttachments, RHIResourceView* depthStencilAttachment) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `renderPass` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 +- `colorAttachmentCount` - 参数语义详见头文件声明。 +- `colorAttachments` - 参数语义详见头文件声明。 +- `depthStencilAttachment` - 参数语义详见头文件声明。 + +**返回:** `RHIFramebuffer*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreateFramebuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateIndexBufferView.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateIndexBufferView.md new file mode 100644 index 00000000..57c2c7a9 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateIndexBufferView.md @@ -0,0 +1,32 @@ +# OpenGLDevice::CreateIndexBufferView + +创建新对象或资源。 + +```cpp +RHIResourceView* CreateIndexBufferView(RHIBuffer* buffer, const ResourceViewDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIResourceView*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreateIndexBufferView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreatePipelineLayout.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreatePipelineLayout.md new file mode 100644 index 00000000..cff4b994 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreatePipelineLayout.md @@ -0,0 +1,31 @@ +# OpenGLDevice::CreatePipelineLayout + +创建新对象或资源。 + +```cpp +RHIPipelineLayout* CreatePipelineLayout(const RHIPipelineLayoutDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIPipelineLayout*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreatePipelineLayout(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreatePipelineState.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreatePipelineState.md new file mode 100644 index 00000000..8b49ac8b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreatePipelineState.md @@ -0,0 +1,31 @@ +# OpenGLDevice::CreatePipelineState + +创建新对象或资源。 + +```cpp +RHIPipelineState* CreatePipelineState(const GraphicsPipelineDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIPipelineState*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreatePipelineState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateRenderPass.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateRenderPass.md new file mode 100644 index 00000000..765d98d1 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateRenderPass.md @@ -0,0 +1,33 @@ +# OpenGLDevice::CreateRenderPass + +创建新对象或资源。 + +```cpp +RHIRenderPass* CreateRenderPass( uint32_t colorAttachmentCount, const AttachmentDesc* colorAttachments, const AttachmentDesc* depthStencilAttachment) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `colorAttachmentCount` - 参数语义详见头文件声明。 +- `colorAttachments` - 参数语义详见头文件声明。 +- `depthStencilAttachment` - 参数语义详见头文件声明。 + +**返回:** `RHIRenderPass*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreateRenderPass(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateRenderTargetView.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateRenderTargetView.md new file mode 100644 index 00000000..21297d9d --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateRenderTargetView.md @@ -0,0 +1,32 @@ +# OpenGLDevice::CreateRenderTargetView + +创建新对象或资源。 + +```cpp +RHIResourceView* CreateRenderTargetView(RHITexture* texture, const ResourceViewDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIResourceView*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreateRenderTargetView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateSampler.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateSampler.md new file mode 100644 index 00000000..4d5f050b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateSampler.md @@ -0,0 +1,31 @@ +# OpenGLDevice::CreateSampler + +创建新对象或资源。 + +```cpp +RHISampler* CreateSampler(const SamplerDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHISampler*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreateSampler(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateShader.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateShader.md new file mode 100644 index 00000000..56b5113f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateShader.md @@ -0,0 +1,31 @@ +# OpenGLDevice::CreateShader + +创建新对象或资源。 + +```cpp +RHIShader* CreateShader(const ShaderCompileDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIShader*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreateShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateShaderResourceView.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateShaderResourceView.md new file mode 100644 index 00000000..24eb81d6 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateShaderResourceView.md @@ -0,0 +1,32 @@ +# OpenGLDevice::CreateShaderResourceView + +创建新对象或资源。 + +```cpp +RHIResourceView* CreateShaderResourceView(RHITexture* texture, const ResourceViewDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIResourceView*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreateShaderResourceView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateSwapChain.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateSwapChain.md new file mode 100644 index 00000000..698cba33 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateSwapChain.md @@ -0,0 +1,32 @@ +# OpenGLDevice::CreateSwapChain + +创建新对象或资源。 + +```cpp +RHISwapChain* CreateSwapChain(const SwapChainDesc& desc, RHICommandQueue* presentQueue) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 +- `presentQueue` - 参数语义详见头文件声明。 + +**返回:** `RHISwapChain*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreateSwapChain(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateTexture.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateTexture.md new file mode 100644 index 00000000..cdb4d700 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateTexture.md @@ -0,0 +1,47 @@ +# OpenGLDevice::CreateTexture + +创建新对象或资源。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLDevice.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +RHITexture* CreateTexture(const TextureDesc& desc) override; +``` + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHITexture*` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +RHITexture* CreateTexture(const TextureDesc& desc, const void* initialData, size_t initialDataSize, uint32_t rowPitch = 0) override; +``` + +**参数:** +- `desc` - 参数语义详见头文件声明。 +- `initialData` - 参数语义详见头文件声明。 +- `initialDataSize` - 参数语义详见头文件声明。 +- `rowPitch` - 参数语义详见头文件声明。 + +**返回:** `RHITexture*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreateTexture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateUnorderedAccessView.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateUnorderedAccessView.md new file mode 100644 index 00000000..d9263e53 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateUnorderedAccessView.md @@ -0,0 +1,32 @@ +# OpenGLDevice::CreateUnorderedAccessView + +创建新对象或资源。 + +```cpp +RHIResourceView* CreateUnorderedAccessView(RHITexture* texture, const ResourceViewDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIResourceView*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreateUnorderedAccessView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateVertexBufferView.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateVertexBufferView.md new file mode 100644 index 00000000..9e21408b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/CreateVertexBufferView.md @@ -0,0 +1,32 @@ +# OpenGLDevice::CreateVertexBufferView + +创建新对象或资源。 + +```cpp +RHIResourceView* CreateVertexBufferView(RHIBuffer* buffer, const ResourceViewDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIResourceView*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::CreateVertexBufferView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/Destructor.md new file mode 100644 index 00000000..9a32388c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLDevice::~OpenGLDevice() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLDevice() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetCapabilities.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetCapabilities.md new file mode 100644 index 00000000..0c6eb094 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetCapabilities.md @@ -0,0 +1,30 @@ +# OpenGLDevice::GetCapabilities + +获取相关状态或对象。 + +```cpp +const RHICapabilities& GetCapabilities() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const RHICapabilities&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::GetCapabilities(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetDeviceInfo.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetDeviceInfo.md new file mode 100644 index 00000000..ee3b9f62 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetDeviceInfo.md @@ -0,0 +1,30 @@ +# OpenGLDevice::GetDeviceInfo + +获取相关状态或对象。 + +```cpp +const RHIDeviceInfo& GetDeviceInfo() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const RHIDeviceInfo&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::GetDeviceInfo(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetDeviceInfoImpl.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetDeviceInfoImpl.md new file mode 100644 index 00000000..75a57457 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetDeviceInfoImpl.md @@ -0,0 +1,30 @@ +# OpenGLDevice::GetDeviceInfoImpl + +获取相关状态或对象。 + +```cpp +const RHIDeviceInfo& GetDeviceInfoImpl() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const RHIDeviceInfo&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::GetDeviceInfoImpl(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetNativeContext.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetNativeContext.md new file mode 100644 index 00000000..e432e408 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetNativeContext.md @@ -0,0 +1,30 @@ +# OpenGLDevice::GetNativeContext + +获取相关状态或对象。 + +```cpp +void* GetNativeContext() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::GetNativeContext(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetNativeDevice.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetNativeDevice.md new file mode 100644 index 00000000..990bfc6f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetNativeDevice.md @@ -0,0 +1,30 @@ +# OpenGLDevice::GetNativeDevice + +获取相关状态或对象。 + +```cpp +void* GetNativeDevice() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::GetNativeDevice(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetNativeHandle.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetNativeHandle.md new file mode 100644 index 00000000..2f1a39e0 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/GetNativeHandle.md @@ -0,0 +1,30 @@ +# OpenGLDevice::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/Initialize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/Initialize.md new file mode 100644 index 00000000..0e36090b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/Initialize.md @@ -0,0 +1,31 @@ +# OpenGLDevice::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(const RHIDeviceDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/InitializeWithExistingWindow.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/InitializeWithExistingWindow.md new file mode 100644 index 00000000..55e110e5 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/InitializeWithExistingWindow.md @@ -0,0 +1,31 @@ +# OpenGLDevice::InitializeWithExistingWindow + +初始化内部状态。 + +```cpp +bool InitializeWithExistingWindow(HWND hwnd); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `hwnd` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::InitializeWithExistingWindow(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/MakeContextCurrent.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/MakeContextCurrent.md new file mode 100644 index 00000000..c8d7ce9e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/MakeContextCurrent.md @@ -0,0 +1,30 @@ +# OpenGLDevice::MakeContextCurrent + +公开方法,详见头文件声明。 + +```cpp +bool MakeContextCurrent(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::MakeContextCurrent(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/OpenGLDevice.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/OpenGLDevice.md new file mode 100644 index 00000000..369414f1 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/OpenGLDevice.md @@ -0,0 +1,61 @@ +# OpenGLDevice + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLDevice.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLDevice` public API。 + +## 概述 + +`OpenGLDevice.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `OpenGLDevice` | `class` | 继承自 `RHIDevice` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLDevice()](Constructor.md) | 构造对象。 | +| [~OpenGLDevice()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [InitializeWithExistingWindow](InitializeWithExistingWindow.md) | 初始化内部状态。 | +| [GetDeviceInfoImpl](GetDeviceInfoImpl.md) | 获取相关状态或对象。 | +| [MakeContextCurrent](MakeContextCurrent.md) | 公开方法,详见头文件声明。 | +| [GetNativeContext](GetNativeContext.md) | 获取相关状态或对象。 | +| [CreateBuffer](CreateBuffer.md) | 创建新对象或资源。 | +| [CreateTexture](CreateTexture.md) | 创建新对象或资源。 | +| [CreateSwapChain](CreateSwapChain.md) | 创建新对象或资源。 | +| [CreateCommandList](CreateCommandList.md) | 创建新对象或资源。 | +| [CreateCommandQueue](CreateCommandQueue.md) | 创建新对象或资源。 | +| [CreateShader](CreateShader.md) | 创建新对象或资源。 | +| [CreatePipelineState](CreatePipelineState.md) | 创建新对象或资源。 | +| [CreatePipelineLayout](CreatePipelineLayout.md) | 创建新对象或资源。 | +| [CreateFence](CreateFence.md) | 创建新对象或资源。 | +| [CreateSampler](CreateSampler.md) | 创建新对象或资源。 | +| [CreateRenderPass](CreateRenderPass.md) | 创建新对象或资源。 | +| [CreateFramebuffer](CreateFramebuffer.md) | 创建新对象或资源。 | +| [CreateDescriptorPool](CreateDescriptorPool.md) | 创建新对象或资源。 | +| [CreateDescriptorSet](CreateDescriptorSet.md) | 创建新对象或资源。 | +| [CreateVertexBufferView](CreateVertexBufferView.md) | 创建新对象或资源。 | +| [CreateIndexBufferView](CreateIndexBufferView.md) | 创建新对象或资源。 | +| [CreateRenderTargetView](CreateRenderTargetView.md) | 创建新对象或资源。 | +| [CreateDepthStencilView](CreateDepthStencilView.md) | 创建新对象或资源。 | +| [CreateShaderResourceView](CreateShaderResourceView.md) | 创建新对象或资源。 | +| [CreateUnorderedAccessView](CreateUnorderedAccessView.md) | 创建新对象或资源。 | +| [GetCapabilities](GetCapabilities.md) | 获取相关状态或对象。 | +| [GetDeviceInfo](GetDeviceInfo.md) | 获取相关状态或对象。 | +| [GetNativeDevice](GetNativeDevice.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/Shutdown.md new file mode 100644 index 00000000..f9d8db53 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLDevice/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLDevice::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLDevice.h`,当前页面用于固定 `OpenGLDevice` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLDevice object; + // 根据上下文补齐参数后调用 OpenGLDevice::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLDevice.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLEnums/OpenGLEnums.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLEnums/OpenGLEnums.md new file mode 100644 index 00000000..f4aa00c1 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLEnums/OpenGLEnums.md @@ -0,0 +1,18 @@ +# OpenGLEnums + +**命名空间**: `XCEngine` + +**类型**: `header` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLEnums.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLEnums` public API。 + +## 概述 + +`OpenGLEnums.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Constructor.md new file mode 100644 index 00000000..f1a35b03 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLFence::OpenGLFence() + +构造对象。 + +```cpp +OpenGLFence(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFence.h`,当前页面用于固定 `OpenGLFence` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFence object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFence.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Destructor.md new file mode 100644 index 00000000..3d6f8b4c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLFence::~OpenGLFence() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLFence() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFence.h`,当前页面用于固定 `OpenGLFence` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFence object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFence.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/GetCompletedValue.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/GetCompletedValue.md new file mode 100644 index 00000000..aed6a810 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/GetCompletedValue.md @@ -0,0 +1,30 @@ +# OpenGLFence::GetCompletedValue + +获取相关状态或对象。 + +```cpp +uint64_t GetCompletedValue() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFence.h`,当前页面用于固定 `OpenGLFence` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFence object; + // 根据上下文补齐参数后调用 OpenGLFence::GetCompletedValue(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFence.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/GetNativeHandle.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/GetNativeHandle.md new file mode 100644 index 00000000..7c1a2a7b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/GetNativeHandle.md @@ -0,0 +1,30 @@ +# OpenGLFence::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFence.h`,当前页面用于固定 `OpenGLFence` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFence object; + // 根据上下文补齐参数后调用 OpenGLFence::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFence.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Initialize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Initialize.md new file mode 100644 index 00000000..77d0eb2b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Initialize.md @@ -0,0 +1,31 @@ +# OpenGLFence::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(uint64_t initialValue = 0); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFence.h`,当前页面用于固定 `OpenGLFence` 类目录下的方法级 canonical 路径。 + +**参数:** +- `initialValue` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFence object; + // 根据上下文补齐参数后调用 OpenGLFence::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFence.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/OpenGLFence.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/OpenGLFence.md new file mode 100644 index 00000000..cfc20d51 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/OpenGLFence.md @@ -0,0 +1,37 @@ +# OpenGLFence + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLFence.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLFence` public API。 + +## 概述 + +`OpenGLFence.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `OpenGLFence` | `class` | 继承自 `RHIFence` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLFence()](Constructor.md) | 构造对象。 | +| [~OpenGLFence()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Signal](Signal.md) | 公开方法,详见头文件声明。 | +| [Wait](Wait.md) | 公开方法,详见头文件声明。 | +| [GetCompletedValue](GetCompletedValue.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Shutdown.md new file mode 100644 index 00000000..6e13d34e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLFence::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFence.h`,当前页面用于固定 `OpenGLFence` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFence object; + // 根据上下文补齐参数后调用 OpenGLFence::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFence.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Signal.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Signal.md new file mode 100644 index 00000000..6a16c7f9 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Signal.md @@ -0,0 +1,43 @@ +# OpenGLFence::Signal + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLFence.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void Signal() override; +``` + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void Signal(uint64_t value) override; +``` + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFence object; + // 根据上下文补齐参数后调用 OpenGLFence::Signal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFence.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Wait.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Wait.md new file mode 100644 index 00000000..b43098db --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFence/Wait.md @@ -0,0 +1,31 @@ +# OpenGLFence::Wait + +公开方法,详见头文件声明。 + +```cpp +void Wait(uint64_t value) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFence.h`,当前页面用于固定 `OpenGLFence` 类目录下的方法级 canonical 路径。 + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFence object; + // 根据上下文补齐参数后调用 OpenGLFence::Wait(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFence.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Bind.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Bind.md new file mode 100644 index 00000000..671573b0 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Bind.md @@ -0,0 +1,30 @@ +# OpenGLFramebuffer::Bind + +公开方法,详见头文件声明。 + +```cpp +void Bind(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFramebuffer.h`,当前页面用于固定 `OpenGLFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFramebuffer object; + // 根据上下文补齐参数后调用 OpenGLFramebuffer::Bind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFramebuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/BindFramebuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/BindFramebuffer.md new file mode 100644 index 00000000..0f45c083 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/BindFramebuffer.md @@ -0,0 +1,31 @@ +# OpenGLFramebuffer::BindFramebuffer + +公开方法,详见头文件声明。 + +```cpp +static void BindFramebuffer(unsigned int framebuffer); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFramebuffer.h`,当前页面用于固定 `OpenGLFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `framebuffer` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFramebuffer object; + // 根据上下文补齐参数后调用 OpenGLFramebuffer::BindFramebuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFramebuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/ClearColor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/ClearColor.md new file mode 100644 index 00000000..54c87c78 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/ClearColor.md @@ -0,0 +1,35 @@ +# OpenGLFramebuffer::ClearColor + +清空内部数据。 + +```cpp +void ClearColor(int attachmentIndex, float r, float g, float b, float a); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFramebuffer.h`,当前页面用于固定 `OpenGLFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `attachmentIndex` - 参数语义详见头文件声明。 +- `r` - 参数语义详见头文件声明。 +- `g` - 参数语义详见头文件声明。 +- `b` - 参数语义详见头文件声明。 +- `a` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFramebuffer object; + // 根据上下文补齐参数后调用 OpenGLFramebuffer::ClearColor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFramebuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/ClearDepth.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/ClearDepth.md new file mode 100644 index 00000000..ee2a39d7 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/ClearDepth.md @@ -0,0 +1,31 @@ +# OpenGLFramebuffer::ClearDepth + +清空内部数据。 + +```cpp +void ClearDepth(float depth); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFramebuffer.h`,当前页面用于固定 `OpenGLFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `depth` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFramebuffer object; + // 根据上下文补齐参数后调用 OpenGLFramebuffer::ClearDepth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFramebuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/ClearDepthStencil.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/ClearDepthStencil.md new file mode 100644 index 00000000..2ad17a4f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/ClearDepthStencil.md @@ -0,0 +1,32 @@ +# OpenGLFramebuffer::ClearDepthStencil + +清空内部数据。 + +```cpp +void ClearDepthStencil(float depth, uint8_t stencil); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFramebuffer.h`,当前页面用于固定 `OpenGLFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `depth` - 参数语义详见头文件声明。 +- `stencil` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFramebuffer object; + // 根据上下文补齐参数后调用 OpenGLFramebuffer::ClearDepthStencil(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFramebuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/ClearStencil.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/ClearStencil.md new file mode 100644 index 00000000..cb8015ff --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/ClearStencil.md @@ -0,0 +1,31 @@ +# OpenGLFramebuffer::ClearStencil + +清空内部数据。 + +```cpp +void ClearStencil(uint8_t stencil); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFramebuffer.h`,当前页面用于固定 `OpenGLFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `stencil` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFramebuffer object; + // 根据上下文补齐参数后调用 OpenGLFramebuffer::ClearStencil(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFramebuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Constructor.md new file mode 100644 index 00000000..c43ce84e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLFramebuffer::OpenGLFramebuffer() + +构造对象。 + +```cpp +OpenGLFramebuffer(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFramebuffer.h`,当前页面用于固定 `OpenGLFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFramebuffer object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFramebuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Destructor.md new file mode 100644 index 00000000..2b967359 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLFramebuffer::~OpenGLFramebuffer() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLFramebuffer() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFramebuffer.h`,当前页面用于固定 `OpenGLFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFramebuffer object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFramebuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/GetFramebuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/GetFramebuffer.md new file mode 100644 index 00000000..54a8e5e8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/GetFramebuffer.md @@ -0,0 +1,30 @@ +# OpenGLFramebuffer::GetFramebuffer + +获取相关状态或对象。 + +```cpp +unsigned int GetFramebuffer() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFramebuffer.h`,当前页面用于固定 `OpenGLFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `unsigned int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFramebuffer object; + // 根据上下文补齐参数后调用 OpenGLFramebuffer::GetFramebuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFramebuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/GetHeight.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/GetHeight.md new file mode 100644 index 00000000..2ead2b4c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/GetHeight.md @@ -0,0 +1,30 @@ +# OpenGLFramebuffer::GetHeight + +获取相关状态或对象。 + +```cpp +uint32_t GetHeight() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFramebuffer.h`,当前页面用于固定 `OpenGLFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFramebuffer object; + // 根据上下文补齐参数后调用 OpenGLFramebuffer::GetHeight(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFramebuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/GetNativeHandle.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/GetNativeHandle.md new file mode 100644 index 00000000..829c3b08 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/GetNativeHandle.md @@ -0,0 +1,30 @@ +# OpenGLFramebuffer::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFramebuffer.h`,当前页面用于固定 `OpenGLFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFramebuffer object; + // 根据上下文补齐参数后调用 OpenGLFramebuffer::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFramebuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/GetWidth.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/GetWidth.md new file mode 100644 index 00000000..3199a899 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/GetWidth.md @@ -0,0 +1,30 @@ +# OpenGLFramebuffer::GetWidth + +获取相关状态或对象。 + +```cpp +uint32_t GetWidth() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFramebuffer.h`,当前页面用于固定 `OpenGLFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFramebuffer object; + // 根据上下文补齐参数后调用 OpenGLFramebuffer::GetWidth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFramebuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Initialize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Initialize.md new file mode 100644 index 00000000..91be1969 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Initialize.md @@ -0,0 +1,49 @@ +# OpenGLFramebuffer::Initialize + +初始化内部状态。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLFramebuffer.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool Initialize(const FramebufferDesc& desc); +``` + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +bool Initialize(class RHIRenderPass* renderPass, uint32_t width, uint32_t height, uint32_t colorAttachmentCount, RHIResourceView** colorAttachments, RHIResourceView* depthStencilAttachment) override; +``` + +**参数:** +- `renderPass` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 +- `colorAttachmentCount` - 参数语义详见头文件声明。 +- `colorAttachments` - 参数语义详见头文件声明。 +- `depthStencilAttachment` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFramebuffer object; + // 根据上下文补齐参数后调用 OpenGLFramebuffer::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFramebuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/IsValid.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/IsValid.md new file mode 100644 index 00000000..d5d31ff2 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/IsValid.md @@ -0,0 +1,30 @@ +# OpenGLFramebuffer::IsValid + +查询当前状态。 + +```cpp +bool IsValid() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFramebuffer.h`,当前页面用于固定 `OpenGLFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFramebuffer object; + // 根据上下文补齐参数后调用 OpenGLFramebuffer::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFramebuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/OpenGLFramebuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/OpenGLFramebuffer.md new file mode 100644 index 00000000..6d4d7da7 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/OpenGLFramebuffer.md @@ -0,0 +1,49 @@ +# OpenGLFramebuffer + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLFramebuffer.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLFramebuffer` public API。 + +## 概述 + +`OpenGLFramebuffer.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `FramebufferAttachmentType` | `enum class` | 头文件中的公开声明。 | +| `FramebufferAttachment` | `struct` | 头文件中的公开声明。 | +| `FramebufferDesc` | `struct` | 头文件中的公开声明。 | +| `OpenGLFramebuffer` | `class` | 继承自 `RHIFramebuffer` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLFramebuffer()](Constructor.md) | 构造对象。 | +| [~OpenGLFramebuffer()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetWidth](GetWidth.md) | 获取相关状态或对象。 | +| [GetHeight](GetHeight.md) | 获取相关状态或对象。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [Bind](Bind.md) | 公开方法,详见头文件声明。 | +| [Unbind](Unbind.md) | 公开方法,详见头文件声明。 | +| [ClearColor](ClearColor.md) | 清空内部数据。 | +| [ClearDepth](ClearDepth.md) | 清空内部数据。 | +| [ClearStencil](ClearStencil.md) | 清空内部数据。 | +| [ClearDepthStencil](ClearDepthStencil.md) | 清空内部数据。 | +| [GetFramebuffer](GetFramebuffer.md) | 获取相关状态或对象。 | +| [BindFramebuffer](BindFramebuffer.md) | 公开方法,详见头文件声明。 | +| [UnbindFramebuffer](UnbindFramebuffer.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Shutdown.md new file mode 100644 index 00000000..5f763362 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLFramebuffer::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFramebuffer.h`,当前页面用于固定 `OpenGLFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFramebuffer object; + // 根据上下文补齐参数后调用 OpenGLFramebuffer::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFramebuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Unbind.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Unbind.md new file mode 100644 index 00000000..857a0c53 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/Unbind.md @@ -0,0 +1,30 @@ +# OpenGLFramebuffer::Unbind + +公开方法,详见头文件声明。 + +```cpp +void Unbind(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFramebuffer.h`,当前页面用于固定 `OpenGLFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFramebuffer object; + // 根据上下文补齐参数后调用 OpenGLFramebuffer::Unbind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFramebuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/UnbindFramebuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/UnbindFramebuffer.md new file mode 100644 index 00000000..7a7b8f17 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLFramebuffer/UnbindFramebuffer.md @@ -0,0 +1,30 @@ +# OpenGLFramebuffer::UnbindFramebuffer + +公开方法,详见头文件声明。 + +```cpp +static void UnbindFramebuffer(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLFramebuffer.h`,当前页面用于固定 `OpenGLFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLFramebuffer object; + // 根据上下文补齐参数后调用 OpenGLFramebuffer::UnbindFramebuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLFramebuffer.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/Constructor.md new file mode 100644 index 00000000..08d84c01 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLPipelineLayout::OpenGLPipelineLayout() + +构造对象。 + +```cpp +OpenGLPipelineLayout() = default; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineLayout.h`,当前页面用于固定 `OpenGLPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineLayout object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineLayout.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/Destructor.md new file mode 100644 index 00000000..6e148c6d --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLPipelineLayout::~OpenGLPipelineLayout() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLPipelineLayout() override = default; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineLayout.h`,当前页面用于固定 `OpenGLPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineLayout object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineLayout.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetConstantBufferBindingPoint.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetConstantBufferBindingPoint.md new file mode 100644 index 00000000..a0bb069e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetConstantBufferBindingPoint.md @@ -0,0 +1,32 @@ +# OpenGLPipelineLayout::GetConstantBufferBindingPoint + +获取相关状态或对象。 + +```cpp +uint32_t GetConstantBufferBindingPoint(uint32_t setIndex, uint32_t binding) const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineLayout.h`,当前页面用于固定 `OpenGLPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** +- `setIndex` - 参数语义详见头文件声明。 +- `binding` - 参数语义详见头文件声明。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineLayout object; + // 根据上下文补齐参数后调用 OpenGLPipelineLayout::GetConstantBufferBindingPoint(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineLayout.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetDesc.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetDesc.md new file mode 100644 index 00000000..0295e1c4 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetDesc.md @@ -0,0 +1,30 @@ +# OpenGLPipelineLayout::GetDesc + +获取相关状态或对象。 + +```cpp +const RHIPipelineLayoutDesc& GetDesc() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineLayout.h`,当前页面用于固定 `OpenGLPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const RHIPipelineLayoutDesc&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineLayout object; + // 根据上下文补齐参数后调用 OpenGLPipelineLayout::GetDesc(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineLayout.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetNativeHandle.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetNativeHandle.md new file mode 100644 index 00000000..85ed2cd2 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetNativeHandle.md @@ -0,0 +1,30 @@ +# OpenGLPipelineLayout::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineLayout.h`,当前页面用于固定 `OpenGLPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineLayout object; + // 根据上下文补齐参数后调用 OpenGLPipelineLayout::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineLayout.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetSamplerBindingPoint.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetSamplerBindingPoint.md new file mode 100644 index 00000000..3978cb50 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetSamplerBindingPoint.md @@ -0,0 +1,32 @@ +# OpenGLPipelineLayout::GetSamplerBindingPoint + +获取相关状态或对象。 + +```cpp +uint32_t GetSamplerBindingPoint(uint32_t setIndex, uint32_t binding) const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineLayout.h`,当前页面用于固定 `OpenGLPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** +- `setIndex` - 参数语义详见头文件声明。 +- `binding` - 参数语义详见头文件声明。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineLayout object; + // 根据上下文补齐参数后调用 OpenGLPipelineLayout::GetSamplerBindingPoint(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineLayout.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetSetLayoutCount.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetSetLayoutCount.md new file mode 100644 index 00000000..f05e36d8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetSetLayoutCount.md @@ -0,0 +1,30 @@ +# OpenGLPipelineLayout::GetSetLayoutCount + +获取相关状态或对象。 + +```cpp +uint32_t GetSetLayoutCount() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineLayout.h`,当前页面用于固定 `OpenGLPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineLayout object; + // 根据上下文补齐参数后调用 OpenGLPipelineLayout::GetSetLayoutCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineLayout.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetShaderResourceBindingPoint.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetShaderResourceBindingPoint.md new file mode 100644 index 00000000..8aee4177 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetShaderResourceBindingPoint.md @@ -0,0 +1,32 @@ +# OpenGLPipelineLayout::GetShaderResourceBindingPoint + +获取相关状态或对象。 + +```cpp +uint32_t GetShaderResourceBindingPoint(uint32_t setIndex, uint32_t binding) const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineLayout.h`,当前页面用于固定 `OpenGLPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** +- `setIndex` - 参数语义详见头文件声明。 +- `binding` - 参数语义详见头文件声明。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineLayout object; + // 根据上下文补齐参数后调用 OpenGLPipelineLayout::GetShaderResourceBindingPoint(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineLayout.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetUnorderedAccessBindingPoint.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetUnorderedAccessBindingPoint.md new file mode 100644 index 00000000..b4523e35 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/GetUnorderedAccessBindingPoint.md @@ -0,0 +1,32 @@ +# OpenGLPipelineLayout::GetUnorderedAccessBindingPoint + +获取相关状态或对象。 + +```cpp +uint32_t GetUnorderedAccessBindingPoint(uint32_t setIndex, uint32_t binding) const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineLayout.h`,当前页面用于固定 `OpenGLPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** +- `setIndex` - 参数语义详见头文件声明。 +- `binding` - 参数语义详见头文件声明。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineLayout object; + // 根据上下文补齐参数后调用 OpenGLPipelineLayout::GetUnorderedAccessBindingPoint(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineLayout.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/HasConstantBufferBinding.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/HasConstantBufferBinding.md new file mode 100644 index 00000000..4836b293 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/HasConstantBufferBinding.md @@ -0,0 +1,32 @@ +# OpenGLPipelineLayout::HasConstantBufferBinding + +判断是否具备指定状态或能力。 + +```cpp +bool HasConstantBufferBinding(uint32_t setIndex, uint32_t binding) const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineLayout.h`,当前页面用于固定 `OpenGLPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** +- `setIndex` - 参数语义详见头文件声明。 +- `binding` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineLayout object; + // 根据上下文补齐参数后调用 OpenGLPipelineLayout::HasConstantBufferBinding(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineLayout.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/HasSamplerBinding.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/HasSamplerBinding.md new file mode 100644 index 00000000..6b5e8c85 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/HasSamplerBinding.md @@ -0,0 +1,32 @@ +# OpenGLPipelineLayout::HasSamplerBinding + +判断是否具备指定状态或能力。 + +```cpp +bool HasSamplerBinding(uint32_t setIndex, uint32_t binding) const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineLayout.h`,当前页面用于固定 `OpenGLPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** +- `setIndex` - 参数语义详见头文件声明。 +- `binding` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineLayout object; + // 根据上下文补齐参数后调用 OpenGLPipelineLayout::HasSamplerBinding(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineLayout.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/HasShaderResourceBinding.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/HasShaderResourceBinding.md new file mode 100644 index 00000000..af921a67 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/HasShaderResourceBinding.md @@ -0,0 +1,32 @@ +# OpenGLPipelineLayout::HasShaderResourceBinding + +判断是否具备指定状态或能力。 + +```cpp +bool HasShaderResourceBinding(uint32_t setIndex, uint32_t binding) const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineLayout.h`,当前页面用于固定 `OpenGLPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** +- `setIndex` - 参数语义详见头文件声明。 +- `binding` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineLayout object; + // 根据上下文补齐参数后调用 OpenGLPipelineLayout::HasShaderResourceBinding(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineLayout.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/HasUnorderedAccessBinding.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/HasUnorderedAccessBinding.md new file mode 100644 index 00000000..39060a11 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/HasUnorderedAccessBinding.md @@ -0,0 +1,32 @@ +# OpenGLPipelineLayout::HasUnorderedAccessBinding + +判断是否具备指定状态或能力。 + +```cpp +bool HasUnorderedAccessBinding(uint32_t setIndex, uint32_t binding) const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineLayout.h`,当前页面用于固定 `OpenGLPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** +- `setIndex` - 参数语义详见头文件声明。 +- `binding` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineLayout object; + // 根据上下文补齐参数后调用 OpenGLPipelineLayout::HasUnorderedAccessBinding(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineLayout.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/Initialize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/Initialize.md new file mode 100644 index 00000000..06974486 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/Initialize.md @@ -0,0 +1,31 @@ +# OpenGLPipelineLayout::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(const RHIPipelineLayoutDesc& desc) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineLayout.h`,当前页面用于固定 `OpenGLPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineLayout object; + // 根据上下文补齐参数后调用 OpenGLPipelineLayout::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineLayout.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/OpenGLPipelineLayout.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/OpenGLPipelineLayout.md new file mode 100644 index 00000000..f903fe9f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/OpenGLPipelineLayout.md @@ -0,0 +1,45 @@ +# OpenGLPipelineLayout + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLPipelineLayout.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLPipelineLayout` public API。 + +## 概述 + +`OpenGLPipelineLayout.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `OpenGLPipelineLayout` | `class` | 继承自 `RHIPipelineLayout` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLPipelineLayout()](Constructor.md) | 构造对象。 | +| [~OpenGLPipelineLayout()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [UsesSetLayouts](UsesSetLayouts.md) | 公开方法,详见头文件声明。 | +| [GetSetLayoutCount](GetSetLayoutCount.md) | 获取相关状态或对象。 | +| [HasConstantBufferBinding](HasConstantBufferBinding.md) | 判断是否具备指定状态或能力。 | +| [GetConstantBufferBindingPoint](GetConstantBufferBindingPoint.md) | 获取相关状态或对象。 | +| [HasShaderResourceBinding](HasShaderResourceBinding.md) | 判断是否具备指定状态或能力。 | +| [GetShaderResourceBindingPoint](GetShaderResourceBindingPoint.md) | 获取相关状态或对象。 | +| [HasUnorderedAccessBinding](HasUnorderedAccessBinding.md) | 判断是否具备指定状态或能力。 | +| [GetUnorderedAccessBindingPoint](GetUnorderedAccessBindingPoint.md) | 获取相关状态或对象。 | +| [HasSamplerBinding](HasSamplerBinding.md) | 判断是否具备指定状态或能力。 | +| [GetSamplerBindingPoint](GetSamplerBindingPoint.md) | 获取相关状态或对象。 | +| [GetDesc](GetDesc.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/Shutdown.md new file mode 100644 index 00000000..b8a938b8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLPipelineLayout::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineLayout.h`,当前页面用于固定 `OpenGLPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineLayout object; + // 根据上下文补齐参数后调用 OpenGLPipelineLayout::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineLayout.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/UsesSetLayouts.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/UsesSetLayouts.md new file mode 100644 index 00000000..9fbe4d75 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineLayout/UsesSetLayouts.md @@ -0,0 +1,30 @@ +# OpenGLPipelineLayout::UsesSetLayouts + +公开方法,详见头文件声明。 + +```cpp +bool UsesSetLayouts() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineLayout.h`,当前页面用于固定 `OpenGLPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineLayout object; + // 根据上下文补齐参数后调用 OpenGLPipelineLayout::UsesSetLayouts(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineLayout.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Apply.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Apply.md new file mode 100644 index 00000000..5861f7e8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Apply.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::Apply + +公开方法,详见头文件声明。 + +```cpp +void Apply(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::Apply(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyBlend.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyBlend.md new file mode 100644 index 00000000..69c73318 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyBlend.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::ApplyBlend + +公开方法,详见头文件声明。 + +```cpp +void ApplyBlend(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::ApplyBlend(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyDepthStencil.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyDepthStencil.md new file mode 100644 index 00000000..0da2e5be --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyDepthStencil.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::ApplyDepthStencil + +公开方法,详见头文件声明。 + +```cpp +void ApplyDepthStencil(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::ApplyDepthStencil(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyRasterizer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyRasterizer.md new file mode 100644 index 00000000..842bd8ce --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyRasterizer.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::ApplyRasterizer + +公开方法,详见头文件声明。 + +```cpp +void ApplyRasterizer(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::ApplyRasterizer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyScissor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyScissor.md new file mode 100644 index 00000000..be779d64 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyScissor.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::ApplyScissor + +公开方法,详见头文件声明。 + +```cpp +void ApplyScissor(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::ApplyScissor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyViewport.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyViewport.md new file mode 100644 index 00000000..2ba93bf6 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/ApplyViewport.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::ApplyViewport + +公开方法,详见头文件声明。 + +```cpp +void ApplyViewport(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::ApplyViewport(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/AttachShader.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/AttachShader.md new file mode 100644 index 00000000..e3d33fc7 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/AttachShader.md @@ -0,0 +1,31 @@ +# OpenGLPipelineState::AttachShader + +公开方法,详见头文件声明。 + +```cpp +void AttachShader(unsigned int program); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `program` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::AttachShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Bind.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Bind.md new file mode 100644 index 00000000..dc8a7d66 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Bind.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::Bind + +公开方法,详见头文件声明。 + +```cpp +void Bind() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::Bind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Clear.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Clear.md new file mode 100644 index 00000000..6ae3f605 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Clear.md @@ -0,0 +1,31 @@ +# OpenGLPipelineState::Clear + +清空内部数据。 + +```cpp +void Clear(unsigned int buffers); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffers` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::Clear(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Constructor.md new file mode 100644 index 00000000..fb336a17 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLPipelineState::OpenGLPipelineState() + +构造对象。 + +```cpp +OpenGLPipelineState(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Destructor.md new file mode 100644 index 00000000..44828a9e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLPipelineState::~OpenGLPipelineState() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLPipelineState() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/DetachShader.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/DetachShader.md new file mode 100644 index 00000000..dff2201c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/DetachShader.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::DetachShader + +公开方法,详见头文件声明。 + +```cpp +void DetachShader(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::DetachShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/EnsureValid.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/EnsureValid.md new file mode 100644 index 00000000..e9ecae35 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/EnsureValid.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::EnsureValid + +公开方法,详见头文件声明。 + +```cpp +void EnsureValid() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::EnsureValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetBlendState.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetBlendState.md new file mode 100644 index 00000000..73a91b8d --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetBlendState.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::GetBlendState + +获取相关状态或对象。 + +```cpp +const BlendDesc& GetBlendState() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const BlendDesc&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::GetBlendState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetComputeShader.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetComputeShader.md new file mode 100644 index 00000000..0c945518 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetComputeShader.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::GetComputeShader + +获取相关状态或对象。 + +```cpp +RHIShader* GetComputeShader() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `RHIShader*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::GetComputeShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetDepthStencilState.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetDepthStencilState.md new file mode 100644 index 00000000..c5ef5559 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetDepthStencilState.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::GetDepthStencilState + +获取相关状态或对象。 + +```cpp +const DepthStencilStateDesc& GetDepthStencilState() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const DepthStencilStateDesc&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::GetDepthStencilState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetHash.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetHash.md new file mode 100644 index 00000000..da952a35 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetHash.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::GetHash + +获取相关状态或对象。 + +```cpp +PipelineStateHash GetHash() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `PipelineStateHash` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::GetHash(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetInputLayout.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetInputLayout.md new file mode 100644 index 00000000..7b9acb46 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetInputLayout.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::GetInputLayout + +获取相关状态或对象。 + +```cpp +const InputLayoutDesc& GetInputLayout() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const InputLayoutDesc&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::GetInputLayout(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetNativeHandle.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetNativeHandle.md new file mode 100644 index 00000000..2ebe8afa --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetNativeHandle.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetOpenGLBlendState.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetOpenGLBlendState.md new file mode 100644 index 00000000..1093900c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetOpenGLBlendState.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::GetOpenGLBlendState + +获取相关状态或对象。 + +```cpp +const OpenGLBlendState& GetOpenGLBlendState() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const OpenGLBlendState&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::GetOpenGLBlendState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetOpenGLDepthStencilState.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetOpenGLDepthStencilState.md new file mode 100644 index 00000000..dfb3b147 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetOpenGLDepthStencilState.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::GetOpenGLDepthStencilState + +获取相关状态或对象。 + +```cpp +const OpenGLDepthStencilState& GetOpenGLDepthStencilState() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const OpenGLDepthStencilState&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::GetOpenGLDepthStencilState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetOpenGLRasterizerState.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetOpenGLRasterizerState.md new file mode 100644 index 00000000..8ca382c6 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetOpenGLRasterizerState.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::GetOpenGLRasterizerState + +获取相关状态或对象。 + +```cpp +const OpenGLRasterizerState& GetOpenGLRasterizerState() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const OpenGLRasterizerState&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::GetOpenGLRasterizerState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetProgram.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetProgram.md new file mode 100644 index 00000000..1a0b9da9 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetProgram.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::GetProgram + +获取相关状态或对象。 + +```cpp +unsigned int GetProgram() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `unsigned int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::GetProgram(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetRasterizerState.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetRasterizerState.md new file mode 100644 index 00000000..c920c6f8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetRasterizerState.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::GetRasterizerState + +获取相关状态或对象。 + +```cpp +const RasterizerDesc& GetRasterizerState() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const RasterizerDesc&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::GetRasterizerState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetType.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetType.md new file mode 100644 index 00000000..45837bd3 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/GetType.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::GetType + +获取相关状态或对象。 + +```cpp +PipelineType GetType() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `PipelineType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/HasComputeShader.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/HasComputeShader.md new file mode 100644 index 00000000..df16ddc1 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/HasComputeShader.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::HasComputeShader + +判断是否具备指定状态或能力。 + +```cpp +bool HasComputeShader() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::HasComputeShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/IsValid.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/IsValid.md new file mode 100644 index 00000000..88be10b8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/IsValid.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::IsValid + +查询当前状态。 + +```cpp +bool IsValid() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/OpenGLPipelineState.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/OpenGLPipelineState.md new file mode 100644 index 00000000..0aef0118 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/OpenGLPipelineState.md @@ -0,0 +1,76 @@ +# OpenGLPipelineState + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLPipelineState.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLPipelineState` public API。 + +## 概述 + +`OpenGLPipelineState.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `OpenGLDepthStencilState` | `struct` | 头文件中的公开声明。 | +| `OpenGLBlendState` | `struct` | 头文件中的公开声明。 | +| `OpenGLRasterizerState` | `struct` | 头文件中的公开声明。 | +| `ViewportState` | `struct` | 头文件中的公开声明。 | +| `ScissorState` | `struct` | 头文件中的公开声明。 | +| `OpenGLPipelineState` | `class` | 继承自 `RHIPipelineState` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLPipelineState()](Constructor.md) | 构造对象。 | +| [~OpenGLPipelineState()](Destructor.md) | 销毁对象并释放相关资源。 | +| [SetInputLayout](SetInputLayout.md) | 设置相关状态或配置。 | +| [SetRasterizerState](SetRasterizerState.md) | 设置相关状态或配置。 | +| [SetBlendState](SetBlendState.md) | 设置相关状态或配置。 | +| [SetDepthStencilState](SetDepthStencilState.md) | 设置相关状态或配置。 | +| [SetTopology](SetTopology.md) | 设置相关状态或配置。 | +| [SetRenderTargetFormats](SetRenderTargetFormats.md) | 设置相关状态或配置。 | +| [SetSampleCount](SetSampleCount.md) | 设置相关状态或配置。 | +| [SetComputeShader](SetComputeShader.md) | 设置相关状态或配置。 | +| [GetRasterizerState](GetRasterizerState.md) | 获取相关状态或对象。 | +| [GetBlendState](GetBlendState.md) | 获取相关状态或对象。 | +| [GetDepthStencilState](GetDepthStencilState.md) | 获取相关状态或对象。 | +| [GetInputLayout](GetInputLayout.md) | 获取相关状态或对象。 | +| [GetHash](GetHash.md) | 获取相关状态或对象。 | +| [GetComputeShader](GetComputeShader.md) | 获取相关状态或对象。 | +| [HasComputeShader](HasComputeShader.md) | 判断是否具备指定状态或能力。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [EnsureValid](EnsureValid.md) | 公开方法,详见头文件声明。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [Bind](Bind.md) | 公开方法,详见头文件声明。 | +| [Unbind](Unbind.md) | 公开方法,详见头文件声明。 | +| [Apply](Apply.md) | 公开方法,详见头文件声明。 | +| [ApplyDepthStencil](ApplyDepthStencil.md) | 公开方法,详见头文件声明。 | +| [ApplyBlend](ApplyBlend.md) | 公开方法,详见头文件声明。 | +| [ApplyRasterizer](ApplyRasterizer.md) | 公开方法,详见头文件声明。 | +| [ApplyViewport](ApplyViewport.md) | 公开方法,详见头文件声明。 | +| [ApplyScissor](ApplyScissor.md) | 公开方法,详见头文件声明。 | +| [SetProgram](SetProgram.md) | 设置相关状态或配置。 | +| [GetProgram](GetProgram.md) | 获取相关状态或对象。 | +| [SetViewport](SetViewport.md) | 设置相关状态或配置。 | +| [SetScissor](SetScissor.md) | 设置相关状态或配置。 | +| [SetClearColor](SetClearColor.md) | 设置相关状态或配置。 | +| [Clear](Clear.md) | 清空内部数据。 | +| [AttachShader](AttachShader.md) | 公开方法,详见头文件声明。 | +| [DetachShader](DetachShader.md) | 公开方法,详见头文件声明。 | +| [SetOwnedGraphicsShader](SetOwnedGraphicsShader.md) | 设置相关状态或配置。 | +| [GetOpenGLDepthStencilState](GetOpenGLDepthStencilState.md) | 获取相关状态或对象。 | +| [GetOpenGLBlendState](GetOpenGLBlendState.md) | 获取相关状态或对象。 | +| [GetOpenGLRasterizerState](GetOpenGLRasterizerState.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetBlendState.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetBlendState.md new file mode 100644 index 00000000..66339d3f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetBlendState.md @@ -0,0 +1,44 @@ +# OpenGLPipelineState::SetBlendState + +设置相关状态或配置。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void SetBlendState(const BlendDesc& state) override; +``` + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void SetBlendState(const OpenGLBlendState& state); +``` + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::SetBlendState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetClearColor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetClearColor.md new file mode 100644 index 00000000..6bbba069 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetClearColor.md @@ -0,0 +1,34 @@ +# OpenGLPipelineState::SetClearColor + +设置相关状态或配置。 + +```cpp +void SetClearColor(float r, float g, float b, float a); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `r` - 参数语义详见头文件声明。 +- `g` - 参数语义详见头文件声明。 +- `b` - 参数语义详见头文件声明。 +- `a` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::SetClearColor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetComputeShader.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetComputeShader.md new file mode 100644 index 00000000..a486525c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetComputeShader.md @@ -0,0 +1,31 @@ +# OpenGLPipelineState::SetComputeShader + +设置相关状态或配置。 + +```cpp +void SetComputeShader(RHIShader* shader) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `shader` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::SetComputeShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetDepthStencilState.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetDepthStencilState.md new file mode 100644 index 00000000..8051eba8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetDepthStencilState.md @@ -0,0 +1,44 @@ +# OpenGLPipelineState::SetDepthStencilState + +设置相关状态或配置。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void SetDepthStencilState(const DepthStencilStateDesc& state) override; +``` + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void SetDepthStencilState(const OpenGLDepthStencilState& state); +``` + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::SetDepthStencilState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetInputLayout.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetInputLayout.md new file mode 100644 index 00000000..9e974b79 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetInputLayout.md @@ -0,0 +1,31 @@ +# OpenGLPipelineState::SetInputLayout + +设置相关状态或配置。 + +```cpp +void SetInputLayout(const InputLayoutDesc& layout) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `layout` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::SetInputLayout(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetOwnedGraphicsShader.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetOwnedGraphicsShader.md new file mode 100644 index 00000000..4fbee38a --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetOwnedGraphicsShader.md @@ -0,0 +1,31 @@ +# OpenGLPipelineState::SetOwnedGraphicsShader + +设置相关状态或配置。 + +```cpp +void SetOwnedGraphicsShader(std::unique_ptr shader); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `shader` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::SetOwnedGraphicsShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetProgram.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetProgram.md new file mode 100644 index 00000000..5515a08a --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetProgram.md @@ -0,0 +1,31 @@ +# OpenGLPipelineState::SetProgram + +设置相关状态或配置。 + +```cpp +void SetProgram(unsigned int program); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `program` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::SetProgram(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetRasterizerState.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetRasterizerState.md new file mode 100644 index 00000000..0ec445b6 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetRasterizerState.md @@ -0,0 +1,44 @@ +# OpenGLPipelineState::SetRasterizerState + +设置相关状态或配置。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void SetRasterizerState(const RasterizerDesc& state) override; +``` + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void SetRasterizerState(const OpenGLRasterizerState& state); +``` + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::SetRasterizerState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetRenderTargetFormats.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetRenderTargetFormats.md new file mode 100644 index 00000000..8b9a7c0b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetRenderTargetFormats.md @@ -0,0 +1,33 @@ +# OpenGLPipelineState::SetRenderTargetFormats + +设置相关状态或配置。 + +```cpp +void SetRenderTargetFormats(uint32_t count, const uint32_t* formats, uint32_t depthFormat) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `formats` - 参数语义详见头文件声明。 +- `depthFormat` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::SetRenderTargetFormats(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetSampleCount.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetSampleCount.md new file mode 100644 index 00000000..4d8655c7 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetSampleCount.md @@ -0,0 +1,31 @@ +# OpenGLPipelineState::SetSampleCount + +设置相关状态或配置。 + +```cpp +void SetSampleCount(uint32_t count) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::SetSampleCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetScissor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetScissor.md new file mode 100644 index 00000000..7369bac0 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetScissor.md @@ -0,0 +1,31 @@ +# OpenGLPipelineState::SetScissor + +设置相关状态或配置。 + +```cpp +void SetScissor(const ScissorState& state); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::SetScissor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetTopology.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetTopology.md new file mode 100644 index 00000000..b67b9fef --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetTopology.md @@ -0,0 +1,31 @@ +# OpenGLPipelineState::SetTopology + +设置相关状态或配置。 + +```cpp +void SetTopology(uint32_t topologyType) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `topologyType` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::SetTopology(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetViewport.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetViewport.md new file mode 100644 index 00000000..c3a05e98 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/SetViewport.md @@ -0,0 +1,31 @@ +# OpenGLPipelineState::SetViewport + +设置相关状态或配置。 + +```cpp +void SetViewport(const ViewportState& state); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::SetViewport(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Shutdown.md new file mode 100644 index 00000000..1f197269 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Unbind.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Unbind.md new file mode 100644 index 00000000..60344212 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLPipelineState/Unbind.md @@ -0,0 +1,30 @@ +# OpenGLPipelineState::Unbind + +公开方法,详见头文件声明。 + +```cpp +void Unbind() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLPipelineState.h`,当前页面用于固定 `OpenGLPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLPipelineState object; + // 根据上下文补齐参数后调用 OpenGLPipelineState::Unbind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLPipelineState.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/Constructor.md new file mode 100644 index 00000000..97934bd0 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLRenderPass::OpenGLRenderPass() + +构造对象。 + +```cpp +OpenGLRenderPass(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderPass.h`,当前页面用于固定 `OpenGLRenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderPass object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderPass.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/Destructor.md new file mode 100644 index 00000000..b86f98a4 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLRenderPass::~OpenGLRenderPass() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLRenderPass() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderPass.h`,当前页面用于固定 `OpenGLRenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderPass object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderPass.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/GetColorAttachmentCount.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/GetColorAttachmentCount.md new file mode 100644 index 00000000..fa09fa52 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/GetColorAttachmentCount.md @@ -0,0 +1,30 @@ +# OpenGLRenderPass::GetColorAttachmentCount + +获取相关状态或对象。 + +```cpp +uint32_t GetColorAttachmentCount() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderPass.h`,当前页面用于固定 `OpenGLRenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderPass object; + // 根据上下文补齐参数后调用 OpenGLRenderPass::GetColorAttachmentCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderPass.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/GetColorAttachments.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/GetColorAttachments.md new file mode 100644 index 00000000..502c0d5e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/GetColorAttachments.md @@ -0,0 +1,30 @@ +# OpenGLRenderPass::GetColorAttachments + +获取相关状态或对象。 + +```cpp +const AttachmentDesc* GetColorAttachments() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderPass.h`,当前页面用于固定 `OpenGLRenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const AttachmentDesc*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderPass object; + // 根据上下文补齐参数后调用 OpenGLRenderPass::GetColorAttachments(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderPass.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/GetDepthStencilAttachment.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/GetDepthStencilAttachment.md new file mode 100644 index 00000000..a77759d3 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/GetDepthStencilAttachment.md @@ -0,0 +1,30 @@ +# OpenGLRenderPass::GetDepthStencilAttachment + +获取相关状态或对象。 + +```cpp +const AttachmentDesc* GetDepthStencilAttachment() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderPass.h`,当前页面用于固定 `OpenGLRenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const AttachmentDesc*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderPass object; + // 根据上下文补齐参数后调用 OpenGLRenderPass::GetDepthStencilAttachment(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderPass.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/GetNativeHandle.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/GetNativeHandle.md new file mode 100644 index 00000000..ece184aa --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/GetNativeHandle.md @@ -0,0 +1,30 @@ +# OpenGLRenderPass::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderPass.h`,当前页面用于固定 `OpenGLRenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderPass object; + // 根据上下文补齐参数后调用 OpenGLRenderPass::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderPass.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/Initialize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/Initialize.md new file mode 100644 index 00000000..66dffd8d --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/Initialize.md @@ -0,0 +1,33 @@ +# OpenGLRenderPass::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(uint32_t colorAttachmentCount, const AttachmentDesc* colorAttachments, const AttachmentDesc* depthStencilAttachment) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderPass.h`,当前页面用于固定 `OpenGLRenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** +- `colorAttachmentCount` - 参数语义详见头文件声明。 +- `colorAttachments` - 参数语义详见头文件声明。 +- `depthStencilAttachment` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderPass object; + // 根据上下文补齐参数后调用 OpenGLRenderPass::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderPass.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/OpenGLRenderPass.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/OpenGLRenderPass.md new file mode 100644 index 00000000..7fe845e5 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/OpenGLRenderPass.md @@ -0,0 +1,37 @@ +# OpenGLRenderPass + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLRenderPass.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLRenderPass` public API。 + +## 概述 + +`OpenGLRenderPass.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `OpenGLRenderPass` | `class` | 继承自 `RHIRenderPass` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLRenderPass()](Constructor.md) | 构造对象。 | +| [~OpenGLRenderPass()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [GetColorAttachmentCount](GetColorAttachmentCount.md) | 获取相关状态或对象。 | +| [GetColorAttachments](GetColorAttachments.md) | 获取相关状态或对象。 | +| [GetDepthStencilAttachment](GetDepthStencilAttachment.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/Shutdown.md new file mode 100644 index 00000000..f41158e6 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderPass/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLRenderPass::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderPass.h`,当前页面用于固定 `OpenGLRenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderPass object; + // 根据上下文补齐参数后调用 OpenGLRenderPass::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderPass.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Bind.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Bind.md new file mode 100644 index 00000000..aa792594 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Bind.md @@ -0,0 +1,46 @@ +# OpenGLRenderTargetView::Bind + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLRenderTargetView.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void Bind(unsigned int slot = 0); +``` + +**参数:** +- `slot` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void Bind(unsigned int count, const unsigned int* framebuffers, const int* drawBuffers); +``` + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `framebuffers` - 参数语义详见头文件声明。 +- `drawBuffers` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderTargetView object; + // 根据上下文补齐参数后调用 OpenGLRenderTargetView::Bind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderTargetView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/BindFramebuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/BindFramebuffer.md new file mode 100644 index 00000000..e56dec4c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/BindFramebuffer.md @@ -0,0 +1,31 @@ +# OpenGLRenderTargetView::BindFramebuffer + +公开方法,详见头文件声明。 + +```cpp +static void BindFramebuffer(unsigned int framebuffer); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderTargetView.h`,当前页面用于固定 `OpenGLRenderTargetView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `framebuffer` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderTargetView object; + // 根据上下文补齐参数后调用 OpenGLRenderTargetView::BindFramebuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderTargetView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Clear.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Clear.md new file mode 100644 index 00000000..f82a054b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Clear.md @@ -0,0 +1,52 @@ +# OpenGLRenderTargetView::Clear + +清空内部数据。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLRenderTargetView.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void Clear(float r, float g, float b, float a); +``` + +**参数:** +- `r` - 参数语义详见头文件声明。 +- `g` - 参数语义详见头文件声明。 +- `b` - 参数语义详见头文件声明。 +- `a` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void Clear(float r, float g, float b, float a, float depth, uint8_t stencil); +``` + +**参数:** +- `r` - 参数语义详见头文件声明。 +- `g` - 参数语义详见头文件声明。 +- `b` - 参数语义详见头文件声明。 +- `a` - 参数语义详见头文件声明。 +- `depth` - 参数语义详见头文件声明。 +- `stencil` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderTargetView object; + // 根据上下文补齐参数后调用 OpenGLRenderTargetView::Clear(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderTargetView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Constructor.md new file mode 100644 index 00000000..11c1b466 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLRenderTargetView::OpenGLRenderTargetView() + +构造对象。 + +```cpp +OpenGLRenderTargetView(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderTargetView.h`,当前页面用于固定 `OpenGLRenderTargetView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderTargetView object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderTargetView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Destructor.md new file mode 100644 index 00000000..68841d2c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLRenderTargetView::~OpenGLRenderTargetView() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLRenderTargetView(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderTargetView.h`,当前页面用于固定 `OpenGLRenderTargetView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderTargetView object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderTargetView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetFramebuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetFramebuffer.md new file mode 100644 index 00000000..80729fdf --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetFramebuffer.md @@ -0,0 +1,30 @@ +# OpenGLRenderTargetView::GetFramebuffer + +获取相关状态或对象。 + +```cpp +unsigned int GetFramebuffer() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderTargetView.h`,当前页面用于固定 `OpenGLRenderTargetView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `unsigned int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderTargetView object; + // 根据上下文补齐参数后调用 OpenGLRenderTargetView::GetFramebuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderTargetView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetHeight.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetHeight.md new file mode 100644 index 00000000..a313c280 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetHeight.md @@ -0,0 +1,30 @@ +# OpenGLRenderTargetView::GetHeight + +获取相关状态或对象。 + +```cpp +int GetHeight() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderTargetView.h`,当前页面用于固定 `OpenGLRenderTargetView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderTargetView object; + // 根据上下文补齐参数后调用 OpenGLRenderTargetView::GetHeight(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderTargetView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetMipLevel.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetMipLevel.md new file mode 100644 index 00000000..571047d1 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetMipLevel.md @@ -0,0 +1,30 @@ +# OpenGLRenderTargetView::GetMipLevel + +获取相关状态或对象。 + +```cpp +int GetMipLevel() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderTargetView.h`,当前页面用于固定 `OpenGLRenderTargetView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderTargetView object; + // 根据上下文补齐参数后调用 OpenGLRenderTargetView::GetMipLevel(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderTargetView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetTexture.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetTexture.md new file mode 100644 index 00000000..0461136b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetTexture.md @@ -0,0 +1,30 @@ +# OpenGLRenderTargetView::GetTexture + +获取相关状态或对象。 + +```cpp +unsigned int GetTexture() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderTargetView.h`,当前页面用于固定 `OpenGLRenderTargetView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `unsigned int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderTargetView object; + // 根据上下文补齐参数后调用 OpenGLRenderTargetView::GetTexture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderTargetView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetWidth.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetWidth.md new file mode 100644 index 00000000..d93825f3 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/GetWidth.md @@ -0,0 +1,30 @@ +# OpenGLRenderTargetView::GetWidth + +获取相关状态或对象。 + +```cpp +int GetWidth() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderTargetView.h`,当前页面用于固定 `OpenGLRenderTargetView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderTargetView object; + // 根据上下文补齐参数后调用 OpenGLRenderTargetView::GetWidth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderTargetView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Initialize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Initialize.md new file mode 100644 index 00000000..8ad6826f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Initialize.md @@ -0,0 +1,46 @@ +# OpenGLRenderTargetView::Initialize + +初始化内部状态。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLRenderTargetView.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool Initialize(unsigned int texture, const OpenGLRenderTargetViewDesc& desc); +``` + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +bool Initialize(unsigned int texture, int mipLevel = 0); +``` + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `mipLevel` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderTargetView object; + // 根据上下文补齐参数后调用 OpenGLRenderTargetView::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderTargetView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/InitializeCubemap.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/InitializeCubemap.md new file mode 100644 index 00000000..b3afce53 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/InitializeCubemap.md @@ -0,0 +1,33 @@ +# OpenGLRenderTargetView::InitializeCubemap + +初始化内部状态。 + +```cpp +bool InitializeCubemap(unsigned int cubemap, int face, int mipLevel = 0); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderTargetView.h`,当前页面用于固定 `OpenGLRenderTargetView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `cubemap` - 参数语义详见头文件声明。 +- `face` - 参数语义详见头文件声明。 +- `mipLevel` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderTargetView object; + // 根据上下文补齐参数后调用 OpenGLRenderTargetView::InitializeCubemap(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderTargetView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/OpenGLRenderTargetView.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/OpenGLRenderTargetView.md new file mode 100644 index 00000000..9532286f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/OpenGLRenderTargetView.md @@ -0,0 +1,46 @@ +# OpenGLRenderTargetView + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLRenderTargetView.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLRenderTargetView` public API。 + +## 概述 + +`OpenGLRenderTargetView.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RenderTargetType` | `enum class` | 头文件中的公开声明。 | +| `OpenGLRenderTargetViewDesc` | `struct` | 头文件中的公开声明。 | +| `OpenGLRenderTargetView` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLRenderTargetView()](Constructor.md) | 构造对象。 | +| [~OpenGLRenderTargetView()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [InitializeCubemap](InitializeCubemap.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Bind](Bind.md) | 公开方法,详见头文件声明。 | +| [Unbind](Unbind.md) | 公开方法,详见头文件声明。 | +| [Clear](Clear.md) | 清空内部数据。 | +| [GetFramebuffer](GetFramebuffer.md) | 获取相关状态或对象。 | +| [GetTexture](GetTexture.md) | 获取相关状态或对象。 | +| [GetMipLevel](GetMipLevel.md) | 获取相关状态或对象。 | +| [GetWidth](GetWidth.md) | 获取相关状态或对象。 | +| [GetHeight](GetHeight.md) | 获取相关状态或对象。 | +| [BindFramebuffer](BindFramebuffer.md) | 公开方法,详见头文件声明。 | +| [UnbindFramebuffer](UnbindFramebuffer.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Shutdown.md new file mode 100644 index 00000000..1d1f6822 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLRenderTargetView::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderTargetView.h`,当前页面用于固定 `OpenGLRenderTargetView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderTargetView object; + // 根据上下文补齐参数后调用 OpenGLRenderTargetView::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderTargetView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Unbind.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Unbind.md new file mode 100644 index 00000000..0ef4e355 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/Unbind.md @@ -0,0 +1,30 @@ +# OpenGLRenderTargetView::Unbind + +公开方法,详见头文件声明。 + +```cpp +void Unbind(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderTargetView.h`,当前页面用于固定 `OpenGLRenderTargetView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderTargetView object; + // 根据上下文补齐参数后调用 OpenGLRenderTargetView::Unbind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderTargetView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/UnbindFramebuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/UnbindFramebuffer.md new file mode 100644 index 00000000..c8880519 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLRenderTargetView/UnbindFramebuffer.md @@ -0,0 +1,30 @@ +# OpenGLRenderTargetView::UnbindFramebuffer + +公开方法,详见头文件声明。 + +```cpp +static void UnbindFramebuffer(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLRenderTargetView.h`,当前页面用于固定 `OpenGLRenderTargetView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLRenderTargetView object; + // 根据上下文补齐参数后调用 OpenGLRenderTargetView::UnbindFramebuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLRenderTargetView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/Constructor.md new file mode 100644 index 00000000..c2bef8c1 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLResourceView::OpenGLResourceView() + +构造对象。 + +```cpp +OpenGLResourceView(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/Destructor.md new file mode 100644 index 00000000..50e0186b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLResourceView::~OpenGLResourceView() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLResourceView() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBindingPoint.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBindingPoint.md new file mode 100644 index 00000000..14eec01e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBindingPoint.md @@ -0,0 +1,30 @@ +# OpenGLResourceView::GetBindingPoint + +获取相关状态或对象。 + +```cpp +int32_t GetBindingPoint() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `int32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::GetBindingPoint(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBuffer.md new file mode 100644 index 00000000..9fa15986 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBuffer.md @@ -0,0 +1,30 @@ +# OpenGLResourceView::GetBuffer + +获取相关状态或对象。 + +```cpp +unsigned int GetBuffer() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `unsigned int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::GetBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBufferOffset.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBufferOffset.md new file mode 100644 index 00000000..cb9da241 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBufferOffset.md @@ -0,0 +1,30 @@ +# OpenGLResourceView::GetBufferOffset + +获取相关状态或对象。 + +```cpp +uint64_t GetBufferOffset() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::GetBufferOffset(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBufferSize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBufferSize.md new file mode 100644 index 00000000..4752cd2e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBufferSize.md @@ -0,0 +1,30 @@ +# OpenGLResourceView::GetBufferSize + +获取相关状态或对象。 + +```cpp +uint32_t GetBufferSize() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::GetBufferSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBufferStride.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBufferStride.md new file mode 100644 index 00000000..8bae9feb --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetBufferStride.md @@ -0,0 +1,30 @@ +# OpenGLResourceView::GetBufferStride + +获取相关状态或对象。 + +```cpp +uint32_t GetBufferStride() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::GetBufferStride(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetDimension.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetDimension.md new file mode 100644 index 00000000..1c52dbf5 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetDimension.md @@ -0,0 +1,30 @@ +# OpenGLResourceView::GetDimension + +获取相关状态或对象。 + +```cpp +ResourceViewDimension GetDimension() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceViewDimension` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::GetDimension(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetFormat.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetFormat.md new file mode 100644 index 00000000..337d685e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetFormat.md @@ -0,0 +1,30 @@ +# OpenGLResourceView::GetFormat + +获取相关状态或对象。 + +```cpp +Format GetFormat() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Format` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::GetFormat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetFramebuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetFramebuffer.md new file mode 100644 index 00000000..c3458024 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetFramebuffer.md @@ -0,0 +1,30 @@ +# OpenGLResourceView::GetFramebuffer + +获取相关状态或对象。 + +```cpp +unsigned int GetFramebuffer() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `unsigned int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::GetFramebuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetFramebufferAttachment.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetFramebufferAttachment.md new file mode 100644 index 00000000..3fe72085 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetFramebufferAttachment.md @@ -0,0 +1,30 @@ +# OpenGLResourceView::GetFramebufferAttachment + +获取相关状态或对象。 + +```cpp +const FramebufferAttachment& GetFramebufferAttachment() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const FramebufferAttachment&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::GetFramebufferAttachment(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetNativeHandle.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetNativeHandle.md new file mode 100644 index 00000000..561230a8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetNativeHandle.md @@ -0,0 +1,30 @@ +# OpenGLResourceView::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetTexture.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetTexture.md new file mode 100644 index 00000000..437ba0ee --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetTexture.md @@ -0,0 +1,30 @@ +# OpenGLResourceView::GetTexture + +获取相关状态或对象。 + +```cpp +unsigned int GetTexture() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `unsigned int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::GetTexture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetTextureResource.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetTextureResource.md new file mode 100644 index 00000000..030bdd39 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetTextureResource.md @@ -0,0 +1,30 @@ +# OpenGLResourceView::GetTextureResource + +获取相关状态或对象。 + +```cpp +const OpenGLTexture* GetTextureResource() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const OpenGLTexture*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::GetTextureResource(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetTextureUnit.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetTextureUnit.md new file mode 100644 index 00000000..36ebe0ad --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetTextureUnit.md @@ -0,0 +1,30 @@ +# OpenGLResourceView::GetTextureUnit + +获取相关状态或对象。 + +```cpp +int32_t GetTextureUnit() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `int32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::GetTextureUnit(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetViewType.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetViewType.md new file mode 100644 index 00000000..61babac3 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/GetViewType.md @@ -0,0 +1,30 @@ +# OpenGLResourceView::GetViewType + +获取相关状态或对象。 + +```cpp +ResourceViewType GetViewType() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceViewType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::GetViewType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsConstantBuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsConstantBuffer.md new file mode 100644 index 00000000..31a63ad6 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsConstantBuffer.md @@ -0,0 +1,33 @@ +# OpenGLResourceView::InitializeAsConstantBuffer + +初始化内部状态。 + +```cpp +bool InitializeAsConstantBuffer( OpenGLBuffer* buffer, const ResourceViewDesc& desc, OpenGLUniformBufferManager* manager); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 +- `manager` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::InitializeAsConstantBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsDepthStencil.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsDepthStencil.md new file mode 100644 index 00000000..e5becdbb --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsDepthStencil.md @@ -0,0 +1,33 @@ +# OpenGLResourceView::InitializeAsDepthStencil + +初始化内部状态。 + +```cpp +bool InitializeAsDepthStencil( OpenGLTexture* texture, const ResourceViewDesc& desc, OpenGLFramebuffer* framebuffer); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 +- `framebuffer` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::InitializeAsDepthStencil(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsIndexBuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsIndexBuffer.md new file mode 100644 index 00000000..6d76706f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsIndexBuffer.md @@ -0,0 +1,32 @@ +# OpenGLResourceView::InitializeAsIndexBuffer + +初始化内部状态。 + +```cpp +bool InitializeAsIndexBuffer( OpenGLBuffer* buffer, const ResourceViewDesc& desc); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::InitializeAsIndexBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsRenderTarget.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsRenderTarget.md new file mode 100644 index 00000000..a0678911 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsRenderTarget.md @@ -0,0 +1,33 @@ +# OpenGLResourceView::InitializeAsRenderTarget + +初始化内部状态。 + +```cpp +bool InitializeAsRenderTarget( OpenGLTexture* texture, const ResourceViewDesc& desc, OpenGLFramebuffer* framebuffer); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 +- `framebuffer` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::InitializeAsRenderTarget(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsShaderResource.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsShaderResource.md new file mode 100644 index 00000000..f1200e9c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsShaderResource.md @@ -0,0 +1,33 @@ +# OpenGLResourceView::InitializeAsShaderResource + +初始化内部状态。 + +```cpp +bool InitializeAsShaderResource( OpenGLTexture* texture, const ResourceViewDesc& desc, OpenGLTextureUnitAllocator* allocator); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 +- `allocator` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::InitializeAsShaderResource(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsUnorderedAccess.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsUnorderedAccess.md new file mode 100644 index 00000000..cb841919 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsUnorderedAccess.md @@ -0,0 +1,33 @@ +# OpenGLResourceView::InitializeAsUnorderedAccess + +初始化内部状态。 + +```cpp +bool InitializeAsUnorderedAccess( OpenGLTexture* texture, const ResourceViewDesc& desc, OpenGLTextureUnitAllocator* allocator); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 +- `allocator` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::InitializeAsUnorderedAccess(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsVertexBuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsVertexBuffer.md new file mode 100644 index 00000000..372f504d --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/InitializeAsVertexBuffer.md @@ -0,0 +1,32 @@ +# OpenGLResourceView::InitializeAsVertexBuffer + +初始化内部状态。 + +```cpp +bool InitializeAsVertexBuffer( OpenGLBuffer* buffer, const ResourceViewDesc& desc); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::InitializeAsVertexBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/IsValid.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/IsValid.md new file mode 100644 index 00000000..de02ce35 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/IsValid.md @@ -0,0 +1,30 @@ +# OpenGLResourceView::IsValid + +查询当前状态。 + +```cpp +bool IsValid() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/OpenGLResourceView.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/OpenGLResourceView.md new file mode 100644 index 00000000..a19e93e9 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/OpenGLResourceView.md @@ -0,0 +1,54 @@ +# OpenGLResourceView + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLResourceView.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLResourceView` public API。 + +## 概述 + +`OpenGLResourceView.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `OpenGLResourceView` | `class` | 继承自 `RHIResourceView` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLResourceView()](Constructor.md) | 构造对象。 | +| [~OpenGLResourceView()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [InitializeAsRenderTarget](InitializeAsRenderTarget.md) | 初始化内部状态。 | +| [InitializeAsDepthStencil](InitializeAsDepthStencil.md) | 初始化内部状态。 | +| [InitializeAsShaderResource](InitializeAsShaderResource.md) | 初始化内部状态。 | +| [InitializeAsUnorderedAccess](InitializeAsUnorderedAccess.md) | 初始化内部状态。 | +| [InitializeAsConstantBuffer](InitializeAsConstantBuffer.md) | 初始化内部状态。 | +| [InitializeAsVertexBuffer](InitializeAsVertexBuffer.md) | 初始化内部状态。 | +| [InitializeAsIndexBuffer](InitializeAsIndexBuffer.md) | 初始化内部状态。 | +| [GetViewType](GetViewType.md) | 获取相关状态或对象。 | +| [GetDimension](GetDimension.md) | 获取相关状态或对象。 | +| [GetFormat](GetFormat.md) | 获取相关状态或对象。 | +| [GetFramebuffer](GetFramebuffer.md) | 获取相关状态或对象。 | +| [GetTextureUnit](GetTextureUnit.md) | 获取相关状态或对象。 | +| [GetBindingPoint](GetBindingPoint.md) | 获取相关状态或对象。 | +| [GetTexture](GetTexture.md) | 获取相关状态或对象。 | +| [GetBuffer](GetBuffer.md) | 获取相关状态或对象。 | +| [GetBufferOffset](GetBufferOffset.md) | 获取相关状态或对象。 | +| [GetBufferSize](GetBufferSize.md) | 获取相关状态或对象。 | +| [GetBufferStride](GetBufferStride.md) | 获取相关状态或对象。 | +| [GetFramebufferAttachment](GetFramebufferAttachment.md) | 获取相关状态或对象。 | +| [GetTextureResource](GetTextureResource.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/Shutdown.md new file mode 100644 index 00000000..c1f1293f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLResourceView/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLResourceView::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLResourceView.h`,当前页面用于固定 `OpenGLResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLResourceView object; + // 根据上下文补齐参数后调用 OpenGLResourceView::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLResourceView.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Bind.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Bind.md new file mode 100644 index 00000000..c8c1caa8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Bind.md @@ -0,0 +1,31 @@ +# OpenGLSampler::Bind + +公开方法,详见头文件声明。 + +```cpp +void Bind(unsigned int unit) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLSampler.h`,当前页面用于固定 `OpenGLSampler` 类目录下的方法级 canonical 路径。 + +**参数:** +- `unit` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSampler object; + // 根据上下文补齐参数后调用 OpenGLSampler::Bind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSampler.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Constructor.md new file mode 100644 index 00000000..bc168de0 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLSampler::OpenGLSampler() + +构造对象。 + +```cpp +OpenGLSampler(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLSampler.h`,当前页面用于固定 `OpenGLSampler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSampler object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSampler.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Destructor.md new file mode 100644 index 00000000..f45a2cfd --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLSampler::~OpenGLSampler() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLSampler() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLSampler.h`,当前页面用于固定 `OpenGLSampler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSampler object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSampler.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/GetID.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/GetID.md new file mode 100644 index 00000000..db110ef4 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/GetID.md @@ -0,0 +1,42 @@ +# OpenGLSampler::GetID + +获取相关状态或对象。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLSampler.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +unsigned int GetID() const; +``` + +**参数:** 无。 + +**返回:** `unsigned int` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +unsigned int GetID() override; +``` + +**参数:** 无。 + +**返回:** `unsigned int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSampler object; + // 根据上下文补齐参数后调用 OpenGLSampler::GetID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSampler.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/GetNativeHandle.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/GetNativeHandle.md new file mode 100644 index 00000000..e3569ba3 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/GetNativeHandle.md @@ -0,0 +1,30 @@ +# OpenGLSampler::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLSampler.h`,当前页面用于固定 `OpenGLSampler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSampler object; + // 根据上下文补齐参数后调用 OpenGLSampler::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSampler.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Initialize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Initialize.md new file mode 100644 index 00000000..9ae4224d --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Initialize.md @@ -0,0 +1,31 @@ +# OpenGLSampler::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(const OpenGLSamplerDesc& desc); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLSampler.h`,当前页面用于固定 `OpenGLSampler` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSampler object; + // 根据上下文补齐参数后调用 OpenGLSampler::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSampler.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/OpenGLSampler.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/OpenGLSampler.md new file mode 100644 index 00000000..b4f1f3e8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/OpenGLSampler.md @@ -0,0 +1,41 @@ +# OpenGLSampler + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLSampler.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLSampler` public API。 + +## 概述 + +`OpenGLSampler.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `SamplerWrapMode` | `enum class` | 头文件中的公开声明。 | +| `SamplerFilter` | `enum class` | 头文件中的公开声明。 | +| `SamplerCompareMode` | `enum class` | 头文件中的公开声明。 | +| `OpenGLSamplerDesc` | `struct` | 头文件中的公开声明。 | +| `OpenGLSampler` | `class` | 继承自 `RHISampler` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLSampler()](Constructor.md) | 构造对象。 | +| [~OpenGLSampler()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Bind](Bind.md) | 公开方法,详见头文件声明。 | +| [Unbind](Unbind.md) | 公开方法,详见头文件声明。 | +| [GetID](GetID.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Shutdown.md new file mode 100644 index 00000000..6d694f5f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLSampler::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLSampler.h`,当前页面用于固定 `OpenGLSampler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSampler object; + // 根据上下文补齐参数后调用 OpenGLSampler::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSampler.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Unbind.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Unbind.md new file mode 100644 index 00000000..768f3339 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSampler/Unbind.md @@ -0,0 +1,31 @@ +# OpenGLSampler::Unbind + +公开方法,详见头文件声明。 + +```cpp +void Unbind(unsigned int unit) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLSampler.h`,当前页面用于固定 `OpenGLSampler` 类目录下的方法级 canonical 路径。 + +**参数:** +- `unit` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSampler object; + // 根据上下文补齐参数后调用 OpenGLSampler::Unbind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSampler.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLScreenshot/Capture.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLScreenshot/Capture.md new file mode 100644 index 00000000..c22b8fba --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLScreenshot/Capture.md @@ -0,0 +1,63 @@ +# OpenGLScreenshot::Capture + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLScreenshot.h` 中提供了 3 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool Capture(RHIDevice* device, RHISwapChain* swapChain, const char* filename) override; +``` + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `swapChain` - 参数语义详见头文件声明。 +- `filename` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +static bool Capture(OpenGLDevice& device, OpenGLSwapChain& swapChain, const char* filename); +``` + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `swapChain` - 参数语义详见头文件声明。 +- `filename` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 3: 声明 + +```cpp +static bool Capture(OpenGLDevice& device, OpenGLSwapChain& swapChain, const char* filename, int width, int height); +``` + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `swapChain` - 参数语义详见头文件声明。 +- `filename` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLScreenshot object; + // 根据上下文补齐参数后调用 OpenGLScreenshot::Capture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLScreenshot.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLScreenshot/OpenGLScreenshot.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLScreenshot/OpenGLScreenshot.md new file mode 100644 index 00000000..7af220eb --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLScreenshot/OpenGLScreenshot.md @@ -0,0 +1,31 @@ +# OpenGLScreenshot + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLScreenshot.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLScreenshot` public API。 + +## 概述 + +`OpenGLScreenshot.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `OpenGLScreenshot` | `class` | 继承自 `RHIScreenshot` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Capture](Capture.md) | 公开方法,详见头文件声明。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLScreenshot/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLScreenshot/Shutdown.md new file mode 100644 index 00000000..c05ce2b4 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLScreenshot/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLScreenshot::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLScreenshot.h`,当前页面用于固定 `OpenGLScreenshot` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLScreenshot object; + // 根据上下文补齐参数后调用 OpenGLScreenshot::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLScreenshot.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Compile.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Compile.md new file mode 100644 index 00000000..a8978937 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Compile.md @@ -0,0 +1,73 @@ +# OpenGLShader::Compile + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLShader.h` 中提供了 4 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool Compile(const void* sourceData, size_t sourceSize, const char* entryPoint, const char* target) override; +``` + +**参数:** +- `sourceData` - 参数语义详见头文件声明。 +- `sourceSize` - 参数语义详见头文件声明。 +- `entryPoint` - 参数语义详见头文件声明。 +- `target` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +bool Compile(const char* vertexSource, const char* fragmentSource); +``` + +**参数:** +- `vertexSource` - 参数语义详见头文件声明。 +- `fragmentSource` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 3: 声明 + +```cpp +bool Compile(const char* vertexSource, const char* fragmentSource, const char* geometrySource); +``` + +**参数:** +- `vertexSource` - 参数语义详见头文件声明。 +- `fragmentSource` - 参数语义详见头文件声明。 +- `geometrySource` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 4: 声明 + +```cpp +bool Compile(const char* source, ShaderType type); +``` + +**参数:** +- `source` - 参数语义详见头文件声明。 +- `type` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLShader object; + // 根据上下文补齐参数后调用 OpenGLShader::Compile(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLShader.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/CompileCompute.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/CompileCompute.md new file mode 100644 index 00000000..d466200d --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/CompileCompute.md @@ -0,0 +1,31 @@ +# OpenGLShader::CompileCompute + +公开方法,详见头文件声明。 + +```cpp +bool CompileCompute(const char* computeSource); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLShader.h`,当前页面用于固定 `OpenGLShader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `computeSource` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLShader object; + // 根据上下文补齐参数后调用 OpenGLShader::CompileCompute(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLShader.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/CompileFromFile.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/CompileFromFile.md new file mode 100644 index 00000000..7234490e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/CompileFromFile.md @@ -0,0 +1,60 @@ +# OpenGLShader::CompileFromFile + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/RHI/OpenGL/OpenGLShader.h` 中提供了 3 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +bool CompileFromFile(const wchar_t* filePath, const char* entryPoint, const char* target) override; +``` + +**参数:** +- `filePath` - 参数语义详见头文件声明。 +- `entryPoint` - 参数语义详见头文件声明。 +- `target` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +bool CompileFromFile(const char* vertexPath, const char* fragmentPath); +``` + +**参数:** +- `vertexPath` - 参数语义详见头文件声明。 +- `fragmentPath` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +## 重载 3: 声明 + +```cpp +bool CompileFromFile(const char* vertexPath, const char* fragmentPath, const char* geometryPath); +``` + +**参数:** +- `vertexPath` - 参数语义详见头文件声明。 +- `fragmentPath` - 参数语义详见头文件声明。 +- `geometryPath` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLShader object; + // 根据上下文补齐参数后调用 OpenGLShader::CompileFromFile(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLShader.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Constructor.md new file mode 100644 index 00000000..21435f2a --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLShader::OpenGLShader() + +构造对象。 + +```cpp +OpenGLShader(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLShader.h`,当前页面用于固定 `OpenGLShader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLShader object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLShader.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Destructor.md new file mode 100644 index 00000000..47d63125 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLShader::~OpenGLShader() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLShader() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLShader.h`,当前页面用于固定 `OpenGLShader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLShader object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLShader.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetID.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetID.md new file mode 100644 index 00000000..80e96476 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetID.md @@ -0,0 +1,30 @@ +# OpenGLShader::GetID + +获取相关状态或对象。 + +```cpp +unsigned int GetID() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLShader.h`,当前页面用于固定 `OpenGLShader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `unsigned int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLShader object; + // 根据上下文补齐参数后调用 OpenGLShader::GetID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLShader.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetNativeHandle.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetNativeHandle.md new file mode 100644 index 00000000..9bf015f9 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetNativeHandle.md @@ -0,0 +1,30 @@ +# OpenGLShader::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLShader.h`,当前页面用于固定 `OpenGLShader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLShader object; + // 根据上下文补齐参数后调用 OpenGLShader::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLShader.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetType.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetType.md new file mode 100644 index 00000000..919ce493 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetType.md @@ -0,0 +1,30 @@ +# OpenGLShader::GetType + +获取相关状态或对象。 + +```cpp +ShaderType GetType() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLShader.h`,当前页面用于固定 `OpenGLShader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ShaderType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLShader object; + // 根据上下文补齐参数后调用 OpenGLShader::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLShader.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetUniformInfo.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetUniformInfo.md new file mode 100644 index 00000000..278e932b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetUniformInfo.md @@ -0,0 +1,31 @@ +# OpenGLShader::GetUniformInfo + +获取相关状态或对象。 + +```cpp +const UniformInfo* GetUniformInfo(const char* name) const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLShader.h`,当前页面用于固定 `OpenGLShader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `const UniformInfo*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLShader object; + // 根据上下文补齐参数后调用 OpenGLShader::GetUniformInfo(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLShader.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetUniformInfos.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetUniformInfos.md new file mode 100644 index 00000000..f2e4a0cc --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetUniformInfos.md @@ -0,0 +1,30 @@ +# OpenGLShader::GetUniformInfos + +获取相关状态或对象。 + +```cpp +const std::vector& GetUniformInfos() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLShader.h`,当前页面用于固定 `OpenGLShader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const std::vector&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLShader object; + // 根据上下文补齐参数后调用 OpenGLShader::GetUniformInfos(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLShader.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetUniformLocation.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetUniformLocation.md new file mode 100644 index 00000000..79c3de7a --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/GetUniformLocation.md @@ -0,0 +1,31 @@ +# OpenGLShader::GetUniformLocation + +获取相关状态或对象。 + +```cpp +int GetUniformLocation(const char* name) const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLShader.h`,当前页面用于固定 `OpenGLShader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLShader object; + // 根据上下文补齐参数后调用 OpenGLShader::GetUniformLocation(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLShader.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/IsValid.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/IsValid.md new file mode 100644 index 00000000..f8f91824 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/IsValid.md @@ -0,0 +1,30 @@ +# OpenGLShader::IsValid + +查询当前状态。 + +```cpp +bool IsValid() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLShader.h`,当前页面用于固定 `OpenGLShader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLShader object; + // 根据上下文补齐参数后调用 OpenGLShader::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLShader.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/OpenGLShader.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/OpenGLShader.md new file mode 100644 index 00000000..0bc494cd --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/OpenGLShader.md @@ -0,0 +1,43 @@ +# OpenGLShader + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLShader.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLShader` public API。 + +## 概述 + +`OpenGLShader.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `OpenGLShader` | `class` | 继承自 `RHIShader` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLShader()](Constructor.md) | 构造对象。 | +| [~OpenGLShader()](Destructor.md) | 销毁对象并释放相关资源。 | +| [CompileFromFile](CompileFromFile.md) | 公开方法,详见头文件声明。 | +| [Compile](Compile.md) | 公开方法,详见头文件声明。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [CompileCompute](CompileCompute.md) | 公开方法,详见头文件声明。 | +| [Use](Use.md) | 公开方法,详见头文件声明。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [GetUniformInfos](GetUniformInfos.md) | 获取相关状态或对象。 | +| [GetUniformInfo](GetUniformInfo.md) | 获取相关状态或对象。 | +| [GetUniformLocation](GetUniformLocation.md) | 获取相关状态或对象。 | +| [GetID](GetID.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Shutdown.md new file mode 100644 index 00000000..6c9dec38 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLShader::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLShader.h`,当前页面用于固定 `OpenGLShader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLShader object; + // 根据上下文补齐参数后调用 OpenGLShader::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLShader.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Use.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Use.md new file mode 100644 index 00000000..b170fb80 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLShader/Use.md @@ -0,0 +1,30 @@ +# OpenGLShader::Use + +公开方法,详见头文件声明。 + +```cpp +void Use() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLShader.h`,当前页面用于固定 `OpenGLShader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLShader object; + // 根据上下文补齐参数后调用 OpenGLShader::Use(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLShader.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Constructor.md new file mode 100644 index 00000000..b9217e32 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLSwapChain::OpenGLSwapChain() + +构造对象。 + +```cpp +OpenGLSwapChain(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLSwapChain.h`,当前页面用于固定 `OpenGLSwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSwapChain object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSwapChain.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Destructor.md new file mode 100644 index 00000000..8cf3ef71 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLSwapChain::~OpenGLSwapChain() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLSwapChain() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLSwapChain.h`,当前页面用于固定 `OpenGLSwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSwapChain object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSwapChain.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetCurrentBackBuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetCurrentBackBuffer.md new file mode 100644 index 00000000..d89fbad3 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetCurrentBackBuffer.md @@ -0,0 +1,30 @@ +# OpenGLSwapChain::GetCurrentBackBuffer + +获取相关状态或对象。 + +```cpp +RHITexture* GetCurrentBackBuffer() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLSwapChain.h`,当前页面用于固定 `OpenGLSwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `RHITexture*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSwapChain object; + // 根据上下文补齐参数后调用 OpenGLSwapChain::GetCurrentBackBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSwapChain.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetCurrentBackBufferIndex.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetCurrentBackBufferIndex.md new file mode 100644 index 00000000..e57a287c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetCurrentBackBufferIndex.md @@ -0,0 +1,30 @@ +# OpenGLSwapChain::GetCurrentBackBufferIndex + +获取相关状态或对象。 + +```cpp +uint32_t GetCurrentBackBufferIndex() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLSwapChain.h`,当前页面用于固定 `OpenGLSwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSwapChain object; + // 根据上下文补齐参数后调用 OpenGLSwapChain::GetCurrentBackBufferIndex(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSwapChain.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetHeight.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetHeight.md new file mode 100644 index 00000000..cfce53f4 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetHeight.md @@ -0,0 +1,30 @@ +# OpenGLSwapChain::GetHeight + +获取相关状态或对象。 + +```cpp +int GetHeight() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLSwapChain.h`,当前页面用于固定 `OpenGLSwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSwapChain object; + // 根据上下文补齐参数后调用 OpenGLSwapChain::GetHeight(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSwapChain.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetNativeHandle.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetNativeHandle.md new file mode 100644 index 00000000..e463b2dd --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetNativeHandle.md @@ -0,0 +1,30 @@ +# OpenGLSwapChain::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLSwapChain.h`,当前页面用于固定 `OpenGLSwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSwapChain object; + // 根据上下文补齐参数后调用 OpenGLSwapChain::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSwapChain.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetWidth.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetWidth.md new file mode 100644 index 00000000..5a45a38e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/GetWidth.md @@ -0,0 +1,30 @@ +# OpenGLSwapChain::GetWidth + +获取相关状态或对象。 + +```cpp +int GetWidth() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLSwapChain.h`,当前页面用于固定 `OpenGLSwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSwapChain object; + // 根据上下文补齐参数后调用 OpenGLSwapChain::GetWidth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSwapChain.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Initialize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Initialize.md new file mode 100644 index 00000000..6302b971 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Initialize.md @@ -0,0 +1,34 @@ +# OpenGLSwapChain::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(OpenGLDevice* device, HWND window, int width, int height); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLSwapChain.h`,当前页面用于固定 `OpenGLSwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `window` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSwapChain object; + // 根据上下文补齐参数后调用 OpenGLSwapChain::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSwapChain.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/OpenGLSwapChain.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/OpenGLSwapChain.md new file mode 100644 index 00000000..85045660 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/OpenGLSwapChain.md @@ -0,0 +1,43 @@ +# OpenGLSwapChain + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLSwapChain.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLSwapChain` public API。 + +## 概述 + +`OpenGLSwapChain.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `PresentMode` | `enum class` | 头文件中的公开声明。 | +| `SurfaceFormat` | `enum class` | 头文件中的公开声明。 | +| `OpenGLSwapChain` | `class` | 继承自 `RHISwapChain` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLSwapChain()](Constructor.md) | 构造对象。 | +| [~OpenGLSwapChain()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Present](Present.md) | 公开方法,详见头文件声明。 | +| [SwapBuffers](SwapBuffers.md) | 公开方法,详见头文件声明。 | +| [Resize](Resize.md) | 公开方法,详见头文件声明。 | +| [GetCurrentBackBufferIndex](GetCurrentBackBufferIndex.md) | 获取相关状态或对象。 | +| [GetCurrentBackBuffer](GetCurrentBackBuffer.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetWidth](GetWidth.md) | 获取相关状态或对象。 | +| [GetHeight](GetHeight.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Present.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Present.md new file mode 100644 index 00000000..d1170804 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Present.md @@ -0,0 +1,32 @@ +# OpenGLSwapChain::Present + +公开方法,详见头文件声明。 + +```cpp +void Present(uint32_t syncInterval = 1, uint32_t flags = 0) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLSwapChain.h`,当前页面用于固定 `OpenGLSwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** +- `syncInterval` - 参数语义详见头文件声明。 +- `flags` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSwapChain object; + // 根据上下文补齐参数后调用 OpenGLSwapChain::Present(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSwapChain.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Resize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Resize.md new file mode 100644 index 00000000..3d777ad1 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Resize.md @@ -0,0 +1,32 @@ +# OpenGLSwapChain::Resize + +公开方法,详见头文件声明。 + +```cpp +void Resize(uint32_t width, uint32_t height) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLSwapChain.h`,当前页面用于固定 `OpenGLSwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSwapChain object; + // 根据上下文补齐参数后调用 OpenGLSwapChain::Resize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSwapChain.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Shutdown.md new file mode 100644 index 00000000..6d9c4788 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLSwapChain::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLSwapChain.h`,当前页面用于固定 `OpenGLSwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSwapChain object; + // 根据上下文补齐参数后调用 OpenGLSwapChain::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSwapChain.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/SwapBuffers.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/SwapBuffers.md new file mode 100644 index 00000000..0d964fd9 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLSwapChain/SwapBuffers.md @@ -0,0 +1,30 @@ +# OpenGLSwapChain::SwapBuffers + +公开方法,详见头文件声明。 + +```cpp +void SwapBuffers(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLSwapChain.h`,当前页面用于固定 `OpenGLSwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLSwapChain object; + // 根据上下文补齐参数后调用 OpenGLSwapChain::SwapBuffers(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLSwapChain.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Bind.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Bind.md new file mode 100644 index 00000000..235d9d47 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Bind.md @@ -0,0 +1,31 @@ +# OpenGLTexture::Bind + +公开方法,详见头文件声明。 + +```cpp +void Bind(int slot = 0) const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `slot` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::Bind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/BindImage.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/BindImage.md new file mode 100644 index 00000000..98e23b5e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/BindImage.md @@ -0,0 +1,33 @@ +# OpenGLTexture::BindImage + +公开方法,详见头文件声明。 + +```cpp +void BindImage(int slot, bool read, bool write) const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `slot` - 参数语义详见头文件声明。 +- `read` - 参数语义详见头文件声明。 +- `write` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::BindImage(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Constructor.md new file mode 100644 index 00000000..2218a26f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLTexture::OpenGLTexture() + +构造对象。 + +```cpp +OpenGLTexture(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Destructor.md new file mode 100644 index 00000000..18dfc1d3 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLTexture::~OpenGLTexture() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLTexture() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GenerateMipmap.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GenerateMipmap.md new file mode 100644 index 00000000..b27b5a88 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GenerateMipmap.md @@ -0,0 +1,30 @@ +# OpenGLTexture::GenerateMipmap + +公开方法,详见头文件声明。 + +```cpp +void GenerateMipmap(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::GenerateMipmap(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetDepth.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetDepth.md new file mode 100644 index 00000000..ac0232b1 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetDepth.md @@ -0,0 +1,30 @@ +# OpenGLTexture::GetDepth + +获取相关状态或对象。 + +```cpp +uint32_t GetDepth() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::GetDepth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetFormat.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetFormat.md new file mode 100644 index 00000000..3a38c180 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetFormat.md @@ -0,0 +1,30 @@ +# OpenGLTexture::GetFormat + +获取相关状态或对象。 + +```cpp +Format GetFormat() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Format` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::GetFormat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetHeight.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetHeight.md new file mode 100644 index 00000000..ac290dee --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetHeight.md @@ -0,0 +1,30 @@ +# OpenGLTexture::GetHeight + +获取相关状态或对象。 + +```cpp +uint32_t GetHeight() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::GetHeight(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetID.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetID.md new file mode 100644 index 00000000..22edd5ae --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetID.md @@ -0,0 +1,30 @@ +# OpenGLTexture::GetID + +获取相关状态或对象。 + +```cpp +unsigned int GetID() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `unsigned int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::GetID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetMipLevels.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetMipLevels.md new file mode 100644 index 00000000..270250f0 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetMipLevels.md @@ -0,0 +1,30 @@ +# OpenGLTexture::GetMipLevels + +获取相关状态或对象。 + +```cpp +uint32_t GetMipLevels() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::GetMipLevels(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetName.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetName.md new file mode 100644 index 00000000..81cc740d --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetName.md @@ -0,0 +1,30 @@ +# OpenGLTexture::GetName + +获取相关状态或对象。 + +```cpp +const std::string& GetName() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const std::string&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetNativeHandle.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetNativeHandle.md new file mode 100644 index 00000000..e060b193 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetNativeHandle.md @@ -0,0 +1,30 @@ +# OpenGLTexture::GetNativeHandle + +获取相关状态或对象。 + +```cpp +void* GetNativeHandle() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetOpenGLType.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetOpenGLType.md new file mode 100644 index 00000000..9c6bdbec --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetOpenGLType.md @@ -0,0 +1,30 @@ +# OpenGLTexture::GetOpenGLType + +获取相关状态或对象。 + +```cpp +OpenGLTextureType GetOpenGLType() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `OpenGLTextureType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::GetOpenGLType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetState.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetState.md new file mode 100644 index 00000000..0137d921 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetState.md @@ -0,0 +1,30 @@ +# OpenGLTexture::GetState + +获取相关状态或对象。 + +```cpp +ResourceStates GetState() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceStates` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::GetState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetTextureType.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetTextureType.md new file mode 100644 index 00000000..087cbd71 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetTextureType.md @@ -0,0 +1,30 @@ +# OpenGLTexture::GetTextureType + +获取相关状态或对象。 + +```cpp +TextureType GetTextureType() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `TextureType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::GetTextureType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetWidth.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetWidth.md new file mode 100644 index 00000000..48260b29 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/GetWidth.md @@ -0,0 +1,30 @@ +# OpenGLTexture::GetWidth + +获取相关状态或对象。 + +```cpp +uint32_t GetWidth() const override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::GetWidth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Initialize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Initialize.md new file mode 100644 index 00000000..d27c9b24 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Initialize.md @@ -0,0 +1,37 @@ +# OpenGLTexture::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(OpenGLTextureType type, int width, int height, int depth, int mipLevels, OpenGLFormat format, const void* data = nullptr); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 +- `depth` - 参数语义详见头文件声明。 +- `mipLevels` - 参数语义详见头文件声明。 +- `format` - 参数语义详见头文件声明。 +- `data` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Initialize2D.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Initialize2D.md new file mode 100644 index 00000000..a8ab27be --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Initialize2D.md @@ -0,0 +1,35 @@ +# OpenGLTexture::Initialize2D + +初始化内部状态。 + +```cpp +bool Initialize2D(int width, int height, int channels, const void* data, bool generateMipmap = true); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 +- `channels` - 参数语义详见头文件声明。 +- `data` - 参数语义详见头文件声明。 +- `generateMipmap` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::Initialize2D(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/InitializeCubeMap.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/InitializeCubeMap.md new file mode 100644 index 00000000..67e56e30 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/InitializeCubeMap.md @@ -0,0 +1,34 @@ +# OpenGLTexture::InitializeCubeMap + +初始化内部状态。 + +```cpp +bool InitializeCubeMap(int size, int mipLevels, OpenGLFormat format, const void* data = nullptr); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `size` - 参数语义详见头文件声明。 +- `mipLevels` - 参数语义详见头文件声明。 +- `format` - 参数语义详见头文件声明。 +- `data` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::InitializeCubeMap(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/LoadFromFile.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/LoadFromFile.md new file mode 100644 index 00000000..47e13d81 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/LoadFromFile.md @@ -0,0 +1,32 @@ +# OpenGLTexture::LoadFromFile + +加载资源或数据。 + +```cpp +bool LoadFromFile(const char* path, bool flipVertical = false); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 +- `flipVertical` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::LoadFromFile(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/OpenGLTexture.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/OpenGLTexture.md new file mode 100644 index 00000000..f9ef02e2 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/OpenGLTexture.md @@ -0,0 +1,59 @@ +# OpenGLTexture + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLTexture.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLTexture` public API。 + +## 概述 + +`OpenGLTexture.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `OpenGLTextureType` | `enum class` | 头文件中的公开声明。 | +| `OpenGLFormat` | `enum class` | 头文件中的公开声明。 | +| `OpenGLInternalFormat` | `enum class` | 头文件中的公开声明。 | +| `OpenGLTexture` | `class` | 继承自 `RHITexture` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLTexture()](Constructor.md) | 构造对象。 | +| [~OpenGLTexture()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Initialize2D](Initialize2D.md) | 初始化内部状态。 | +| [InitializeCubeMap](InitializeCubeMap.md) | 初始化内部状态。 | +| [LoadFromFile](LoadFromFile.md) | 加载资源或数据。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Bind](Bind.md) | 公开方法,详见头文件声明。 | +| [Unbind](Unbind.md) | 公开方法,详见头文件声明。 | +| [BindImage](BindImage.md) | 公开方法,详见头文件声明。 | +| [GenerateMipmap](GenerateMipmap.md) | 公开方法,详见头文件声明。 | +| [SetFiltering](SetFiltering.md) | 设置相关状态或配置。 | +| [SetWrapping](SetWrapping.md) | 设置相关状态或配置。 | +| [GetID](GetID.md) | 获取相关状态或对象。 | +| [GetOpenGLType](GetOpenGLType.md) | 获取相关状态或对象。 | +| [GetWidth](GetWidth.md) | 获取相关状态或对象。 | +| [GetHeight](GetHeight.md) | 获取相关状态或对象。 | +| [GetDepth](GetDepth.md) | 获取相关状态或对象。 | +| [GetMipLevels](GetMipLevels.md) | 获取相关状态或对象。 | +| [GetTextureType](GetTextureType.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetState](GetState.md) | 获取相关状态或对象。 | +| [SetState](SetState.md) | 设置相关状态或配置。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [SetName](SetName.md) | 设置相关状态或配置。 | +| [GetFormat](GetFormat.md) | 获取相关状态或对象。 | +| [SetFormat](SetFormat.md) | 设置相关状态或配置。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetFiltering.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetFiltering.md new file mode 100644 index 00000000..baab98d2 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetFiltering.md @@ -0,0 +1,32 @@ +# OpenGLTexture::SetFiltering + +设置相关状态或配置。 + +```cpp +void SetFiltering(int minFilter, int magFilter); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `minFilter` - 参数语义详见头文件声明。 +- `magFilter` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::SetFiltering(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetFormat.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetFormat.md new file mode 100644 index 00000000..f94eb3c8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetFormat.md @@ -0,0 +1,31 @@ +# OpenGLTexture::SetFormat + +设置相关状态或配置。 + +```cpp +void SetFormat(Format format); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `format` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::SetFormat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetName.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetName.md new file mode 100644 index 00000000..4ef7ff4c --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetName.md @@ -0,0 +1,31 @@ +# OpenGLTexture::SetName + +设置相关状态或配置。 + +```cpp +void SetName(const std::string& name) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::SetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetState.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetState.md new file mode 100644 index 00000000..8e97aa75 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetState.md @@ -0,0 +1,31 @@ +# OpenGLTexture::SetState + +设置相关状态或配置。 + +```cpp +void SetState(ResourceStates state) override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::SetState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetWrapping.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetWrapping.md new file mode 100644 index 00000000..1ccc362a --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/SetWrapping.md @@ -0,0 +1,33 @@ +# OpenGLTexture::SetWrapping + +设置相关状态或配置。 + +```cpp +void SetWrapping(int wrapS, int wrapT, int wrapR = -1); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `wrapS` - 参数语义详见头文件声明。 +- `wrapT` - 参数语义详见头文件声明。 +- `wrapR` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::SetWrapping(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Shutdown.md new file mode 100644 index 00000000..f91bff6f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLTexture::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown() override; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Unbind.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Unbind.md new file mode 100644 index 00000000..4e47942a --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTexture/Unbind.md @@ -0,0 +1,30 @@ +# OpenGLTexture::Unbind + +公开方法,详见头文件声明。 + +```cpp +void Unbind() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTexture.h`,当前页面用于固定 `OpenGLTexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTexture object; + // 根据上下文补齐参数后调用 OpenGLTexture::Unbind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTexture.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Allocate.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Allocate.md new file mode 100644 index 00000000..44b861b7 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Allocate.md @@ -0,0 +1,30 @@ +# OpenGLTextureUnitAllocator::Allocate + +公开方法,详见头文件声明。 + +```cpp +int32_t Allocate(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator.h`,当前页面用于固定 `OpenGLTextureUnitAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `int32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTextureUnitAllocator object; + // 根据上下文补齐参数后调用 OpenGLTextureUnitAllocator::Allocate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTextureUnitAllocator.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/BindTexture.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/BindTexture.md new file mode 100644 index 00000000..b9c758f8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/BindTexture.md @@ -0,0 +1,32 @@ +# OpenGLTextureUnitAllocator::BindTexture + +公开方法,详见头文件声明。 + +```cpp +void BindTexture(int32_t unit, OpenGLTexture* texture); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator.h`,当前页面用于固定 `OpenGLTextureUnitAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `unit` - 参数语义详见头文件声明。 +- `texture` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTextureUnitAllocator object; + // 根据上下文补齐参数后调用 OpenGLTextureUnitAllocator::BindTexture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTextureUnitAllocator.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Constructor.md new file mode 100644 index 00000000..5d4e9ebd --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLTextureUnitAllocator::OpenGLTextureUnitAllocator() + +构造对象。 + +```cpp +OpenGLTextureUnitAllocator(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator.h`,当前页面用于固定 `OpenGLTextureUnitAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTextureUnitAllocator object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTextureUnitAllocator.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Destructor.md new file mode 100644 index 00000000..9cd84833 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLTextureUnitAllocator::~OpenGLTextureUnitAllocator() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLTextureUnitAllocator(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator.h`,当前页面用于固定 `OpenGLTextureUnitAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTextureUnitAllocator object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTextureUnitAllocator.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Free.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Free.md new file mode 100644 index 00000000..187e9ad8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Free.md @@ -0,0 +1,31 @@ +# OpenGLTextureUnitAllocator::Free + +公开方法,详见头文件声明。 + +```cpp +void Free(int32_t unit); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator.h`,当前页面用于固定 `OpenGLTextureUnitAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `unit` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTextureUnitAllocator object; + // 根据上下文补齐参数后调用 OpenGLTextureUnitAllocator::Free(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTextureUnitAllocator.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/GetBoundTexture.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/GetBoundTexture.md new file mode 100644 index 00000000..67d41be2 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/GetBoundTexture.md @@ -0,0 +1,31 @@ +# OpenGLTextureUnitAllocator::GetBoundTexture + +获取相关状态或对象。 + +```cpp +OpenGLTexture* GetBoundTexture(int32_t unit) const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator.h`,当前页面用于固定 `OpenGLTextureUnitAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `unit` - 参数语义详见头文件声明。 + +**返回:** `OpenGLTexture*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTextureUnitAllocator object; + // 根据上下文补齐参数后调用 OpenGLTextureUnitAllocator::GetBoundTexture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTextureUnitAllocator.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/GetMaxUnits.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/GetMaxUnits.md new file mode 100644 index 00000000..0fe6a38d --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/GetMaxUnits.md @@ -0,0 +1,30 @@ +# OpenGLTextureUnitAllocator::GetMaxUnits + +获取相关状态或对象。 + +```cpp +uint32_t GetMaxUnits() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator.h`,当前页面用于固定 `OpenGLTextureUnitAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTextureUnitAllocator object; + // 根据上下文补齐参数后调用 OpenGLTextureUnitAllocator::GetMaxUnits(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTextureUnitAllocator.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Initialize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Initialize.md new file mode 100644 index 00000000..f475cfed --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Initialize.md @@ -0,0 +1,31 @@ +# OpenGLTextureUnitAllocator::Initialize + +初始化内部状态。 + +```cpp +void Initialize(uint32_t maxUnits = 16); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator.h`,当前页面用于固定 `OpenGLTextureUnitAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `maxUnits` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTextureUnitAllocator object; + // 根据上下文补齐参数后调用 OpenGLTextureUnitAllocator::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTextureUnitAllocator.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/IsAllocated.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/IsAllocated.md new file mode 100644 index 00000000..8d6c4798 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/IsAllocated.md @@ -0,0 +1,31 @@ +# OpenGLTextureUnitAllocator::IsAllocated + +查询当前状态。 + +```cpp +bool IsAllocated(int32_t unit) const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator.h`,当前页面用于固定 `OpenGLTextureUnitAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `unit` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTextureUnitAllocator object; + // 根据上下文补齐参数后调用 OpenGLTextureUnitAllocator::IsAllocated(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTextureUnitAllocator.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/OpenGLTextureUnitAllocator.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/OpenGLTextureUnitAllocator.md new file mode 100644 index 00000000..aca702e2 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/OpenGLTextureUnitAllocator.md @@ -0,0 +1,40 @@ +# OpenGLTextureUnitAllocator + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLTextureUnitAllocator` public API。 + +## 概述 + +`OpenGLTextureUnitAllocator.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `OpenGLTextureUnitAllocator` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLTextureUnitAllocator()](Constructor.md) | 构造对象。 | +| [~OpenGLTextureUnitAllocator()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Allocate](Allocate.md) | 公开方法,详见头文件声明。 | +| [Free](Free.md) | 公开方法,详见头文件声明。 | +| [BindTexture](BindTexture.md) | 公开方法,详见头文件声明。 | +| [UnbindTexture](UnbindTexture.md) | 公开方法,详见头文件声明。 | +| [GetBoundTexture](GetBoundTexture.md) | 获取相关状态或对象。 | +| [IsAllocated](IsAllocated.md) | 查询当前状态。 | +| [GetMaxUnits](GetMaxUnits.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Shutdown.md new file mode 100644 index 00000000..a1a592b6 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLTextureUnitAllocator::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator.h`,当前页面用于固定 `OpenGLTextureUnitAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTextureUnitAllocator object; + // 根据上下文补齐参数后调用 OpenGLTextureUnitAllocator::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTextureUnitAllocator.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/UnbindTexture.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/UnbindTexture.md new file mode 100644 index 00000000..dbee03cd --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator/UnbindTexture.md @@ -0,0 +1,31 @@ +# OpenGLTextureUnitAllocator::UnbindTexture + +公开方法,详见头文件声明。 + +```cpp +void UnbindTexture(int32_t unit); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLTextureUnitAllocator.h`,当前页面用于固定 `OpenGLTextureUnitAllocator` 类目录下的方法级 canonical 路径。 + +**参数:** +- `unit` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLTextureUnitAllocator object; + // 根据上下文补齐参数后调用 OpenGLTextureUnitAllocator::UnbindTexture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLTextureUnitAllocator.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Allocate.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Allocate.md new file mode 100644 index 00000000..d877b922 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Allocate.md @@ -0,0 +1,30 @@ +# OpenGLUniformBufferManager::Allocate + +公开方法,详见头文件声明。 + +```cpp +int32_t Allocate(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLUniformBufferManager.h`,当前页面用于固定 `OpenGLUniformBufferManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `int32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLUniformBufferManager object; + // 根据上下文补齐参数后调用 OpenGLUniformBufferManager::Allocate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLUniformBufferManager.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/BindBuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/BindBuffer.md new file mode 100644 index 00000000..29b65412 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/BindBuffer.md @@ -0,0 +1,34 @@ +# OpenGLUniformBufferManager::BindBuffer + +公开方法,详见头文件声明。 + +```cpp +void BindBuffer(int32_t bindingPoint, OpenGLBuffer* buffer, uint32_t offset = 0, uint32_t size = 0); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLUniformBufferManager.h`,当前页面用于固定 `OpenGLUniformBufferManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `bindingPoint` - 参数语义详见头文件声明。 +- `buffer` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 +- `size` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLUniformBufferManager object; + // 根据上下文补齐参数后调用 OpenGLUniformBufferManager::BindBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLUniformBufferManager.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Constructor.md new file mode 100644 index 00000000..ba86808f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLUniformBufferManager::OpenGLUniformBufferManager() + +构造对象。 + +```cpp +OpenGLUniformBufferManager(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLUniformBufferManager.h`,当前页面用于固定 `OpenGLUniformBufferManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLUniformBufferManager object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLUniformBufferManager.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Destructor.md new file mode 100644 index 00000000..27795cde --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLUniformBufferManager::~OpenGLUniformBufferManager() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLUniformBufferManager(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLUniformBufferManager.h`,当前页面用于固定 `OpenGLUniformBufferManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLUniformBufferManager object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLUniformBufferManager.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Free.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Free.md new file mode 100644 index 00000000..a0b3fcd1 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Free.md @@ -0,0 +1,31 @@ +# OpenGLUniformBufferManager::Free + +公开方法,详见头文件声明。 + +```cpp +void Free(int32_t bindingPoint); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLUniformBufferManager.h`,当前页面用于固定 `OpenGLUniformBufferManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `bindingPoint` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLUniformBufferManager object; + // 根据上下文补齐参数后调用 OpenGLUniformBufferManager::Free(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLUniformBufferManager.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/GetBoundBuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/GetBoundBuffer.md new file mode 100644 index 00000000..067e3cf1 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/GetBoundBuffer.md @@ -0,0 +1,31 @@ +# OpenGLUniformBufferManager::GetBoundBuffer + +获取相关状态或对象。 + +```cpp +OpenGLBuffer* GetBoundBuffer(int32_t bindingPoint) const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLUniformBufferManager.h`,当前页面用于固定 `OpenGLUniformBufferManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `bindingPoint` - 参数语义详见头文件声明。 + +**返回:** `OpenGLBuffer*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLUniformBufferManager object; + // 根据上下文补齐参数后调用 OpenGLUniformBufferManager::GetBoundBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLUniformBufferManager.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/GetMaxBindingPoints.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/GetMaxBindingPoints.md new file mode 100644 index 00000000..a8e83400 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/GetMaxBindingPoints.md @@ -0,0 +1,30 @@ +# OpenGLUniformBufferManager::GetMaxBindingPoints + +获取相关状态或对象。 + +```cpp +uint32_t GetMaxBindingPoints() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLUniformBufferManager.h`,当前页面用于固定 `OpenGLUniformBufferManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLUniformBufferManager object; + // 根据上下文补齐参数后调用 OpenGLUniformBufferManager::GetMaxBindingPoints(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLUniformBufferManager.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Initialize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Initialize.md new file mode 100644 index 00000000..d30c7259 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Initialize.md @@ -0,0 +1,31 @@ +# OpenGLUniformBufferManager::Initialize + +初始化内部状态。 + +```cpp +void Initialize(uint32_t maxBindingPoints = 16); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLUniformBufferManager.h`,当前页面用于固定 `OpenGLUniformBufferManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `maxBindingPoints` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLUniformBufferManager object; + // 根据上下文补齐参数后调用 OpenGLUniformBufferManager::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLUniformBufferManager.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/IsAllocated.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/IsAllocated.md new file mode 100644 index 00000000..3c68f57f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/IsAllocated.md @@ -0,0 +1,31 @@ +# OpenGLUniformBufferManager::IsAllocated + +查询当前状态。 + +```cpp +bool IsAllocated(int32_t bindingPoint) const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLUniformBufferManager.h`,当前页面用于固定 `OpenGLUniformBufferManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `bindingPoint` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLUniformBufferManager object; + // 根据上下文补齐参数后调用 OpenGLUniformBufferManager::IsAllocated(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLUniformBufferManager.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/OpenGLUniformBufferManager.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/OpenGLUniformBufferManager.md new file mode 100644 index 00000000..d2523201 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/OpenGLUniformBufferManager.md @@ -0,0 +1,40 @@ +# OpenGLUniformBufferManager + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLUniformBufferManager.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLUniformBufferManager` public API。 + +## 概述 + +`OpenGLUniformBufferManager.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `OpenGLUniformBufferManager` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLUniformBufferManager()](Constructor.md) | 构造对象。 | +| [~OpenGLUniformBufferManager()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Allocate](Allocate.md) | 公开方法,详见头文件声明。 | +| [Free](Free.md) | 公开方法,详见头文件声明。 | +| [BindBuffer](BindBuffer.md) | 公开方法,详见头文件声明。 | +| [UnbindBuffer](UnbindBuffer.md) | 公开方法,详见头文件声明。 | +| [GetBoundBuffer](GetBoundBuffer.md) | 获取相关状态或对象。 | +| [IsAllocated](IsAllocated.md) | 查询当前状态。 | +| [GetMaxBindingPoints](GetMaxBindingPoints.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Shutdown.md new file mode 100644 index 00000000..7c73369f --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLUniformBufferManager::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLUniformBufferManager.h`,当前页面用于固定 `OpenGLUniformBufferManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLUniformBufferManager object; + // 根据上下文补齐参数后调用 OpenGLUniformBufferManager::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLUniformBufferManager.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/UnbindBuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/UnbindBuffer.md new file mode 100644 index 00000000..8c694d56 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLUniformBufferManager/UnbindBuffer.md @@ -0,0 +1,31 @@ +# OpenGLUniformBufferManager::UnbindBuffer + +公开方法,详见头文件声明。 + +```cpp +void UnbindBuffer(int32_t bindingPoint); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLUniformBufferManager.h`,当前页面用于固定 `OpenGLUniformBufferManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `bindingPoint` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLUniformBufferManager object; + // 根据上下文补齐参数后调用 OpenGLUniformBufferManager::UnbindBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLUniformBufferManager.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/AddVertexBuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/AddVertexBuffer.md new file mode 100644 index 00000000..d38b9a61 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/AddVertexBuffer.md @@ -0,0 +1,32 @@ +# OpenGLVertexArray::AddVertexBuffer + +添加元素或建立关联。 + +```cpp +void AddVertexBuffer(unsigned int buffer, const VertexAttribute& attribute); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLVertexArray.h`,当前页面用于固定 `OpenGLVertexArray` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `attribute` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLVertexArray object; + // 根据上下文补齐参数后调用 OpenGLVertexArray::AddVertexBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLVertexArray.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Bind.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Bind.md new file mode 100644 index 00000000..e1fba4b1 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Bind.md @@ -0,0 +1,30 @@ +# OpenGLVertexArray::Bind + +公开方法,详见头文件声明。 + +```cpp +void Bind() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLVertexArray.h`,当前页面用于固定 `OpenGLVertexArray` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLVertexArray object; + // 根据上下文补齐参数后调用 OpenGLVertexArray::Bind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLVertexArray.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Constructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Constructor.md new file mode 100644 index 00000000..3b3c913e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Constructor.md @@ -0,0 +1,28 @@ +# OpenGLVertexArray::OpenGLVertexArray() + +构造对象。 + +```cpp +OpenGLVertexArray(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLVertexArray.h`,当前页面用于固定 `OpenGLVertexArray` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLVertexArray object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLVertexArray.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Destructor.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Destructor.md new file mode 100644 index 00000000..888cb55b --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Destructor.md @@ -0,0 +1,29 @@ +# OpenGLVertexArray::~OpenGLVertexArray() + +销毁对象并释放相关资源。 + +```cpp +~OpenGLVertexArray(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLVertexArray.h`,当前页面用于固定 `OpenGLVertexArray` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLVertexArray object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](OpenGLVertexArray.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/GetID.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/GetID.md new file mode 100644 index 00000000..6758b0ec --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/GetID.md @@ -0,0 +1,30 @@ +# OpenGLVertexArray::GetID + +获取相关状态或对象。 + +```cpp +unsigned int GetID() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLVertexArray.h`,当前页面用于固定 `OpenGLVertexArray` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `unsigned int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLVertexArray object; + // 根据上下文补齐参数后调用 OpenGLVertexArray::GetID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLVertexArray.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/GetIndexBuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/GetIndexBuffer.md new file mode 100644 index 00000000..8d6f0a60 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/GetIndexBuffer.md @@ -0,0 +1,30 @@ +# OpenGLVertexArray::GetIndexBuffer + +获取相关状态或对象。 + +```cpp +unsigned int GetIndexBuffer() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLVertexArray.h`,当前页面用于固定 `OpenGLVertexArray` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `unsigned int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLVertexArray object; + // 根据上下文补齐参数后调用 OpenGLVertexArray::GetIndexBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLVertexArray.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/GetIndexCount.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/GetIndexCount.md new file mode 100644 index 00000000..58ed1a49 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/GetIndexCount.md @@ -0,0 +1,30 @@ +# OpenGLVertexArray::GetIndexCount + +获取相关状态或对象。 + +```cpp +unsigned int GetIndexCount() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLVertexArray.h`,当前页面用于固定 `OpenGLVertexArray` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `unsigned int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLVertexArray object; + // 根据上下文补齐参数后调用 OpenGLVertexArray::GetIndexCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLVertexArray.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Initialize.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Initialize.md new file mode 100644 index 00000000..22e390e8 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Initialize.md @@ -0,0 +1,30 @@ +# OpenGLVertexArray::Initialize + +初始化内部状态。 + +```cpp +bool Initialize(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLVertexArray.h`,当前页面用于固定 `OpenGLVertexArray` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLVertexArray object; + // 根据上下文补齐参数后调用 OpenGLVertexArray::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLVertexArray.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/OpenGLVertexArray.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/OpenGLVertexArray.md new file mode 100644 index 00000000..4d25cad9 --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/OpenGLVertexArray.md @@ -0,0 +1,43 @@ +# OpenGLVertexArray + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/OpenGL/OpenGLVertexArray.h` + +**描述**: 定义 `XCEngine/RHI/OpenGL` 子目录中的 `OpenGLVertexArray` public API。 + +## 概述 + +`OpenGLVertexArray.h` 是 `XCEngine/RHI/OpenGL` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `VertexAttributeType` | `enum class` | 头文件中的公开声明。 | +| `VertexAttributeNormalized` | `enum class` | 头文件中的公开声明。 | +| `VertexAttribute` | `struct` | 头文件中的公开声明。 | +| `OpenGLVertexArray` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [OpenGLVertexArray()](Constructor.md) | 构造对象。 | +| [~OpenGLVertexArray()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [AddVertexBuffer](AddVertexBuffer.md) | 添加元素或建立关联。 | +| [SetIndexBuffer](SetIndexBuffer.md) | 设置相关状态或配置。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Bind](Bind.md) | 公开方法,详见头文件声明。 | +| [Unbind](Unbind.md) | 公开方法,详见头文件声明。 | +| [GetID](GetID.md) | 获取相关状态或对象。 | +| [GetIndexBuffer](GetIndexBuffer.md) | 获取相关状态或对象。 | +| [GetIndexCount](GetIndexCount.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../OpenGL.md) - 返回 `OpenGL` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/SetIndexBuffer.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/SetIndexBuffer.md new file mode 100644 index 00000000..ac3d1edb --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/SetIndexBuffer.md @@ -0,0 +1,32 @@ +# OpenGLVertexArray::SetIndexBuffer + +设置相关状态或配置。 + +```cpp +void SetIndexBuffer(unsigned int buffer, unsigned int type); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLVertexArray.h`,当前页面用于固定 `OpenGLVertexArray` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `type` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLVertexArray object; + // 根据上下文补齐参数后调用 OpenGLVertexArray::SetIndexBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLVertexArray.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Shutdown.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Shutdown.md new file mode 100644 index 00000000..1c49f3ae --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Shutdown.md @@ -0,0 +1,30 @@ +# OpenGLVertexArray::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown(); +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLVertexArray.h`,当前页面用于固定 `OpenGLVertexArray` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLVertexArray object; + // 根据上下文补齐参数后调用 OpenGLVertexArray::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLVertexArray.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Unbind.md b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Unbind.md new file mode 100644 index 00000000..1e0da77e --- /dev/null +++ b/docs/api/XCEngine/RHI/OpenGL/OpenGLVertexArray/Unbind.md @@ -0,0 +1,30 @@ +# OpenGLVertexArray::Unbind + +公开方法,详见头文件声明。 + +```cpp +void Unbind() const; +``` + +该方法声明于 `XCEngine/RHI/OpenGL/OpenGLVertexArray.h`,当前页面用于固定 `OpenGLVertexArray` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::OpenGLVertexArray object; + // 根据上下文补齐参数后调用 OpenGLVertexArray::Unbind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](OpenGLVertexArray.md) +- [返回模块目录](../OpenGL.md) diff --git a/docs/api/XCEngine/RHI/RHI.md b/docs/api/XCEngine/RHI/RHI.md new file mode 100644 index 00000000..a43c6f1d --- /dev/null +++ b/docs/api/XCEngine/RHI/RHI.md @@ -0,0 +1,46 @@ +# RHI + +**命名空间**: `XCEngine::RHI` + +**类型**: `module` + +**描述**: 渲染硬件抽象层及其后端。 + +## 概览 + +该目录与 `XCEngine/RHI` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 子目录 + +- [D3D12](D3D12/D3D12.md) +- [OpenGL](OpenGL/OpenGL.md) + +## 头文件 + +- [RHIBuffer](RHIBuffer/RHIBuffer.md) - `RHIBuffer.h` +- [RHICapabilities](RHICapabilities/RHICapabilities.md) - `RHICapabilities.h` +- [RHICommandList](RHICommandList/RHICommandList.md) - `RHICommandList.h` +- [RHICommandQueue](RHICommandQueue/RHICommandQueue.md) - `RHICommandQueue.h` +- [RHIDescriptorPool](RHIDescriptorPool/RHIDescriptorPool.md) - `RHIDescriptorPool.h` +- [RHIDescriptorSet](RHIDescriptorSet/RHIDescriptorSet.md) - `RHIDescriptorSet.h` +- [RHIDevice](RHIDevice/RHIDevice.md) - `RHIDevice.h` +- [RHIEnums](RHIEnums/RHIEnums.md) - `RHIEnums.h` +- [RHIFactory](RHIFactory/RHIFactory.md) - `RHIFactory.h` +- [RHIFence](RHIFence/RHIFence.md) - `RHIFence.h` +- [RHIFramebuffer](RHIFramebuffer/RHIFramebuffer.md) - `RHIFramebuffer.h` +- [RHIPipelineLayout](RHIPipelineLayout/RHIPipelineLayout.md) - `RHIPipelineLayout.h` +- [RHIPipelineState](RHIPipelineState/RHIPipelineState.md) - `RHIPipelineState.h` +- [RHIRenderPass](RHIRenderPass/RHIRenderPass.md) - `RHIRenderPass.h` +- [RHIResource](RHIResource/RHIResource.md) - `RHIResource.h` +- [RHIResourceView](RHIResourceView/RHIResourceView.md) - `RHIResourceView.h` +- [RHISampler](RHISampler/RHISampler.md) - `RHISampler.h` +- [RHIScreenshot](RHIScreenshot/RHIScreenshot.md) - `RHIScreenshot.h` +- [RHIShader](RHIShader/RHIShader.md) - `RHIShader.h` +- [RHISwapChain](RHISwapChain/RHISwapChain.md) - `RHISwapChain.h` +- [RHITexture](RHITexture/RHITexture.md) - `RHITexture.h` +- [RHITypes](RHITypes/RHITypes.md) - `RHITypes.h` + +## 相关文档 + +- [上级目录](../XCEngine.md) +- [API 总索引](../../main.md) diff --git a/docs/api/XCEngine/RHI/RHIBuffer/Destructor.md b/docs/api/XCEngine/RHI/RHIBuffer/Destructor.md new file mode 100644 index 00000000..fd56ea2d --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIBuffer/Destructor.md @@ -0,0 +1,29 @@ +# RHIBuffer::~RHIBuffer() + +销毁对象并释放相关资源。 + +```cpp +virtual ~RHIBuffer() = default; +``` + +该方法声明于 `XCEngine/RHI/RHIBuffer.h`,当前页面用于固定 `RHIBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIBuffer object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](RHIBuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIBuffer/GetBufferType.md b/docs/api/XCEngine/RHI/RHIBuffer/GetBufferType.md new file mode 100644 index 00000000..344665f9 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIBuffer/GetBufferType.md @@ -0,0 +1,30 @@ +# RHIBuffer::GetBufferType + +获取相关状态或对象。 + +```cpp +virtual BufferType GetBufferType() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIBuffer.h`,当前页面用于固定 `RHIBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `BufferType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIBuffer object; + // 根据上下文补齐参数后调用 RHIBuffer::GetBufferType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIBuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIBuffer/GetName.md b/docs/api/XCEngine/RHI/RHIBuffer/GetName.md new file mode 100644 index 00000000..ccc3942d --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIBuffer/GetName.md @@ -0,0 +1,30 @@ +# RHIBuffer::GetName + +获取相关状态或对象。 + +```cpp +virtual const std::string& GetName() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIBuffer.h`,当前页面用于固定 `RHIBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const std::string&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIBuffer object; + // 根据上下文补齐参数后调用 RHIBuffer::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIBuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIBuffer/GetNativeHandle.md b/docs/api/XCEngine/RHI/RHIBuffer/GetNativeHandle.md new file mode 100644 index 00000000..6e9095e5 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIBuffer/GetNativeHandle.md @@ -0,0 +1,30 @@ +# RHIBuffer::GetNativeHandle + +获取相关状态或对象。 + +```cpp +virtual void* GetNativeHandle() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIBuffer.h`,当前页面用于固定 `RHIBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIBuffer object; + // 根据上下文补齐参数后调用 RHIBuffer::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIBuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIBuffer/GetSize.md b/docs/api/XCEngine/RHI/RHIBuffer/GetSize.md new file mode 100644 index 00000000..404d85ba --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIBuffer/GetSize.md @@ -0,0 +1,30 @@ +# RHIBuffer::GetSize + +获取相关状态或对象。 + +```cpp +virtual uint64_t GetSize() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIBuffer.h`,当前页面用于固定 `RHIBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIBuffer object; + // 根据上下文补齐参数后调用 RHIBuffer::GetSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIBuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIBuffer/GetState.md b/docs/api/XCEngine/RHI/RHIBuffer/GetState.md new file mode 100644 index 00000000..95e3a9ca --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIBuffer/GetState.md @@ -0,0 +1,30 @@ +# RHIBuffer::GetState + +获取相关状态或对象。 + +```cpp +virtual ResourceStates GetState() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIBuffer.h`,当前页面用于固定 `RHIBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceStates` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIBuffer object; + // 根据上下文补齐参数后调用 RHIBuffer::GetState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIBuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIBuffer/GetStride.md b/docs/api/XCEngine/RHI/RHIBuffer/GetStride.md new file mode 100644 index 00000000..70d9047d --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIBuffer/GetStride.md @@ -0,0 +1,30 @@ +# RHIBuffer::GetStride + +获取相关状态或对象。 + +```cpp +virtual uint32_t GetStride() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIBuffer.h`,当前页面用于固定 `RHIBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIBuffer object; + // 根据上下文补齐参数后调用 RHIBuffer::GetStride(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIBuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIBuffer/Map.md b/docs/api/XCEngine/RHI/RHIBuffer/Map.md new file mode 100644 index 00000000..ddc7e6b4 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIBuffer/Map.md @@ -0,0 +1,30 @@ +# RHIBuffer::Map + +公开方法,详见头文件声明。 + +```cpp +virtual void* Map() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIBuffer.h`,当前页面用于固定 `RHIBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIBuffer object; + // 根据上下文补齐参数后调用 RHIBuffer::Map(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIBuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIBuffer/RHIBuffer.md b/docs/api/XCEngine/RHI/RHIBuffer/RHIBuffer.md new file mode 100644 index 00000000..8dc2c141 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIBuffer/RHIBuffer.md @@ -0,0 +1,44 @@ +# RHIBuffer + +**命名空间**: `XCEngine::RHI` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/RHI/RHIBuffer.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHIBuffer` public API。 + +## 概述 + +`RHIBuffer.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RHIBuffer` | `class` | 继承自 `RHIResource` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~RHIBuffer()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Map](Map.md) | 公开方法,详见头文件声明。 | +| [Unmap](Unmap.md) | 公开方法,详见头文件声明。 | +| [SetData](SetData.md) | 设置相关状态或配置。 | +| [GetSize](GetSize.md) | 获取相关状态或对象。 | +| [GetBufferType](GetBufferType.md) | 获取相关状态或对象。 | +| [SetBufferType](SetBufferType.md) | 设置相关状态或配置。 | +| [GetStride](GetStride.md) | 获取相关状态或对象。 | +| [SetStride](SetStride.md) | 设置相关状态或配置。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetState](GetState.md) | 获取相关状态或对象。 | +| [SetState](SetState.md) | 设置相关状态或配置。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [SetName](SetName.md) | 设置相关状态或配置。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHIBuffer/SetBufferType.md b/docs/api/XCEngine/RHI/RHIBuffer/SetBufferType.md new file mode 100644 index 00000000..fc2dbf65 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIBuffer/SetBufferType.md @@ -0,0 +1,31 @@ +# RHIBuffer::SetBufferType + +设置相关状态或配置。 + +```cpp +virtual void SetBufferType(BufferType type) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIBuffer.h`,当前页面用于固定 `RHIBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIBuffer object; + // 根据上下文补齐参数后调用 RHIBuffer::SetBufferType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIBuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIBuffer/SetData.md b/docs/api/XCEngine/RHI/RHIBuffer/SetData.md new file mode 100644 index 00000000..5ec0417a --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIBuffer/SetData.md @@ -0,0 +1,33 @@ +# RHIBuffer::SetData + +设置相关状态或配置。 + +```cpp +virtual void SetData(const void* data, size_t size, size_t offset = 0) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIBuffer.h`,当前页面用于固定 `RHIBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `data` - 参数语义详见头文件声明。 +- `size` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIBuffer object; + // 根据上下文补齐参数后调用 RHIBuffer::SetData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIBuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIBuffer/SetName.md b/docs/api/XCEngine/RHI/RHIBuffer/SetName.md new file mode 100644 index 00000000..c34e4c8a --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIBuffer/SetName.md @@ -0,0 +1,31 @@ +# RHIBuffer::SetName + +设置相关状态或配置。 + +```cpp +virtual void SetName(const std::string& name) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIBuffer.h`,当前页面用于固定 `RHIBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIBuffer object; + // 根据上下文补齐参数后调用 RHIBuffer::SetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIBuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIBuffer/SetState.md b/docs/api/XCEngine/RHI/RHIBuffer/SetState.md new file mode 100644 index 00000000..65f8eb39 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIBuffer/SetState.md @@ -0,0 +1,31 @@ +# RHIBuffer::SetState + +设置相关状态或配置。 + +```cpp +virtual void SetState(ResourceStates state) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIBuffer.h`,当前页面用于固定 `RHIBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIBuffer object; + // 根据上下文补齐参数后调用 RHIBuffer::SetState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIBuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIBuffer/SetStride.md b/docs/api/XCEngine/RHI/RHIBuffer/SetStride.md new file mode 100644 index 00000000..89036785 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIBuffer/SetStride.md @@ -0,0 +1,31 @@ +# RHIBuffer::SetStride + +设置相关状态或配置。 + +```cpp +virtual void SetStride(uint32_t stride) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIBuffer.h`,当前页面用于固定 `RHIBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `stride` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIBuffer object; + // 根据上下文补齐参数后调用 RHIBuffer::SetStride(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIBuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIBuffer/Shutdown.md b/docs/api/XCEngine/RHI/RHIBuffer/Shutdown.md new file mode 100644 index 00000000..43ac3c5f --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIBuffer/Shutdown.md @@ -0,0 +1,30 @@ +# RHIBuffer::Shutdown + +关闭并清理内部状态。 + +```cpp +virtual void Shutdown() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIBuffer.h`,当前页面用于固定 `RHIBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIBuffer object; + // 根据上下文补齐参数后调用 RHIBuffer::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIBuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIBuffer/Unmap.md b/docs/api/XCEngine/RHI/RHIBuffer/Unmap.md new file mode 100644 index 00000000..a5a0bfc8 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIBuffer/Unmap.md @@ -0,0 +1,30 @@ +# RHIBuffer::Unmap + +公开方法,详见头文件声明。 + +```cpp +virtual void Unmap() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIBuffer.h`,当前页面用于固定 `RHIBuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIBuffer object; + // 根据上下文补齐参数后调用 RHIBuffer::Unmap(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIBuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICapabilities/RHICapabilities.md b/docs/api/XCEngine/RHI/RHICapabilities/RHICapabilities.md new file mode 100644 index 00000000..9ccad72e --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICapabilities/RHICapabilities.md @@ -0,0 +1,61 @@ +# RHICapabilities + +**命名空间**: `XCEngine::RHI` + +**类型**: `struct` + +**头文件**: `XCEngine/RHI/RHICapabilities.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHICapabilities` public API。 + +## 概述 + +`RHICapabilities.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RHICapabilities` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `bSupportsRayTracing` | `bool` | 结构体公开字段。 | `false` | +| `bSupportsMeshShaders` | `bool` | 结构体公开字段。 | `false` | +| `bSupportsExplicitMultiThreading` | `bool` | 结构体公开字段。 | `false` | +| `bSupportsGeometryShaders` | `bool` | 结构体公开字段。 | `false` | +| `bSupportsTessellation` | `bool` | 结构体公开字段。 | `false` | +| `bSupportsComputeShaders` | `bool` | 结构体公开字段。 | `false` | +| `bSupportsDepthBoundsTest` | `bool` | 结构体公开字段。 | `false` | +| `bSupportsAlphaToCoverage` | `bool` | 结构体公开字段。 | `false` | +| `bSupportsIndependentBlend` | `bool` | 结构体公开字段。 | `false` | +| `bSupportsLogicOps` | `bool` | 结构体公开字段。 | `false` | +| `bSupportsMultiViewport` | `bool` | 结构体公开字段。 | `false` | +| `bSupportsConservativeRasterization` | `bool` | 结构体公开字段。 | `false` | +| `bSupportsProgrammableSamplePositions` | `bool` | 结构体公开字段。 | `false` | +| `maxTexture2DSize` | `uint32_t` | 结构体公开字段。 | `0` | +| `maxTexture3DSize` | `uint32_t` | 结构体公开字段。 | `0` | +| `maxTextureCubeSize` | `uint32_t` | 结构体公开字段。 | `0` | +| `maxRenderTargets` | `uint32_t` | 结构体公开字段。 | `0` | +| `maxViewports` | `uint32_t` | 结构体公开字段。 | `0` | +| `maxVertexAttribs` | `uint32_t` | 结构体公开字段。 | `0` | +| `maxConstantBufferSize` | `uint32_t` | 结构体公开字段。 | `0` | +| `maxAnisotropy` | `uint32_t` | 结构体公开字段。 | `0` | +| `maxColorAttachments` | `uint32_t` | 结构体公开字段。 | `0` | +| `minSmoothedLineWidth` | `float` | 结构体公开字段。 | `1.0f` | +| `maxSmoothedLineWidth` | `float` | 结构体公开字段。 | `1.0f` | +| `minPointSize` | `float` | 结构体公开字段。 | `1.0f` | +| `maxPointSize` | `float` | 结构体公开字段。 | `1.0f` | +| `maxPointSizeAA` | `float` | 结构体公开字段。 | `1.0f` | +| `maxLineWidth` | `float` | 结构体公开字段。 | `1.0f` | +| `maxLineWidthAA` | `float` | 结构体公开字段。 | `1.0f` | +| `majorVersion` | `int` | 结构体公开字段。 | `0` | +| `minorVersion` | `int` | 结构体公开字段。 | `0` | +| `shaderModel` | `std::string` | 结构体公开字段。 | - | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHICommandList/BeginRenderPass.md b/docs/api/XCEngine/RHI/RHICommandList/BeginRenderPass.md new file mode 100644 index 00000000..4550df52 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/BeginRenderPass.md @@ -0,0 +1,35 @@ +# RHICommandList::BeginRenderPass + +公开方法,详见头文件声明。 + +```cpp +virtual void BeginRenderPass(class RHIRenderPass* renderPass, class RHIFramebuffer* framebuffer, const Rect& renderArea, uint32_t clearValueCount, const ClearValue* clearValues) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `renderPass` - 参数语义详见头文件声明。 +- `framebuffer` - 参数语义详见头文件声明。 +- `renderArea` - 参数语义详见头文件声明。 +- `clearValueCount` - 参数语义详见头文件声明。 +- `clearValues` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::BeginRenderPass(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/Clear.md b/docs/api/XCEngine/RHI/RHICommandList/Clear.md new file mode 100644 index 00000000..c3c5a317 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/Clear.md @@ -0,0 +1,35 @@ +# RHICommandList::Clear + +清空内部数据。 + +```cpp +virtual void Clear(float r, float g, float b, float a, uint32_t buffers) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `r` - 参数语义详见头文件声明。 +- `g` - 参数语义详见头文件声明。 +- `b` - 参数语义详见头文件声明。 +- `a` - 参数语义详见头文件声明。 +- `buffers` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::Clear(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/ClearDepthStencil.md b/docs/api/XCEngine/RHI/RHICommandList/ClearDepthStencil.md new file mode 100644 index 00000000..05ed2c13 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/ClearDepthStencil.md @@ -0,0 +1,33 @@ +# RHICommandList::ClearDepthStencil + +清空内部数据。 + +```cpp +virtual void ClearDepthStencil(RHIResourceView* depthStencil, float depth, uint8_t stencil) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `depthStencil` - 参数语义详见头文件声明。 +- `depth` - 参数语义详见头文件声明。 +- `stencil` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::ClearDepthStencil(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/ClearRenderTarget.md b/docs/api/XCEngine/RHI/RHICommandList/ClearRenderTarget.md new file mode 100644 index 00000000..e102e3ef --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/ClearRenderTarget.md @@ -0,0 +1,32 @@ +# RHICommandList::ClearRenderTarget + +清空内部数据。 + +```cpp +virtual void ClearRenderTarget(RHIResourceView* renderTarget, const float color[4]) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `renderTarget` - 参数语义详见头文件声明。 +- `param` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::ClearRenderTarget(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/Close.md b/docs/api/XCEngine/RHI/RHICommandList/Close.md new file mode 100644 index 00000000..056ff911 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/Close.md @@ -0,0 +1,30 @@ +# RHICommandList::Close + +公开方法,详见头文件声明。 + +```cpp +virtual void Close() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::Close(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/CopyResource.md b/docs/api/XCEngine/RHI/RHICommandList/CopyResource.md new file mode 100644 index 00000000..382f151d --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/CopyResource.md @@ -0,0 +1,32 @@ +# RHICommandList::CopyResource + +公开方法,详见头文件声明。 + +```cpp +virtual void CopyResource(RHIResourceView* dst, RHIResourceView* src) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `dst` - 参数语义详见头文件声明。 +- `src` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::CopyResource(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/Destructor.md b/docs/api/XCEngine/RHI/RHICommandList/Destructor.md new file mode 100644 index 00000000..150b4ac1 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/Destructor.md @@ -0,0 +1,29 @@ +# RHICommandList::~RHICommandList() + +销毁对象并释放相关资源。 + +```cpp +virtual ~RHICommandList() = default; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/Dispatch.md b/docs/api/XCEngine/RHI/RHICommandList/Dispatch.md new file mode 100644 index 00000000..866de0e3 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/Dispatch.md @@ -0,0 +1,33 @@ +# RHICommandList::Dispatch + +公开方法,详见头文件声明。 + +```cpp +virtual void Dispatch(uint32_t x, uint32_t y, uint32_t z) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `x` - 参数语义详见头文件声明。 +- `y` - 参数语义详见头文件声明。 +- `z` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::Dispatch(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/Draw.md b/docs/api/XCEngine/RHI/RHICommandList/Draw.md new file mode 100644 index 00000000..8254df0b --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/Draw.md @@ -0,0 +1,34 @@ +# RHICommandList::Draw + +公开方法,详见头文件声明。 + +```cpp +virtual void Draw(uint32_t vertexCount, uint32_t instanceCount = 1, uint32_t startVertex = 0, uint32_t startInstance = 0) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `vertexCount` - 参数语义详见头文件声明。 +- `instanceCount` - 参数语义详见头文件声明。 +- `startVertex` - 参数语义详见头文件声明。 +- `startInstance` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::Draw(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/DrawIndexed.md b/docs/api/XCEngine/RHI/RHICommandList/DrawIndexed.md new file mode 100644 index 00000000..0b3011cb --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/DrawIndexed.md @@ -0,0 +1,35 @@ +# RHICommandList::DrawIndexed + +公开方法,详见头文件声明。 + +```cpp +virtual void DrawIndexed(uint32_t indexCount, uint32_t instanceCount = 1, uint32_t startIndex = 0, int32_t baseVertex = 0, uint32_t startInstance = 0) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `indexCount` - 参数语义详见头文件声明。 +- `instanceCount` - 参数语义详见头文件声明。 +- `startIndex` - 参数语义详见头文件声明。 +- `baseVertex` - 参数语义详见头文件声明。 +- `startInstance` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::DrawIndexed(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/EndRenderPass.md b/docs/api/XCEngine/RHI/RHICommandList/EndRenderPass.md new file mode 100644 index 00000000..fee52bbe --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/EndRenderPass.md @@ -0,0 +1,30 @@ +# RHICommandList::EndRenderPass + +公开方法,详见头文件声明。 + +```cpp +virtual void EndRenderPass() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::EndRenderPass(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/GetNativeHandle.md b/docs/api/XCEngine/RHI/RHICommandList/GetNativeHandle.md new file mode 100644 index 00000000..f0631f5a --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/GetNativeHandle.md @@ -0,0 +1,30 @@ +# RHICommandList::GetNativeHandle + +获取相关状态或对象。 + +```cpp +virtual void* GetNativeHandle(); +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/RHICommandList.md b/docs/api/XCEngine/RHI/RHICommandList/RHICommandList.md new file mode 100644 index 00000000..c7e22b20 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/RHICommandList.md @@ -0,0 +1,60 @@ +# RHICommandList + +**命名空间**: `XCEngine::RHI` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/RHI/RHICommandList.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHICommandList` public API。 + +## 概述 + +`RHICommandList.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `DepthStencilState` | `struct` | 头文件中的公开声明。 | +| `BlendState` | `struct` | 头文件中的公开声明。 | +| `RHICommandList` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~RHICommandList()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Reset](Reset.md) | 公开方法,详见头文件声明。 | +| [Close](Close.md) | 公开方法,详见头文件声明。 | +| [TransitionBarrier](TransitionBarrier.md) | 公开方法,详见头文件声明。 | +| [BeginRenderPass](BeginRenderPass.md) | 公开方法,详见头文件声明。 | +| [EndRenderPass](EndRenderPass.md) | 公开方法,详见头文件声明。 | +| [SetShader](SetShader.md) | 设置相关状态或配置。 | +| [SetPipelineState](SetPipelineState.md) | 设置相关状态或配置。 | +| [SetGraphicsDescriptorSets](SetGraphicsDescriptorSets.md) | 设置相关状态或配置。 | +| [SetComputeDescriptorSets](SetComputeDescriptorSets.md) | 设置相关状态或配置。 | +| [SetPrimitiveTopology](SetPrimitiveTopology.md) | 设置相关状态或配置。 | +| [SetViewport](SetViewport.md) | 设置相关状态或配置。 | +| [SetViewports](SetViewports.md) | 设置相关状态或配置。 | +| [SetScissorRect](SetScissorRect.md) | 设置相关状态或配置。 | +| [SetScissorRects](SetScissorRects.md) | 设置相关状态或配置。 | +| [SetRenderTargets](SetRenderTargets.md) | 设置相关状态或配置。 | +| [SetStencilRef](SetStencilRef.md) | 设置相关状态或配置。 | +| [SetBlendFactor](SetBlendFactor.md) | 设置相关状态或配置。 | +| [SetVertexBuffers](SetVertexBuffers.md) | 设置相关状态或配置。 | +| [SetIndexBuffer](SetIndexBuffer.md) | 设置相关状态或配置。 | +| [Draw](Draw.md) | 公开方法,详见头文件声明。 | +| [DrawIndexed](DrawIndexed.md) | 公开方法,详见头文件声明。 | +| [Clear](Clear.md) | 清空内部数据。 | +| [ClearRenderTarget](ClearRenderTarget.md) | 清空内部数据。 | +| [ClearDepthStencil](ClearDepthStencil.md) | 清空内部数据。 | +| [CopyResource](CopyResource.md) | 公开方法,详见头文件声明。 | +| [Dispatch](Dispatch.md) | 公开方法,详见头文件声明。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHICommandList/Reset.md b/docs/api/XCEngine/RHI/RHICommandList/Reset.md new file mode 100644 index 00000000..d60587c1 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/Reset.md @@ -0,0 +1,30 @@ +# RHICommandList::Reset + +公开方法,详见头文件声明。 + +```cpp +virtual void Reset() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::Reset(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/SetBlendFactor.md b/docs/api/XCEngine/RHI/RHICommandList/SetBlendFactor.md new file mode 100644 index 00000000..a6de943f --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/SetBlendFactor.md @@ -0,0 +1,31 @@ +# RHICommandList::SetBlendFactor + +设置相关状态或配置。 + +```cpp +virtual void SetBlendFactor(const float factor[4]) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `param` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::SetBlendFactor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/SetComputeDescriptorSets.md b/docs/api/XCEngine/RHI/RHICommandList/SetComputeDescriptorSets.md new file mode 100644 index 00000000..2a9451e3 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/SetComputeDescriptorSets.md @@ -0,0 +1,34 @@ +# RHICommandList::SetComputeDescriptorSets + +设置相关状态或配置。 + +```cpp +virtual void SetComputeDescriptorSets( uint32_t firstSet, uint32_t count, RHIDescriptorSet** descriptorSets, RHIPipelineLayout* pipelineLayout) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `firstSet` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `descriptorSets` - 参数语义详见头文件声明。 +- `pipelineLayout` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::SetComputeDescriptorSets(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/SetGraphicsDescriptorSets.md b/docs/api/XCEngine/RHI/RHICommandList/SetGraphicsDescriptorSets.md new file mode 100644 index 00000000..bba7d310 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/SetGraphicsDescriptorSets.md @@ -0,0 +1,34 @@ +# RHICommandList::SetGraphicsDescriptorSets + +设置相关状态或配置。 + +```cpp +virtual void SetGraphicsDescriptorSets( uint32_t firstSet, uint32_t count, RHIDescriptorSet** descriptorSets, RHIPipelineLayout* pipelineLayout) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `firstSet` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `descriptorSets` - 参数语义详见头文件声明。 +- `pipelineLayout` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::SetGraphicsDescriptorSets(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/SetIndexBuffer.md b/docs/api/XCEngine/RHI/RHICommandList/SetIndexBuffer.md new file mode 100644 index 00000000..41b62755 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/SetIndexBuffer.md @@ -0,0 +1,32 @@ +# RHICommandList::SetIndexBuffer + +设置相关状态或配置。 + +```cpp +virtual void SetIndexBuffer(RHIResourceView* buffer, uint64_t offset) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::SetIndexBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/SetPipelineState.md b/docs/api/XCEngine/RHI/RHICommandList/SetPipelineState.md new file mode 100644 index 00000000..6af537d0 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/SetPipelineState.md @@ -0,0 +1,31 @@ +# RHICommandList::SetPipelineState + +设置相关状态或配置。 + +```cpp +virtual void SetPipelineState(RHIPipelineState* pso) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `pso` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::SetPipelineState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/SetPrimitiveTopology.md b/docs/api/XCEngine/RHI/RHICommandList/SetPrimitiveTopology.md new file mode 100644 index 00000000..599e65ba --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/SetPrimitiveTopology.md @@ -0,0 +1,31 @@ +# RHICommandList::SetPrimitiveTopology + +设置相关状态或配置。 + +```cpp +virtual void SetPrimitiveTopology(PrimitiveTopology topology) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `topology` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::SetPrimitiveTopology(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/SetRenderTargets.md b/docs/api/XCEngine/RHI/RHICommandList/SetRenderTargets.md new file mode 100644 index 00000000..7a576915 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/SetRenderTargets.md @@ -0,0 +1,33 @@ +# RHICommandList::SetRenderTargets + +设置相关状态或配置。 + +```cpp +virtual void SetRenderTargets(uint32_t count, RHIResourceView** renderTargets, RHIResourceView* depthStencil = nullptr) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `renderTargets` - 参数语义详见头文件声明。 +- `depthStencil` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::SetRenderTargets(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/SetScissorRect.md b/docs/api/XCEngine/RHI/RHICommandList/SetScissorRect.md new file mode 100644 index 00000000..8b47e494 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/SetScissorRect.md @@ -0,0 +1,31 @@ +# RHICommandList::SetScissorRect + +设置相关状态或配置。 + +```cpp +virtual void SetScissorRect(const Rect& rect) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `rect` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::SetScissorRect(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/SetScissorRects.md b/docs/api/XCEngine/RHI/RHICommandList/SetScissorRects.md new file mode 100644 index 00000000..b7297e34 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/SetScissorRects.md @@ -0,0 +1,32 @@ +# RHICommandList::SetScissorRects + +设置相关状态或配置。 + +```cpp +virtual void SetScissorRects(uint32_t count, const Rect* rects) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `rects` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::SetScissorRects(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/SetShader.md b/docs/api/XCEngine/RHI/RHICommandList/SetShader.md new file mode 100644 index 00000000..b8555478 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/SetShader.md @@ -0,0 +1,31 @@ +# RHICommandList::SetShader + +设置相关状态或配置。 + +```cpp +virtual void SetShader(RHIShader* shader) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `shader` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::SetShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/SetStencilRef.md b/docs/api/XCEngine/RHI/RHICommandList/SetStencilRef.md new file mode 100644 index 00000000..ce2fb0db --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/SetStencilRef.md @@ -0,0 +1,31 @@ +# RHICommandList::SetStencilRef + +设置相关状态或配置。 + +```cpp +virtual void SetStencilRef(uint8_t ref) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `ref` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::SetStencilRef(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/SetVertexBuffers.md b/docs/api/XCEngine/RHI/RHICommandList/SetVertexBuffers.md new file mode 100644 index 00000000..ec652eb1 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/SetVertexBuffers.md @@ -0,0 +1,35 @@ +# RHICommandList::SetVertexBuffers + +设置相关状态或配置。 + +```cpp +virtual void SetVertexBuffers(uint32_t startSlot, uint32_t count, RHIResourceView** buffers, const uint64_t* offsets, const uint32_t* strides) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `startSlot` - 参数语义详见头文件声明。 +- `count` - 参数语义详见头文件声明。 +- `buffers` - 参数语义详见头文件声明。 +- `offsets` - 参数语义详见头文件声明。 +- `strides` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::SetVertexBuffers(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/SetViewport.md b/docs/api/XCEngine/RHI/RHICommandList/SetViewport.md new file mode 100644 index 00000000..ab25e3bf --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/SetViewport.md @@ -0,0 +1,31 @@ +# RHICommandList::SetViewport + +设置相关状态或配置。 + +```cpp +virtual void SetViewport(const Viewport& viewport) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `viewport` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::SetViewport(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/SetViewports.md b/docs/api/XCEngine/RHI/RHICommandList/SetViewports.md new file mode 100644 index 00000000..dffeed40 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/SetViewports.md @@ -0,0 +1,32 @@ +# RHICommandList::SetViewports + +设置相关状态或配置。 + +```cpp +virtual void SetViewports(uint32_t count, const Viewport* viewports) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `viewports` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::SetViewports(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/Shutdown.md b/docs/api/XCEngine/RHI/RHICommandList/Shutdown.md new file mode 100644 index 00000000..922e7ec9 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/Shutdown.md @@ -0,0 +1,30 @@ +# RHICommandList::Shutdown + +关闭并清理内部状态。 + +```cpp +virtual void Shutdown() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandList/TransitionBarrier.md b/docs/api/XCEngine/RHI/RHICommandList/TransitionBarrier.md new file mode 100644 index 00000000..2ee860f8 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandList/TransitionBarrier.md @@ -0,0 +1,33 @@ +# RHICommandList::TransitionBarrier + +公开方法,详见头文件声明。 + +```cpp +virtual void TransitionBarrier(RHIResourceView* resource, ResourceStates stateBefore, ResourceStates stateAfter) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandList.h`,当前页面用于固定 `RHICommandList` 类目录下的方法级 canonical 路径。 + +**参数:** +- `resource` - 参数语义详见头文件声明。 +- `stateBefore` - 参数语义详见头文件声明。 +- `stateAfter` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandList object; + // 根据上下文补齐参数后调用 RHICommandList::TransitionBarrier(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandList.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandQueue/Destructor.md b/docs/api/XCEngine/RHI/RHICommandQueue/Destructor.md new file mode 100644 index 00000000..c21c5495 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandQueue/Destructor.md @@ -0,0 +1,29 @@ +# RHICommandQueue::~RHICommandQueue() + +销毁对象并释放相关资源。 + +```cpp +virtual ~RHICommandQueue() = default; +``` + +该方法声明于 `XCEngine/RHI/RHICommandQueue.h`,当前页面用于固定 `RHICommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandQueue object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](RHICommandQueue.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandQueue/ExecuteCommandLists.md b/docs/api/XCEngine/RHI/RHICommandQueue/ExecuteCommandLists.md new file mode 100644 index 00000000..0858c90e --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandQueue/ExecuteCommandLists.md @@ -0,0 +1,32 @@ +# RHICommandQueue::ExecuteCommandLists + +公开方法,详见头文件声明。 + +```cpp +virtual void ExecuteCommandLists(uint32_t count, void** lists) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandQueue.h`,当前页面用于固定 `RHICommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `lists` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandQueue object; + // 根据上下文补齐参数后调用 RHICommandQueue::ExecuteCommandLists(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandQueue.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandQueue/GetCompletedValue.md b/docs/api/XCEngine/RHI/RHICommandQueue/GetCompletedValue.md new file mode 100644 index 00000000..51d6dd07 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandQueue/GetCompletedValue.md @@ -0,0 +1,30 @@ +# RHICommandQueue::GetCompletedValue + +获取相关状态或对象。 + +```cpp +virtual uint64_t GetCompletedValue() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandQueue.h`,当前页面用于固定 `RHICommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandQueue object; + // 根据上下文补齐参数后调用 RHICommandQueue::GetCompletedValue(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandQueue.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandQueue/GetCurrentFrame.md b/docs/api/XCEngine/RHI/RHICommandQueue/GetCurrentFrame.md new file mode 100644 index 00000000..d7ae4633 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandQueue/GetCurrentFrame.md @@ -0,0 +1,30 @@ +# RHICommandQueue::GetCurrentFrame + +获取相关状态或对象。 + +```cpp +virtual uint64_t GetCurrentFrame() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandQueue.h`,当前页面用于固定 `RHICommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandQueue object; + // 根据上下文补齐参数后调用 RHICommandQueue::GetCurrentFrame(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandQueue.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandQueue/GetNativeHandle.md b/docs/api/XCEngine/RHI/RHICommandQueue/GetNativeHandle.md new file mode 100644 index 00000000..aa2d48d9 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandQueue/GetNativeHandle.md @@ -0,0 +1,30 @@ +# RHICommandQueue::GetNativeHandle + +获取相关状态或对象。 + +```cpp +virtual void* GetNativeHandle() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandQueue.h`,当前页面用于固定 `RHICommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandQueue object; + // 根据上下文补齐参数后调用 RHICommandQueue::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandQueue.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandQueue/GetTimestampFrequency.md b/docs/api/XCEngine/RHI/RHICommandQueue/GetTimestampFrequency.md new file mode 100644 index 00000000..0973bff4 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandQueue/GetTimestampFrequency.md @@ -0,0 +1,30 @@ +# RHICommandQueue::GetTimestampFrequency + +获取相关状态或对象。 + +```cpp +virtual uint64_t GetTimestampFrequency() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandQueue.h`,当前页面用于固定 `RHICommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandQueue object; + // 根据上下文补齐参数后调用 RHICommandQueue::GetTimestampFrequency(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandQueue.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandQueue/GetType.md b/docs/api/XCEngine/RHI/RHICommandQueue/GetType.md new file mode 100644 index 00000000..1ab88e98 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandQueue/GetType.md @@ -0,0 +1,30 @@ +# RHICommandQueue::GetType + +获取相关状态或对象。 + +```cpp +virtual CommandQueueType GetType() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandQueue.h`,当前页面用于固定 `RHICommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `CommandQueueType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandQueue object; + // 根据上下文补齐参数后调用 RHICommandQueue::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandQueue.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandQueue/RHICommandQueue.md b/docs/api/XCEngine/RHI/RHICommandQueue/RHICommandQueue.md new file mode 100644 index 00000000..e3182c92 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandQueue/RHICommandQueue.md @@ -0,0 +1,41 @@ +# RHICommandQueue + +**命名空间**: `XCEngine::RHI` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/RHI/RHICommandQueue.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHICommandQueue` public API。 + +## 概述 + +`RHICommandQueue.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RHICommandQueue` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~RHICommandQueue()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [ExecuteCommandLists](ExecuteCommandLists.md) | 公开方法,详见头文件声明。 | +| [Signal](Signal.md) | 公开方法,详见头文件声明。 | +| [Wait](Wait.md) | 公开方法,详见头文件声明。 | +| [GetCompletedValue](GetCompletedValue.md) | 获取相关状态或对象。 | +| [WaitForIdle](WaitForIdle.md) | 公开方法,详见头文件声明。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [GetTimestampFrequency](GetTimestampFrequency.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [WaitForPreviousFrame](WaitForPreviousFrame.md) | 公开方法,详见头文件声明。 | +| [GetCurrentFrame](GetCurrentFrame.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHICommandQueue/Shutdown.md b/docs/api/XCEngine/RHI/RHICommandQueue/Shutdown.md new file mode 100644 index 00000000..41bf5a8c --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandQueue/Shutdown.md @@ -0,0 +1,30 @@ +# RHICommandQueue::Shutdown + +关闭并清理内部状态。 + +```cpp +virtual void Shutdown() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandQueue.h`,当前页面用于固定 `RHICommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandQueue object; + // 根据上下文补齐参数后调用 RHICommandQueue::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandQueue.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandQueue/Signal.md b/docs/api/XCEngine/RHI/RHICommandQueue/Signal.md new file mode 100644 index 00000000..950967f6 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandQueue/Signal.md @@ -0,0 +1,32 @@ +# RHICommandQueue::Signal + +公开方法,详见头文件声明。 + +```cpp +virtual void Signal(RHIFence* fence, uint64_t value) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandQueue.h`,当前页面用于固定 `RHICommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** +- `fence` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandQueue object; + // 根据上下文补齐参数后调用 RHICommandQueue::Signal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandQueue.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandQueue/Wait.md b/docs/api/XCEngine/RHI/RHICommandQueue/Wait.md new file mode 100644 index 00000000..677a4d2d --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandQueue/Wait.md @@ -0,0 +1,32 @@ +# RHICommandQueue::Wait + +公开方法,详见头文件声明。 + +```cpp +virtual void Wait(RHIFence* fence, uint64_t value) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandQueue.h`,当前页面用于固定 `RHICommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** +- `fence` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandQueue object; + // 根据上下文补齐参数后调用 RHICommandQueue::Wait(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandQueue.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandQueue/WaitForIdle.md b/docs/api/XCEngine/RHI/RHICommandQueue/WaitForIdle.md new file mode 100644 index 00000000..db4a1100 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandQueue/WaitForIdle.md @@ -0,0 +1,30 @@ +# RHICommandQueue::WaitForIdle + +公开方法,详见头文件声明。 + +```cpp +virtual void WaitForIdle() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandQueue.h`,当前页面用于固定 `RHICommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandQueue object; + // 根据上下文补齐参数后调用 RHICommandQueue::WaitForIdle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandQueue.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHICommandQueue/WaitForPreviousFrame.md b/docs/api/XCEngine/RHI/RHICommandQueue/WaitForPreviousFrame.md new file mode 100644 index 00000000..aae24953 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHICommandQueue/WaitForPreviousFrame.md @@ -0,0 +1,30 @@ +# RHICommandQueue::WaitForPreviousFrame + +公开方法,详见头文件声明。 + +```cpp +virtual void WaitForPreviousFrame() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHICommandQueue.h`,当前页面用于固定 `RHICommandQueue` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHICommandQueue object; + // 根据上下文补齐参数后调用 RHICommandQueue::WaitForPreviousFrame(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHICommandQueue.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorPool/AllocateSet.md b/docs/api/XCEngine/RHI/RHIDescriptorPool/AllocateSet.md new file mode 100644 index 00000000..dbb966e2 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorPool/AllocateSet.md @@ -0,0 +1,31 @@ +# RHIDescriptorPool::AllocateSet + +公开方法,详见头文件声明。 + +```cpp +virtual RHIDescriptorSet* AllocateSet(const DescriptorSetLayoutDesc& layout) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorPool.h`,当前页面用于固定 `RHIDescriptorPool` 类目录下的方法级 canonical 路径。 + +**参数:** +- `layout` - 参数语义详见头文件声明。 + +**返回:** `RHIDescriptorSet*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorPool object; + // 根据上下文补齐参数后调用 RHIDescriptorPool::AllocateSet(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorPool.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorPool/Destructor.md b/docs/api/XCEngine/RHI/RHIDescriptorPool/Destructor.md new file mode 100644 index 00000000..0f49dbae --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorPool/Destructor.md @@ -0,0 +1,29 @@ +# RHIDescriptorPool::~RHIDescriptorPool() + +销毁对象并释放相关资源。 + +```cpp +virtual ~RHIDescriptorPool() = default; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorPool.h`,当前页面用于固定 `RHIDescriptorPool` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorPool object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorPool.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorPool/FreeSet.md b/docs/api/XCEngine/RHI/RHIDescriptorPool/FreeSet.md new file mode 100644 index 00000000..de7e4981 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorPool/FreeSet.md @@ -0,0 +1,31 @@ +# RHIDescriptorPool::FreeSet + +公开方法,详见头文件声明。 + +```cpp +virtual void FreeSet(RHIDescriptorSet* set) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorPool.h`,当前页面用于固定 `RHIDescriptorPool` 类目录下的方法级 canonical 路径。 + +**参数:** +- `set` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorPool object; + // 根据上下文补齐参数后调用 RHIDescriptorPool::FreeSet(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorPool.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorPool/GetDescriptorCount.md b/docs/api/XCEngine/RHI/RHIDescriptorPool/GetDescriptorCount.md new file mode 100644 index 00000000..646d6341 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorPool/GetDescriptorCount.md @@ -0,0 +1,30 @@ +# RHIDescriptorPool::GetDescriptorCount + +获取相关状态或对象。 + +```cpp +virtual uint32_t GetDescriptorCount() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorPool.h`,当前页面用于固定 `RHIDescriptorPool` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorPool object; + // 根据上下文补齐参数后调用 RHIDescriptorPool::GetDescriptorCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorPool.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorPool/GetNativeHandle.md b/docs/api/XCEngine/RHI/RHIDescriptorPool/GetNativeHandle.md new file mode 100644 index 00000000..7e7a995d --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorPool/GetNativeHandle.md @@ -0,0 +1,30 @@ +# RHIDescriptorPool::GetNativeHandle + +获取相关状态或对象。 + +```cpp +virtual void* GetNativeHandle() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorPool.h`,当前页面用于固定 `RHIDescriptorPool` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorPool object; + // 根据上下文补齐参数后调用 RHIDescriptorPool::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorPool.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorPool/GetType.md b/docs/api/XCEngine/RHI/RHIDescriptorPool/GetType.md new file mode 100644 index 00000000..9b080c1d --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorPool/GetType.md @@ -0,0 +1,30 @@ +# RHIDescriptorPool::GetType + +获取相关状态或对象。 + +```cpp +virtual DescriptorHeapType GetType() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorPool.h`,当前页面用于固定 `RHIDescriptorPool` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `DescriptorHeapType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorPool object; + // 根据上下文补齐参数后调用 RHIDescriptorPool::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorPool.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorPool/Initialize.md b/docs/api/XCEngine/RHI/RHIDescriptorPool/Initialize.md new file mode 100644 index 00000000..a73d6f2e --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorPool/Initialize.md @@ -0,0 +1,31 @@ +# RHIDescriptorPool::Initialize + +初始化内部状态。 + +```cpp +virtual bool Initialize(const DescriptorPoolDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorPool.h`,当前页面用于固定 `RHIDescriptorPool` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorPool object; + // 根据上下文补齐参数后调用 RHIDescriptorPool::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorPool.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorPool/RHIDescriptorPool.md b/docs/api/XCEngine/RHI/RHIDescriptorPool/RHIDescriptorPool.md new file mode 100644 index 00000000..690c5f9b --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorPool/RHIDescriptorPool.md @@ -0,0 +1,37 @@ +# RHIDescriptorPool + +**命名空间**: `XCEngine::RHI` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/RHI/RHIDescriptorPool.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHIDescriptorPool` public API。 + +## 概述 + +`RHIDescriptorPool.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RHIDescriptorPool` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~RHIDescriptorPool()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetDescriptorCount](GetDescriptorCount.md) | 获取相关状态或对象。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [AllocateSet](AllocateSet.md) | 公开方法,详见头文件声明。 | +| [FreeSet](FreeSet.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHIDescriptorPool/Shutdown.md b/docs/api/XCEngine/RHI/RHIDescriptorPool/Shutdown.md new file mode 100644 index 00000000..39820374 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorPool/Shutdown.md @@ -0,0 +1,30 @@ +# RHIDescriptorPool::Shutdown + +关闭并清理内部状态。 + +```cpp +virtual void Shutdown() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorPool.h`,当前页面用于固定 `RHIDescriptorPool` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorPool object; + // 根据上下文补齐参数后调用 RHIDescriptorPool::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorPool.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorSet/Bind.md b/docs/api/XCEngine/RHI/RHIDescriptorSet/Bind.md new file mode 100644 index 00000000..e3180768 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorSet/Bind.md @@ -0,0 +1,30 @@ +# RHIDescriptorSet::Bind + +公开方法,详见头文件声明。 + +```cpp +virtual void Bind() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorSet.h`,当前页面用于固定 `RHIDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorSet object; + // 根据上下文补齐参数后调用 RHIDescriptorSet::Bind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorSet.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorSet/Destructor.md b/docs/api/XCEngine/RHI/RHIDescriptorSet/Destructor.md new file mode 100644 index 00000000..eee7db26 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorSet/Destructor.md @@ -0,0 +1,29 @@ +# RHIDescriptorSet::~RHIDescriptorSet() + +销毁对象并释放相关资源。 + +```cpp +virtual ~RHIDescriptorSet() = default; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorSet.h`,当前页面用于固定 `RHIDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorSet object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorSet.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorSet/GetBindingCount.md b/docs/api/XCEngine/RHI/RHIDescriptorSet/GetBindingCount.md new file mode 100644 index 00000000..d7bf945d --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorSet/GetBindingCount.md @@ -0,0 +1,30 @@ +# RHIDescriptorSet::GetBindingCount + +获取相关状态或对象。 + +```cpp +virtual uint32_t GetBindingCount() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorSet.h`,当前页面用于固定 `RHIDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorSet object; + // 根据上下文补齐参数后调用 RHIDescriptorSet::GetBindingCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorSet.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorSet/GetBindings.md b/docs/api/XCEngine/RHI/RHIDescriptorSet/GetBindings.md new file mode 100644 index 00000000..cfd8298d --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorSet/GetBindings.md @@ -0,0 +1,30 @@ +# RHIDescriptorSet::GetBindings + +获取相关状态或对象。 + +```cpp +virtual const DescriptorSetLayoutBinding* GetBindings() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorSet.h`,当前页面用于固定 `RHIDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const DescriptorSetLayoutBinding*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorSet object; + // 根据上下文补齐参数后调用 RHIDescriptorSet::GetBindings(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorSet.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorSet/GetConstantBufferData.md b/docs/api/XCEngine/RHI/RHIDescriptorSet/GetConstantBufferData.md new file mode 100644 index 00000000..9dc4b14a --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorSet/GetConstantBufferData.md @@ -0,0 +1,30 @@ +# RHIDescriptorSet::GetConstantBufferData + +获取相关状态或对象。 + +```cpp +virtual void* GetConstantBufferData() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorSet.h`,当前页面用于固定 `RHIDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorSet object; + // 根据上下文补齐参数后调用 RHIDescriptorSet::GetConstantBufferData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorSet.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorSet/GetConstantBufferSize.md b/docs/api/XCEngine/RHI/RHIDescriptorSet/GetConstantBufferSize.md new file mode 100644 index 00000000..388bd180 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorSet/GetConstantBufferSize.md @@ -0,0 +1,30 @@ +# RHIDescriptorSet::GetConstantBufferSize + +获取相关状态或对象。 + +```cpp +virtual size_t GetConstantBufferSize() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorSet.h`,当前页面用于固定 `RHIDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorSet object; + // 根据上下文补齐参数后调用 RHIDescriptorSet::GetConstantBufferSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorSet.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorSet/IsConstantDirty.md b/docs/api/XCEngine/RHI/RHIDescriptorSet/IsConstantDirty.md new file mode 100644 index 00000000..3b26a488 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorSet/IsConstantDirty.md @@ -0,0 +1,30 @@ +# RHIDescriptorSet::IsConstantDirty + +查询当前状态。 + +```cpp +virtual bool IsConstantDirty() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorSet.h`,当前页面用于固定 `RHIDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorSet object; + // 根据上下文补齐参数后调用 RHIDescriptorSet::IsConstantDirty(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorSet.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorSet/MarkConstantClean.md b/docs/api/XCEngine/RHI/RHIDescriptorSet/MarkConstantClean.md new file mode 100644 index 00000000..cea06681 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorSet/MarkConstantClean.md @@ -0,0 +1,30 @@ +# RHIDescriptorSet::MarkConstantClean + +公开方法,详见头文件声明。 + +```cpp +virtual void MarkConstantClean() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorSet.h`,当前页面用于固定 `RHIDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorSet object; + // 根据上下文补齐参数后调用 RHIDescriptorSet::MarkConstantClean(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorSet.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorSet/RHIDescriptorSet.md b/docs/api/XCEngine/RHI/RHIDescriptorSet/RHIDescriptorSet.md new file mode 100644 index 00000000..3991da4e --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorSet/RHIDescriptorSet.md @@ -0,0 +1,42 @@ +# RHIDescriptorSet + +**命名空间**: `XCEngine::RHI` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/RHI/RHIDescriptorSet.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHIDescriptorSet` public API。 + +## 概述 + +`RHIDescriptorSet.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RHIDescriptorSet` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~RHIDescriptorSet()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Bind](Bind.md) | 公开方法,详见头文件声明。 | +| [Unbind](Unbind.md) | 公开方法,详见头文件声明。 | +| [Update](Update.md) | 更新运行时状态。 | +| [UpdateSampler](UpdateSampler.md) | 更新运行时状态。 | +| [WriteConstant](WriteConstant.md) | 公开方法,详见头文件声明。 | +| [GetBindingCount](GetBindingCount.md) | 获取相关状态或对象。 | +| [GetBindings](GetBindings.md) | 获取相关状态或对象。 | +| [GetConstantBufferData](GetConstantBufferData.md) | 获取相关状态或对象。 | +| [GetConstantBufferSize](GetConstantBufferSize.md) | 获取相关状态或对象。 | +| [IsConstantDirty](IsConstantDirty.md) | 查询当前状态。 | +| [MarkConstantClean](MarkConstantClean.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHIDescriptorSet/Shutdown.md b/docs/api/XCEngine/RHI/RHIDescriptorSet/Shutdown.md new file mode 100644 index 00000000..f688e479 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorSet/Shutdown.md @@ -0,0 +1,30 @@ +# RHIDescriptorSet::Shutdown + +关闭并清理内部状态。 + +```cpp +virtual void Shutdown() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorSet.h`,当前页面用于固定 `RHIDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorSet object; + // 根据上下文补齐参数后调用 RHIDescriptorSet::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorSet.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorSet/Unbind.md b/docs/api/XCEngine/RHI/RHIDescriptorSet/Unbind.md new file mode 100644 index 00000000..390ee120 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorSet/Unbind.md @@ -0,0 +1,30 @@ +# RHIDescriptorSet::Unbind + +公开方法,详见头文件声明。 + +```cpp +virtual void Unbind() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorSet.h`,当前页面用于固定 `RHIDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorSet object; + // 根据上下文补齐参数后调用 RHIDescriptorSet::Unbind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorSet.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorSet/Update.md b/docs/api/XCEngine/RHI/RHIDescriptorSet/Update.md new file mode 100644 index 00000000..cb48cf65 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorSet/Update.md @@ -0,0 +1,32 @@ +# RHIDescriptorSet::Update + +更新运行时状态。 + +```cpp +virtual void Update(uint32_t offset, RHIResourceView* view) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorSet.h`,当前页面用于固定 `RHIDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `offset` - 参数语义详见头文件声明。 +- `view` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorSet object; + // 根据上下文补齐参数后调用 RHIDescriptorSet::Update(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorSet.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorSet/UpdateSampler.md b/docs/api/XCEngine/RHI/RHIDescriptorSet/UpdateSampler.md new file mode 100644 index 00000000..a69786b2 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorSet/UpdateSampler.md @@ -0,0 +1,32 @@ +# RHIDescriptorSet::UpdateSampler + +更新运行时状态。 + +```cpp +virtual void UpdateSampler(uint32_t offset, RHISampler* sampler) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorSet.h`,当前页面用于固定 `RHIDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `offset` - 参数语义详见头文件声明。 +- `sampler` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorSet object; + // 根据上下文补齐参数后调用 RHIDescriptorSet::UpdateSampler(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorSet.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDescriptorSet/WriteConstant.md b/docs/api/XCEngine/RHI/RHIDescriptorSet/WriteConstant.md new file mode 100644 index 00000000..3bcdd512 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDescriptorSet/WriteConstant.md @@ -0,0 +1,34 @@ +# RHIDescriptorSet::WriteConstant + +公开方法,详见头文件声明。 + +```cpp +virtual void WriteConstant(uint32_t binding, const void* data, size_t size, size_t offset = 0) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDescriptorSet.h`,当前页面用于固定 `RHIDescriptorSet` 类目录下的方法级 canonical 路径。 + +**参数:** +- `binding` - 参数语义详见头文件声明。 +- `data` - 参数语义详见头文件声明。 +- `size` - 参数语义详见头文件声明。 +- `offset` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDescriptorSet object; + // 根据上下文补齐参数后调用 RHIDescriptorSet::WriteConstant(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDescriptorSet.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreateBuffer.md b/docs/api/XCEngine/RHI/RHIDevice/CreateBuffer.md new file mode 100644 index 00000000..c0f625ad --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreateBuffer.md @@ -0,0 +1,31 @@ +# RHIDevice::CreateBuffer + +创建新对象或资源。 + +```cpp +virtual RHIBuffer* CreateBuffer(const BufferDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIBuffer*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreateBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreateCommandList.md b/docs/api/XCEngine/RHI/RHIDevice/CreateCommandList.md new file mode 100644 index 00000000..d5eb8add --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreateCommandList.md @@ -0,0 +1,31 @@ +# RHIDevice::CreateCommandList + +创建新对象或资源。 + +```cpp +virtual RHICommandList* CreateCommandList(const CommandListDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHICommandList*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreateCommandList(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreateCommandQueue.md b/docs/api/XCEngine/RHI/RHIDevice/CreateCommandQueue.md new file mode 100644 index 00000000..0f9a4814 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreateCommandQueue.md @@ -0,0 +1,31 @@ +# RHIDevice::CreateCommandQueue + +创建新对象或资源。 + +```cpp +virtual RHICommandQueue* CreateCommandQueue(const CommandQueueDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHICommandQueue*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreateCommandQueue(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreateDepthStencilView.md b/docs/api/XCEngine/RHI/RHIDevice/CreateDepthStencilView.md new file mode 100644 index 00000000..57f03e5c --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreateDepthStencilView.md @@ -0,0 +1,32 @@ +# RHIDevice::CreateDepthStencilView + +创建新对象或资源。 + +```cpp +virtual RHIResourceView* CreateDepthStencilView(RHITexture* texture, const ResourceViewDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIResourceView*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreateDepthStencilView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreateDescriptorPool.md b/docs/api/XCEngine/RHI/RHIDevice/CreateDescriptorPool.md new file mode 100644 index 00000000..771b8efe --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreateDescriptorPool.md @@ -0,0 +1,31 @@ +# RHIDevice::CreateDescriptorPool + +创建新对象或资源。 + +```cpp +virtual RHIDescriptorPool* CreateDescriptorPool(const DescriptorPoolDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIDescriptorPool*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreateDescriptorPool(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreateDescriptorSet.md b/docs/api/XCEngine/RHI/RHIDevice/CreateDescriptorSet.md new file mode 100644 index 00000000..d1c23bb0 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreateDescriptorSet.md @@ -0,0 +1,32 @@ +# RHIDevice::CreateDescriptorSet + +创建新对象或资源。 + +```cpp +virtual RHIDescriptorSet* CreateDescriptorSet(RHIDescriptorPool* pool, const DescriptorSetLayoutDesc& layout) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `pool` - 参数语义详见头文件声明。 +- `layout` - 参数语义详见头文件声明。 + +**返回:** `RHIDescriptorSet*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreateDescriptorSet(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreateFence.md b/docs/api/XCEngine/RHI/RHIDevice/CreateFence.md new file mode 100644 index 00000000..9bfed941 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreateFence.md @@ -0,0 +1,31 @@ +# RHIDevice::CreateFence + +创建新对象或资源。 + +```cpp +virtual RHIFence* CreateFence(const FenceDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIFence*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreateFence(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreateFramebuffer.md b/docs/api/XCEngine/RHI/RHIDevice/CreateFramebuffer.md new file mode 100644 index 00000000..ae80c032 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreateFramebuffer.md @@ -0,0 +1,36 @@ +# RHIDevice::CreateFramebuffer + +创建新对象或资源。 + +```cpp +virtual RHIFramebuffer* CreateFramebuffer( class RHIRenderPass* renderPass, uint32_t width, uint32_t height, uint32_t colorAttachmentCount, RHIResourceView** colorAttachments, RHIResourceView* depthStencilAttachment) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `renderPass` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 +- `colorAttachmentCount` - 参数语义详见头文件声明。 +- `colorAttachments` - 参数语义详见头文件声明。 +- `depthStencilAttachment` - 参数语义详见头文件声明。 + +**返回:** `RHIFramebuffer*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreateFramebuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreateIndexBufferView.md b/docs/api/XCEngine/RHI/RHIDevice/CreateIndexBufferView.md new file mode 100644 index 00000000..622eabae --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreateIndexBufferView.md @@ -0,0 +1,32 @@ +# RHIDevice::CreateIndexBufferView + +创建新对象或资源。 + +```cpp +virtual RHIResourceView* CreateIndexBufferView(RHIBuffer* buffer, const ResourceViewDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIResourceView*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreateIndexBufferView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreatePipelineLayout.md b/docs/api/XCEngine/RHI/RHIDevice/CreatePipelineLayout.md new file mode 100644 index 00000000..7f250f3b --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreatePipelineLayout.md @@ -0,0 +1,31 @@ +# RHIDevice::CreatePipelineLayout + +创建新对象或资源。 + +```cpp +virtual RHIPipelineLayout* CreatePipelineLayout(const RHIPipelineLayoutDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIPipelineLayout*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreatePipelineLayout(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreatePipelineState.md b/docs/api/XCEngine/RHI/RHIDevice/CreatePipelineState.md new file mode 100644 index 00000000..aaefd644 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreatePipelineState.md @@ -0,0 +1,31 @@ +# RHIDevice::CreatePipelineState + +创建新对象或资源。 + +```cpp +virtual RHIPipelineState* CreatePipelineState(const GraphicsPipelineDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIPipelineState*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreatePipelineState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreateRenderPass.md b/docs/api/XCEngine/RHI/RHIDevice/CreateRenderPass.md new file mode 100644 index 00000000..3ea8dc12 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreateRenderPass.md @@ -0,0 +1,33 @@ +# RHIDevice::CreateRenderPass + +创建新对象或资源。 + +```cpp +virtual RHIRenderPass* CreateRenderPass( uint32_t colorAttachmentCount, const AttachmentDesc* colorAttachments, const AttachmentDesc* depthStencilAttachment) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `colorAttachmentCount` - 参数语义详见头文件声明。 +- `colorAttachments` - 参数语义详见头文件声明。 +- `depthStencilAttachment` - 参数语义详见头文件声明。 + +**返回:** `RHIRenderPass*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreateRenderPass(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreateRenderTargetView.md b/docs/api/XCEngine/RHI/RHIDevice/CreateRenderTargetView.md new file mode 100644 index 00000000..029c5413 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreateRenderTargetView.md @@ -0,0 +1,32 @@ +# RHIDevice::CreateRenderTargetView + +创建新对象或资源。 + +```cpp +virtual RHIResourceView* CreateRenderTargetView(RHITexture* texture, const ResourceViewDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIResourceView*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreateRenderTargetView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreateSampler.md b/docs/api/XCEngine/RHI/RHIDevice/CreateSampler.md new file mode 100644 index 00000000..ba0ba722 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreateSampler.md @@ -0,0 +1,31 @@ +# RHIDevice::CreateSampler + +创建新对象或资源。 + +```cpp +virtual RHISampler* CreateSampler(const SamplerDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHISampler*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreateSampler(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreateShader.md b/docs/api/XCEngine/RHI/RHIDevice/CreateShader.md new file mode 100644 index 00000000..5e0fab5c --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreateShader.md @@ -0,0 +1,31 @@ +# RHIDevice::CreateShader + +创建新对象或资源。 + +```cpp +virtual RHIShader* CreateShader(const ShaderCompileDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIShader*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreateShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreateShaderResourceView.md b/docs/api/XCEngine/RHI/RHIDevice/CreateShaderResourceView.md new file mode 100644 index 00000000..920a3d7a --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreateShaderResourceView.md @@ -0,0 +1,32 @@ +# RHIDevice::CreateShaderResourceView + +创建新对象或资源。 + +```cpp +virtual RHIResourceView* CreateShaderResourceView(RHITexture* texture, const ResourceViewDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIResourceView*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreateShaderResourceView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreateSwapChain.md b/docs/api/XCEngine/RHI/RHIDevice/CreateSwapChain.md new file mode 100644 index 00000000..a787bb93 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreateSwapChain.md @@ -0,0 +1,32 @@ +# RHIDevice::CreateSwapChain + +创建新对象或资源。 + +```cpp +virtual RHISwapChain* CreateSwapChain(const SwapChainDesc& desc, RHICommandQueue* presentQueue) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 +- `presentQueue` - 参数语义详见头文件声明。 + +**返回:** `RHISwapChain*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreateSwapChain(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreateTexture.md b/docs/api/XCEngine/RHI/RHIDevice/CreateTexture.md new file mode 100644 index 00000000..4ee1526c --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreateTexture.md @@ -0,0 +1,47 @@ +# RHIDevice::CreateTexture + +创建新对象或资源。 + +该方法在 `XCEngine/RHI/RHIDevice.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +virtual RHITexture* CreateTexture(const TextureDesc& desc) = 0; +``` + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHITexture*` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +virtual RHITexture* CreateTexture(const TextureDesc& desc, const void* initialData, size_t initialDataSize, uint32_t rowPitch = 0) = 0; +``` + +**参数:** +- `desc` - 参数语义详见头文件声明。 +- `initialData` - 参数语义详见头文件声明。 +- `initialDataSize` - 参数语义详见头文件声明。 +- `rowPitch` - 参数语义详见头文件声明。 + +**返回:** `RHITexture*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreateTexture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreateUnorderedAccessView.md b/docs/api/XCEngine/RHI/RHIDevice/CreateUnorderedAccessView.md new file mode 100644 index 00000000..f4afd5c8 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreateUnorderedAccessView.md @@ -0,0 +1,32 @@ +# RHIDevice::CreateUnorderedAccessView + +创建新对象或资源。 + +```cpp +virtual RHIResourceView* CreateUnorderedAccessView(RHITexture* texture, const ResourceViewDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `texture` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIResourceView*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreateUnorderedAccessView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/CreateVertexBufferView.md b/docs/api/XCEngine/RHI/RHIDevice/CreateVertexBufferView.md new file mode 100644 index 00000000..229eb770 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/CreateVertexBufferView.md @@ -0,0 +1,32 @@ +# RHIDevice::CreateVertexBufferView + +创建新对象或资源。 + +```cpp +virtual RHIResourceView* CreateVertexBufferView(RHIBuffer* buffer, const ResourceViewDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `buffer` - 参数语义详见头文件声明。 +- `desc` - 参数语义详见头文件声明。 + +**返回:** `RHIResourceView*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::CreateVertexBufferView(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/Destructor.md b/docs/api/XCEngine/RHI/RHIDevice/Destructor.md new file mode 100644 index 00000000..a669d5ed --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/Destructor.md @@ -0,0 +1,29 @@ +# RHIDevice::~RHIDevice() + +销毁对象并释放相关资源。 + +```cpp +virtual ~RHIDevice() = default; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/GetCapabilities.md b/docs/api/XCEngine/RHI/RHIDevice/GetCapabilities.md new file mode 100644 index 00000000..2355fb85 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/GetCapabilities.md @@ -0,0 +1,30 @@ +# RHIDevice::GetCapabilities + +获取相关状态或对象。 + +```cpp +virtual const RHICapabilities& GetCapabilities() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const RHICapabilities&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::GetCapabilities(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/GetDeviceInfo.md b/docs/api/XCEngine/RHI/RHIDevice/GetDeviceInfo.md new file mode 100644 index 00000000..53807d4f --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/GetDeviceInfo.md @@ -0,0 +1,30 @@ +# RHIDevice::GetDeviceInfo + +获取相关状态或对象。 + +```cpp +virtual const RHIDeviceInfo& GetDeviceInfo() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const RHIDeviceInfo&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::GetDeviceInfo(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/GetNativeDevice.md b/docs/api/XCEngine/RHI/RHIDevice/GetNativeDevice.md new file mode 100644 index 00000000..1681b5e9 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/GetNativeDevice.md @@ -0,0 +1,30 @@ +# RHIDevice::GetNativeDevice + +获取相关状态或对象。 + +```cpp +virtual void* GetNativeDevice() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::GetNativeDevice(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/Initialize.md b/docs/api/XCEngine/RHI/RHIDevice/Initialize.md new file mode 100644 index 00000000..07e93034 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/Initialize.md @@ -0,0 +1,31 @@ +# RHIDevice::Initialize + +初始化内部状态。 + +```cpp +virtual bool Initialize(const RHIDeviceDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIDevice/RHIDevice.md b/docs/api/XCEngine/RHI/RHIDevice/RHIDevice.md new file mode 100644 index 00000000..a14a3d4c --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/RHIDevice.md @@ -0,0 +1,55 @@ +# RHIDevice + +**命名空间**: `XCEngine::RHI` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/RHI/RHIDevice.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHIDevice` public API。 + +## 概述 + +`RHIDevice.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RHIDevice` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~RHIDevice()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [CreateBuffer](CreateBuffer.md) | 创建新对象或资源。 | +| [CreateTexture](CreateTexture.md) | 创建新对象或资源。 | +| [CreateSwapChain](CreateSwapChain.md) | 创建新对象或资源。 | +| [CreateCommandList](CreateCommandList.md) | 创建新对象或资源。 | +| [CreateCommandQueue](CreateCommandQueue.md) | 创建新对象或资源。 | +| [CreateShader](CreateShader.md) | 创建新对象或资源。 | +| [CreatePipelineState](CreatePipelineState.md) | 创建新对象或资源。 | +| [CreatePipelineLayout](CreatePipelineLayout.md) | 创建新对象或资源。 | +| [CreateFence](CreateFence.md) | 创建新对象或资源。 | +| [CreateSampler](CreateSampler.md) | 创建新对象或资源。 | +| [CreateRenderPass](CreateRenderPass.md) | 创建新对象或资源。 | +| [CreateFramebuffer](CreateFramebuffer.md) | 创建新对象或资源。 | +| [CreateDescriptorPool](CreateDescriptorPool.md) | 创建新对象或资源。 | +| [CreateDescriptorSet](CreateDescriptorSet.md) | 创建新对象或资源。 | +| [CreateVertexBufferView](CreateVertexBufferView.md) | 创建新对象或资源。 | +| [CreateIndexBufferView](CreateIndexBufferView.md) | 创建新对象或资源。 | +| [CreateRenderTargetView](CreateRenderTargetView.md) | 创建新对象或资源。 | +| [CreateDepthStencilView](CreateDepthStencilView.md) | 创建新对象或资源。 | +| [CreateShaderResourceView](CreateShaderResourceView.md) | 创建新对象或资源。 | +| [CreateUnorderedAccessView](CreateUnorderedAccessView.md) | 创建新对象或资源。 | +| [GetCapabilities](GetCapabilities.md) | 获取相关状态或对象。 | +| [GetDeviceInfo](GetDeviceInfo.md) | 获取相关状态或对象。 | +| [GetNativeDevice](GetNativeDevice.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHIDevice/Shutdown.md b/docs/api/XCEngine/RHI/RHIDevice/Shutdown.md new file mode 100644 index 00000000..4a7a5440 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIDevice/Shutdown.md @@ -0,0 +1,30 @@ +# RHIDevice::Shutdown + +关闭并清理内部状态。 + +```cpp +virtual void Shutdown() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIDevice.h`,当前页面用于固定 `RHIDevice` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIDevice object; + // 根据上下文补齐参数后调用 RHIDevice::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIDevice.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIEnums/RHIEnums.md b/docs/api/XCEngine/RHI/RHIEnums/RHIEnums.md new file mode 100644 index 00000000..06e74f3a --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIEnums/RHIEnums.md @@ -0,0 +1,73 @@ +# RHIEnums + +**命名空间**: `XCEngine::RHI` + +**类型**: `enum class` + +**头文件**: `XCEngine/RHI/RHIEnums.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHIEnums` public API。 + +## 概述 + +`RHIEnums.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `ShaderType` | `enum class` | 头文件中的公开声明。 | +| `ShaderLanguage` | `enum class` | 头文件中的公开声明。 | +| `CullMode` | `enum class` | 头文件中的公开声明。 | +| `FillMode` | `enum class` | 头文件中的公开声明。 | +| `FrontFace` | `enum class` | 头文件中的公开声明。 | +| `BlendOp` | `enum class` | 头文件中的公开声明。 | +| `BlendFactor` | `enum class` | 头文件中的公开声明。 | +| `ComparisonFunc` | `enum class` | 头文件中的公开声明。 | +| `StencilOp` | `enum class` | 头文件中的公开声明。 | +| `TextureType` | `enum class` | 头文件中的公开声明。 | +| `BufferType` | `enum class` | 头文件中的公开声明。 | +| `DescriptorType` | `enum class` | 头文件中的公开声明。 | +| `PipelineType` | `enum class` | 头文件中的公开声明。 | +| `CommandQueueType` | `enum class` | 头文件中的公开声明。 | +| `LoadAction` | `enum class` | 头文件中的公开声明。 | +| `StoreAction` | `enum class` | 头文件中的公开声明。 | +| `PresentFlags` | `enum class` | 头文件中的公开声明。 | +| `PrimitiveTopology` | `enum class` | 头文件中的公开声明。 | +| `PrimitiveTopologyType` | `enum class` | 头文件中的公开声明。 | +| `FilterMode` | `enum class` | 头文件中的公开声明。 | +| `TextureAddressMode` | `enum class` | 头文件中的公开声明。 | +| `BorderColor` | `enum class` | 头文件中的公开声明。 | +| `LogicOp` | `enum class` | 头文件中的公开声明。 | +| `ColorWriteMask` | `enum class` | 头文件中的公开声明。 | +| `ShaderVisibility` | `enum class` | 头文件中的公开声明。 | +| `RootParameterType` | `enum class` | 头文件中的公开声明。 | +| `DescriptorHeapType` | `enum class` | 头文件中的公开声明。 | +| `ResourceViewDimension` | `enum class` | 头文件中的公开声明。 | +| `ResourceViewType` | `enum class` | 头文件中的公开声明。 | +| `QueryType` | `enum class` | 头文件中的公开声明。 | +| `Format` | `enum class` | 头文件中的公开声明。 | +| `ResourceStates` | `enum class` | 头文件中的公开声明。 | +| `HeapType` | `enum class` | 头文件中的公开声明。 | +| `RHIType` | `enum class` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `Vertex` | - | 枚举项。 | +| `Fragment` | - | 枚举项。 | +| `Geometry` | - | 枚举项。 | +| `Compute` | - | 枚举项。 | +| `TessControl` | - | 枚举项。 | +| `TessEvaluation` | - | 枚举项。 | +| `Hull` | - | 枚举项。 | +| `Domain` | - | 枚举项。 | +| `Amplification` | - | 枚举项。 | +| `Mesh` | - | 枚举项。 | +| `Library` | - | 枚举项。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHIFactory/CreateRHIDevice.md b/docs/api/XCEngine/RHI/RHIFactory/CreateRHIDevice.md new file mode 100644 index 00000000..13905f9e --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIFactory/CreateRHIDevice.md @@ -0,0 +1,44 @@ +# RHIFactory::CreateRHIDevice + +创建新对象或资源。 + +该方法在 `XCEngine/RHI/RHIFactory.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +static RHIDevice* CreateRHIDevice(RHIType type); +``` + +**参数:** +- `type` - 参数语义详见头文件声明。 + +**返回:** `RHIDevice*` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +static RHIDevice* CreateRHIDevice(const std::string& typeName); +``` + +**参数:** +- `typeName` - 参数语义详见头文件声明。 + +**返回:** `RHIDevice*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIFactory object; + // 根据上下文补齐参数后调用 RHIFactory::CreateRHIDevice(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIFactory.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIFactory/RHIFactory.md b/docs/api/XCEngine/RHI/RHIFactory/RHIFactory.md new file mode 100644 index 00000000..b5be6135 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIFactory/RHIFactory.md @@ -0,0 +1,30 @@ +# RHIFactory + +**命名空间**: `XCEngine::RHI` + +**类型**: `class` + +**头文件**: `XCEngine/RHI/RHIFactory.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHIFactory` public API。 + +## 概述 + +`RHIFactory.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RHIFactory` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [CreateRHIDevice](CreateRHIDevice.md) | 创建新对象或资源。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHIFence/Destructor.md b/docs/api/XCEngine/RHI/RHIFence/Destructor.md new file mode 100644 index 00000000..1cabd6c7 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIFence/Destructor.md @@ -0,0 +1,29 @@ +# RHIFence::~RHIFence() + +销毁对象并释放相关资源。 + +```cpp +virtual ~RHIFence() = default; +``` + +该方法声明于 `XCEngine/RHI/RHIFence.h`,当前页面用于固定 `RHIFence` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIFence object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](RHIFence.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIFence/GetCompletedValue.md b/docs/api/XCEngine/RHI/RHIFence/GetCompletedValue.md new file mode 100644 index 00000000..fe077d25 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIFence/GetCompletedValue.md @@ -0,0 +1,30 @@ +# RHIFence::GetCompletedValue + +获取相关状态或对象。 + +```cpp +virtual uint64_t GetCompletedValue() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIFence.h`,当前页面用于固定 `RHIFence` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIFence object; + // 根据上下文补齐参数后调用 RHIFence::GetCompletedValue(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIFence.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIFence/GetNativeHandle.md b/docs/api/XCEngine/RHI/RHIFence/GetNativeHandle.md new file mode 100644 index 00000000..6ffb4949 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIFence/GetNativeHandle.md @@ -0,0 +1,30 @@ +# RHIFence::GetNativeHandle + +获取相关状态或对象。 + +```cpp +virtual void* GetNativeHandle() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIFence.h`,当前页面用于固定 `RHIFence` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIFence object; + // 根据上下文补齐参数后调用 RHIFence::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIFence.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIFence/RHIFence.md b/docs/api/XCEngine/RHI/RHIFence/RHIFence.md new file mode 100644 index 00000000..5c3e1411 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIFence/RHIFence.md @@ -0,0 +1,35 @@ +# RHIFence + +**命名空间**: `XCEngine::RHI` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/RHI/RHIFence.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHIFence` public API。 + +## 概述 + +`RHIFence.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RHIFence` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~RHIFence()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Signal](Signal.md) | 公开方法,详见头文件声明。 | +| [Wait](Wait.md) | 公开方法,详见头文件声明。 | +| [GetCompletedValue](GetCompletedValue.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHIFence/Shutdown.md b/docs/api/XCEngine/RHI/RHIFence/Shutdown.md new file mode 100644 index 00000000..1b497f63 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIFence/Shutdown.md @@ -0,0 +1,30 @@ +# RHIFence::Shutdown + +关闭并清理内部状态。 + +```cpp +virtual void Shutdown() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIFence.h`,当前页面用于固定 `RHIFence` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIFence object; + // 根据上下文补齐参数后调用 RHIFence::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIFence.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIFence/Signal.md b/docs/api/XCEngine/RHI/RHIFence/Signal.md new file mode 100644 index 00000000..e1120699 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIFence/Signal.md @@ -0,0 +1,43 @@ +# RHIFence::Signal + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/RHI/RHIFence.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +virtual void Signal() = 0; +``` + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +virtual void Signal(uint64_t value) = 0; +``` + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIFence object; + // 根据上下文补齐参数后调用 RHIFence::Signal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIFence.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIFence/Wait.md b/docs/api/XCEngine/RHI/RHIFence/Wait.md new file mode 100644 index 00000000..344e7629 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIFence/Wait.md @@ -0,0 +1,31 @@ +# RHIFence::Wait + +公开方法,详见头文件声明。 + +```cpp +virtual void Wait(uint64_t value) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIFence.h`,当前页面用于固定 `RHIFence` 类目录下的方法级 canonical 路径。 + +**参数:** +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIFence object; + // 根据上下文补齐参数后调用 RHIFence::Wait(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIFence.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIFramebuffer/Destructor.md b/docs/api/XCEngine/RHI/RHIFramebuffer/Destructor.md new file mode 100644 index 00000000..177310cf --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIFramebuffer/Destructor.md @@ -0,0 +1,29 @@ +# RHIFramebuffer::~RHIFramebuffer() + +销毁对象并释放相关资源。 + +```cpp +virtual ~RHIFramebuffer() = default; +``` + +该方法声明于 `XCEngine/RHI/RHIFramebuffer.h`,当前页面用于固定 `RHIFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIFramebuffer object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](RHIFramebuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIFramebuffer/GetHeight.md b/docs/api/XCEngine/RHI/RHIFramebuffer/GetHeight.md new file mode 100644 index 00000000..bcd44401 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIFramebuffer/GetHeight.md @@ -0,0 +1,30 @@ +# RHIFramebuffer::GetHeight + +获取相关状态或对象。 + +```cpp +virtual uint32_t GetHeight() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIFramebuffer.h`,当前页面用于固定 `RHIFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIFramebuffer object; + // 根据上下文补齐参数后调用 RHIFramebuffer::GetHeight(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIFramebuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIFramebuffer/GetNativeHandle.md b/docs/api/XCEngine/RHI/RHIFramebuffer/GetNativeHandle.md new file mode 100644 index 00000000..18d0a575 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIFramebuffer/GetNativeHandle.md @@ -0,0 +1,30 @@ +# RHIFramebuffer::GetNativeHandle + +获取相关状态或对象。 + +```cpp +virtual void* GetNativeHandle() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIFramebuffer.h`,当前页面用于固定 `RHIFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIFramebuffer object; + // 根据上下文补齐参数后调用 RHIFramebuffer::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIFramebuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIFramebuffer/GetWidth.md b/docs/api/XCEngine/RHI/RHIFramebuffer/GetWidth.md new file mode 100644 index 00000000..e362f2b0 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIFramebuffer/GetWidth.md @@ -0,0 +1,30 @@ +# RHIFramebuffer::GetWidth + +获取相关状态或对象。 + +```cpp +virtual uint32_t GetWidth() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIFramebuffer.h`,当前页面用于固定 `RHIFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIFramebuffer object; + // 根据上下文补齐参数后调用 RHIFramebuffer::GetWidth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIFramebuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIFramebuffer/Initialize.md b/docs/api/XCEngine/RHI/RHIFramebuffer/Initialize.md new file mode 100644 index 00000000..0103d092 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIFramebuffer/Initialize.md @@ -0,0 +1,36 @@ +# RHIFramebuffer::Initialize + +初始化内部状态。 + +```cpp +virtual bool Initialize(class RHIRenderPass* renderPass, uint32_t width, uint32_t height, uint32_t colorAttachmentCount, RHIResourceView** colorAttachments, RHIResourceView* depthStencilAttachment) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIFramebuffer.h`,当前页面用于固定 `RHIFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** +- `renderPass` - 参数语义详见头文件声明。 +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 +- `colorAttachmentCount` - 参数语义详见头文件声明。 +- `colorAttachments` - 参数语义详见头文件声明。 +- `depthStencilAttachment` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIFramebuffer object; + // 根据上下文补齐参数后调用 RHIFramebuffer::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIFramebuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIFramebuffer/IsValid.md b/docs/api/XCEngine/RHI/RHIFramebuffer/IsValid.md new file mode 100644 index 00000000..3bd623d6 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIFramebuffer/IsValid.md @@ -0,0 +1,30 @@ +# RHIFramebuffer::IsValid + +查询当前状态。 + +```cpp +virtual bool IsValid() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIFramebuffer.h`,当前页面用于固定 `RHIFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIFramebuffer object; + // 根据上下文补齐参数后调用 RHIFramebuffer::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIFramebuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIFramebuffer/RHIFramebuffer.md b/docs/api/XCEngine/RHI/RHIFramebuffer/RHIFramebuffer.md new file mode 100644 index 00000000..1dedde19 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIFramebuffer/RHIFramebuffer.md @@ -0,0 +1,36 @@ +# RHIFramebuffer + +**命名空间**: `XCEngine::RHI` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/RHI/RHIFramebuffer.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHIFramebuffer` public API。 + +## 概述 + +`RHIFramebuffer.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RHIFramebuffer` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~RHIFramebuffer()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetWidth](GetWidth.md) | 获取相关状态或对象。 | +| [GetHeight](GetHeight.md) | 获取相关状态或对象。 | +| [IsValid](IsValid.md) | 查询当前状态。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHIFramebuffer/Shutdown.md b/docs/api/XCEngine/RHI/RHIFramebuffer/Shutdown.md new file mode 100644 index 00000000..a2db2388 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIFramebuffer/Shutdown.md @@ -0,0 +1,30 @@ +# RHIFramebuffer::Shutdown + +关闭并清理内部状态。 + +```cpp +virtual void Shutdown() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIFramebuffer.h`,当前页面用于固定 `RHIFramebuffer` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIFramebuffer object; + // 根据上下文补齐参数后调用 RHIFramebuffer::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIFramebuffer.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineLayout/Destructor.md b/docs/api/XCEngine/RHI/RHIPipelineLayout/Destructor.md new file mode 100644 index 00000000..2b05183f --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineLayout/Destructor.md @@ -0,0 +1,29 @@ +# RHIPipelineLayout::~RHIPipelineLayout() + +销毁对象并释放相关资源。 + +```cpp +virtual ~RHIPipelineLayout() = default; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineLayout.h`,当前页面用于固定 `RHIPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineLayout object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineLayout.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineLayout/GetNativeHandle.md b/docs/api/XCEngine/RHI/RHIPipelineLayout/GetNativeHandle.md new file mode 100644 index 00000000..ed0bb3de --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineLayout/GetNativeHandle.md @@ -0,0 +1,30 @@ +# RHIPipelineLayout::GetNativeHandle + +获取相关状态或对象。 + +```cpp +virtual void* GetNativeHandle() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineLayout.h`,当前页面用于固定 `RHIPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineLayout object; + // 根据上下文补齐参数后调用 RHIPipelineLayout::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineLayout.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineLayout/Initialize.md b/docs/api/XCEngine/RHI/RHIPipelineLayout/Initialize.md new file mode 100644 index 00000000..478694fd --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineLayout/Initialize.md @@ -0,0 +1,31 @@ +# RHIPipelineLayout::Initialize + +初始化内部状态。 + +```cpp +virtual bool Initialize(const RHIPipelineLayoutDesc& desc) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineLayout.h`,当前页面用于固定 `RHIPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** +- `desc` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineLayout object; + // 根据上下文补齐参数后调用 RHIPipelineLayout::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineLayout.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineLayout/RHIPipelineLayout.md b/docs/api/XCEngine/RHI/RHIPipelineLayout/RHIPipelineLayout.md new file mode 100644 index 00000000..cdcf5634 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineLayout/RHIPipelineLayout.md @@ -0,0 +1,33 @@ +# RHIPipelineLayout + +**命名空间**: `XCEngine::RHI` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/RHI/RHIPipelineLayout.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHIPipelineLayout` public API。 + +## 概述 + +`RHIPipelineLayout.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RHIPipelineLayout` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~RHIPipelineLayout()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHIPipelineLayout/Shutdown.md b/docs/api/XCEngine/RHI/RHIPipelineLayout/Shutdown.md new file mode 100644 index 00000000..7a32ac9f --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineLayout/Shutdown.md @@ -0,0 +1,30 @@ +# RHIPipelineLayout::Shutdown + +关闭并清理内部状态。 + +```cpp +virtual void Shutdown() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineLayout.h`,当前页面用于固定 `RHIPipelineLayout` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineLayout object; + // 根据上下文补齐参数后调用 RHIPipelineLayout::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineLayout.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/Bind.md b/docs/api/XCEngine/RHI/RHIPipelineState/Bind.md new file mode 100644 index 00000000..5a9ab491 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/Bind.md @@ -0,0 +1,30 @@ +# RHIPipelineState::Bind + +公开方法,详见头文件声明。 + +```cpp +virtual void Bind() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::Bind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/Destructor.md b/docs/api/XCEngine/RHI/RHIPipelineState/Destructor.md new file mode 100644 index 00000000..14715537 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/Destructor.md @@ -0,0 +1,29 @@ +# RHIPipelineState::~RHIPipelineState() + +销毁对象并释放相关资源。 + +```cpp +virtual ~RHIPipelineState() = default; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/EnsureValid.md b/docs/api/XCEngine/RHI/RHIPipelineState/EnsureValid.md new file mode 100644 index 00000000..f7091fbe --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/EnsureValid.md @@ -0,0 +1,30 @@ +# RHIPipelineState::EnsureValid + +公开方法,详见头文件声明。 + +```cpp +virtual void EnsureValid() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::EnsureValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/GetBlendState.md b/docs/api/XCEngine/RHI/RHIPipelineState/GetBlendState.md new file mode 100644 index 00000000..8fc8de98 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/GetBlendState.md @@ -0,0 +1,30 @@ +# RHIPipelineState::GetBlendState + +获取相关状态或对象。 + +```cpp +virtual const BlendDesc& GetBlendState() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const BlendDesc&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::GetBlendState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/GetComputeShader.md b/docs/api/XCEngine/RHI/RHIPipelineState/GetComputeShader.md new file mode 100644 index 00000000..8ed9025e --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/GetComputeShader.md @@ -0,0 +1,30 @@ +# RHIPipelineState::GetComputeShader + +获取相关状态或对象。 + +```cpp +virtual RHIShader* GetComputeShader() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `RHIShader*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::GetComputeShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/GetDepthStencilState.md b/docs/api/XCEngine/RHI/RHIPipelineState/GetDepthStencilState.md new file mode 100644 index 00000000..bffb5934 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/GetDepthStencilState.md @@ -0,0 +1,30 @@ +# RHIPipelineState::GetDepthStencilState + +获取相关状态或对象。 + +```cpp +virtual const DepthStencilStateDesc& GetDepthStencilState() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const DepthStencilStateDesc&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::GetDepthStencilState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/GetHash.md b/docs/api/XCEngine/RHI/RHIPipelineState/GetHash.md new file mode 100644 index 00000000..2cbfc9a5 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/GetHash.md @@ -0,0 +1,30 @@ +# RHIPipelineState::GetHash + +获取相关状态或对象。 + +```cpp +virtual PipelineStateHash GetHash() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `PipelineStateHash` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::GetHash(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/GetInputLayout.md b/docs/api/XCEngine/RHI/RHIPipelineState/GetInputLayout.md new file mode 100644 index 00000000..b409ec56 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/GetInputLayout.md @@ -0,0 +1,30 @@ +# RHIPipelineState::GetInputLayout + +获取相关状态或对象。 + +```cpp +virtual const InputLayoutDesc& GetInputLayout() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const InputLayoutDesc&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::GetInputLayout(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/GetNativeHandle.md b/docs/api/XCEngine/RHI/RHIPipelineState/GetNativeHandle.md new file mode 100644 index 00000000..20b62a90 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/GetNativeHandle.md @@ -0,0 +1,30 @@ +# RHIPipelineState::GetNativeHandle + +获取相关状态或对象。 + +```cpp +virtual void* GetNativeHandle() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/GetRasterizerState.md b/docs/api/XCEngine/RHI/RHIPipelineState/GetRasterizerState.md new file mode 100644 index 00000000..f91c49f2 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/GetRasterizerState.md @@ -0,0 +1,30 @@ +# RHIPipelineState::GetRasterizerState + +获取相关状态或对象。 + +```cpp +virtual const RasterizerDesc& GetRasterizerState() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const RasterizerDesc&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::GetRasterizerState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/GetType.md b/docs/api/XCEngine/RHI/RHIPipelineState/GetType.md new file mode 100644 index 00000000..58eb1ad7 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/GetType.md @@ -0,0 +1,30 @@ +# RHIPipelineState::GetType + +获取相关状态或对象。 + +```cpp +virtual PipelineType GetType() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `PipelineType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/HasComputeShader.md b/docs/api/XCEngine/RHI/RHIPipelineState/HasComputeShader.md new file mode 100644 index 00000000..afa0546c --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/HasComputeShader.md @@ -0,0 +1,30 @@ +# RHIPipelineState::HasComputeShader + +判断是否具备指定状态或能力。 + +```cpp +virtual bool HasComputeShader() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::HasComputeShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/IsValid.md b/docs/api/XCEngine/RHI/RHIPipelineState/IsValid.md new file mode 100644 index 00000000..9e4ca5e0 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/IsValid.md @@ -0,0 +1,30 @@ +# RHIPipelineState::IsValid + +查询当前状态。 + +```cpp +virtual bool IsValid() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/RHIPipelineState.md b/docs/api/XCEngine/RHI/RHIPipelineState/RHIPipelineState.md new file mode 100644 index 00000000..1368ee54 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/RHIPipelineState.md @@ -0,0 +1,52 @@ +# RHIPipelineState + +**命名空间**: `XCEngine::RHI` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/RHI/RHIPipelineState.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHIPipelineState` public API。 + +## 概述 + +`RHIPipelineState.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RHIPipelineState` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~RHIPipelineState()](Destructor.md) | 销毁对象并释放相关资源。 | +| [SetInputLayout](SetInputLayout.md) | 设置相关状态或配置。 | +| [SetRasterizerState](SetRasterizerState.md) | 设置相关状态或配置。 | +| [SetBlendState](SetBlendState.md) | 设置相关状态或配置。 | +| [SetDepthStencilState](SetDepthStencilState.md) | 设置相关状态或配置。 | +| [SetTopology](SetTopology.md) | 设置相关状态或配置。 | +| [SetRenderTargetFormats](SetRenderTargetFormats.md) | 设置相关状态或配置。 | +| [SetSampleCount](SetSampleCount.md) | 设置相关状态或配置。 | +| [SetComputeShader](SetComputeShader.md) | 设置相关状态或配置。 | +| [GetRasterizerState](GetRasterizerState.md) | 获取相关状态或对象。 | +| [GetBlendState](GetBlendState.md) | 获取相关状态或对象。 | +| [GetDepthStencilState](GetDepthStencilState.md) | 获取相关状态或对象。 | +| [GetInputLayout](GetInputLayout.md) | 获取相关状态或对象。 | +| [GetHash](GetHash.md) | 获取相关状态或对象。 | +| [GetComputeShader](GetComputeShader.md) | 获取相关状态或对象。 | +| [HasComputeShader](HasComputeShader.md) | 判断是否具备指定状态或能力。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [EnsureValid](EnsureValid.md) | 公开方法,详见头文件声明。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Bind](Bind.md) | 公开方法,详见头文件声明。 | +| [Unbind](Unbind.md) | 公开方法,详见头文件声明。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/SetBlendState.md b/docs/api/XCEngine/RHI/RHIPipelineState/SetBlendState.md new file mode 100644 index 00000000..6d072543 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/SetBlendState.md @@ -0,0 +1,31 @@ +# RHIPipelineState::SetBlendState + +设置相关状态或配置。 + +```cpp +virtual void SetBlendState(const BlendDesc& state) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::SetBlendState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/SetComputeShader.md b/docs/api/XCEngine/RHI/RHIPipelineState/SetComputeShader.md new file mode 100644 index 00000000..ee43fd5a --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/SetComputeShader.md @@ -0,0 +1,31 @@ +# RHIPipelineState::SetComputeShader + +设置相关状态或配置。 + +```cpp +virtual void SetComputeShader(RHIShader* shader) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `shader` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::SetComputeShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/SetDepthStencilState.md b/docs/api/XCEngine/RHI/RHIPipelineState/SetDepthStencilState.md new file mode 100644 index 00000000..9646889e --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/SetDepthStencilState.md @@ -0,0 +1,31 @@ +# RHIPipelineState::SetDepthStencilState + +设置相关状态或配置。 + +```cpp +virtual void SetDepthStencilState(const DepthStencilStateDesc& state) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::SetDepthStencilState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/SetInputLayout.md b/docs/api/XCEngine/RHI/RHIPipelineState/SetInputLayout.md new file mode 100644 index 00000000..ccf12fd5 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/SetInputLayout.md @@ -0,0 +1,31 @@ +# RHIPipelineState::SetInputLayout + +设置相关状态或配置。 + +```cpp +virtual void SetInputLayout(const InputLayoutDesc& layout) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `layout` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::SetInputLayout(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/SetRasterizerState.md b/docs/api/XCEngine/RHI/RHIPipelineState/SetRasterizerState.md new file mode 100644 index 00000000..9483e4ad --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/SetRasterizerState.md @@ -0,0 +1,31 @@ +# RHIPipelineState::SetRasterizerState + +设置相关状态或配置。 + +```cpp +virtual void SetRasterizerState(const RasterizerDesc& state) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::SetRasterizerState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/SetRenderTargetFormats.md b/docs/api/XCEngine/RHI/RHIPipelineState/SetRenderTargetFormats.md new file mode 100644 index 00000000..4b18ae9a --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/SetRenderTargetFormats.md @@ -0,0 +1,33 @@ +# RHIPipelineState::SetRenderTargetFormats + +设置相关状态或配置。 + +```cpp +virtual void SetRenderTargetFormats(uint32_t count, const uint32_t* formats, uint32_t depthFormat) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 +- `formats` - 参数语义详见头文件声明。 +- `depthFormat` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::SetRenderTargetFormats(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/SetSampleCount.md b/docs/api/XCEngine/RHI/RHIPipelineState/SetSampleCount.md new file mode 100644 index 00000000..7657920e --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/SetSampleCount.md @@ -0,0 +1,31 @@ +# RHIPipelineState::SetSampleCount + +设置相关状态或配置。 + +```cpp +virtual void SetSampleCount(uint32_t count) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `count` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::SetSampleCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/SetTopology.md b/docs/api/XCEngine/RHI/RHIPipelineState/SetTopology.md new file mode 100644 index 00000000..8e9998c2 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/SetTopology.md @@ -0,0 +1,31 @@ +# RHIPipelineState::SetTopology + +设置相关状态或配置。 + +```cpp +virtual void SetTopology(uint32_t topologyType) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** +- `topologyType` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::SetTopology(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/Shutdown.md b/docs/api/XCEngine/RHI/RHIPipelineState/Shutdown.md new file mode 100644 index 00000000..5f912c34 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/Shutdown.md @@ -0,0 +1,30 @@ +# RHIPipelineState::Shutdown + +关闭并清理内部状态。 + +```cpp +virtual void Shutdown() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIPipelineState/Unbind.md b/docs/api/XCEngine/RHI/RHIPipelineState/Unbind.md new file mode 100644 index 00000000..96b84ea9 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIPipelineState/Unbind.md @@ -0,0 +1,30 @@ +# RHIPipelineState::Unbind + +公开方法,详见头文件声明。 + +```cpp +virtual void Unbind() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIPipelineState.h`,当前页面用于固定 `RHIPipelineState` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIPipelineState object; + // 根据上下文补齐参数后调用 RHIPipelineState::Unbind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIPipelineState.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIRenderPass/Destructor.md b/docs/api/XCEngine/RHI/RHIRenderPass/Destructor.md new file mode 100644 index 00000000..983339cc --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIRenderPass/Destructor.md @@ -0,0 +1,29 @@ +# RHIRenderPass::~RHIRenderPass() + +销毁对象并释放相关资源。 + +```cpp +virtual ~RHIRenderPass() = default; +``` + +该方法声明于 `XCEngine/RHI/RHIRenderPass.h`,当前页面用于固定 `RHIRenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIRenderPass object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](RHIRenderPass.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIRenderPass/GetColorAttachmentCount.md b/docs/api/XCEngine/RHI/RHIRenderPass/GetColorAttachmentCount.md new file mode 100644 index 00000000..d7df58b7 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIRenderPass/GetColorAttachmentCount.md @@ -0,0 +1,30 @@ +# RHIRenderPass::GetColorAttachmentCount + +获取相关状态或对象。 + +```cpp +virtual uint32_t GetColorAttachmentCount() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIRenderPass.h`,当前页面用于固定 `RHIRenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIRenderPass object; + // 根据上下文补齐参数后调用 RHIRenderPass::GetColorAttachmentCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIRenderPass.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIRenderPass/GetColorAttachments.md b/docs/api/XCEngine/RHI/RHIRenderPass/GetColorAttachments.md new file mode 100644 index 00000000..afb086f9 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIRenderPass/GetColorAttachments.md @@ -0,0 +1,30 @@ +# RHIRenderPass::GetColorAttachments + +获取相关状态或对象。 + +```cpp +virtual const AttachmentDesc* GetColorAttachments() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIRenderPass.h`,当前页面用于固定 `RHIRenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const AttachmentDesc*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIRenderPass object; + // 根据上下文补齐参数后调用 RHIRenderPass::GetColorAttachments(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIRenderPass.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIRenderPass/GetDepthStencilAttachment.md b/docs/api/XCEngine/RHI/RHIRenderPass/GetDepthStencilAttachment.md new file mode 100644 index 00000000..2926f209 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIRenderPass/GetDepthStencilAttachment.md @@ -0,0 +1,30 @@ +# RHIRenderPass::GetDepthStencilAttachment + +获取相关状态或对象。 + +```cpp +virtual const AttachmentDesc* GetDepthStencilAttachment() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIRenderPass.h`,当前页面用于固定 `RHIRenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const AttachmentDesc*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIRenderPass object; + // 根据上下文补齐参数后调用 RHIRenderPass::GetDepthStencilAttachment(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIRenderPass.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIRenderPass/GetNativeHandle.md b/docs/api/XCEngine/RHI/RHIRenderPass/GetNativeHandle.md new file mode 100644 index 00000000..204f8605 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIRenderPass/GetNativeHandle.md @@ -0,0 +1,30 @@ +# RHIRenderPass::GetNativeHandle + +获取相关状态或对象。 + +```cpp +virtual void* GetNativeHandle() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIRenderPass.h`,当前页面用于固定 `RHIRenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIRenderPass object; + // 根据上下文补齐参数后调用 RHIRenderPass::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIRenderPass.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIRenderPass/Initialize.md b/docs/api/XCEngine/RHI/RHIRenderPass/Initialize.md new file mode 100644 index 00000000..7f3bfe21 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIRenderPass/Initialize.md @@ -0,0 +1,33 @@ +# RHIRenderPass::Initialize + +初始化内部状态。 + +```cpp +virtual bool Initialize(uint32_t colorAttachmentCount, const AttachmentDesc* colorAttachments, const AttachmentDesc* depthStencilAttachment) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIRenderPass.h`,当前页面用于固定 `RHIRenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** +- `colorAttachmentCount` - 参数语义详见头文件声明。 +- `colorAttachments` - 参数语义详见头文件声明。 +- `depthStencilAttachment` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIRenderPass object; + // 根据上下文补齐参数后调用 RHIRenderPass::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIRenderPass.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIRenderPass/RHIRenderPass.md b/docs/api/XCEngine/RHI/RHIRenderPass/RHIRenderPass.md new file mode 100644 index 00000000..262725bb --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIRenderPass/RHIRenderPass.md @@ -0,0 +1,37 @@ +# RHIRenderPass + +**命名空间**: `XCEngine::RHI` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/RHI/RHIRenderPass.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHIRenderPass` public API。 + +## 概述 + +`RHIRenderPass.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `AttachmentDesc` | `struct` | 头文件中的公开声明。 | +| `RHIRenderPass` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~RHIRenderPass()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [GetColorAttachmentCount](GetColorAttachmentCount.md) | 获取相关状态或对象。 | +| [GetColorAttachments](GetColorAttachments.md) | 获取相关状态或对象。 | +| [GetDepthStencilAttachment](GetDepthStencilAttachment.md) | 获取相关状态或对象。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHIRenderPass/Shutdown.md b/docs/api/XCEngine/RHI/RHIRenderPass/Shutdown.md new file mode 100644 index 00000000..6be0a864 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIRenderPass/Shutdown.md @@ -0,0 +1,30 @@ +# RHIRenderPass::Shutdown + +关闭并清理内部状态。 + +```cpp +virtual void Shutdown() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIRenderPass.h`,当前页面用于固定 `RHIRenderPass` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIRenderPass object; + // 根据上下文补齐参数后调用 RHIRenderPass::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIRenderPass.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIResource/Destructor.md b/docs/api/XCEngine/RHI/RHIResource/Destructor.md new file mode 100644 index 00000000..e1115b1e --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIResource/Destructor.md @@ -0,0 +1,29 @@ +# RHIResource::~RHIResource() + +销毁对象并释放相关资源。 + +```cpp +virtual ~RHIResource() = default; +``` + +该方法声明于 `XCEngine/RHI/RHIResource.h`,当前页面用于固定 `RHIResource` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIResource object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](RHIResource.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIResource/GetNativeHandle.md b/docs/api/XCEngine/RHI/RHIResource/GetNativeHandle.md new file mode 100644 index 00000000..77c4b004 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIResource/GetNativeHandle.md @@ -0,0 +1,30 @@ +# RHIResource::GetNativeHandle + +获取相关状态或对象。 + +```cpp +virtual void* GetNativeHandle() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIResource.h`,当前页面用于固定 `RHIResource` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIResource object; + // 根据上下文补齐参数后调用 RHIResource::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIResource.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIResource/GetState.md b/docs/api/XCEngine/RHI/RHIResource/GetState.md new file mode 100644 index 00000000..be17d6ec --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIResource/GetState.md @@ -0,0 +1,30 @@ +# RHIResource::GetState + +获取相关状态或对象。 + +```cpp +virtual ResourceStates GetState() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIResource.h`,当前页面用于固定 `RHIResource` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceStates` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIResource object; + // 根据上下文补齐参数后调用 RHIResource::GetState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIResource.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIResource/RHIResource.md b/docs/api/XCEngine/RHI/RHIResource/RHIResource.md new file mode 100644 index 00000000..22dff5f6 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIResource/RHIResource.md @@ -0,0 +1,33 @@ +# RHIResource + +**命名空间**: `XCEngine::RHI` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/RHI/RHIResource.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHIResource` public API。 + +## 概述 + +`RHIResource.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RHIResource` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~RHIResource()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetState](GetState.md) | 获取相关状态或对象。 | +| [SetState](SetState.md) | 设置相关状态或配置。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHIResource/SetState.md b/docs/api/XCEngine/RHI/RHIResource/SetState.md new file mode 100644 index 00000000..8c5a4f77 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIResource/SetState.md @@ -0,0 +1,31 @@ +# RHIResource::SetState + +设置相关状态或配置。 + +```cpp +virtual void SetState(ResourceStates state) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIResource.h`,当前页面用于固定 `RHIResource` 类目录下的方法级 canonical 路径。 + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIResource object; + // 根据上下文补齐参数后调用 RHIResource::SetState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIResource.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIResourceView/Destructor.md b/docs/api/XCEngine/RHI/RHIResourceView/Destructor.md new file mode 100644 index 00000000..528328b8 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIResourceView/Destructor.md @@ -0,0 +1,29 @@ +# RHIResourceView::~RHIResourceView() + +销毁对象并释放相关资源。 + +```cpp +virtual ~RHIResourceView() = default; +``` + +该方法声明于 `XCEngine/RHI/RHIResourceView.h`,当前页面用于固定 `RHIResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIResourceView object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](RHIResourceView.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIResourceView/GetDimension.md b/docs/api/XCEngine/RHI/RHIResourceView/GetDimension.md new file mode 100644 index 00000000..3c3765f3 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIResourceView/GetDimension.md @@ -0,0 +1,30 @@ +# RHIResourceView::GetDimension + +获取相关状态或对象。 + +```cpp +virtual ResourceViewDimension GetDimension() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIResourceView.h`,当前页面用于固定 `RHIResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceViewDimension` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIResourceView object; + // 根据上下文补齐参数后调用 RHIResourceView::GetDimension(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIResourceView.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIResourceView/GetFormat.md b/docs/api/XCEngine/RHI/RHIResourceView/GetFormat.md new file mode 100644 index 00000000..4215bf42 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIResourceView/GetFormat.md @@ -0,0 +1,30 @@ +# RHIResourceView::GetFormat + +获取相关状态或对象。 + +```cpp +virtual Format GetFormat() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIResourceView.h`,当前页面用于固定 `RHIResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Format` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIResourceView object; + // 根据上下文补齐参数后调用 RHIResourceView::GetFormat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIResourceView.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIResourceView/GetNativeHandle.md b/docs/api/XCEngine/RHI/RHIResourceView/GetNativeHandle.md new file mode 100644 index 00000000..edf0550d --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIResourceView/GetNativeHandle.md @@ -0,0 +1,30 @@ +# RHIResourceView::GetNativeHandle + +获取相关状态或对象。 + +```cpp +virtual void* GetNativeHandle() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIResourceView.h`,当前页面用于固定 `RHIResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIResourceView object; + // 根据上下文补齐参数后调用 RHIResourceView::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIResourceView.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIResourceView/GetViewType.md b/docs/api/XCEngine/RHI/RHIResourceView/GetViewType.md new file mode 100644 index 00000000..70291b11 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIResourceView/GetViewType.md @@ -0,0 +1,30 @@ +# RHIResourceView::GetViewType + +获取相关状态或对象。 + +```cpp +virtual ResourceViewType GetViewType() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIResourceView.h`,当前页面用于固定 `RHIResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceViewType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIResourceView object; + // 根据上下文补齐参数后调用 RHIResourceView::GetViewType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIResourceView.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIResourceView/IsValid.md b/docs/api/XCEngine/RHI/RHIResourceView/IsValid.md new file mode 100644 index 00000000..8b4d69a5 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIResourceView/IsValid.md @@ -0,0 +1,30 @@ +# RHIResourceView::IsValid + +查询当前状态。 + +```cpp +virtual bool IsValid() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIResourceView.h`,当前页面用于固定 `RHIResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIResourceView object; + // 根据上下文补齐参数后调用 RHIResourceView::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIResourceView.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIResourceView/RHIResourceView.md b/docs/api/XCEngine/RHI/RHIResourceView/RHIResourceView.md new file mode 100644 index 00000000..fdd169d8 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIResourceView/RHIResourceView.md @@ -0,0 +1,43 @@ +# RHIResourceView + +**命名空间**: `XCEngine::RHI` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/RHI/RHIResourceView.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHIResourceView` public API。 + +## 概述 + +`RHIResourceView.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RHIResourceView` | `class` | 头文件中的公开声明。 | +| `RHIVertexBufferView` | `class` | 继承自 `RHIResourceView` 的公开声明。 | +| `RHIIndexBufferView` | `class` | 继承自 `RHIResourceView` 的公开声明。 | +| `RHIRenderTargetView` | `class` | 继承自 `RHIResourceView` 的公开声明。 | +| `RHIDepthStencilView` | `class` | 继承自 `RHIResourceView` 的公开声明。 | +| `RHIShaderResourceView` | `class` | 继承自 `RHIResourceView` 的公开声明。 | +| `RHIUnorderedAccessView` | `class` | 继承自 `RHIResourceView` 的公开声明。 | +| `RHIConstantBufferView` | `class` | 继承自 `RHIResourceView` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~RHIResourceView()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [GetViewType](GetViewType.md) | 获取相关状态或对象。 | +| [GetDimension](GetDimension.md) | 获取相关状态或对象。 | +| [GetFormat](GetFormat.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHIResourceView/Shutdown.md b/docs/api/XCEngine/RHI/RHIResourceView/Shutdown.md new file mode 100644 index 00000000..127d19ff --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIResourceView/Shutdown.md @@ -0,0 +1,30 @@ +# RHIResourceView::Shutdown + +关闭并清理内部状态。 + +```cpp +virtual void Shutdown() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIResourceView.h`,当前页面用于固定 `RHIResourceView` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIResourceView object; + // 根据上下文补齐参数后调用 RHIResourceView::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIResourceView.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHISampler/Bind.md b/docs/api/XCEngine/RHI/RHISampler/Bind.md new file mode 100644 index 00000000..09930903 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHISampler/Bind.md @@ -0,0 +1,31 @@ +# RHISampler::Bind + +公开方法,详见头文件声明。 + +```cpp +virtual void Bind(unsigned int unit) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHISampler.h`,当前页面用于固定 `RHISampler` 类目录下的方法级 canonical 路径。 + +**参数:** +- `unit` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHISampler object; + // 根据上下文补齐参数后调用 RHISampler::Bind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHISampler.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHISampler/Destructor.md b/docs/api/XCEngine/RHI/RHISampler/Destructor.md new file mode 100644 index 00000000..3a13046f --- /dev/null +++ b/docs/api/XCEngine/RHI/RHISampler/Destructor.md @@ -0,0 +1,29 @@ +# RHISampler::~RHISampler() + +销毁对象并释放相关资源。 + +```cpp +virtual ~RHISampler() = default; +``` + +该方法声明于 `XCEngine/RHI/RHISampler.h`,当前页面用于固定 `RHISampler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHISampler object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](RHISampler.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHISampler/GetID.md b/docs/api/XCEngine/RHI/RHISampler/GetID.md new file mode 100644 index 00000000..5eb4171c --- /dev/null +++ b/docs/api/XCEngine/RHI/RHISampler/GetID.md @@ -0,0 +1,30 @@ +# RHISampler::GetID + +获取相关状态或对象。 + +```cpp +virtual unsigned int GetID() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHISampler.h`,当前页面用于固定 `RHISampler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `unsigned int` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHISampler object; + // 根据上下文补齐参数后调用 RHISampler::GetID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHISampler.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHISampler/GetNativeHandle.md b/docs/api/XCEngine/RHI/RHISampler/GetNativeHandle.md new file mode 100644 index 00000000..74925120 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHISampler/GetNativeHandle.md @@ -0,0 +1,30 @@ +# RHISampler::GetNativeHandle + +获取相关状态或对象。 + +```cpp +virtual void* GetNativeHandle() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHISampler.h`,当前页面用于固定 `RHISampler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHISampler object; + // 根据上下文补齐参数后调用 RHISampler::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHISampler.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHISampler/RHISampler.md b/docs/api/XCEngine/RHI/RHISampler/RHISampler.md new file mode 100644 index 00000000..65651287 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHISampler/RHISampler.md @@ -0,0 +1,35 @@ +# RHISampler + +**命名空间**: `XCEngine::RHI` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/RHI/RHISampler.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHISampler` public API。 + +## 概述 + +`RHISampler.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RHISampler` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~RHISampler()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Bind](Bind.md) | 公开方法,详见头文件声明。 | +| [Unbind](Unbind.md) | 公开方法,详见头文件声明。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetID](GetID.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHISampler/Shutdown.md b/docs/api/XCEngine/RHI/RHISampler/Shutdown.md new file mode 100644 index 00000000..9b50e8e4 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHISampler/Shutdown.md @@ -0,0 +1,30 @@ +# RHISampler::Shutdown + +关闭并清理内部状态。 + +```cpp +virtual void Shutdown() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHISampler.h`,当前页面用于固定 `RHISampler` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHISampler object; + // 根据上下文补齐参数后调用 RHISampler::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHISampler.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHISampler/Unbind.md b/docs/api/XCEngine/RHI/RHISampler/Unbind.md new file mode 100644 index 00000000..05a4fe7b --- /dev/null +++ b/docs/api/XCEngine/RHI/RHISampler/Unbind.md @@ -0,0 +1,31 @@ +# RHISampler::Unbind + +公开方法,详见头文件声明。 + +```cpp +virtual void Unbind(unsigned int unit) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHISampler.h`,当前页面用于固定 `RHISampler` 类目录下的方法级 canonical 路径。 + +**参数:** +- `unit` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHISampler object; + // 根据上下文补齐参数后调用 RHISampler::Unbind(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHISampler.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIScreenshot/Capture.md b/docs/api/XCEngine/RHI/RHIScreenshot/Capture.md new file mode 100644 index 00000000..7977cd7f --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIScreenshot/Capture.md @@ -0,0 +1,33 @@ +# RHIScreenshot::Capture + +公开方法,详见头文件声明。 + +```cpp +virtual bool Capture(RHIDevice* device, RHISwapChain* swapChain, const char* filename) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIScreenshot.h`,当前页面用于固定 `RHIScreenshot` 类目录下的方法级 canonical 路径。 + +**参数:** +- `device` - 参数语义详见头文件声明。 +- `swapChain` - 参数语义详见头文件声明。 +- `filename` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIScreenshot object; + // 根据上下文补齐参数后调用 RHIScreenshot::Capture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIScreenshot.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIScreenshot/Create.md b/docs/api/XCEngine/RHI/RHIScreenshot/Create.md new file mode 100644 index 00000000..636010e8 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIScreenshot/Create.md @@ -0,0 +1,31 @@ +# RHIScreenshot::Create + +创建新对象或资源。 + +```cpp +static RHIScreenshot* Create(RHIType type); +``` + +该方法声明于 `XCEngine/RHI/RHIScreenshot.h`,当前页面用于固定 `RHIScreenshot` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 + +**返回:** `RHIScreenshot*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIScreenshot object; + // 根据上下文补齐参数后调用 RHIScreenshot::Create(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIScreenshot.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIScreenshot/Destructor.md b/docs/api/XCEngine/RHI/RHIScreenshot/Destructor.md new file mode 100644 index 00000000..62ea78ba --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIScreenshot/Destructor.md @@ -0,0 +1,29 @@ +# RHIScreenshot::~RHIScreenshot() + +销毁对象并释放相关资源。 + +```cpp +virtual ~RHIScreenshot() = default; +``` + +该方法声明于 `XCEngine/RHI/RHIScreenshot.h`,当前页面用于固定 `RHIScreenshot` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIScreenshot object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](RHIScreenshot.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIScreenshot/RHIScreenshot.md b/docs/api/XCEngine/RHI/RHIScreenshot/RHIScreenshot.md new file mode 100644 index 00000000..88c4aabe --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIScreenshot/RHIScreenshot.md @@ -0,0 +1,33 @@ +# RHIScreenshot + +**命名空间**: `XCEngine::RHI` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/RHI/RHIScreenshot.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHIScreenshot` public API。 + +## 概述 + +`RHIScreenshot.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RHIScreenshot` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~RHIScreenshot()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Capture](Capture.md) | 公开方法,详见头文件声明。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Create](Create.md) | 创建新对象或资源。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHIScreenshot/Shutdown.md b/docs/api/XCEngine/RHI/RHIScreenshot/Shutdown.md new file mode 100644 index 00000000..3cdc7d81 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIScreenshot/Shutdown.md @@ -0,0 +1,30 @@ +# RHIScreenshot::Shutdown + +关闭并清理内部状态。 + +```cpp +virtual void Shutdown() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIScreenshot.h`,当前页面用于固定 `RHIScreenshot` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIScreenshot object; + // 根据上下文补齐参数后调用 RHIScreenshot::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIScreenshot.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIShader/Compile.md b/docs/api/XCEngine/RHI/RHIShader/Compile.md new file mode 100644 index 00000000..362f704f --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIShader/Compile.md @@ -0,0 +1,34 @@ +# RHIShader::Compile + +公开方法,详见头文件声明。 + +```cpp +virtual bool Compile(const void* sourceData, size_t sourceSize, const char* entryPoint, const char* target) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIShader.h`,当前页面用于固定 `RHIShader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `sourceData` - 参数语义详见头文件声明。 +- `sourceSize` - 参数语义详见头文件声明。 +- `entryPoint` - 参数语义详见头文件声明。 +- `target` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIShader object; + // 根据上下文补齐参数后调用 RHIShader::Compile(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIShader.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIShader/CompileFromFile.md b/docs/api/XCEngine/RHI/RHIShader/CompileFromFile.md new file mode 100644 index 00000000..fe31d3d9 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIShader/CompileFromFile.md @@ -0,0 +1,33 @@ +# RHIShader::CompileFromFile + +公开方法,详见头文件声明。 + +```cpp +virtual bool CompileFromFile(const wchar_t* filePath, const char* entryPoint, const char* target) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIShader.h`,当前页面用于固定 `RHIShader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `filePath` - 参数语义详见头文件声明。 +- `entryPoint` - 参数语义详见头文件声明。 +- `target` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIShader object; + // 根据上下文补齐参数后调用 RHIShader::CompileFromFile(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIShader.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIShader/Destructor.md b/docs/api/XCEngine/RHI/RHIShader/Destructor.md new file mode 100644 index 00000000..878e3fbd --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIShader/Destructor.md @@ -0,0 +1,29 @@ +# RHIShader::~RHIShader() + +销毁对象并释放相关资源。 + +```cpp +virtual ~RHIShader() = default; +``` + +该方法声明于 `XCEngine/RHI/RHIShader.h`,当前页面用于固定 `RHIShader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIShader object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](RHIShader.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIShader/GetNativeHandle.md b/docs/api/XCEngine/RHI/RHIShader/GetNativeHandle.md new file mode 100644 index 00000000..2cfcf345 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIShader/GetNativeHandle.md @@ -0,0 +1,30 @@ +# RHIShader::GetNativeHandle + +获取相关状态或对象。 + +```cpp +virtual void* GetNativeHandle() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIShader.h`,当前页面用于固定 `RHIShader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIShader object; + // 根据上下文补齐参数后调用 RHIShader::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIShader.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIShader/GetType.md b/docs/api/XCEngine/RHI/RHIShader/GetType.md new file mode 100644 index 00000000..1a54bae5 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIShader/GetType.md @@ -0,0 +1,30 @@ +# RHIShader::GetType + +获取相关状态或对象。 + +```cpp +virtual ShaderType GetType() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIShader.h`,当前页面用于固定 `RHIShader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ShaderType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIShader object; + // 根据上下文补齐参数后调用 RHIShader::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIShader.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIShader/GetUniformInfo.md b/docs/api/XCEngine/RHI/RHIShader/GetUniformInfo.md new file mode 100644 index 00000000..c021d07d --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIShader/GetUniformInfo.md @@ -0,0 +1,31 @@ +# RHIShader::GetUniformInfo + +获取相关状态或对象。 + +```cpp +virtual const UniformInfo* GetUniformInfo(const char* name) const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIShader.h`,当前页面用于固定 `RHIShader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `const UniformInfo*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIShader object; + // 根据上下文补齐参数后调用 RHIShader::GetUniformInfo(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIShader.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIShader/GetUniformInfos.md b/docs/api/XCEngine/RHI/RHIShader/GetUniformInfos.md new file mode 100644 index 00000000..f3293180 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIShader/GetUniformInfos.md @@ -0,0 +1,30 @@ +# RHIShader::GetUniformInfos + +获取相关状态或对象。 + +```cpp +virtual const std::vector& GetUniformInfos() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIShader.h`,当前页面用于固定 `RHIShader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const std::vector&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIShader object; + // 根据上下文补齐参数后调用 RHIShader::GetUniformInfos(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIShader.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIShader/IsValid.md b/docs/api/XCEngine/RHI/RHIShader/IsValid.md new file mode 100644 index 00000000..78edb4d0 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIShader/IsValid.md @@ -0,0 +1,30 @@ +# RHIShader::IsValid + +查询当前状态。 + +```cpp +virtual bool IsValid() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIShader.h`,当前页面用于固定 `RHIShader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIShader object; + // 根据上下文补齐参数后调用 RHIShader::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIShader.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHIShader/RHIShader.md b/docs/api/XCEngine/RHI/RHIShader/RHIShader.md new file mode 100644 index 00000000..524d818f --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIShader/RHIShader.md @@ -0,0 +1,38 @@ +# RHIShader + +**命名空间**: `XCEngine::RHI` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/RHI/RHIShader.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHIShader` public API。 + +## 概述 + +`RHIShader.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RHIShader` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~RHIShader()](Destructor.md) | 销毁对象并释放相关资源。 | +| [CompileFromFile](CompileFromFile.md) | 公开方法,详见头文件声明。 | +| [Compile](Compile.md) | 公开方法,详见头文件声明。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetUniformInfos](GetUniformInfos.md) | 获取相关状态或对象。 | +| [GetUniformInfo](GetUniformInfo.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHIShader/Shutdown.md b/docs/api/XCEngine/RHI/RHIShader/Shutdown.md new file mode 100644 index 00000000..9709bc2c --- /dev/null +++ b/docs/api/XCEngine/RHI/RHIShader/Shutdown.md @@ -0,0 +1,30 @@ +# RHIShader::Shutdown + +关闭并清理内部状态。 + +```cpp +virtual void Shutdown() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHIShader.h`,当前页面用于固定 `RHIShader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHIShader object; + // 根据上下文补齐参数后调用 RHIShader::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHIShader.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHISwapChain/Destructor.md b/docs/api/XCEngine/RHI/RHISwapChain/Destructor.md new file mode 100644 index 00000000..f4f1bdfa --- /dev/null +++ b/docs/api/XCEngine/RHI/RHISwapChain/Destructor.md @@ -0,0 +1,29 @@ +# RHISwapChain::~RHISwapChain() + +销毁对象并释放相关资源。 + +```cpp +virtual ~RHISwapChain() = default; +``` + +该方法声明于 `XCEngine/RHI/RHISwapChain.h`,当前页面用于固定 `RHISwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHISwapChain object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](RHISwapChain.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHISwapChain/GetCurrentBackBuffer.md b/docs/api/XCEngine/RHI/RHISwapChain/GetCurrentBackBuffer.md new file mode 100644 index 00000000..e50faec7 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHISwapChain/GetCurrentBackBuffer.md @@ -0,0 +1,30 @@ +# RHISwapChain::GetCurrentBackBuffer + +获取相关状态或对象。 + +```cpp +virtual RHITexture* GetCurrentBackBuffer() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHISwapChain.h`,当前页面用于固定 `RHISwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `RHITexture*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHISwapChain object; + // 根据上下文补齐参数后调用 RHISwapChain::GetCurrentBackBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHISwapChain.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHISwapChain/GetCurrentBackBufferIndex.md b/docs/api/XCEngine/RHI/RHISwapChain/GetCurrentBackBufferIndex.md new file mode 100644 index 00000000..a7fdd0cd --- /dev/null +++ b/docs/api/XCEngine/RHI/RHISwapChain/GetCurrentBackBufferIndex.md @@ -0,0 +1,30 @@ +# RHISwapChain::GetCurrentBackBufferIndex + +获取相关状态或对象。 + +```cpp +virtual uint32_t GetCurrentBackBufferIndex() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHISwapChain.h`,当前页面用于固定 `RHISwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHISwapChain object; + // 根据上下文补齐参数后调用 RHISwapChain::GetCurrentBackBufferIndex(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHISwapChain.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHISwapChain/GetNativeHandle.md b/docs/api/XCEngine/RHI/RHISwapChain/GetNativeHandle.md new file mode 100644 index 00000000..531da207 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHISwapChain/GetNativeHandle.md @@ -0,0 +1,30 @@ +# RHISwapChain::GetNativeHandle + +获取相关状态或对象。 + +```cpp +virtual void* GetNativeHandle() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHISwapChain.h`,当前页面用于固定 `RHISwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHISwapChain object; + // 根据上下文补齐参数后调用 RHISwapChain::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHISwapChain.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHISwapChain/Present.md b/docs/api/XCEngine/RHI/RHISwapChain/Present.md new file mode 100644 index 00000000..efb71be0 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHISwapChain/Present.md @@ -0,0 +1,32 @@ +# RHISwapChain::Present + +公开方法,详见头文件声明。 + +```cpp +virtual void Present(uint32_t syncInterval = 1, uint32_t flags = 0) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHISwapChain.h`,当前页面用于固定 `RHISwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** +- `syncInterval` - 参数语义详见头文件声明。 +- `flags` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHISwapChain object; + // 根据上下文补齐参数后调用 RHISwapChain::Present(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHISwapChain.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHISwapChain/RHISwapChain.md b/docs/api/XCEngine/RHI/RHISwapChain/RHISwapChain.md new file mode 100644 index 00000000..2e6102f7 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHISwapChain/RHISwapChain.md @@ -0,0 +1,36 @@ +# RHISwapChain + +**命名空间**: `XCEngine::RHI` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/RHI/RHISwapChain.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHISwapChain` public API。 + +## 概述 + +`RHISwapChain.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RHISwapChain` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~RHISwapChain()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [GetCurrentBackBufferIndex](GetCurrentBackBufferIndex.md) | 获取相关状态或对象。 | +| [GetCurrentBackBuffer](GetCurrentBackBuffer.md) | 获取相关状态或对象。 | +| [Present](Present.md) | 公开方法,详见头文件声明。 | +| [Resize](Resize.md) | 公开方法,详见头文件声明。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHISwapChain/Resize.md b/docs/api/XCEngine/RHI/RHISwapChain/Resize.md new file mode 100644 index 00000000..c9242040 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHISwapChain/Resize.md @@ -0,0 +1,32 @@ +# RHISwapChain::Resize + +公开方法,详见头文件声明。 + +```cpp +virtual void Resize(uint32_t width, uint32_t height) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHISwapChain.h`,当前页面用于固定 `RHISwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHISwapChain object; + // 根据上下文补齐参数后调用 RHISwapChain::Resize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHISwapChain.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHISwapChain/Shutdown.md b/docs/api/XCEngine/RHI/RHISwapChain/Shutdown.md new file mode 100644 index 00000000..6909ae93 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHISwapChain/Shutdown.md @@ -0,0 +1,30 @@ +# RHISwapChain::Shutdown + +关闭并清理内部状态。 + +```cpp +virtual void Shutdown() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHISwapChain.h`,当前页面用于固定 `RHISwapChain` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHISwapChain object; + // 根据上下文补齐参数后调用 RHISwapChain::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHISwapChain.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHITexture/Destructor.md b/docs/api/XCEngine/RHI/RHITexture/Destructor.md new file mode 100644 index 00000000..a561fd6b --- /dev/null +++ b/docs/api/XCEngine/RHI/RHITexture/Destructor.md @@ -0,0 +1,29 @@ +# RHITexture::~RHITexture() + +销毁对象并释放相关资源。 + +```cpp +virtual ~RHITexture() = default; +``` + +该方法声明于 `XCEngine/RHI/RHITexture.h`,当前页面用于固定 `RHITexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHITexture object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](RHITexture.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHITexture/GetDepth.md b/docs/api/XCEngine/RHI/RHITexture/GetDepth.md new file mode 100644 index 00000000..2373d0d4 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHITexture/GetDepth.md @@ -0,0 +1,30 @@ +# RHITexture::GetDepth + +获取相关状态或对象。 + +```cpp +virtual uint32_t GetDepth() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHITexture.h`,当前页面用于固定 `RHITexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHITexture object; + // 根据上下文补齐参数后调用 RHITexture::GetDepth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHITexture.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHITexture/GetFormat.md b/docs/api/XCEngine/RHI/RHITexture/GetFormat.md new file mode 100644 index 00000000..01df21ef --- /dev/null +++ b/docs/api/XCEngine/RHI/RHITexture/GetFormat.md @@ -0,0 +1,30 @@ +# RHITexture::GetFormat + +获取相关状态或对象。 + +```cpp +virtual Format GetFormat() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHITexture.h`,当前页面用于固定 `RHITexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Format` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHITexture object; + // 根据上下文补齐参数后调用 RHITexture::GetFormat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHITexture.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHITexture/GetHeight.md b/docs/api/XCEngine/RHI/RHITexture/GetHeight.md new file mode 100644 index 00000000..7b21be36 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHITexture/GetHeight.md @@ -0,0 +1,30 @@ +# RHITexture::GetHeight + +获取相关状态或对象。 + +```cpp +virtual uint32_t GetHeight() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHITexture.h`,当前页面用于固定 `RHITexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHITexture object; + // 根据上下文补齐参数后调用 RHITexture::GetHeight(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHITexture.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHITexture/GetMipLevels.md b/docs/api/XCEngine/RHI/RHITexture/GetMipLevels.md new file mode 100644 index 00000000..7910290f --- /dev/null +++ b/docs/api/XCEngine/RHI/RHITexture/GetMipLevels.md @@ -0,0 +1,30 @@ +# RHITexture::GetMipLevels + +获取相关状态或对象。 + +```cpp +virtual uint32_t GetMipLevels() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHITexture.h`,当前页面用于固定 `RHITexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHITexture object; + // 根据上下文补齐参数后调用 RHITexture::GetMipLevels(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHITexture.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHITexture/GetName.md b/docs/api/XCEngine/RHI/RHITexture/GetName.md new file mode 100644 index 00000000..b7fbec6e --- /dev/null +++ b/docs/api/XCEngine/RHI/RHITexture/GetName.md @@ -0,0 +1,30 @@ +# RHITexture::GetName + +获取相关状态或对象。 + +```cpp +virtual const std::string& GetName() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHITexture.h`,当前页面用于固定 `RHITexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const std::string&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHITexture object; + // 根据上下文补齐参数后调用 RHITexture::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHITexture.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHITexture/GetNativeHandle.md b/docs/api/XCEngine/RHI/RHITexture/GetNativeHandle.md new file mode 100644 index 00000000..25cad766 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHITexture/GetNativeHandle.md @@ -0,0 +1,30 @@ +# RHITexture::GetNativeHandle + +获取相关状态或对象。 + +```cpp +virtual void* GetNativeHandle() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHITexture.h`,当前页面用于固定 `RHITexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHITexture object; + // 根据上下文补齐参数后调用 RHITexture::GetNativeHandle(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHITexture.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHITexture/GetState.md b/docs/api/XCEngine/RHI/RHITexture/GetState.md new file mode 100644 index 00000000..16a2bcff --- /dev/null +++ b/docs/api/XCEngine/RHI/RHITexture/GetState.md @@ -0,0 +1,30 @@ +# RHITexture::GetState + +获取相关状态或对象。 + +```cpp +virtual ResourceStates GetState() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHITexture.h`,当前页面用于固定 `RHITexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceStates` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHITexture object; + // 根据上下文补齐参数后调用 RHITexture::GetState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHITexture.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHITexture/GetTextureType.md b/docs/api/XCEngine/RHI/RHITexture/GetTextureType.md new file mode 100644 index 00000000..d13874d3 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHITexture/GetTextureType.md @@ -0,0 +1,30 @@ +# RHITexture::GetTextureType + +获取相关状态或对象。 + +```cpp +virtual TextureType GetTextureType() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHITexture.h`,当前页面用于固定 `RHITexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `TextureType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHITexture object; + // 根据上下文补齐参数后调用 RHITexture::GetTextureType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHITexture.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHITexture/GetWidth.md b/docs/api/XCEngine/RHI/RHITexture/GetWidth.md new file mode 100644 index 00000000..9f6ec5e6 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHITexture/GetWidth.md @@ -0,0 +1,30 @@ +# RHITexture::GetWidth + +获取相关状态或对象。 + +```cpp +virtual uint32_t GetWidth() const = 0; +``` + +该方法声明于 `XCEngine/RHI/RHITexture.h`,当前页面用于固定 `RHITexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHITexture object; + // 根据上下文补齐参数后调用 RHITexture::GetWidth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHITexture.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHITexture/RHITexture.md b/docs/api/XCEngine/RHI/RHITexture/RHITexture.md new file mode 100644 index 00000000..01d2dce9 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHITexture/RHITexture.md @@ -0,0 +1,42 @@ +# RHITexture + +**命名空间**: `XCEngine::RHI` + +**类型**: `class (abstract)` + +**头文件**: `XCEngine/RHI/RHITexture.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHITexture` public API。 + +## 概述 + +`RHITexture.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `RHITexture` | `class` | 继承自 `RHIResource` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [~RHITexture()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetWidth](GetWidth.md) | 获取相关状态或对象。 | +| [GetHeight](GetHeight.md) | 获取相关状态或对象。 | +| [GetDepth](GetDepth.md) | 获取相关状态或对象。 | +| [GetMipLevels](GetMipLevels.md) | 获取相关状态或对象。 | +| [GetFormat](GetFormat.md) | 获取相关状态或对象。 | +| [GetTextureType](GetTextureType.md) | 获取相关状态或对象。 | +| [GetState](GetState.md) | 获取相关状态或对象。 | +| [SetState](SetState.md) | 设置相关状态或配置。 | +| [GetNativeHandle](GetNativeHandle.md) | 获取相关状态或对象。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [SetName](SetName.md) | 设置相关状态或配置。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/RHI/RHITexture/SetName.md b/docs/api/XCEngine/RHI/RHITexture/SetName.md new file mode 100644 index 00000000..db1f22b8 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHITexture/SetName.md @@ -0,0 +1,31 @@ +# RHITexture::SetName + +设置相关状态或配置。 + +```cpp +virtual void SetName(const std::string& name) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHITexture.h`,当前页面用于固定 `RHITexture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHITexture object; + // 根据上下文补齐参数后调用 RHITexture::SetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHITexture.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHITexture/SetState.md b/docs/api/XCEngine/RHI/RHITexture/SetState.md new file mode 100644 index 00000000..b0a54842 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHITexture/SetState.md @@ -0,0 +1,31 @@ +# RHITexture::SetState + +设置相关状态或配置。 + +```cpp +virtual void SetState(ResourceStates state) = 0; +``` + +该方法声明于 `XCEngine/RHI/RHITexture.h`,当前页面用于固定 `RHITexture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `state` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHITexture object; + // 根据上下文补齐参数后调用 RHITexture::SetState(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHITexture.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHITexture/Shutdown.md b/docs/api/XCEngine/RHI/RHITexture/Shutdown.md new file mode 100644 index 00000000..05b39413 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHITexture/Shutdown.md @@ -0,0 +1,30 @@ +# RHITexture::Shutdown + +关闭并清理内部状态。 + +```cpp +virtual void Shutdown() = 0; +``` + +该方法声明于 `XCEngine/RHI/RHITexture.h`,当前页面用于固定 `RHITexture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::RHI::RHITexture object; + // 根据上下文补齐参数后调用 RHITexture::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](RHITexture.md) +- [返回模块目录](../RHI.md) diff --git a/docs/api/XCEngine/RHI/RHITypes/RHITypes.md b/docs/api/XCEngine/RHI/RHITypes/RHITypes.md new file mode 100644 index 00000000..055c05e9 --- /dev/null +++ b/docs/api/XCEngine/RHI/RHITypes/RHITypes.md @@ -0,0 +1,80 @@ +# RHITypes + +**命名空间**: `XCEngine::RHI` + +**类型**: `struct` + +**头文件**: `XCEngine/RHI/RHITypes.h` + +**描述**: 定义 `XCEngine/RHI` 子目录中的 `RHITypes` public API。 + +## 概述 + +`RHITypes.h` 是 `XCEngine/RHI` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Viewport` | `struct` | 头文件中的公开声明。 | +| `Rect` | `struct` | 头文件中的公开声明。 | +| `Color` | `struct` | 头文件中的公开声明。 | +| `ClearValue` | `struct` | 头文件中的公开声明。 | +| `ShaderCompileMacro` | `struct` | 头文件中的公开声明。 | +| `ShaderCompileDesc` | `struct` | 头文件中的公开声明。 | +| `InputElementDesc` | `struct` | 头文件中的公开声明。 | +| `InputLayoutDesc` | `struct` | 头文件中的公开声明。 | +| `VertexBufferBinding` | `struct` | 头文件中的公开声明。 | +| `TextureCopyLocation` | `struct` | 头文件中的公开声明。 | +| `DescriptorHandle` | `struct` | 头文件中的公开声明。 | +| `GPUDescriptorHandle` | `struct` | 头文件中的公开声明。 | +| `CPUDescriptorHandle` | `struct` | 头文件中的公开声明。 | +| `SubresourceRange` | `struct` | 头文件中的公开声明。 | +| `TextureDesc` | `struct` | 头文件中的公开声明。 | +| `BufferDesc` | `struct` | 头文件中的公开声明。 | +| `RenderTargetDesc` | `struct` | 头文件中的公开声明。 | +| `DepthStencilDesc` | `struct` | 头文件中的公开声明。 | +| `DescriptorHeapDesc` | `struct` | 头文件中的公开声明。 | +| `CommandQueueDesc` | `struct` | 头文件中的公开声明。 | +| `CommandListDesc` | `struct` | 头文件中的公开声明。 | +| `CommandAllocatorDesc` | `struct` | 头文件中的公开声明。 | +| `FenceDesc` | `struct` | 头文件中的公开声明。 | +| `QueryHeapDesc` | `struct` | 头文件中的公开声明。 | +| `SamplerDesc` | `struct` | 头文件中的公开声明。 | +| `SwapChainDesc` | `struct` | 头文件中的公开声明。 | +| `RenderTargetViewDesc` | `struct` | 头文件中的公开声明。 | +| `DepthStencilViewDesc` | `struct` | 头文件中的公开声明。 | +| `ShaderResourceViewDesc` | `struct` | 头文件中的公开声明。 | +| `ConstantBufferViewDesc` | `struct` | 头文件中的公开声明。 | +| `UnorderedAccessViewDesc` | `struct` | 头文件中的公开声明。 | +| `RootSignatureDesc` | `struct` | 头文件中的公开声明。 | +| `StencilOpDesc` | `struct` | 头文件中的公开声明。 | +| `DepthStencilStateDesc` | `struct` | 头文件中的公开声明。 | +| `BlendDesc` | `struct` | 头文件中的公开声明。 | +| `RasterizerDesc` | `struct` | 头文件中的公开声明。 | +| `PipelineStateHash` | `struct` | 头文件中的公开声明。 | +| `GraphicsPipelineDesc` | `struct` | 头文件中的公开声明。 | +| `RHIDeviceDesc` | `struct` | 头文件中的公开声明。 | +| `RHIDeviceInfo` | `struct` | 头文件中的公开声明。 | +| `RHIRenderPassDesc` | `struct` | 头文件中的公开声明。 | +| `DescriptorSetLayoutBinding` | `struct` | 头文件中的公开声明。 | +| `DescriptorSetLayoutDesc` | `struct` | 头文件中的公开声明。 | +| `RHIPipelineLayoutDesc` | `struct` | 头文件中的公开声明。 | +| `ResourceViewDesc` | `struct` | 头文件中的公开声明。 | +| `DescriptorPoolDesc` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `topLeftX` | `float` | 结构体公开字段。 | - | +| `topLeftY` | `float` | 结构体公开字段。 | - | +| `width` | `float` | 结构体公开字段。 | - | +| `height` | `float` | 结构体公开字段。 | - | +| `minDepth` | `float` | 结构体公开字段。 | - | +| `maxDepth` | `float` | 结构体公开字段。 | - | + +## 相关文档 + +- [当前目录](../RHI.md) - 返回 `RHI` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip.md new file mode 100644 index 00000000..12f7ce6a --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip.md @@ -0,0 +1,21 @@ +# AudioClip + +**命名空间**: `XCEngine::Resources::AudioClip` + +**类型**: `submodule` + +**描述**: 音频资源与音频加载器。 + +## 概览 + +该目录与 `XCEngine/Resources/AudioClip` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 头文件 + +- [AudioClip](AudioClip/AudioClip.md) - `AudioClip.h` +- [AudioLoader](AudioLoader/AudioLoader.md) - `AudioLoader.h` + +## 相关文档 + +- [上级目录](../Resources.md) +- [API 总索引](../../../main.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/AudioClip.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/AudioClip.md new file mode 100644 index 00000000..75d8bdb5 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/AudioClip.md @@ -0,0 +1,59 @@ +# AudioClip + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Resources/AudioClip/AudioClip.h` + +**描述**: 定义 `XCEngine/Resources/AudioClip` 子目录中的 `AudioClip` public API。 + +## 概述 + +`AudioClip.h` 是 `XCEngine/Resources/AudioClip` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `AudioFormat` | `enum class` | 头文件中的公开声明。 | +| `AudioType` | `enum class` | 头文件中的公开声明。 | +| `AudioClip` | `class` | 继承自 `IResource` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [AudioClip()](Constructor.md) | 构造对象。 | +| [~AudioClip()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [GetPath](GetPath.md) | 获取相关状态或对象。 | +| [GetGUID](GetGUID.md) | 获取相关状态或对象。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [GetMemorySize](GetMemorySize.md) | 获取相关状态或对象。 | +| [Release](Release.md) | 释放引用或底层资源。 | +| [SetAudioData](SetAudioData.md) | 设置相关状态或配置。 | +| [GetAudioData](GetAudioData.md) | 获取相关状态或对象。 | +| [SetSampleRate](SetSampleRate.md) | 设置相关状态或配置。 | +| [GetSampleRate](GetSampleRate.md) | 获取相关状态或对象。 | +| [SetChannels](SetChannels.md) | 设置相关状态或配置。 | +| [GetChannels](GetChannels.md) | 获取相关状态或对象。 | +| [SetBitsPerSample](SetBitsPerSample.md) | 设置相关状态或配置。 | +| [GetBitsPerSample](GetBitsPerSample.md) | 获取相关状态或对象。 | +| [SetDuration](SetDuration.md) | 设置相关状态或配置。 | +| [GetDuration](GetDuration.md) | 获取相关状态或对象。 | +| [SetAudioFormat](SetAudioFormat.md) | 设置相关状态或配置。 | +| [GetAudioFormat](GetAudioFormat.md) | 获取相关状态或对象。 | +| [SetAudioType](SetAudioType.md) | 设置相关状态或配置。 | +| [GetAudioType](GetAudioType.md) | 获取相关状态或对象。 | +| [SetIs3D](SetIs3D.md) | 设置相关状态或配置。 | +| [Is3D](Is3D.md) | 查询当前状态。 | +| [SetLoop](SetLoop.md) | 设置相关状态或配置。 | +| [IsLoop](IsLoop.md) | 查询当前状态。 | +| [SetRHIResource](SetRHIResource.md) | 设置相关状态或配置。 | + +## 相关文档 + +- [当前目录](../AudioClip.md) - 返回 `AudioClip` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/Constructor.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/Constructor.md new file mode 100644 index 00000000..c8038b15 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/Constructor.md @@ -0,0 +1,28 @@ +# AudioClip::AudioClip() + +构造对象。 + +```cpp +AudioClip(); +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/Destructor.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/Destructor.md new file mode 100644 index 00000000..250c37d3 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/Destructor.md @@ -0,0 +1,29 @@ +# AudioClip::~AudioClip() + +销毁对象并释放相关资源。 + +```cpp +virtual ~AudioClip() override; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetAudioData.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetAudioData.md new file mode 100644 index 00000000..c8e8bd61 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetAudioData.md @@ -0,0 +1,30 @@ +# AudioClip::GetAudioData + +获取相关状态或对象。 + +```cpp +const Containers::Array& GetAudioData() const; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::Array&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::GetAudioData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetAudioFormat.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetAudioFormat.md new file mode 100644 index 00000000..5f0878a7 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetAudioFormat.md @@ -0,0 +1,30 @@ +# AudioClip::GetAudioFormat + +获取相关状态或对象。 + +```cpp +AudioFormat GetAudioFormat() const; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `AudioFormat` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::GetAudioFormat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetAudioType.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetAudioType.md new file mode 100644 index 00000000..6cb17253 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetAudioType.md @@ -0,0 +1,30 @@ +# AudioClip::GetAudioType + +获取相关状态或对象。 + +```cpp +AudioType GetAudioType() const; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `AudioType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::GetAudioType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetBitsPerSample.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetBitsPerSample.md new file mode 100644 index 00000000..8006cba8 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetBitsPerSample.md @@ -0,0 +1,30 @@ +# AudioClip::GetBitsPerSample + +获取相关状态或对象。 + +```cpp +Core::uint32 GetBitsPerSample() const; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::GetBitsPerSample(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetChannels.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetChannels.md new file mode 100644 index 00000000..c394bf8b --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetChannels.md @@ -0,0 +1,30 @@ +# AudioClip::GetChannels + +获取相关状态或对象。 + +```cpp +Core::uint32 GetChannels() const; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::GetChannels(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetDuration.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetDuration.md new file mode 100644 index 00000000..691ab5c7 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetDuration.md @@ -0,0 +1,30 @@ +# AudioClip::GetDuration + +获取相关状态或对象。 + +```cpp +float GetDuration() const; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::GetDuration(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetGUID.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetGUID.md new file mode 100644 index 00000000..27e28956 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetGUID.md @@ -0,0 +1,30 @@ +# AudioClip::GetGUID + +获取相关状态或对象。 + +```cpp +ResourceGUID GetGUID() const override; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceGUID` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::GetGUID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetMemorySize.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetMemorySize.md new file mode 100644 index 00000000..44f7525d --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetMemorySize.md @@ -0,0 +1,30 @@ +# AudioClip::GetMemorySize + +获取相关状态或对象。 + +```cpp +size_t GetMemorySize() const override; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::GetMemorySize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetName.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetName.md new file mode 100644 index 00000000..cafc0eb9 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetName.md @@ -0,0 +1,30 @@ +# AudioClip::GetName + +获取相关状态或对象。 + +```cpp +const Containers::String& GetName() const override; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetPath.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetPath.md new file mode 100644 index 00000000..505afda0 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetPath.md @@ -0,0 +1,30 @@ +# AudioClip::GetPath + +获取相关状态或对象。 + +```cpp +const Containers::String& GetPath() const override; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::GetPath(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetSampleRate.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetSampleRate.md new file mode 100644 index 00000000..7144d246 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetSampleRate.md @@ -0,0 +1,30 @@ +# AudioClip::GetSampleRate + +获取相关状态或对象。 + +```cpp +Core::uint32 GetSampleRate() const; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::GetSampleRate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetType.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetType.md new file mode 100644 index 00000000..2cbe2842 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/GetType.md @@ -0,0 +1,30 @@ +# AudioClip::GetType + +获取相关状态或对象。 + +```cpp +ResourceType GetType() const override; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/Is3D.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/Is3D.md new file mode 100644 index 00000000..f1720242 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/Is3D.md @@ -0,0 +1,30 @@ +# AudioClip::Is3D + +查询当前状态。 + +```cpp +bool Is3D() const; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::Is3D(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/IsLoop.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/IsLoop.md new file mode 100644 index 00000000..1ca3168b --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/IsLoop.md @@ -0,0 +1,30 @@ +# AudioClip::IsLoop + +查询当前状态。 + +```cpp +bool IsLoop() const; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::IsLoop(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/IsValid.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/IsValid.md new file mode 100644 index 00000000..252f827b --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/IsValid.md @@ -0,0 +1,30 @@ +# AudioClip::IsValid + +查询当前状态。 + +```cpp +bool IsValid() const override; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/Release.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/Release.md new file mode 100644 index 00000000..92356c99 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/Release.md @@ -0,0 +1,30 @@ +# AudioClip::Release + +释放引用或底层资源。 + +```cpp +void Release() override; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::Release(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetAudioData.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetAudioData.md new file mode 100644 index 00000000..8f541955 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetAudioData.md @@ -0,0 +1,31 @@ +# AudioClip::SetAudioData + +设置相关状态或配置。 + +```cpp +void SetAudioData(const Containers::Array& data); +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** +- `data` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::SetAudioData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetAudioFormat.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetAudioFormat.md new file mode 100644 index 00000000..26b7965c --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetAudioFormat.md @@ -0,0 +1,31 @@ +# AudioClip::SetAudioFormat + +设置相关状态或配置。 + +```cpp +void SetAudioFormat(AudioFormat format); +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** +- `format` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::SetAudioFormat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetAudioType.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetAudioType.md new file mode 100644 index 00000000..c62ddf78 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetAudioType.md @@ -0,0 +1,31 @@ +# AudioClip::SetAudioType + +设置相关状态或配置。 + +```cpp +void SetAudioType(AudioType type); +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::SetAudioType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetBitsPerSample.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetBitsPerSample.md new file mode 100644 index 00000000..f6b3bad8 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetBitsPerSample.md @@ -0,0 +1,31 @@ +# AudioClip::SetBitsPerSample + +设置相关状态或配置。 + +```cpp +void SetBitsPerSample(Core::uint32 bits); +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** +- `bits` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::SetBitsPerSample(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetChannels.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetChannels.md new file mode 100644 index 00000000..0395f467 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetChannels.md @@ -0,0 +1,31 @@ +# AudioClip::SetChannels + +设置相关状态或配置。 + +```cpp +void SetChannels(Core::uint32 channels); +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** +- `channels` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::SetChannels(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetDuration.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetDuration.md new file mode 100644 index 00000000..d3963704 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetDuration.md @@ -0,0 +1,31 @@ +# AudioClip::SetDuration + +设置相关状态或配置。 + +```cpp +void SetDuration(float seconds); +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** +- `seconds` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::SetDuration(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetIs3D.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetIs3D.md new file mode 100644 index 00000000..3a81f5fa --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetIs3D.md @@ -0,0 +1,31 @@ +# AudioClip::SetIs3D + +设置相关状态或配置。 + +```cpp +void SetIs3D(bool is3D); +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** +- `is3D` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::SetIs3D(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetLoop.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetLoop.md new file mode 100644 index 00000000..0cad7b2d --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetLoop.md @@ -0,0 +1,31 @@ +# AudioClip::SetLoop + +设置相关状态或配置。 + +```cpp +void SetLoop(bool loop); +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** +- `loop` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::SetLoop(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetRHIResource.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetRHIResource.md new file mode 100644 index 00000000..c4dcd8e4 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetRHIResource.md @@ -0,0 +1,31 @@ +# AudioClip::SetRHIResource + +设置相关状态或配置。 + +```cpp +void SetRHIResource(class IRHIAudioBuffer* resource); +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** +- `resource` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::SetRHIResource(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetSampleRate.md b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetSampleRate.md new file mode 100644 index 00000000..e599f3b8 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioClip/SetSampleRate.md @@ -0,0 +1,31 @@ +# AudioClip::SetSampleRate + +设置相关状态或配置。 + +```cpp +void SetSampleRate(Core::uint32 rate); +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioClip.h`,当前页面用于固定 `AudioClip` 类目录下的方法级 canonical 路径。 + +**参数:** +- `rate` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioClip object; + // 根据上下文补齐参数后调用 AudioClip::SetSampleRate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioClip.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioLoader/AudioLoader.md b/docs/api/XCEngine/Resources/AudioClip/AudioLoader/AudioLoader.md new file mode 100644 index 00000000..c7e041f7 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioLoader/AudioLoader.md @@ -0,0 +1,36 @@ +# AudioLoader + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Resources/AudioClip/AudioLoader.h` + +**描述**: 定义 `XCEngine/Resources/AudioClip` 子目录中的 `AudioLoader` public API。 + +## 概述 + +`AudioLoader.h` 是 `XCEngine/Resources/AudioClip` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `AudioLoader` | `class` | 继承自 `IResourceLoader` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [AudioLoader()](Constructor.md) | 构造对象。 | +| [~AudioLoader()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetResourceType](GetResourceType.md) | 获取相关状态或对象。 | +| [GetSupportedExtensions](GetSupportedExtensions.md) | 获取相关状态或对象。 | +| [CanLoad](CanLoad.md) | 判断当前条件下是否可执行。 | +| [Load](Load.md) | 加载资源或数据。 | +| [GetDefaultSettings](GetDefaultSettings.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../AudioClip.md) - 返回 `AudioClip` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioLoader/CanLoad.md b/docs/api/XCEngine/Resources/AudioClip/AudioLoader/CanLoad.md new file mode 100644 index 00000000..da09f4a7 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioLoader/CanLoad.md @@ -0,0 +1,31 @@ +# AudioLoader::CanLoad + +判断当前条件下是否可执行。 + +```cpp +bool CanLoad(const Containers::String& path) const override; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioLoader.h`,当前页面用于固定 `AudioLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioLoader object; + // 根据上下文补齐参数后调用 AudioLoader::CanLoad(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioLoader.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioLoader/Constructor.md b/docs/api/XCEngine/Resources/AudioClip/AudioLoader/Constructor.md new file mode 100644 index 00000000..1bf01fc4 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioLoader/Constructor.md @@ -0,0 +1,28 @@ +# AudioLoader::AudioLoader() + +构造对象。 + +```cpp +AudioLoader(); +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioLoader.h`,当前页面用于固定 `AudioLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioLoader object; +} +``` + +## 相关文档 + +- [返回类总览](AudioLoader.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioLoader/Destructor.md b/docs/api/XCEngine/Resources/AudioClip/AudioLoader/Destructor.md new file mode 100644 index 00000000..260a1396 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioLoader/Destructor.md @@ -0,0 +1,29 @@ +# AudioLoader::~AudioLoader() + +销毁对象并释放相关资源。 + +```cpp +virtual ~AudioLoader() override; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioLoader.h`,当前页面用于固定 `AudioLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioLoader object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](AudioLoader.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioLoader/GetDefaultSettings.md b/docs/api/XCEngine/Resources/AudioClip/AudioLoader/GetDefaultSettings.md new file mode 100644 index 00000000..f2a33354 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioLoader/GetDefaultSettings.md @@ -0,0 +1,30 @@ +# AudioLoader::GetDefaultSettings + +获取相关状态或对象。 + +```cpp +ImportSettings* GetDefaultSettings() const override; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioLoader.h`,当前页面用于固定 `AudioLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ImportSettings*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioLoader object; + // 根据上下文补齐参数后调用 AudioLoader::GetDefaultSettings(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioLoader.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioLoader/GetResourceType.md b/docs/api/XCEngine/Resources/AudioClip/AudioLoader/GetResourceType.md new file mode 100644 index 00000000..f24c2365 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioLoader/GetResourceType.md @@ -0,0 +1,30 @@ +# AudioLoader::GetResourceType + +获取相关状态或对象。 + +```cpp +ResourceType GetResourceType() const override; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioLoader.h`,当前页面用于固定 `AudioLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioLoader object; + // 根据上下文补齐参数后调用 AudioLoader::GetResourceType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioLoader.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioLoader/GetSupportedExtensions.md b/docs/api/XCEngine/Resources/AudioClip/AudioLoader/GetSupportedExtensions.md new file mode 100644 index 00000000..613afe1f --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioLoader/GetSupportedExtensions.md @@ -0,0 +1,30 @@ +# AudioLoader::GetSupportedExtensions + +获取相关状态或对象。 + +```cpp +Containers::Array GetSupportedExtensions() const override; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioLoader.h`,当前页面用于固定 `AudioLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::Array` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioLoader object; + // 根据上下文补齐参数后调用 AudioLoader::GetSupportedExtensions(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioLoader.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/AudioClip/AudioLoader/Load.md b/docs/api/XCEngine/Resources/AudioClip/AudioLoader/Load.md new file mode 100644 index 00000000..e6f89e58 --- /dev/null +++ b/docs/api/XCEngine/Resources/AudioClip/AudioLoader/Load.md @@ -0,0 +1,32 @@ +# AudioLoader::Load + +加载资源或数据。 + +```cpp +LoadResult Load(const Containers::String& path, const ImportSettings* settings = nullptr) override; +``` + +该方法声明于 `XCEngine/Resources/AudioClip/AudioLoader.h`,当前页面用于固定 `AudioLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 +- `settings` - 参数语义详见头文件声明。 + +**返回:** `LoadResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::AudioLoader object; + // 根据上下文补齐参数后调用 AudioLoader::Load(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](AudioLoader.md) +- [返回模块目录](../AudioClip.md) diff --git a/docs/api/XCEngine/Resources/Material/Material.md b/docs/api/XCEngine/Resources/Material/Material.md new file mode 100644 index 00000000..7dcee09d --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material.md @@ -0,0 +1,21 @@ +# Material + +**命名空间**: `XCEngine::Resources::Material` + +**类型**: `submodule` + +**描述**: 材质资源与材质加载器。 + +## 概览 + +该目录与 `XCEngine/Resources/Material` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 头文件 + +- [Material](Material/Material.md) - `Material.h` +- [MaterialLoader](MaterialLoader/MaterialLoader.md) - `MaterialLoader.h` + +## 相关文档 + +- [上级目录](../Resources.md) +- [API 总索引](../../../main.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/ClearAllProperties.md b/docs/api/XCEngine/Resources/Material/Material/ClearAllProperties.md new file mode 100644 index 00000000..ea0918e6 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/ClearAllProperties.md @@ -0,0 +1,30 @@ +# Material::ClearAllProperties + +清空内部数据。 + +```cpp +void ClearAllProperties(); +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::ClearAllProperties(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/Constructor.md b/docs/api/XCEngine/Resources/Material/Material/Constructor.md new file mode 100644 index 00000000..eca5b6d2 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/Constructor.md @@ -0,0 +1,28 @@ +# Material::Material() + +构造对象。 + +```cpp +Material(); +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/Destructor.md b/docs/api/XCEngine/Resources/Material/Material/Destructor.md new file mode 100644 index 00000000..520b40d0 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/Destructor.md @@ -0,0 +1,29 @@ +# Material::~Material() + +销毁对象并释放相关资源。 + +```cpp +virtual ~Material() override; +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/GetBool.md b/docs/api/XCEngine/Resources/Material/Material/GetBool.md new file mode 100644 index 00000000..086bb3af --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/GetBool.md @@ -0,0 +1,31 @@ +# Material::GetBool + +获取相关状态或对象。 + +```cpp +bool GetBool(const Containers::String& name) const; +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::GetBool(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/GetConstantBufferData.md b/docs/api/XCEngine/Resources/Material/Material/GetConstantBufferData.md new file mode 100644 index 00000000..b48673d7 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/GetConstantBufferData.md @@ -0,0 +1,30 @@ +# Material::GetConstantBufferData + +获取相关状态或对象。 + +```cpp +const Containers::Array& GetConstantBufferData() const; +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::Array&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::GetConstantBufferData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/GetFloat.md b/docs/api/XCEngine/Resources/Material/Material/GetFloat.md new file mode 100644 index 00000000..f3128907 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/GetFloat.md @@ -0,0 +1,31 @@ +# Material::GetFloat + +获取相关状态或对象。 + +```cpp +float GetFloat(const Containers::String& name) const; +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::GetFloat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/GetFloat2.md b/docs/api/XCEngine/Resources/Material/Material/GetFloat2.md new file mode 100644 index 00000000..fb6cda87 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/GetFloat2.md @@ -0,0 +1,31 @@ +# Material::GetFloat2 + +获取相关状态或对象。 + +```cpp +Math::Vector2 GetFloat2(const Containers::String& name) const; +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `Math::Vector2` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::GetFloat2(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/GetFloat3.md b/docs/api/XCEngine/Resources/Material/Material/GetFloat3.md new file mode 100644 index 00000000..54b3a5f1 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/GetFloat3.md @@ -0,0 +1,31 @@ +# Material::GetFloat3 + +获取相关状态或对象。 + +```cpp +Math::Vector3 GetFloat3(const Containers::String& name) const; +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `Math::Vector3` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::GetFloat3(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/GetFloat4.md b/docs/api/XCEngine/Resources/Material/Material/GetFloat4.md new file mode 100644 index 00000000..8fc1f25a --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/GetFloat4.md @@ -0,0 +1,31 @@ +# Material::GetFloat4 + +获取相关状态或对象。 + +```cpp +Math::Vector4 GetFloat4(const Containers::String& name) const; +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `Math::Vector4` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::GetFloat4(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/GetGUID.md b/docs/api/XCEngine/Resources/Material/Material/GetGUID.md new file mode 100644 index 00000000..bdd45f01 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/GetGUID.md @@ -0,0 +1,30 @@ +# Material::GetGUID + +获取相关状态或对象。 + +```cpp +ResourceGUID GetGUID() const override; +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceGUID` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::GetGUID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/GetInt.md b/docs/api/XCEngine/Resources/Material/Material/GetInt.md new file mode 100644 index 00000000..9204d71e --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/GetInt.md @@ -0,0 +1,31 @@ +# Material::GetInt + +获取相关状态或对象。 + +```cpp +Core::int32 GetInt(const Containers::String& name) const; +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `Core::int32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::GetInt(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/GetMemorySize.md b/docs/api/XCEngine/Resources/Material/Material/GetMemorySize.md new file mode 100644 index 00000000..0fe56d61 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/GetMemorySize.md @@ -0,0 +1,30 @@ +# Material::GetMemorySize + +获取相关状态或对象。 + +```cpp +size_t GetMemorySize() const override; +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::GetMemorySize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/GetName.md b/docs/api/XCEngine/Resources/Material/Material/GetName.md new file mode 100644 index 00000000..21cbe634 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/GetName.md @@ -0,0 +1,30 @@ +# Material::GetName + +获取相关状态或对象。 + +```cpp +const Containers::String& GetName() const override; +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/GetPath.md b/docs/api/XCEngine/Resources/Material/Material/GetPath.md new file mode 100644 index 00000000..26641622 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/GetPath.md @@ -0,0 +1,30 @@ +# Material::GetPath + +获取相关状态或对象。 + +```cpp +const Containers::String& GetPath() const override; +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::GetPath(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/GetTexture.md b/docs/api/XCEngine/Resources/Material/Material/GetTexture.md new file mode 100644 index 00000000..258cf58c --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/GetTexture.md @@ -0,0 +1,31 @@ +# Material::GetTexture + +获取相关状态或对象。 + +```cpp +ResourceHandle GetTexture(const Containers::String& name) const; +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `ResourceHandle` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::GetTexture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/GetTextureBindingCount.md b/docs/api/XCEngine/Resources/Material/Material/GetTextureBindingCount.md new file mode 100644 index 00000000..c93023f5 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/GetTextureBindingCount.md @@ -0,0 +1,30 @@ +# Material::GetTextureBindingCount + +获取相关状态或对象。 + +```cpp +Core::uint32 GetTextureBindingCount() const; +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::GetTextureBindingCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/GetType.md b/docs/api/XCEngine/Resources/Material/Material/GetType.md new file mode 100644 index 00000000..42a9748d --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/GetType.md @@ -0,0 +1,30 @@ +# Material::GetType + +获取相关状态或对象。 + +```cpp +ResourceType GetType() const override; +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/HasProperty.md b/docs/api/XCEngine/Resources/Material/Material/HasProperty.md new file mode 100644 index 00000000..b6a84c4e --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/HasProperty.md @@ -0,0 +1,31 @@ +# Material::HasProperty + +判断是否具备指定状态或能力。 + +```cpp +bool HasProperty(const Containers::String& name) const; +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::HasProperty(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/IsValid.md b/docs/api/XCEngine/Resources/Material/Material/IsValid.md new file mode 100644 index 00000000..bb631aa9 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/IsValid.md @@ -0,0 +1,30 @@ +# Material::IsValid + +查询当前状态。 + +```cpp +bool IsValid() const override; +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/Material.md b/docs/api/XCEngine/Resources/Material/Material/Material.md new file mode 100644 index 00000000..e4c735e2 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/Material.md @@ -0,0 +1,61 @@ +# Material + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Resources/Material/Material.h` + +**描述**: 定义 `XCEngine/Resources/Material` 子目录中的 `Material` public API。 + +## 概述 + +`Material.h` 是 `XCEngine/Resources/Material` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `MaterialPropertyType` | `enum class` | 头文件中的公开声明。 | +| `MaterialProperty` | `struct` | 头文件中的公开声明。 | +| `Material` | `class` | 继承自 `IResource` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Material()](Constructor.md) | 构造对象。 | +| [~Material()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [GetPath](GetPath.md) | 获取相关状态或对象。 | +| [GetGUID](GetGUID.md) | 获取相关状态或对象。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [GetMemorySize](GetMemorySize.md) | 获取相关状态或对象。 | +| [Release](Release.md) | 释放引用或底层资源。 | +| [SetShader](SetShader.md) | 设置相关状态或配置。 | +| [SetFloat](SetFloat.md) | 设置相关状态或配置。 | +| [SetFloat2](SetFloat2.md) | 设置相关状态或配置。 | +| [SetFloat3](SetFloat3.md) | 设置相关状态或配置。 | +| [SetFloat4](SetFloat4.md) | 设置相关状态或配置。 | +| [SetInt](SetInt.md) | 设置相关状态或配置。 | +| [SetBool](SetBool.md) | 设置相关状态或配置。 | +| [SetTexture](SetTexture.md) | 设置相关状态或配置。 | +| [GetFloat](GetFloat.md) | 获取相关状态或对象。 | +| [GetFloat2](GetFloat2.md) | 获取相关状态或对象。 | +| [GetFloat3](GetFloat3.md) | 获取相关状态或对象。 | +| [GetFloat4](GetFloat4.md) | 获取相关状态或对象。 | +| [GetInt](GetInt.md) | 获取相关状态或对象。 | +| [GetBool](GetBool.md) | 获取相关状态或对象。 | +| [GetTexture](GetTexture.md) | 获取相关状态或对象。 | +| [GetTextureBindingCount](GetTextureBindingCount.md) | 获取相关状态或对象。 | +| [GetConstantBufferData](GetConstantBufferData.md) | 获取相关状态或对象。 | +| [UpdateConstantBuffer](UpdateConstantBuffer.md) | 更新运行时状态。 | +| [HasProperty](HasProperty.md) | 判断是否具备指定状态或能力。 | +| [RemoveProperty](RemoveProperty.md) | 移除元素或解除关联。 | +| [ClearAllProperties](ClearAllProperties.md) | 清空内部数据。 | + +## 相关文档 + +- [当前目录](../Material.md) - 返回 `Material` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Resources/Material/Material/Release.md b/docs/api/XCEngine/Resources/Material/Material/Release.md new file mode 100644 index 00000000..564ceb37 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/Release.md @@ -0,0 +1,30 @@ +# Material::Release + +释放引用或底层资源。 + +```cpp +void Release() override; +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::Release(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/RemoveProperty.md b/docs/api/XCEngine/Resources/Material/Material/RemoveProperty.md new file mode 100644 index 00000000..47eb9c4b --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/RemoveProperty.md @@ -0,0 +1,31 @@ +# Material::RemoveProperty + +移除元素或解除关联。 + +```cpp +void RemoveProperty(const Containers::String& name); +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::RemoveProperty(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/SetBool.md b/docs/api/XCEngine/Resources/Material/Material/SetBool.md new file mode 100644 index 00000000..6a6ba3c4 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/SetBool.md @@ -0,0 +1,32 @@ +# Material::SetBool + +设置相关状态或配置。 + +```cpp +void SetBool(const Containers::String& name, bool value); +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::SetBool(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/SetFloat.md b/docs/api/XCEngine/Resources/Material/Material/SetFloat.md new file mode 100644 index 00000000..251e85b9 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/SetFloat.md @@ -0,0 +1,32 @@ +# Material::SetFloat + +设置相关状态或配置。 + +```cpp +void SetFloat(const Containers::String& name, float value); +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::SetFloat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/SetFloat2.md b/docs/api/XCEngine/Resources/Material/Material/SetFloat2.md new file mode 100644 index 00000000..db748474 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/SetFloat2.md @@ -0,0 +1,32 @@ +# Material::SetFloat2 + +设置相关状态或配置。 + +```cpp +void SetFloat2(const Containers::String& name, const Math::Vector2& value); +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::SetFloat2(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/SetFloat3.md b/docs/api/XCEngine/Resources/Material/Material/SetFloat3.md new file mode 100644 index 00000000..9c420b5d --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/SetFloat3.md @@ -0,0 +1,32 @@ +# Material::SetFloat3 + +设置相关状态或配置。 + +```cpp +void SetFloat3(const Containers::String& name, const Math::Vector3& value); +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::SetFloat3(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/SetFloat4.md b/docs/api/XCEngine/Resources/Material/Material/SetFloat4.md new file mode 100644 index 00000000..d5e20e0a --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/SetFloat4.md @@ -0,0 +1,32 @@ +# Material::SetFloat4 + +设置相关状态或配置。 + +```cpp +void SetFloat4(const Containers::String& name, const Math::Vector4& value); +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::SetFloat4(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/SetInt.md b/docs/api/XCEngine/Resources/Material/Material/SetInt.md new file mode 100644 index 00000000..8065341f --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/SetInt.md @@ -0,0 +1,32 @@ +# Material::SetInt + +设置相关状态或配置。 + +```cpp +void SetInt(const Containers::String& name, Core::int32 value); +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 +- `value` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::SetInt(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/SetShader.md b/docs/api/XCEngine/Resources/Material/Material/SetShader.md new file mode 100644 index 00000000..a55cabf3 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/SetShader.md @@ -0,0 +1,31 @@ +# Material::SetShader + +设置相关状态或配置。 + +```cpp +void SetShader(const ResourceHandle& shader); +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** +- `shader` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::SetShader(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/SetTexture.md b/docs/api/XCEngine/Resources/Material/Material/SetTexture.md new file mode 100644 index 00000000..9cccdb6c --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/SetTexture.md @@ -0,0 +1,32 @@ +# Material::SetTexture + +设置相关状态或配置。 + +```cpp +void SetTexture(const Containers::String& name, const ResourceHandle& texture); +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 +- `texture` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::SetTexture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/Material/UpdateConstantBuffer.md b/docs/api/XCEngine/Resources/Material/Material/UpdateConstantBuffer.md new file mode 100644 index 00000000..0a72d41b --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/Material/UpdateConstantBuffer.md @@ -0,0 +1,30 @@ +# Material::UpdateConstantBuffer + +更新运行时状态。 + +```cpp +void UpdateConstantBuffer(); +``` + +该方法声明于 `XCEngine/Resources/Material/Material.h`,当前页面用于固定 `Material` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Material object; + // 根据上下文补齐参数后调用 Material::UpdateConstantBuffer(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Material.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/MaterialLoader/CanLoad.md b/docs/api/XCEngine/Resources/Material/MaterialLoader/CanLoad.md new file mode 100644 index 00000000..a9f47912 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/MaterialLoader/CanLoad.md @@ -0,0 +1,31 @@ +# MaterialLoader::CanLoad + +判断当前条件下是否可执行。 + +```cpp +bool CanLoad(const Containers::String& path) const override; +``` + +该方法声明于 `XCEngine/Resources/Material/MaterialLoader.h`,当前页面用于固定 `MaterialLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MaterialLoader object; + // 根据上下文补齐参数后调用 MaterialLoader::CanLoad(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MaterialLoader.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/MaterialLoader/Constructor.md b/docs/api/XCEngine/Resources/Material/MaterialLoader/Constructor.md new file mode 100644 index 00000000..eae6a694 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/MaterialLoader/Constructor.md @@ -0,0 +1,28 @@ +# MaterialLoader::MaterialLoader() + +构造对象。 + +```cpp +MaterialLoader(); +``` + +该方法声明于 `XCEngine/Resources/Material/MaterialLoader.h`,当前页面用于固定 `MaterialLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MaterialLoader object; +} +``` + +## 相关文档 + +- [返回类总览](MaterialLoader.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/MaterialLoader/Destructor.md b/docs/api/XCEngine/Resources/Material/MaterialLoader/Destructor.md new file mode 100644 index 00000000..7d4f35f3 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/MaterialLoader/Destructor.md @@ -0,0 +1,29 @@ +# MaterialLoader::~MaterialLoader() + +销毁对象并释放相关资源。 + +```cpp +virtual ~MaterialLoader() override; +``` + +该方法声明于 `XCEngine/Resources/Material/MaterialLoader.h`,当前页面用于固定 `MaterialLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MaterialLoader object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](MaterialLoader.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/MaterialLoader/GetDefaultSettings.md b/docs/api/XCEngine/Resources/Material/MaterialLoader/GetDefaultSettings.md new file mode 100644 index 00000000..0a50dcf9 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/MaterialLoader/GetDefaultSettings.md @@ -0,0 +1,30 @@ +# MaterialLoader::GetDefaultSettings + +获取相关状态或对象。 + +```cpp +ImportSettings* GetDefaultSettings() const override; +``` + +该方法声明于 `XCEngine/Resources/Material/MaterialLoader.h`,当前页面用于固定 `MaterialLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ImportSettings*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MaterialLoader object; + // 根据上下文补齐参数后调用 MaterialLoader::GetDefaultSettings(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MaterialLoader.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/MaterialLoader/GetResourceType.md b/docs/api/XCEngine/Resources/Material/MaterialLoader/GetResourceType.md new file mode 100644 index 00000000..e9e6dd77 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/MaterialLoader/GetResourceType.md @@ -0,0 +1,30 @@ +# MaterialLoader::GetResourceType + +获取相关状态或对象。 + +```cpp +ResourceType GetResourceType() const override; +``` + +该方法声明于 `XCEngine/Resources/Material/MaterialLoader.h`,当前页面用于固定 `MaterialLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MaterialLoader object; + // 根据上下文补齐参数后调用 MaterialLoader::GetResourceType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MaterialLoader.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/MaterialLoader/GetSupportedExtensions.md b/docs/api/XCEngine/Resources/Material/MaterialLoader/GetSupportedExtensions.md new file mode 100644 index 00000000..8acbb1af --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/MaterialLoader/GetSupportedExtensions.md @@ -0,0 +1,30 @@ +# MaterialLoader::GetSupportedExtensions + +获取相关状态或对象。 + +```cpp +Containers::Array GetSupportedExtensions() const override; +``` + +该方法声明于 `XCEngine/Resources/Material/MaterialLoader.h`,当前页面用于固定 `MaterialLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::Array` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MaterialLoader object; + // 根据上下文补齐参数后调用 MaterialLoader::GetSupportedExtensions(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MaterialLoader.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/MaterialLoader/Load.md b/docs/api/XCEngine/Resources/Material/MaterialLoader/Load.md new file mode 100644 index 00000000..be29d0c4 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/MaterialLoader/Load.md @@ -0,0 +1,32 @@ +# MaterialLoader::Load + +加载资源或数据。 + +```cpp +LoadResult Load(const Containers::String& path, const ImportSettings* settings = nullptr) override; +``` + +该方法声明于 `XCEngine/Resources/Material/MaterialLoader.h`,当前页面用于固定 `MaterialLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 +- `settings` - 参数语义详见头文件声明。 + +**返回:** `LoadResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MaterialLoader object; + // 根据上下文补齐参数后调用 MaterialLoader::Load(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MaterialLoader.md) +- [返回模块目录](../Material.md) diff --git a/docs/api/XCEngine/Resources/Material/MaterialLoader/MaterialLoader.md b/docs/api/XCEngine/Resources/Material/MaterialLoader/MaterialLoader.md new file mode 100644 index 00000000..88d54129 --- /dev/null +++ b/docs/api/XCEngine/Resources/Material/MaterialLoader/MaterialLoader.md @@ -0,0 +1,36 @@ +# MaterialLoader + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Resources/Material/MaterialLoader.h` + +**描述**: 定义 `XCEngine/Resources/Material` 子目录中的 `MaterialLoader` public API。 + +## 概述 + +`MaterialLoader.h` 是 `XCEngine/Resources/Material` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `MaterialLoader` | `class` | 继承自 `IResourceLoader` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [MaterialLoader()](Constructor.md) | 构造对象。 | +| [~MaterialLoader()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetResourceType](GetResourceType.md) | 获取相关状态或对象。 | +| [GetSupportedExtensions](GetSupportedExtensions.md) | 获取相关状态或对象。 | +| [CanLoad](CanLoad.md) | 判断当前条件下是否可执行。 | +| [Load](Load.md) | 加载资源或数据。 | +| [GetDefaultSettings](GetDefaultSettings.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Material.md) - 返回 `Material` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh.md b/docs/api/XCEngine/Resources/Mesh/Mesh.md new file mode 100644 index 00000000..6a1fdbd9 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh.md @@ -0,0 +1,22 @@ +# Mesh + +**命名空间**: `XCEngine::Resources::Mesh` + +**类型**: `submodule` + +**描述**: 网格资源、导入设置与网格加载器。 + +## 概览 + +该目录与 `XCEngine/Resources/Mesh` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 头文件 + +- [Mesh](Mesh/Mesh.md) - `Mesh.h` +- [MeshImportSettings](MeshImportSettings/MeshImportSettings.md) - `MeshImportSettings.h` +- [MeshLoader](MeshLoader/MeshLoader.md) - `MeshLoader.h` + +## 相关文档 + +- [上级目录](../Resources.md) +- [API 总索引](../../../main.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/AddMaterial.md b/docs/api/XCEngine/Resources/Mesh/Mesh/AddMaterial.md new file mode 100644 index 00000000..480aaed7 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/AddMaterial.md @@ -0,0 +1,31 @@ +# Mesh::AddMaterial + +添加元素或建立关联。 + +```cpp +void AddMaterial(Material* material); +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** +- `material` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::AddMaterial(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/AddSection.md b/docs/api/XCEngine/Resources/Mesh/Mesh/AddSection.md new file mode 100644 index 00000000..7aa9457d --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/AddSection.md @@ -0,0 +1,31 @@ +# Mesh::AddSection + +添加元素或建立关联。 + +```cpp +void AddSection(const MeshSection& section); +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** +- `section` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::AddSection(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/AddTexture.md b/docs/api/XCEngine/Resources/Mesh/Mesh/AddTexture.md new file mode 100644 index 00000000..b3bc3736 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/AddTexture.md @@ -0,0 +1,31 @@ +# Mesh::AddTexture + +添加元素或建立关联。 + +```cpp +void AddTexture(Texture* texture); +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** +- `texture` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::AddTexture(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/Constructor.md b/docs/api/XCEngine/Resources/Mesh/Mesh/Constructor.md new file mode 100644 index 00000000..54eb0ff8 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/Constructor.md @@ -0,0 +1,28 @@ +# Mesh::Mesh() + +构造对象。 + +```cpp +Mesh(); +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/Destructor.md b/docs/api/XCEngine/Resources/Mesh/Mesh/Destructor.md new file mode 100644 index 00000000..37076605 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/Destructor.md @@ -0,0 +1,29 @@ +# Mesh::~Mesh() + +销毁对象并释放相关资源。 + +```cpp +virtual ~Mesh() override; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/GetBounds.md b/docs/api/XCEngine/Resources/Mesh/Mesh/GetBounds.md new file mode 100644 index 00000000..4673bcff --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/GetBounds.md @@ -0,0 +1,30 @@ +# Mesh::GetBounds + +获取相关状态或对象。 + +```cpp +const Math::Bounds& GetBounds() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Math::Bounds&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::GetBounds(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/GetGUID.md b/docs/api/XCEngine/Resources/Mesh/Mesh/GetGUID.md new file mode 100644 index 00000000..cd1f5eb1 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/GetGUID.md @@ -0,0 +1,30 @@ +# Mesh::GetGUID + +获取相关状态或对象。 + +```cpp +ResourceGUID GetGUID() const override; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceGUID` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::GetGUID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/GetIndexCount.md b/docs/api/XCEngine/Resources/Mesh/Mesh/GetIndexCount.md new file mode 100644 index 00000000..6a32655b --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/GetIndexCount.md @@ -0,0 +1,30 @@ +# Mesh::GetIndexCount + +获取相关状态或对象。 + +```cpp +Core::uint32 GetIndexCount() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::GetIndexCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/GetIndexData.md b/docs/api/XCEngine/Resources/Mesh/Mesh/GetIndexData.md new file mode 100644 index 00000000..b5b8b239 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/GetIndexData.md @@ -0,0 +1,30 @@ +# Mesh::GetIndexData + +获取相关状态或对象。 + +```cpp +const void* GetIndexData() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::GetIndexData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/GetIndexDataSize.md b/docs/api/XCEngine/Resources/Mesh/Mesh/GetIndexDataSize.md new file mode 100644 index 00000000..44a97a59 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/GetIndexDataSize.md @@ -0,0 +1,30 @@ +# Mesh::GetIndexDataSize + +获取相关状态或对象。 + +```cpp +size_t GetIndexDataSize() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::GetIndexDataSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/GetMaterial.md b/docs/api/XCEngine/Resources/Mesh/Mesh/GetMaterial.md new file mode 100644 index 00000000..cf0299a1 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/GetMaterial.md @@ -0,0 +1,31 @@ +# Mesh::GetMaterial + +获取相关状态或对象。 + +```cpp +Material* GetMaterial(Core::uint32 index) const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** +- `index` - 参数语义详见头文件声明。 + +**返回:** `Material*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::GetMaterial(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/GetMaterials.md b/docs/api/XCEngine/Resources/Mesh/Mesh/GetMaterials.md new file mode 100644 index 00000000..8d200c8e --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/GetMaterials.md @@ -0,0 +1,30 @@ +# Mesh::GetMaterials + +获取相关状态或对象。 + +```cpp +const Containers::Array& GetMaterials() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::Array&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::GetMaterials(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/GetMemorySize.md b/docs/api/XCEngine/Resources/Mesh/Mesh/GetMemorySize.md new file mode 100644 index 00000000..3f7a67fb --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/GetMemorySize.md @@ -0,0 +1,30 @@ +# Mesh::GetMemorySize + +获取相关状态或对象。 + +```cpp +size_t GetMemorySize() const override; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::GetMemorySize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/GetName.md b/docs/api/XCEngine/Resources/Mesh/Mesh/GetName.md new file mode 100644 index 00000000..39419e0a --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/GetName.md @@ -0,0 +1,30 @@ +# Mesh::GetName + +获取相关状态或对象。 + +```cpp +const Containers::String& GetName() const override; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/GetPath.md b/docs/api/XCEngine/Resources/Mesh/Mesh/GetPath.md new file mode 100644 index 00000000..0d54c0ba --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/GetPath.md @@ -0,0 +1,30 @@ +# Mesh::GetPath + +获取相关状态或对象。 + +```cpp +const Containers::String& GetPath() const override; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::GetPath(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/GetSections.md b/docs/api/XCEngine/Resources/Mesh/Mesh/GetSections.md new file mode 100644 index 00000000..8dbb4b4a --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/GetSections.md @@ -0,0 +1,30 @@ +# Mesh::GetSections + +获取相关状态或对象。 + +```cpp +const Containers::Array& GetSections() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::Array&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::GetSections(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/GetTextures.md b/docs/api/XCEngine/Resources/Mesh/Mesh/GetTextures.md new file mode 100644 index 00000000..de8602d0 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/GetTextures.md @@ -0,0 +1,30 @@ +# Mesh::GetTextures + +获取相关状态或对象。 + +```cpp +const Containers::Array& GetTextures() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::Array&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::GetTextures(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/GetType.md b/docs/api/XCEngine/Resources/Mesh/Mesh/GetType.md new file mode 100644 index 00000000..9c5d5c3f --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/GetType.md @@ -0,0 +1,30 @@ +# Mesh::GetType + +获取相关状态或对象。 + +```cpp +ResourceType GetType() const override; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexAttributes.md b/docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexAttributes.md new file mode 100644 index 00000000..04b32ac0 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexAttributes.md @@ -0,0 +1,30 @@ +# Mesh::GetVertexAttributes + +获取相关状态或对象。 + +```cpp +VertexAttribute GetVertexAttributes() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `VertexAttribute` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::GetVertexAttributes(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexCount.md b/docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexCount.md new file mode 100644 index 00000000..aa0ced66 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexCount.md @@ -0,0 +1,30 @@ +# Mesh::GetVertexCount + +获取相关状态或对象。 + +```cpp +Core::uint32 GetVertexCount() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::GetVertexCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexData.md b/docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexData.md new file mode 100644 index 00000000..a697a765 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexData.md @@ -0,0 +1,30 @@ +# Mesh::GetVertexData + +获取相关状态或对象。 + +```cpp +const void* GetVertexData() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::GetVertexData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexDataSize.md b/docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexDataSize.md new file mode 100644 index 00000000..f450873e --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexDataSize.md @@ -0,0 +1,30 @@ +# Mesh::GetVertexDataSize + +获取相关状态或对象。 + +```cpp +size_t GetVertexDataSize() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::GetVertexDataSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexStride.md b/docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexStride.md new file mode 100644 index 00000000..6d2874b8 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/GetVertexStride.md @@ -0,0 +1,30 @@ +# Mesh::GetVertexStride + +获取相关状态或对象。 + +```cpp +Core::uint32 GetVertexStride() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::GetVertexStride(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/IsUse32BitIndex.md b/docs/api/XCEngine/Resources/Mesh/Mesh/IsUse32BitIndex.md new file mode 100644 index 00000000..c6ba9ce8 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/IsUse32BitIndex.md @@ -0,0 +1,30 @@ +# Mesh::IsUse32BitIndex + +查询当前状态。 + +```cpp +bool IsUse32BitIndex() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::IsUse32BitIndex(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/IsValid.md b/docs/api/XCEngine/Resources/Mesh/Mesh/IsValid.md new file mode 100644 index 00000000..97ae5c75 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/IsValid.md @@ -0,0 +1,30 @@ +# Mesh::IsValid + +查询当前状态。 + +```cpp +bool IsValid() const override; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/Mesh.md b/docs/api/XCEngine/Resources/Mesh/Mesh/Mesh.md new file mode 100644 index 00000000..4c047cee --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/Mesh.md @@ -0,0 +1,61 @@ +# Mesh + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Resources/Mesh/Mesh.h` + +**描述**: 定义 `XCEngine/Resources/Mesh` 子目录中的 `Mesh` public API。 + +## 概述 + +`Mesh.h` 是 `XCEngine/Resources/Mesh` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `VertexAttribute` | `enum class` | 头文件中的公开声明。 | +| `StaticMeshVertex` | `struct` | 头文件中的公开声明。 | +| `MeshSection` | `struct` | 头文件中的公开声明。 | +| `Mesh` | `class` | 继承自 `IResource` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Mesh()](Constructor.md) | 构造对象。 | +| [~Mesh()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [GetPath](GetPath.md) | 获取相关状态或对象。 | +| [GetGUID](GetGUID.md) | 获取相关状态或对象。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [GetMemorySize](GetMemorySize.md) | 获取相关状态或对象。 | +| [Release](Release.md) | 释放引用或底层资源。 | +| [SetVertexData](SetVertexData.md) | 设置相关状态或配置。 | +| [GetVertexData](GetVertexData.md) | 获取相关状态或对象。 | +| [GetVertexDataSize](GetVertexDataSize.md) | 获取相关状态或对象。 | +| [GetVertexCount](GetVertexCount.md) | 获取相关状态或对象。 | +| [GetVertexStride](GetVertexStride.md) | 获取相关状态或对象。 | +| [GetVertexAttributes](GetVertexAttributes.md) | 获取相关状态或对象。 | +| [SetIndexData](SetIndexData.md) | 设置相关状态或配置。 | +| [GetIndexData](GetIndexData.md) | 获取相关状态或对象。 | +| [GetIndexDataSize](GetIndexDataSize.md) | 获取相关状态或对象。 | +| [GetIndexCount](GetIndexCount.md) | 获取相关状态或对象。 | +| [IsUse32BitIndex](IsUse32BitIndex.md) | 查询当前状态。 | +| [SetBounds](SetBounds.md) | 设置相关状态或配置。 | +| [GetBounds](GetBounds.md) | 获取相关状态或对象。 | +| [AddSection](AddSection.md) | 添加元素或建立关联。 | +| [AddMaterial](AddMaterial.md) | 添加元素或建立关联。 | +| [AddTexture](AddTexture.md) | 添加元素或建立关联。 | +| [GetSections](GetSections.md) | 获取相关状态或对象。 | +| [GetMaterials](GetMaterials.md) | 获取相关状态或对象。 | +| [GetTextures](GetTextures.md) | 获取相关状态或对象。 | +| [GetMaterial](GetMaterial.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Mesh.md) - 返回 `Mesh` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/Release.md b/docs/api/XCEngine/Resources/Mesh/Mesh/Release.md new file mode 100644 index 00000000..d815a037 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/Release.md @@ -0,0 +1,30 @@ +# Mesh::Release + +释放引用或底层资源。 + +```cpp +void Release() override; +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::Release(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/SetBounds.md b/docs/api/XCEngine/Resources/Mesh/Mesh/SetBounds.md new file mode 100644 index 00000000..3f29eb79 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/SetBounds.md @@ -0,0 +1,31 @@ +# Mesh::SetBounds + +设置相关状态或配置。 + +```cpp +void SetBounds(const Math::Bounds& bounds); +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** +- `bounds` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::SetBounds(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/SetIndexData.md b/docs/api/XCEngine/Resources/Mesh/Mesh/SetIndexData.md new file mode 100644 index 00000000..4671585b --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/SetIndexData.md @@ -0,0 +1,34 @@ +# Mesh::SetIndexData + +设置相关状态或配置。 + +```cpp +void SetIndexData(const void* data, size_t size, Core::uint32 indexCount, bool use32Bit); +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** +- `data` - 参数语义详见头文件声明。 +- `size` - 参数语义详见头文件声明。 +- `indexCount` - 参数语义详见头文件声明。 +- `use32Bit` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::SetIndexData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/Mesh/SetVertexData.md b/docs/api/XCEngine/Resources/Mesh/Mesh/SetVertexData.md new file mode 100644 index 00000000..bc42ce60 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/Mesh/SetVertexData.md @@ -0,0 +1,35 @@ +# Mesh::SetVertexData + +设置相关状态或配置。 + +```cpp +void SetVertexData(const void* data, size_t size, Core::uint32 vertexCount, Core::uint32 vertexStride, VertexAttribute attributes); +``` + +该方法声明于 `XCEngine/Resources/Mesh/Mesh.h`,当前页面用于固定 `Mesh` 类目录下的方法级 canonical 路径。 + +**参数:** +- `data` - 参数语义详见头文件声明。 +- `size` - 参数语义详见头文件声明。 +- `vertexCount` - 参数语义详见头文件声明。 +- `vertexStride` - 参数语义详见头文件声明。 +- `attributes` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Mesh object; + // 根据上下文补齐参数后调用 Mesh::SetVertexData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mesh.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/AddImportFlag.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/AddImportFlag.md new file mode 100644 index 00000000..d87ba1c3 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/AddImportFlag.md @@ -0,0 +1,31 @@ +# MeshImportSettings::AddImportFlag + +添加元素或建立关联。 + +```cpp +void AddImportFlag(MeshImportFlags flag); +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `flag` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::AddImportFlag(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/Clone.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/Clone.md new file mode 100644 index 00000000..717ea0d6 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/Clone.md @@ -0,0 +1,30 @@ +# MeshImportSettings::Clone + +公开方法,详见头文件声明。 + +```cpp +Core::UniqueRef Clone() const override; +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::UniqueRef` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::Clone(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/Constructor.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/Constructor.md new file mode 100644 index 00000000..32328e01 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/Constructor.md @@ -0,0 +1,28 @@ +# MeshImportSettings::MeshImportSettings() + +构造对象。 + +```cpp +MeshImportSettings(); +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/Destructor.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/Destructor.md new file mode 100644 index 00000000..1bcb05cd --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/Destructor.md @@ -0,0 +1,29 @@ +# MeshImportSettings::~MeshImportSettings() + +销毁对象并释放相关资源。 + +```cpp +virtual ~MeshImportSettings() override; +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetAxisConversion.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetAxisConversion.md new file mode 100644 index 00000000..c81d4eca --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetAxisConversion.md @@ -0,0 +1,30 @@ +# MeshImportSettings::GetAxisConversion + +获取相关状态或对象。 + +```cpp +bool GetAxisConversion() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::GetAxisConversion(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetImportFlags.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetImportFlags.md new file mode 100644 index 00000000..f45b718e --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetImportFlags.md @@ -0,0 +1,30 @@ +# MeshImportSettings::GetImportFlags + +获取相关状态或对象。 + +```cpp +MeshImportFlags GetImportFlags() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `MeshImportFlags` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::GetImportFlags(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetImportScale.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetImportScale.md new file mode 100644 index 00000000..20efa749 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetImportScale.md @@ -0,0 +1,30 @@ +# MeshImportSettings::GetImportScale + +获取相关状态或对象。 + +```cpp +float GetImportScale() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::GetImportScale(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetMergeMeshes.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetMergeMeshes.md new file mode 100644 index 00000000..7d572957 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetMergeMeshes.md @@ -0,0 +1,30 @@ +# MeshImportSettings::GetMergeMeshes + +获取相关状态或对象。 + +```cpp +bool GetMergeMeshes() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::GetMergeMeshes(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetOffset.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetOffset.md new file mode 100644 index 00000000..b30f242a --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetOffset.md @@ -0,0 +1,30 @@ +# MeshImportSettings::GetOffset + +获取相关状态或对象。 + +```cpp +const Math::Vector3& GetOffset() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Math::Vector3&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::GetOffset(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetOptimizeThreshold.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetOptimizeThreshold.md new file mode 100644 index 00000000..40997261 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetOptimizeThreshold.md @@ -0,0 +1,30 @@ +# MeshImportSettings::GetOptimizeThreshold + +获取相关状态或对象。 + +```cpp +float GetOptimizeThreshold() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::GetOptimizeThreshold(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetScale.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetScale.md new file mode 100644 index 00000000..ab42fe8a --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetScale.md @@ -0,0 +1,30 @@ +# MeshImportSettings::GetScale + +获取相关状态或对象。 + +```cpp +float GetScale() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::GetScale(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetThreshold.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetThreshold.md new file mode 100644 index 00000000..871c3fa0 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/GetThreshold.md @@ -0,0 +1,30 @@ +# MeshImportSettings::GetThreshold + +获取相关状态或对象。 + +```cpp +float GetThreshold() const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::GetThreshold(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/HasImportFlag.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/HasImportFlag.md new file mode 100644 index 00000000..2d955241 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/HasImportFlag.md @@ -0,0 +1,31 @@ +# MeshImportSettings::HasImportFlag + +判断是否具备指定状态或能力。 + +```cpp +bool HasImportFlag(MeshImportFlags flag) const; +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `flag` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::HasImportFlag(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/LoadFromJSON.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/LoadFromJSON.md new file mode 100644 index 00000000..80bbb06f --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/LoadFromJSON.md @@ -0,0 +1,31 @@ +# MeshImportSettings::LoadFromJSON + +加载资源或数据。 + +```cpp +bool LoadFromJSON(const Containers::String& json) override; +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `json` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::LoadFromJSON(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/MeshImportSettings.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/MeshImportSettings.md new file mode 100644 index 00000000..92782029 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/MeshImportSettings.md @@ -0,0 +1,54 @@ +# MeshImportSettings + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Resources/Mesh/MeshImportSettings.h` + +**描述**: 定义 `XCEngine/Resources/Mesh` 子目录中的 `MeshImportSettings` public API。 + +## 概述 + +`MeshImportSettings.h` 是 `XCEngine/Resources/Mesh` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `MeshImportFlags` | `enum class` | 头文件中的公开声明。 | +| `MeshImportSettings` | `class` | 继承自 `ImportSettings` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [MeshImportSettings()](Constructor.md) | 构造对象。 | +| [~MeshImportSettings()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Clone](Clone.md) | 公开方法,详见头文件声明。 | +| [LoadFromJSON](LoadFromJSON.md) | 加载资源或数据。 | +| [SaveToJSON](SaveToJSON.md) | 公开方法,详见头文件声明。 | +| [SetImportFlags](SetImportFlags.md) | 设置相关状态或配置。 | +| [GetImportFlags](GetImportFlags.md) | 获取相关状态或对象。 | +| [AddImportFlag](AddImportFlag.md) | 添加元素或建立关联。 | +| [RemoveImportFlag](RemoveImportFlag.md) | 移除元素或解除关联。 | +| [HasImportFlag](HasImportFlag.md) | 判断是否具备指定状态或能力。 | +| [SetScale](SetScale.md) | 设置相关状态或配置。 | +| [GetScale](GetScale.md) | 获取相关状态或对象。 | +| [SetOffset](SetOffset.md) | 设置相关状态或配置。 | +| [GetOffset](GetOffset.md) | 获取相关状态或对象。 | +| [SetAxisConversion](SetAxisConversion.md) | 设置相关状态或配置。 | +| [GetAxisConversion](GetAxisConversion.md) | 获取相关状态或对象。 | +| [SetMergeMeshes](SetMergeMeshes.md) | 设置相关状态或配置。 | +| [GetMergeMeshes](GetMergeMeshes.md) | 获取相关状态或对象。 | +| [SetOptimizeThreshold](SetOptimizeThreshold.md) | 设置相关状态或配置。 | +| [GetOptimizeThreshold](GetOptimizeThreshold.md) | 获取相关状态或对象。 | +| [SetImportScale](SetImportScale.md) | 设置相关状态或配置。 | +| [GetImportScale](GetImportScale.md) | 获取相关状态或对象。 | +| [SetThreshold](SetThreshold.md) | 设置相关状态或配置。 | +| [GetThreshold](GetThreshold.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Mesh.md) - 返回 `Mesh` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/RemoveImportFlag.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/RemoveImportFlag.md new file mode 100644 index 00000000..85c08b7b --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/RemoveImportFlag.md @@ -0,0 +1,31 @@ +# MeshImportSettings::RemoveImportFlag + +移除元素或解除关联。 + +```cpp +void RemoveImportFlag(MeshImportFlags flag); +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `flag` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::RemoveImportFlag(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SaveToJSON.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SaveToJSON.md new file mode 100644 index 00000000..3b6a1a6b --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SaveToJSON.md @@ -0,0 +1,30 @@ +# MeshImportSettings::SaveToJSON + +公开方法,详见头文件声明。 + +```cpp +Containers::String SaveToJSON() const override; +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::SaveToJSON(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetAxisConversion.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetAxisConversion.md new file mode 100644 index 00000000..afd4faf6 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetAxisConversion.md @@ -0,0 +1,31 @@ +# MeshImportSettings::SetAxisConversion + +设置相关状态或配置。 + +```cpp +void SetAxisConversion(bool convert); +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `convert` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::SetAxisConversion(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetImportFlags.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetImportFlags.md new file mode 100644 index 00000000..eed72a90 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetImportFlags.md @@ -0,0 +1,31 @@ +# MeshImportSettings::SetImportFlags + +设置相关状态或配置。 + +```cpp +void SetImportFlags(MeshImportFlags flags); +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `flags` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::SetImportFlags(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetImportScale.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetImportScale.md new file mode 100644 index 00000000..43d1e5e6 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetImportScale.md @@ -0,0 +1,31 @@ +# MeshImportSettings::SetImportScale + +设置相关状态或配置。 + +```cpp +void SetImportScale(float scale); +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `scale` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::SetImportScale(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetMergeMeshes.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetMergeMeshes.md new file mode 100644 index 00000000..5a8d6665 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetMergeMeshes.md @@ -0,0 +1,31 @@ +# MeshImportSettings::SetMergeMeshes + +设置相关状态或配置。 + +```cpp +void SetMergeMeshes(bool merge); +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `merge` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::SetMergeMeshes(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetOffset.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetOffset.md new file mode 100644 index 00000000..c961679a --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetOffset.md @@ -0,0 +1,31 @@ +# MeshImportSettings::SetOffset + +设置相关状态或配置。 + +```cpp +void SetOffset(const Math::Vector3& offset); +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `offset` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::SetOffset(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetOptimizeThreshold.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetOptimizeThreshold.md new file mode 100644 index 00000000..099427ea --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetOptimizeThreshold.md @@ -0,0 +1,31 @@ +# MeshImportSettings::SetOptimizeThreshold + +设置相关状态或配置。 + +```cpp +void SetOptimizeThreshold(float threshold); +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `threshold` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::SetOptimizeThreshold(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetScale.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetScale.md new file mode 100644 index 00000000..672eeb7f --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetScale.md @@ -0,0 +1,31 @@ +# MeshImportSettings::SetScale + +设置相关状态或配置。 + +```cpp +void SetScale(float scale); +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `scale` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::SetScale(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetThreshold.md b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetThreshold.md new file mode 100644 index 00000000..02bc594a --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshImportSettings/SetThreshold.md @@ -0,0 +1,31 @@ +# MeshImportSettings::SetThreshold + +设置相关状态或配置。 + +```cpp +void SetThreshold(float threshold); +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshImportSettings.h`,当前页面用于固定 `MeshImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `threshold` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshImportSettings object; + // 根据上下文补齐参数后调用 MeshImportSettings::SetThreshold(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshImportSettings.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshLoader/CanLoad.md b/docs/api/XCEngine/Resources/Mesh/MeshLoader/CanLoad.md new file mode 100644 index 00000000..bf182b44 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshLoader/CanLoad.md @@ -0,0 +1,31 @@ +# MeshLoader::CanLoad + +判断当前条件下是否可执行。 + +```cpp +bool CanLoad(const Containers::String& path) const override; +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshLoader.h`,当前页面用于固定 `MeshLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshLoader object; + // 根据上下文补齐参数后调用 MeshLoader::CanLoad(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshLoader.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshLoader/Constructor.md b/docs/api/XCEngine/Resources/Mesh/MeshLoader/Constructor.md new file mode 100644 index 00000000..76c5907d --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshLoader/Constructor.md @@ -0,0 +1,28 @@ +# MeshLoader::MeshLoader() + +构造对象。 + +```cpp +MeshLoader(); +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshLoader.h`,当前页面用于固定 `MeshLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshLoader object; +} +``` + +## 相关文档 + +- [返回类总览](MeshLoader.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshLoader/Destructor.md b/docs/api/XCEngine/Resources/Mesh/MeshLoader/Destructor.md new file mode 100644 index 00000000..9402e8a2 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshLoader/Destructor.md @@ -0,0 +1,29 @@ +# MeshLoader::~MeshLoader() + +销毁对象并释放相关资源。 + +```cpp +virtual ~MeshLoader() override; +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshLoader.h`,当前页面用于固定 `MeshLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshLoader object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](MeshLoader.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshLoader/GetDefaultSettings.md b/docs/api/XCEngine/Resources/Mesh/MeshLoader/GetDefaultSettings.md new file mode 100644 index 00000000..56bf8fd6 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshLoader/GetDefaultSettings.md @@ -0,0 +1,30 @@ +# MeshLoader::GetDefaultSettings + +获取相关状态或对象。 + +```cpp +ImportSettings* GetDefaultSettings() const override; +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshLoader.h`,当前页面用于固定 `MeshLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ImportSettings*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshLoader object; + // 根据上下文补齐参数后调用 MeshLoader::GetDefaultSettings(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshLoader.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshLoader/GetResourceType.md b/docs/api/XCEngine/Resources/Mesh/MeshLoader/GetResourceType.md new file mode 100644 index 00000000..7b315e6c --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshLoader/GetResourceType.md @@ -0,0 +1,30 @@ +# MeshLoader::GetResourceType + +获取相关状态或对象。 + +```cpp +ResourceType GetResourceType() const override; +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshLoader.h`,当前页面用于固定 `MeshLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshLoader object; + // 根据上下文补齐参数后调用 MeshLoader::GetResourceType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshLoader.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshLoader/GetSupportedExtensions.md b/docs/api/XCEngine/Resources/Mesh/MeshLoader/GetSupportedExtensions.md new file mode 100644 index 00000000..55784e79 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshLoader/GetSupportedExtensions.md @@ -0,0 +1,30 @@ +# MeshLoader::GetSupportedExtensions + +获取相关状态或对象。 + +```cpp +Containers::Array GetSupportedExtensions() const override; +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshLoader.h`,当前页面用于固定 `MeshLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::Array` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshLoader object; + // 根据上下文补齐参数后调用 MeshLoader::GetSupportedExtensions(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshLoader.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshLoader/Load.md b/docs/api/XCEngine/Resources/Mesh/MeshLoader/Load.md new file mode 100644 index 00000000..568d2110 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshLoader/Load.md @@ -0,0 +1,32 @@ +# MeshLoader::Load + +加载资源或数据。 + +```cpp +LoadResult Load(const Containers::String& path, const ImportSettings* settings = nullptr) override; +``` + +该方法声明于 `XCEngine/Resources/Mesh/MeshLoader.h`,当前页面用于固定 `MeshLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 +- `settings` - 参数语义详见头文件声明。 + +**返回:** `LoadResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::MeshLoader object; + // 根据上下文补齐参数后调用 MeshLoader::Load(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](MeshLoader.md) +- [返回模块目录](../Mesh.md) diff --git a/docs/api/XCEngine/Resources/Mesh/MeshLoader/MeshLoader.md b/docs/api/XCEngine/Resources/Mesh/MeshLoader/MeshLoader.md new file mode 100644 index 00000000..a07e8907 --- /dev/null +++ b/docs/api/XCEngine/Resources/Mesh/MeshLoader/MeshLoader.md @@ -0,0 +1,36 @@ +# MeshLoader + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Resources/Mesh/MeshLoader.h` + +**描述**: 定义 `XCEngine/Resources/Mesh` 子目录中的 `MeshLoader` public API。 + +## 概述 + +`MeshLoader.h` 是 `XCEngine/Resources/Mesh` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `MeshLoader` | `class` | 继承自 `IResourceLoader` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [MeshLoader()](Constructor.md) | 构造对象。 | +| [~MeshLoader()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetResourceType](GetResourceType.md) | 获取相关状态或对象。 | +| [GetSupportedExtensions](GetSupportedExtensions.md) | 获取相关状态或对象。 | +| [CanLoad](CanLoad.md) | 判断当前条件下是否可执行。 | +| [Load](Load.md) | 加载资源或数据。 | +| [GetDefaultSettings](GetDefaultSettings.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Mesh.md) - 返回 `Mesh` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Resources/Resources.md b/docs/api/XCEngine/Resources/Resources.md new file mode 100644 index 00000000..f86b7f26 --- /dev/null +++ b/docs/api/XCEngine/Resources/Resources.md @@ -0,0 +1,28 @@ +# Resources + +**命名空间**: `XCEngine::Resources` + +**类型**: `module` + +**描述**: 具体资源类型及其加载器。 + +## 概览 + +该目录与 `XCEngine/Resources` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 子目录 + +- [AudioClip](AudioClip/AudioClip.md) +- [Material](Material/Material.md) +- [Mesh](Mesh/Mesh.md) +- [Shader](Shader/Shader.md) +- [Texture](Texture/Texture.md) + +## 头文件 + +- [Resources](Resources/Resources.md) - `Resources.h` + +## 相关文档 + +- [上级目录](../XCEngine.md) +- [API 总索引](../../main.md) diff --git a/docs/api/XCEngine/Resources/Resources/Resources.md b/docs/api/XCEngine/Resources/Resources/Resources.md new file mode 100644 index 00000000..e0d442ac --- /dev/null +++ b/docs/api/XCEngine/Resources/Resources/Resources.md @@ -0,0 +1,18 @@ +# Resources + +**命名空间**: `XCEngine` + +**类型**: `header` + +**头文件**: `XCEngine/Resources/Resources.h` + +**描述**: 定义 `XCEngine/Resources` 子目录中的 `Resources` public API。 + +## 概述 + +`Resources.h` 是 `XCEngine/Resources` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 相关文档 + +- [当前目录](../Resources.md) - 返回 `Resources` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Resources/Shader/Shader.md b/docs/api/XCEngine/Resources/Shader/Shader.md new file mode 100644 index 00000000..d78096a1 --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader.md @@ -0,0 +1,21 @@ +# Shader + +**命名空间**: `XCEngine::Resources::Shader` + +**类型**: `submodule` + +**描述**: 着色器资源与着色器加载器。 + +## 概览 + +该目录与 `XCEngine/Resources/Shader` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 头文件 + +- [Shader](Shader/Shader.md) - `Shader.h` +- [ShaderLoader](ShaderLoader/ShaderLoader.md) - `ShaderLoader.h` + +## 相关文档 + +- [上级目录](../Resources.md) +- [API 总索引](../../../main.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/AddAttribute.md b/docs/api/XCEngine/Resources/Shader/Shader/AddAttribute.md new file mode 100644 index 00000000..ba554d5f --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/AddAttribute.md @@ -0,0 +1,31 @@ +# Shader::AddAttribute + +添加元素或建立关联。 + +```cpp +void AddAttribute(const ShaderAttribute& attribute); +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `attribute` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::AddAttribute(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/AddUniform.md b/docs/api/XCEngine/Resources/Shader/Shader/AddUniform.md new file mode 100644 index 00000000..fed33b61 --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/AddUniform.md @@ -0,0 +1,31 @@ +# Shader::AddUniform + +添加元素或建立关联。 + +```cpp +void AddUniform(const ShaderUniform& uniform); +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `uniform` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::AddUniform(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/Constructor.md b/docs/api/XCEngine/Resources/Shader/Shader/Constructor.md new file mode 100644 index 00000000..8bfb27f0 --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/Constructor.md @@ -0,0 +1,28 @@ +# Shader::Shader() + +构造对象。 + +```cpp +Shader(); +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/Destructor.md b/docs/api/XCEngine/Resources/Shader/Shader/Destructor.md new file mode 100644 index 00000000..8f85ab3e --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/Destructor.md @@ -0,0 +1,29 @@ +# Shader::~Shader() + +销毁对象并释放相关资源。 + +```cpp +virtual ~Shader() override; +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/GetAttributes.md b/docs/api/XCEngine/Resources/Shader/Shader/GetAttributes.md new file mode 100644 index 00000000..1ff28da6 --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/GetAttributes.md @@ -0,0 +1,30 @@ +# Shader::GetAttributes + +获取相关状态或对象。 + +```cpp +const Containers::Array& GetAttributes() const; +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::Array&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::GetAttributes(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/GetCompiledBinary.md b/docs/api/XCEngine/Resources/Shader/Shader/GetCompiledBinary.md new file mode 100644 index 00000000..d6da4cfe --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/GetCompiledBinary.md @@ -0,0 +1,30 @@ +# Shader::GetCompiledBinary + +获取相关状态或对象。 + +```cpp +const Containers::Array& GetCompiledBinary() const; +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::Array&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::GetCompiledBinary(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/GetGUID.md b/docs/api/XCEngine/Resources/Shader/Shader/GetGUID.md new file mode 100644 index 00000000..8cbc98fa --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/GetGUID.md @@ -0,0 +1,30 @@ +# Shader::GetGUID + +获取相关状态或对象。 + +```cpp +ResourceGUID GetGUID() const override; +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceGUID` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::GetGUID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/GetMemorySize.md b/docs/api/XCEngine/Resources/Shader/Shader/GetMemorySize.md new file mode 100644 index 00000000..241c5fb5 --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/GetMemorySize.md @@ -0,0 +1,30 @@ +# Shader::GetMemorySize + +获取相关状态或对象。 + +```cpp +size_t GetMemorySize() const override; +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::GetMemorySize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/GetName.md b/docs/api/XCEngine/Resources/Shader/Shader/GetName.md new file mode 100644 index 00000000..48d402f0 --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/GetName.md @@ -0,0 +1,30 @@ +# Shader::GetName + +获取相关状态或对象。 + +```cpp +const Containers::String& GetName() const override; +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/GetPath.md b/docs/api/XCEngine/Resources/Shader/Shader/GetPath.md new file mode 100644 index 00000000..a8e40b0f --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/GetPath.md @@ -0,0 +1,30 @@ +# Shader::GetPath + +获取相关状态或对象。 + +```cpp +const Containers::String& GetPath() const override; +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::GetPath(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/GetShaderLanguage.md b/docs/api/XCEngine/Resources/Shader/Shader/GetShaderLanguage.md new file mode 100644 index 00000000..d8e7e31e --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/GetShaderLanguage.md @@ -0,0 +1,30 @@ +# Shader::GetShaderLanguage + +获取相关状态或对象。 + +```cpp +ShaderLanguage GetShaderLanguage() const; +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ShaderLanguage` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::GetShaderLanguage(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/GetShaderType.md b/docs/api/XCEngine/Resources/Shader/Shader/GetShaderType.md new file mode 100644 index 00000000..b841a48a --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/GetShaderType.md @@ -0,0 +1,30 @@ +# Shader::GetShaderType + +获取相关状态或对象。 + +```cpp +ShaderType GetShaderType() const; +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ShaderType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::GetShaderType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/GetSourceCode.md b/docs/api/XCEngine/Resources/Shader/Shader/GetSourceCode.md new file mode 100644 index 00000000..ee18e95a --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/GetSourceCode.md @@ -0,0 +1,30 @@ +# Shader::GetSourceCode + +获取相关状态或对象。 + +```cpp +const Containers::String& GetSourceCode() const; +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::GetSourceCode(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/GetType.md b/docs/api/XCEngine/Resources/Shader/Shader/GetType.md new file mode 100644 index 00000000..3ee0d043 --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/GetType.md @@ -0,0 +1,30 @@ +# Shader::GetType + +获取相关状态或对象。 + +```cpp +ResourceType GetType() const override; +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/GetUniforms.md b/docs/api/XCEngine/Resources/Shader/Shader/GetUniforms.md new file mode 100644 index 00000000..0f317679 --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/GetUniforms.md @@ -0,0 +1,30 @@ +# Shader::GetUniforms + +获取相关状态或对象。 + +```cpp +const Containers::Array& GetUniforms() const; +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::Array&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::GetUniforms(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/IsValid.md b/docs/api/XCEngine/Resources/Shader/Shader/IsValid.md new file mode 100644 index 00000000..02a558e3 --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/IsValid.md @@ -0,0 +1,30 @@ +# Shader::IsValid + +查询当前状态。 + +```cpp +bool IsValid() const override; +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/Release.md b/docs/api/XCEngine/Resources/Shader/Shader/Release.md new file mode 100644 index 00000000..50b182f4 --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/Release.md @@ -0,0 +1,30 @@ +# Shader::Release + +释放引用或底层资源。 + +```cpp +void Release() override; +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::Release(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/SetCompiledBinary.md b/docs/api/XCEngine/Resources/Shader/Shader/SetCompiledBinary.md new file mode 100644 index 00000000..a733c284 --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/SetCompiledBinary.md @@ -0,0 +1,31 @@ +# Shader::SetCompiledBinary + +设置相关状态或配置。 + +```cpp +void SetCompiledBinary(const Containers::Array& binary); +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `binary` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::SetCompiledBinary(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/SetRHIResource.md b/docs/api/XCEngine/Resources/Shader/Shader/SetRHIResource.md new file mode 100644 index 00000000..e6a821ab --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/SetRHIResource.md @@ -0,0 +1,31 @@ +# Shader::SetRHIResource + +设置相关状态或配置。 + +```cpp +void SetRHIResource(class IRHIShader* resource); +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `resource` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::SetRHIResource(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/SetShaderLanguage.md b/docs/api/XCEngine/Resources/Shader/Shader/SetShaderLanguage.md new file mode 100644 index 00000000..bdecef6f --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/SetShaderLanguage.md @@ -0,0 +1,31 @@ +# Shader::SetShaderLanguage + +设置相关状态或配置。 + +```cpp +void SetShaderLanguage(ShaderLanguage lang); +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `lang` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::SetShaderLanguage(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/SetShaderType.md b/docs/api/XCEngine/Resources/Shader/Shader/SetShaderType.md new file mode 100644 index 00000000..83d66af7 --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/SetShaderType.md @@ -0,0 +1,31 @@ +# Shader::SetShaderType + +设置相关状态或配置。 + +```cpp +void SetShaderType(ShaderType type); +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::SetShaderType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/SetSourceCode.md b/docs/api/XCEngine/Resources/Shader/Shader/SetSourceCode.md new file mode 100644 index 00000000..1f9657c3 --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/SetSourceCode.md @@ -0,0 +1,31 @@ +# Shader::SetSourceCode + +设置相关状态或配置。 + +```cpp +void SetSourceCode(const Containers::String& source); +``` + +该方法声明于 `XCEngine/Resources/Shader/Shader.h`,当前页面用于固定 `Shader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `source` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Shader object; + // 根据上下文补齐参数后调用 Shader::SetSourceCode(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Shader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/Shader/Shader.md b/docs/api/XCEngine/Resources/Shader/Shader/Shader.md new file mode 100644 index 00000000..09f4dbac --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/Shader/Shader.md @@ -0,0 +1,55 @@ +# Shader + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Resources/Shader/Shader.h` + +**描述**: 定义 `XCEngine/Resources/Shader` 子目录中的 `Shader` public API。 + +## 概述 + +`Shader.h` 是 `XCEngine/Resources/Shader` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `ShaderType` | `enum class` | 头文件中的公开声明。 | +| `ShaderLanguage` | `enum class` | 头文件中的公开声明。 | +| `ShaderUniform` | `struct` | 头文件中的公开声明。 | +| `ShaderAttribute` | `struct` | 头文件中的公开声明。 | +| `Shader` | `class` | 继承自 `IResource` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Shader()](Constructor.md) | 构造对象。 | +| [~Shader()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [GetPath](GetPath.md) | 获取相关状态或对象。 | +| [GetGUID](GetGUID.md) | 获取相关状态或对象。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [GetMemorySize](GetMemorySize.md) | 获取相关状态或对象。 | +| [Release](Release.md) | 释放引用或底层资源。 | +| [SetShaderType](SetShaderType.md) | 设置相关状态或配置。 | +| [GetShaderType](GetShaderType.md) | 获取相关状态或对象。 | +| [SetShaderLanguage](SetShaderLanguage.md) | 设置相关状态或配置。 | +| [GetShaderLanguage](GetShaderLanguage.md) | 获取相关状态或对象。 | +| [SetSourceCode](SetSourceCode.md) | 设置相关状态或配置。 | +| [GetSourceCode](GetSourceCode.md) | 获取相关状态或对象。 | +| [SetCompiledBinary](SetCompiledBinary.md) | 设置相关状态或配置。 | +| [GetCompiledBinary](GetCompiledBinary.md) | 获取相关状态或对象。 | +| [AddUniform](AddUniform.md) | 添加元素或建立关联。 | +| [GetUniforms](GetUniforms.md) | 获取相关状态或对象。 | +| [AddAttribute](AddAttribute.md) | 添加元素或建立关联。 | +| [GetAttributes](GetAttributes.md) | 获取相关状态或对象。 | +| [SetRHIResource](SetRHIResource.md) | 设置相关状态或配置。 | + +## 相关文档 + +- [当前目录](../Shader.md) - 返回 `Shader` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Resources/Shader/ShaderLoader/CanLoad.md b/docs/api/XCEngine/Resources/Shader/ShaderLoader/CanLoad.md new file mode 100644 index 00000000..57667e99 --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/ShaderLoader/CanLoad.md @@ -0,0 +1,31 @@ +# ShaderLoader::CanLoad + +判断当前条件下是否可执行。 + +```cpp +bool CanLoad(const Containers::String& path) const override; +``` + +该方法声明于 `XCEngine/Resources/Shader/ShaderLoader.h`,当前页面用于固定 `ShaderLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ShaderLoader object; + // 根据上下文补齐参数后调用 ShaderLoader::CanLoad(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ShaderLoader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/ShaderLoader/Constructor.md b/docs/api/XCEngine/Resources/Shader/ShaderLoader/Constructor.md new file mode 100644 index 00000000..3ff6a290 --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/ShaderLoader/Constructor.md @@ -0,0 +1,28 @@ +# ShaderLoader::ShaderLoader() + +构造对象。 + +```cpp +ShaderLoader(); +``` + +该方法声明于 `XCEngine/Resources/Shader/ShaderLoader.h`,当前页面用于固定 `ShaderLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ShaderLoader object; +} +``` + +## 相关文档 + +- [返回类总览](ShaderLoader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/ShaderLoader/Destructor.md b/docs/api/XCEngine/Resources/Shader/ShaderLoader/Destructor.md new file mode 100644 index 00000000..f07b8446 --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/ShaderLoader/Destructor.md @@ -0,0 +1,29 @@ +# ShaderLoader::~ShaderLoader() + +销毁对象并释放相关资源。 + +```cpp +virtual ~ShaderLoader() override; +``` + +该方法声明于 `XCEngine/Resources/Shader/ShaderLoader.h`,当前页面用于固定 `ShaderLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ShaderLoader object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](ShaderLoader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/ShaderLoader/GetDefaultSettings.md b/docs/api/XCEngine/Resources/Shader/ShaderLoader/GetDefaultSettings.md new file mode 100644 index 00000000..a89363f1 --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/ShaderLoader/GetDefaultSettings.md @@ -0,0 +1,30 @@ +# ShaderLoader::GetDefaultSettings + +获取相关状态或对象。 + +```cpp +ImportSettings* GetDefaultSettings() const override; +``` + +该方法声明于 `XCEngine/Resources/Shader/ShaderLoader.h`,当前页面用于固定 `ShaderLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ImportSettings*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ShaderLoader object; + // 根据上下文补齐参数后调用 ShaderLoader::GetDefaultSettings(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ShaderLoader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/ShaderLoader/GetResourceType.md b/docs/api/XCEngine/Resources/Shader/ShaderLoader/GetResourceType.md new file mode 100644 index 00000000..7d46e57d --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/ShaderLoader/GetResourceType.md @@ -0,0 +1,30 @@ +# ShaderLoader::GetResourceType + +获取相关状态或对象。 + +```cpp +ResourceType GetResourceType() const override; +``` + +该方法声明于 `XCEngine/Resources/Shader/ShaderLoader.h`,当前页面用于固定 `ShaderLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ShaderLoader object; + // 根据上下文补齐参数后调用 ShaderLoader::GetResourceType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ShaderLoader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/ShaderLoader/GetSupportedExtensions.md b/docs/api/XCEngine/Resources/Shader/ShaderLoader/GetSupportedExtensions.md new file mode 100644 index 00000000..cfa9694b --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/ShaderLoader/GetSupportedExtensions.md @@ -0,0 +1,30 @@ +# ShaderLoader::GetSupportedExtensions + +获取相关状态或对象。 + +```cpp +Containers::Array GetSupportedExtensions() const override; +``` + +该方法声明于 `XCEngine/Resources/Shader/ShaderLoader.h`,当前页面用于固定 `ShaderLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::Array` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ShaderLoader object; + // 根据上下文补齐参数后调用 ShaderLoader::GetSupportedExtensions(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ShaderLoader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/ShaderLoader/Load.md b/docs/api/XCEngine/Resources/Shader/ShaderLoader/Load.md new file mode 100644 index 00000000..cb35af68 --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/ShaderLoader/Load.md @@ -0,0 +1,32 @@ +# ShaderLoader::Load + +加载资源或数据。 + +```cpp +LoadResult Load(const Containers::String& path, const ImportSettings* settings = nullptr) override; +``` + +该方法声明于 `XCEngine/Resources/Shader/ShaderLoader.h`,当前页面用于固定 `ShaderLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 +- `settings` - 参数语义详见头文件声明。 + +**返回:** `LoadResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::ShaderLoader object; + // 根据上下文补齐参数后调用 ShaderLoader::Load(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ShaderLoader.md) +- [返回模块目录](../Shader.md) diff --git a/docs/api/XCEngine/Resources/Shader/ShaderLoader/ShaderLoader.md b/docs/api/XCEngine/Resources/Shader/ShaderLoader/ShaderLoader.md new file mode 100644 index 00000000..f0c19981 --- /dev/null +++ b/docs/api/XCEngine/Resources/Shader/ShaderLoader/ShaderLoader.md @@ -0,0 +1,36 @@ +# ShaderLoader + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Resources/Shader/ShaderLoader.h` + +**描述**: 定义 `XCEngine/Resources/Shader` 子目录中的 `ShaderLoader` public API。 + +## 概述 + +`ShaderLoader.h` 是 `XCEngine/Resources/Shader` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `ShaderLoader` | `class` | 继承自 `IResourceLoader` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [ShaderLoader()](Constructor.md) | 构造对象。 | +| [~ShaderLoader()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetResourceType](GetResourceType.md) | 获取相关状态或对象。 | +| [GetSupportedExtensions](GetSupportedExtensions.md) | 获取相关状态或对象。 | +| [CanLoad](CanLoad.md) | 判断当前条件下是否可执行。 | +| [Load](Load.md) | 加载资源或数据。 | +| [GetDefaultSettings](GetDefaultSettings.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Shader.md) - 返回 `Shader` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Resources/Texture/Texture.md b/docs/api/XCEngine/Resources/Texture/Texture.md new file mode 100644 index 00000000..ce3a8a2a --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture.md @@ -0,0 +1,22 @@ +# Texture + +**命名空间**: `XCEngine::Resources::Texture` + +**类型**: `submodule` + +**描述**: 纹理资源、导入设置与纹理加载器。 + +## 概览 + +该目录与 `XCEngine/Resources/Texture` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 头文件 + +- [Texture](Texture/Texture.md) - `Texture.h` +- [TextureImportSettings](TextureImportSettings/TextureImportSettings.md) - `TextureImportSettings.h` +- [TextureLoader](TextureLoader/TextureLoader.md) - `TextureLoader.h` + +## 相关文档 + +- [上级目录](../Resources.md) +- [API 总索引](../../../main.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/Constructor.md b/docs/api/XCEngine/Resources/Texture/Texture/Constructor.md new file mode 100644 index 00000000..852b3656 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/Constructor.md @@ -0,0 +1,28 @@ +# Texture::Texture() + +构造对象。 + +```cpp +Texture(); +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/Create.md b/docs/api/XCEngine/Resources/Texture/Texture/Create.md new file mode 100644 index 00000000..04bcba99 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/Create.md @@ -0,0 +1,38 @@ +# Texture::Create + +创建新对象或资源。 + +```cpp +bool Create(Core::uint32 width, Core::uint32 height, Core::uint32 depth, Core::uint32 mipLevels, TextureType type, TextureFormat format, const void* data, size_t dataSize); +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** +- `width` - 参数语义详见头文件声明。 +- `height` - 参数语义详见头文件声明。 +- `depth` - 参数语义详见头文件声明。 +- `mipLevels` - 参数语义详见头文件声明。 +- `type` - 参数语义详见头文件声明。 +- `format` - 参数语义详见头文件声明。 +- `data` - 参数语义详见头文件声明。 +- `dataSize` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 根据上下文补齐参数后调用 Texture::Create(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/Destructor.md b/docs/api/XCEngine/Resources/Texture/Texture/Destructor.md new file mode 100644 index 00000000..a1bbb017 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/Destructor.md @@ -0,0 +1,29 @@ +# Texture::~Texture() + +销毁对象并释放相关资源。 + +```cpp +virtual ~Texture() override; +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/GenerateMipmaps.md b/docs/api/XCEngine/Resources/Texture/Texture/GenerateMipmaps.md new file mode 100644 index 00000000..f0506948 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/GenerateMipmaps.md @@ -0,0 +1,30 @@ +# Texture::GenerateMipmaps + +公开方法,详见头文件声明。 + +```cpp +bool GenerateMipmaps(); +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 根据上下文补齐参数后调用 Texture::GenerateMipmaps(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/GetArraySize.md b/docs/api/XCEngine/Resources/Texture/Texture/GetArraySize.md new file mode 100644 index 00000000..d3fc8c48 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/GetArraySize.md @@ -0,0 +1,30 @@ +# Texture::GetArraySize + +获取相关状态或对象。 + +```cpp +Core::uint32 GetArraySize() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 根据上下文补齐参数后调用 Texture::GetArraySize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/GetDepth.md b/docs/api/XCEngine/Resources/Texture/Texture/GetDepth.md new file mode 100644 index 00000000..ff589bc4 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/GetDepth.md @@ -0,0 +1,30 @@ +# Texture::GetDepth + +获取相关状态或对象。 + +```cpp +Core::uint32 GetDepth() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 根据上下文补齐参数后调用 Texture::GetDepth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/GetFormat.md b/docs/api/XCEngine/Resources/Texture/Texture/GetFormat.md new file mode 100644 index 00000000..ff662647 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/GetFormat.md @@ -0,0 +1,30 @@ +# Texture::GetFormat + +获取相关状态或对象。 + +```cpp +TextureFormat GetFormat() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `TextureFormat` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 根据上下文补齐参数后调用 Texture::GetFormat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/GetGUID.md b/docs/api/XCEngine/Resources/Texture/Texture/GetGUID.md new file mode 100644 index 00000000..25c3f259 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/GetGUID.md @@ -0,0 +1,30 @@ +# Texture::GetGUID + +获取相关状态或对象。 + +```cpp +ResourceGUID GetGUID() const override; +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceGUID` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 根据上下文补齐参数后调用 Texture::GetGUID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/GetHeight.md b/docs/api/XCEngine/Resources/Texture/Texture/GetHeight.md new file mode 100644 index 00000000..c97a17aa --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/GetHeight.md @@ -0,0 +1,30 @@ +# Texture::GetHeight + +获取相关状态或对象。 + +```cpp +Core::uint32 GetHeight() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 根据上下文补齐参数后调用 Texture::GetHeight(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/GetMemorySize.md b/docs/api/XCEngine/Resources/Texture/Texture/GetMemorySize.md new file mode 100644 index 00000000..8bd5fcfe --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/GetMemorySize.md @@ -0,0 +1,30 @@ +# Texture::GetMemorySize + +获取相关状态或对象。 + +```cpp +size_t GetMemorySize() const override; +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 根据上下文补齐参数后调用 Texture::GetMemorySize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/GetMipLevels.md b/docs/api/XCEngine/Resources/Texture/Texture/GetMipLevels.md new file mode 100644 index 00000000..519f0a3f --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/GetMipLevels.md @@ -0,0 +1,30 @@ +# Texture::GetMipLevels + +获取相关状态或对象。 + +```cpp +Core::uint32 GetMipLevels() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 根据上下文补齐参数后调用 Texture::GetMipLevels(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/GetName.md b/docs/api/XCEngine/Resources/Texture/Texture/GetName.md new file mode 100644 index 00000000..4efb1154 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/GetName.md @@ -0,0 +1,30 @@ +# Texture::GetName + +获取相关状态或对象。 + +```cpp +const Containers::String& GetName() const override; +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 根据上下文补齐参数后调用 Texture::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/GetPath.md b/docs/api/XCEngine/Resources/Texture/Texture/GetPath.md new file mode 100644 index 00000000..e495cdf9 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/GetPath.md @@ -0,0 +1,30 @@ +# Texture::GetPath + +获取相关状态或对象。 + +```cpp +const Containers::String& GetPath() const override; +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 根据上下文补齐参数后调用 Texture::GetPath(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/GetPixelData.md b/docs/api/XCEngine/Resources/Texture/Texture/GetPixelData.md new file mode 100644 index 00000000..7f793fe1 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/GetPixelData.md @@ -0,0 +1,30 @@ +# Texture::GetPixelData + +获取相关状态或对象。 + +```cpp +const void* GetPixelData() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const void*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 根据上下文补齐参数后调用 Texture::GetPixelData(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/GetPixelDataSize.md b/docs/api/XCEngine/Resources/Texture/Texture/GetPixelDataSize.md new file mode 100644 index 00000000..a762630a --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/GetPixelDataSize.md @@ -0,0 +1,30 @@ +# Texture::GetPixelDataSize + +获取相关状态或对象。 + +```cpp +size_t GetPixelDataSize() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `size_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 根据上下文补齐参数后调用 Texture::GetPixelDataSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/GetTextureType.md b/docs/api/XCEngine/Resources/Texture/Texture/GetTextureType.md new file mode 100644 index 00000000..a109ef85 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/GetTextureType.md @@ -0,0 +1,30 @@ +# Texture::GetTextureType + +获取相关状态或对象。 + +```cpp +TextureType GetTextureType() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `TextureType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 根据上下文补齐参数后调用 Texture::GetTextureType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/GetType.md b/docs/api/XCEngine/Resources/Texture/Texture/GetType.md new file mode 100644 index 00000000..abe219db --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/GetType.md @@ -0,0 +1,30 @@ +# Texture::GetType + +获取相关状态或对象。 + +```cpp +ResourceType GetType() const override; +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 根据上下文补齐参数后调用 Texture::GetType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/GetUsage.md b/docs/api/XCEngine/Resources/Texture/Texture/GetUsage.md new file mode 100644 index 00000000..ae809c4b --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/GetUsage.md @@ -0,0 +1,30 @@ +# Texture::GetUsage + +获取相关状态或对象。 + +```cpp +TextureUsage GetUsage() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `TextureUsage` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 根据上下文补齐参数后调用 Texture::GetUsage(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/GetWidth.md b/docs/api/XCEngine/Resources/Texture/Texture/GetWidth.md new file mode 100644 index 00000000..042c922a --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/GetWidth.md @@ -0,0 +1,30 @@ +# Texture::GetWidth + +获取相关状态或对象。 + +```cpp +Core::uint32 GetWidth() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 根据上下文补齐参数后调用 Texture::GetWidth(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/IsValid.md b/docs/api/XCEngine/Resources/Texture/Texture/IsValid.md new file mode 100644 index 00000000..548e7f98 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/IsValid.md @@ -0,0 +1,30 @@ +# Texture::IsValid + +查询当前状态。 + +```cpp +bool IsValid() const override; +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 根据上下文补齐参数后调用 Texture::IsValid(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/Release.md b/docs/api/XCEngine/Resources/Texture/Texture/Release.md new file mode 100644 index 00000000..e4ca9754 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/Release.md @@ -0,0 +1,30 @@ +# Texture::Release + +释放引用或底层资源。 + +```cpp +void Release() override; +``` + +该方法声明于 `XCEngine/Resources/Texture/Texture.h`,当前页面用于固定 `Texture` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::Texture object; + // 根据上下文补齐参数后调用 Texture::Release(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Texture.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/Texture/Texture.md b/docs/api/XCEngine/Resources/Texture/Texture/Texture.md new file mode 100644 index 00000000..24981e2b --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/Texture/Texture.md @@ -0,0 +1,53 @@ +# Texture + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Resources/Texture/Texture.h` + +**描述**: 定义 `XCEngine/Resources/Texture` 子目录中的 `Texture` public API。 + +## 概述 + +`Texture.h` 是 `XCEngine/Resources/Texture` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `TextureType` | `enum class` | 头文件中的公开声明。 | +| `TextureFormat` | `enum class` | 头文件中的公开声明。 | +| `TextureUsage` | `enum class` | 头文件中的公开声明。 | +| `Texture` | `class` | 继承自 `IResource` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Texture()](Constructor.md) | 构造对象。 | +| [~Texture()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetType](GetType.md) | 获取相关状态或对象。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [GetPath](GetPath.md) | 获取相关状态或对象。 | +| [GetGUID](GetGUID.md) | 获取相关状态或对象。 | +| [IsValid](IsValid.md) | 查询当前状态。 | +| [GetMemorySize](GetMemorySize.md) | 获取相关状态或对象。 | +| [Release](Release.md) | 释放引用或底层资源。 | +| [GetWidth](GetWidth.md) | 获取相关状态或对象。 | +| [GetHeight](GetHeight.md) | 获取相关状态或对象。 | +| [GetDepth](GetDepth.md) | 获取相关状态或对象。 | +| [GetMipLevels](GetMipLevels.md) | 获取相关状态或对象。 | +| [GetArraySize](GetArraySize.md) | 获取相关状态或对象。 | +| [GetTextureType](GetTextureType.md) | 获取相关状态或对象。 | +| [GetFormat](GetFormat.md) | 获取相关状态或对象。 | +| [GetUsage](GetUsage.md) | 获取相关状态或对象。 | +| [GetPixelData](GetPixelData.md) | 获取相关状态或对象。 | +| [GetPixelDataSize](GetPixelDataSize.md) | 获取相关状态或对象。 | +| [Create](Create.md) | 创建新对象或资源。 | +| [GenerateMipmaps](GenerateMipmaps.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Texture.md) - 返回 `Texture` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/Clone.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/Clone.md new file mode 100644 index 00000000..2a78d2e2 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/Clone.md @@ -0,0 +1,30 @@ +# TextureImportSettings::Clone + +公开方法,详见头文件声明。 + +```cpp +Core::UniqueRef Clone() const override; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::UniqueRef` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::Clone(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/Constructor.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/Constructor.md new file mode 100644 index 00000000..c5000123 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/Constructor.md @@ -0,0 +1,28 @@ +# TextureImportSettings::TextureImportSettings() + +构造对象。 + +```cpp +TextureImportSettings(); +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/Destructor.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/Destructor.md new file mode 100644 index 00000000..0baea21c --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/Destructor.md @@ -0,0 +1,29 @@ +# TextureImportSettings::~TextureImportSettings() + +销毁对象并释放相关资源。 + +```cpp +virtual ~TextureImportSettings() override; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetBorderColor.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetBorderColor.md new file mode 100644 index 00000000..52743fb2 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetBorderColor.md @@ -0,0 +1,30 @@ +# TextureImportSettings::GetBorderColor + +获取相关状态或对象。 + +```cpp +const Math::Vector3& GetBorderColor() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Math::Vector3&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::GetBorderColor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetCompressionQuality.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetCompressionQuality.md new file mode 100644 index 00000000..78ab089e --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetCompressionQuality.md @@ -0,0 +1,30 @@ +# TextureImportSettings::GetCompressionQuality + +获取相关状态或对象。 + +```cpp +CompressionQuality GetCompressionQuality() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `CompressionQuality` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::GetCompressionQuality(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetFlipHorizontal.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetFlipHorizontal.md new file mode 100644 index 00000000..aedfef83 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetFlipHorizontal.md @@ -0,0 +1,30 @@ +# TextureImportSettings::GetFlipHorizontal + +获取相关状态或对象。 + +```cpp +bool GetFlipHorizontal() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::GetFlipHorizontal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetFlipVertical.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetFlipVertical.md new file mode 100644 index 00000000..22b4ee77 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetFlipVertical.md @@ -0,0 +1,30 @@ +# TextureImportSettings::GetFlipVertical + +获取相关状态或对象。 + +```cpp +bool GetFlipVertical() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::GetFlipVertical(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetGenerateMipmaps.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetGenerateMipmaps.md new file mode 100644 index 00000000..fa55e911 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetGenerateMipmaps.md @@ -0,0 +1,30 @@ +# TextureImportSettings::GetGenerateMipmaps + +获取相关状态或对象。 + +```cpp +bool GetGenerateMipmaps() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::GetGenerateMipmaps(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetGenerateNormalMap.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetGenerateNormalMap.md new file mode 100644 index 00000000..c85a4d87 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetGenerateNormalMap.md @@ -0,0 +1,30 @@ +# TextureImportSettings::GetGenerateNormalMap + +获取相关状态或对象。 + +```cpp +bool GetGenerateNormalMap() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::GetGenerateNormalMap(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetMaxAnisotropy.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetMaxAnisotropy.md new file mode 100644 index 00000000..88a72f06 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetMaxAnisotropy.md @@ -0,0 +1,30 @@ +# TextureImportSettings::GetMaxAnisotropy + +获取相关状态或对象。 + +```cpp +Core::uint32 GetMaxAnisotropy() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::GetMaxAnisotropy(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetMaxSize.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetMaxSize.md new file mode 100644 index 00000000..92c97a26 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetMaxSize.md @@ -0,0 +1,30 @@ +# TextureImportSettings::GetMaxSize + +获取相关状态或对象。 + +```cpp +Core::uint32 GetMaxSize() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::uint32` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::GetMaxSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetMipmapFilter.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetMipmapFilter.md new file mode 100644 index 00000000..def5199d --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetMipmapFilter.md @@ -0,0 +1,30 @@ +# TextureImportSettings::GetMipmapFilter + +获取相关状态或对象。 + +```cpp +MipmapFilter GetMipmapFilter() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `MipmapFilter` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::GetMipmapFilter(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetNormalMapStrength.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetNormalMapStrength.md new file mode 100644 index 00000000..1c36472e --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetNormalMapStrength.md @@ -0,0 +1,30 @@ +# TextureImportSettings::GetNormalMapStrength + +获取相关状态或对象。 + +```cpp +float GetNormalMapStrength() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::GetNormalMapStrength(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetSRGB.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetSRGB.md new file mode 100644 index 00000000..42bc8fc7 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetSRGB.md @@ -0,0 +1,30 @@ +# TextureImportSettings::GetSRGB + +获取相关状态或对象。 + +```cpp +bool GetSRGB() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::GetSRGB(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetTargetFormat.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetTargetFormat.md new file mode 100644 index 00000000..c19310f8 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetTargetFormat.md @@ -0,0 +1,30 @@ +# TextureImportSettings::GetTargetFormat + +获取相关状态或对象。 + +```cpp +TextureFormat GetTargetFormat() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `TextureFormat` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::GetTargetFormat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetTextureType.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetTextureType.md new file mode 100644 index 00000000..a63dd7b9 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetTextureType.md @@ -0,0 +1,30 @@ +# TextureImportSettings::GetTextureType + +获取相关状态或对象。 + +```cpp +TextureType GetTextureType() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `TextureType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::GetTextureType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetUseHardwareCompression.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetUseHardwareCompression.md new file mode 100644 index 00000000..74eba5ec --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/GetUseHardwareCompression.md @@ -0,0 +1,30 @@ +# TextureImportSettings::GetUseHardwareCompression + +获取相关状态或对象。 + +```cpp +bool GetUseHardwareCompression() const; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::GetUseHardwareCompression(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/LoadFromJSON.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/LoadFromJSON.md new file mode 100644 index 00000000..e97d519e --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/LoadFromJSON.md @@ -0,0 +1,31 @@ +# TextureImportSettings::LoadFromJSON + +加载资源或数据。 + +```cpp +bool LoadFromJSON(const Containers::String& json) override; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `json` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::LoadFromJSON(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SaveToJSON.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SaveToJSON.md new file mode 100644 index 00000000..f2c641f6 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SaveToJSON.md @@ -0,0 +1,30 @@ +# TextureImportSettings::SaveToJSON + +公开方法,详见头文件声明。 + +```cpp +Containers::String SaveToJSON() const override; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::String` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::SaveToJSON(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetBorderColor.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetBorderColor.md new file mode 100644 index 00000000..2112c32b --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetBorderColor.md @@ -0,0 +1,31 @@ +# TextureImportSettings::SetBorderColor + +设置相关状态或配置。 + +```cpp +void SetBorderColor(const Math::Vector3& color); +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `color` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::SetBorderColor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetCompressionQuality.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetCompressionQuality.md new file mode 100644 index 00000000..d165b6b5 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetCompressionQuality.md @@ -0,0 +1,31 @@ +# TextureImportSettings::SetCompressionQuality + +设置相关状态或配置。 + +```cpp +void SetCompressionQuality(CompressionQuality quality); +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `quality` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::SetCompressionQuality(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetFlipHorizontal.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetFlipHorizontal.md new file mode 100644 index 00000000..42f7f87a --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetFlipHorizontal.md @@ -0,0 +1,31 @@ +# TextureImportSettings::SetFlipHorizontal + +设置相关状态或配置。 + +```cpp +void SetFlipHorizontal(bool flip); +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `flip` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::SetFlipHorizontal(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetFlipVertical.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetFlipVertical.md new file mode 100644 index 00000000..e433a56e --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetFlipVertical.md @@ -0,0 +1,31 @@ +# TextureImportSettings::SetFlipVertical + +设置相关状态或配置。 + +```cpp +void SetFlipVertical(bool flip); +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `flip` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::SetFlipVertical(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetGenerateMipmaps.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetGenerateMipmaps.md new file mode 100644 index 00000000..a0a4edb5 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetGenerateMipmaps.md @@ -0,0 +1,31 @@ +# TextureImportSettings::SetGenerateMipmaps + +设置相关状态或配置。 + +```cpp +void SetGenerateMipmaps(bool generate); +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `generate` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::SetGenerateMipmaps(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetGenerateNormalMap.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetGenerateNormalMap.md new file mode 100644 index 00000000..7b09581c --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetGenerateNormalMap.md @@ -0,0 +1,31 @@ +# TextureImportSettings::SetGenerateNormalMap + +设置相关状态或配置。 + +```cpp +void SetGenerateNormalMap(bool generate); +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `generate` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::SetGenerateNormalMap(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetMaxAnisotropy.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetMaxAnisotropy.md new file mode 100644 index 00000000..2dea3f79 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetMaxAnisotropy.md @@ -0,0 +1,31 @@ +# TextureImportSettings::SetMaxAnisotropy + +设置相关状态或配置。 + +```cpp +void SetMaxAnisotropy(Core::uint32 anisotropy); +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `anisotropy` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::SetMaxAnisotropy(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetMaxSize.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetMaxSize.md new file mode 100644 index 00000000..24be80d0 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetMaxSize.md @@ -0,0 +1,31 @@ +# TextureImportSettings::SetMaxSize + +设置相关状态或配置。 + +```cpp +void SetMaxSize(Core::uint32 size); +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `size` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::SetMaxSize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetMipmapFilter.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetMipmapFilter.md new file mode 100644 index 00000000..d5bbe59d --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetMipmapFilter.md @@ -0,0 +1,31 @@ +# TextureImportSettings::SetMipmapFilter + +设置相关状态或配置。 + +```cpp +void SetMipmapFilter(MipmapFilter filter); +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `filter` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::SetMipmapFilter(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetNormalMapStrength.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetNormalMapStrength.md new file mode 100644 index 00000000..9b91475d --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetNormalMapStrength.md @@ -0,0 +1,31 @@ +# TextureImportSettings::SetNormalMapStrength + +设置相关状态或配置。 + +```cpp +void SetNormalMapStrength(float strength); +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `strength` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::SetNormalMapStrength(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetSRGB.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetSRGB.md new file mode 100644 index 00000000..e617aa7c --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetSRGB.md @@ -0,0 +1,31 @@ +# TextureImportSettings::SetSRGB + +设置相关状态或配置。 + +```cpp +void SetSRGB(bool srgb); +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `srgb` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::SetSRGB(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetTargetFormat.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetTargetFormat.md new file mode 100644 index 00000000..645e7413 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetTargetFormat.md @@ -0,0 +1,31 @@ +# TextureImportSettings::SetTargetFormat + +设置相关状态或配置。 + +```cpp +void SetTargetFormat(TextureFormat format); +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `format` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::SetTargetFormat(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetTextureType.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetTextureType.md new file mode 100644 index 00000000..1330ff0e --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetTextureType.md @@ -0,0 +1,31 @@ +# TextureImportSettings::SetTextureType + +设置相关状态或配置。 + +```cpp +void SetTextureType(TextureType type); +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `type` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::SetTextureType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetUseHardwareCompression.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetUseHardwareCompression.md new file mode 100644 index 00000000..0d781de6 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/SetUseHardwareCompression.md @@ -0,0 +1,31 @@ +# TextureImportSettings::SetUseHardwareCompression + +设置相关状态或配置。 + +```cpp +void SetUseHardwareCompression(bool use); +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureImportSettings.h`,当前页面用于固定 `TextureImportSettings` 类目录下的方法级 canonical 路径。 + +**参数:** +- `use` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureImportSettings object; + // 根据上下文补齐参数后调用 TextureImportSettings::SetUseHardwareCompression(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureImportSettings.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureImportSettings/TextureImportSettings.md b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/TextureImportSettings.md new file mode 100644 index 00000000..540cef57 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureImportSettings/TextureImportSettings.md @@ -0,0 +1,64 @@ +# TextureImportSettings + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Resources/Texture/TextureImportSettings.h` + +**描述**: 定义 `XCEngine/Resources/Texture` 子目录中的 `TextureImportSettings` public API。 + +## 概述 + +`TextureImportSettings.h` 是 `XCEngine/Resources/Texture` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `MipmapFilter` | `enum class` | 头文件中的公开声明。 | +| `CompressionQuality` | `enum class` | 头文件中的公开声明。 | +| `TextureImportSettings` | `class` | 继承自 `ImportSettings` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [TextureImportSettings()](Constructor.md) | 构造对象。 | +| [~TextureImportSettings()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Clone](Clone.md) | 公开方法,详见头文件声明。 | +| [LoadFromJSON](LoadFromJSON.md) | 加载资源或数据。 | +| [SaveToJSON](SaveToJSON.md) | 公开方法,详见头文件声明。 | +| [SetTextureType](SetTextureType.md) | 设置相关状态或配置。 | +| [GetTextureType](GetTextureType.md) | 获取相关状态或对象。 | +| [SetTargetFormat](SetTargetFormat.md) | 设置相关状态或配置。 | +| [GetTargetFormat](GetTargetFormat.md) | 获取相关状态或对象。 | +| [SetGenerateMipmaps](SetGenerateMipmaps.md) | 设置相关状态或配置。 | +| [GetGenerateMipmaps](GetGenerateMipmaps.md) | 获取相关状态或对象。 | +| [SetMipmapFilter](SetMipmapFilter.md) | 设置相关状态或配置。 | +| [GetMipmapFilter](GetMipmapFilter.md) | 获取相关状态或对象。 | +| [SetMaxAnisotropy](SetMaxAnisotropy.md) | 设置相关状态或配置。 | +| [GetMaxAnisotropy](GetMaxAnisotropy.md) | 获取相关状态或对象。 | +| [SetSRGB](SetSRGB.md) | 设置相关状态或配置。 | +| [GetSRGB](GetSRGB.md) | 获取相关状态或对象。 | +| [SetFlipVertical](SetFlipVertical.md) | 设置相关状态或配置。 | +| [GetFlipVertical](GetFlipVertical.md) | 获取相关状态或对象。 | +| [SetFlipHorizontal](SetFlipHorizontal.md) | 设置相关状态或配置。 | +| [GetFlipHorizontal](GetFlipHorizontal.md) | 获取相关状态或对象。 | +| [SetBorderColor](SetBorderColor.md) | 设置相关状态或配置。 | +| [GetBorderColor](GetBorderColor.md) | 获取相关状态或对象。 | +| [SetCompressionQuality](SetCompressionQuality.md) | 设置相关状态或配置。 | +| [GetCompressionQuality](GetCompressionQuality.md) | 获取相关状态或对象。 | +| [SetUseHardwareCompression](SetUseHardwareCompression.md) | 设置相关状态或配置。 | +| [GetUseHardwareCompression](GetUseHardwareCompression.md) | 获取相关状态或对象。 | +| [SetMaxSize](SetMaxSize.md) | 设置相关状态或配置。 | +| [GetMaxSize](GetMaxSize.md) | 获取相关状态或对象。 | +| [SetGenerateNormalMap](SetGenerateNormalMap.md) | 设置相关状态或配置。 | +| [GetGenerateNormalMap](GetGenerateNormalMap.md) | 获取相关状态或对象。 | +| [SetNormalMapStrength](SetNormalMapStrength.md) | 设置相关状态或配置。 | +| [GetNormalMapStrength](GetNormalMapStrength.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Texture.md) - 返回 `Texture` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Resources/Texture/TextureLoader/CanLoad.md b/docs/api/XCEngine/Resources/Texture/TextureLoader/CanLoad.md new file mode 100644 index 00000000..a897db00 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureLoader/CanLoad.md @@ -0,0 +1,31 @@ +# TextureLoader::CanLoad + +判断当前条件下是否可执行。 + +```cpp +bool CanLoad(const Containers::String& path) const override; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureLoader.h`,当前页面用于固定 `TextureLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureLoader object; + // 根据上下文补齐参数后调用 TextureLoader::CanLoad(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureLoader.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureLoader/Constructor.md b/docs/api/XCEngine/Resources/Texture/TextureLoader/Constructor.md new file mode 100644 index 00000000..235bb24b --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureLoader/Constructor.md @@ -0,0 +1,28 @@ +# TextureLoader::TextureLoader() + +构造对象。 + +```cpp +TextureLoader(); +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureLoader.h`,当前页面用于固定 `TextureLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureLoader object; +} +``` + +## 相关文档 + +- [返回类总览](TextureLoader.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureLoader/Destructor.md b/docs/api/XCEngine/Resources/Texture/TextureLoader/Destructor.md new file mode 100644 index 00000000..977f2c65 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureLoader/Destructor.md @@ -0,0 +1,29 @@ +# TextureLoader::~TextureLoader() + +销毁对象并释放相关资源。 + +```cpp +virtual ~TextureLoader() override; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureLoader.h`,当前页面用于固定 `TextureLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureLoader object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](TextureLoader.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureLoader/GetDefaultSettings.md b/docs/api/XCEngine/Resources/Texture/TextureLoader/GetDefaultSettings.md new file mode 100644 index 00000000..8650233e --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureLoader/GetDefaultSettings.md @@ -0,0 +1,30 @@ +# TextureLoader::GetDefaultSettings + +获取相关状态或对象。 + +```cpp +ImportSettings* GetDefaultSettings() const override; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureLoader.h`,当前页面用于固定 `TextureLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ImportSettings*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureLoader object; + // 根据上下文补齐参数后调用 TextureLoader::GetDefaultSettings(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureLoader.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureLoader/GetResourceType.md b/docs/api/XCEngine/Resources/Texture/TextureLoader/GetResourceType.md new file mode 100644 index 00000000..bd3dc7ed --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureLoader/GetResourceType.md @@ -0,0 +1,30 @@ +# TextureLoader::GetResourceType + +获取相关状态或对象。 + +```cpp +ResourceType GetResourceType() const override; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureLoader.h`,当前页面用于固定 `TextureLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `ResourceType` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureLoader object; + // 根据上下文补齐参数后调用 TextureLoader::GetResourceType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureLoader.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureLoader/GetSupportedExtensions.md b/docs/api/XCEngine/Resources/Texture/TextureLoader/GetSupportedExtensions.md new file mode 100644 index 00000000..3b65715d --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureLoader/GetSupportedExtensions.md @@ -0,0 +1,30 @@ +# TextureLoader::GetSupportedExtensions + +获取相关状态或对象。 + +```cpp +Containers::Array GetSupportedExtensions() const override; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureLoader.h`,当前页面用于固定 `TextureLoader` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Containers::Array` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureLoader object; + // 根据上下文补齐参数后调用 TextureLoader::GetSupportedExtensions(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureLoader.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureLoader/Load.md b/docs/api/XCEngine/Resources/Texture/TextureLoader/Load.md new file mode 100644 index 00000000..50b4de09 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureLoader/Load.md @@ -0,0 +1,32 @@ +# TextureLoader::Load + +加载资源或数据。 + +```cpp +LoadResult Load(const Containers::String& path, const ImportSettings* settings = nullptr) override; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureLoader.h`,当前页面用于固定 `TextureLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 +- `settings` - 参数语义详见头文件声明。 + +**返回:** `LoadResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureLoader object; + // 根据上下文补齐参数后调用 TextureLoader::Load(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureLoader.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureLoader/LoadFromMemory.md b/docs/api/XCEngine/Resources/Texture/TextureLoader/LoadFromMemory.md new file mode 100644 index 00000000..a2bab5f7 --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureLoader/LoadFromMemory.md @@ -0,0 +1,33 @@ +# TextureLoader::LoadFromMemory + +加载资源或数据。 + +```cpp +LoadResult LoadFromMemory(const Containers::String& path, const void* data, size_t dataSize) const; +``` + +该方法声明于 `XCEngine/Resources/Texture/TextureLoader.h`,当前页面用于固定 `TextureLoader` 类目录下的方法级 canonical 路径。 + +**参数:** +- `path` - 参数语义详见头文件声明。 +- `data` - 参数语义详见头文件声明。 +- `dataSize` - 参数语义详见头文件声明。 + +**返回:** `LoadResult` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Resources::TextureLoader object; + // 根据上下文补齐参数后调用 TextureLoader::LoadFromMemory(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TextureLoader.md) +- [返回模块目录](../Texture.md) diff --git a/docs/api/XCEngine/Resources/Texture/TextureLoader/TextureLoader.md b/docs/api/XCEngine/Resources/Texture/TextureLoader/TextureLoader.md new file mode 100644 index 00000000..207ba63f --- /dev/null +++ b/docs/api/XCEngine/Resources/Texture/TextureLoader/TextureLoader.md @@ -0,0 +1,37 @@ +# TextureLoader + +**命名空间**: `XCEngine::Resources` + +**类型**: `class` + +**头文件**: `XCEngine/Resources/Texture/TextureLoader.h` + +**描述**: 定义 `XCEngine/Resources/Texture` 子目录中的 `TextureLoader` public API。 + +## 概述 + +`TextureLoader.h` 是 `XCEngine/Resources/Texture` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `TextureLoader` | `class` | 继承自 `IResourceLoader` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [TextureLoader()](Constructor.md) | 构造对象。 | +| [~TextureLoader()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetResourceType](GetResourceType.md) | 获取相关状态或对象。 | +| [GetSupportedExtensions](GetSupportedExtensions.md) | 获取相关状态或对象。 | +| [CanLoad](CanLoad.md) | 判断当前条件下是否可执行。 | +| [Load](Load.md) | 加载资源或数据。 | +| [LoadFromMemory](LoadFromMemory.md) | 加载资源或数据。 | +| [GetDefaultSettings](GetDefaultSettings.md) | 获取相关状态或对象。 | + +## 相关文档 + +- [当前目录](../Texture.md) - 返回 `Texture` 平行目录 +- [API 总索引](../../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Scene/Scene.md b/docs/api/XCEngine/Scene/Scene.md new file mode 100644 index 00000000..b8eea227 --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene.md @@ -0,0 +1,21 @@ +# Scene + +**命名空间**: `XCEngine::Scene` + +**类型**: `module` + +**描述**: 场景与场景管理器 API。 + +## 概览 + +该目录与 `XCEngine/Scene` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 头文件 + +- [Scene](Scene/Scene.md) - `Scene.h` +- [SceneManager](SceneManager/SceneManager.md) - `SceneManager.h` + +## 相关文档 + +- [上级目录](../XCEngine.md) +- [API 总索引](../../main.md) diff --git a/docs/api/XCEngine/Scene/Scene/Constructor.md b/docs/api/XCEngine/Scene/Scene/Constructor.md new file mode 100644 index 00000000..0914fe9a --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/Constructor.md @@ -0,0 +1,41 @@ +# Scene::Scene() + +构造对象。 + +该方法在 `XCEngine/Scene/Scene.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +Scene(); +``` + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +explicit Scene(const std::string& name); +``` + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/CreateGameObject.md b/docs/api/XCEngine/Scene/Scene/CreateGameObject.md new file mode 100644 index 00000000..2269802c --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/CreateGameObject.md @@ -0,0 +1,32 @@ +# Scene::CreateGameObject + +创建新对象或资源。 + +```cpp +GameObject* CreateGameObject(const std::string& name, GameObject* parent = nullptr); +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 +- `parent` - 参数语义详见头文件声明。 + +**返回:** `GameObject*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::CreateGameObject(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/DeserializeFromString.md b/docs/api/XCEngine/Scene/Scene/DeserializeFromString.md new file mode 100644 index 00000000..85e3f644 --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/DeserializeFromString.md @@ -0,0 +1,31 @@ +# Scene::DeserializeFromString + +公开方法,详见头文件声明。 + +```cpp +void DeserializeFromString(const std::string& data); +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** +- `data` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::DeserializeFromString(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/DestroyGameObject.md b/docs/api/XCEngine/Scene/Scene/DestroyGameObject.md new file mode 100644 index 00000000..b5851442 --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/DestroyGameObject.md @@ -0,0 +1,31 @@ +# Scene::DestroyGameObject + +公开方法,详见头文件声明。 + +```cpp +void DestroyGameObject(GameObject* gameObject); +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** +- `gameObject` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::DestroyGameObject(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/Destructor.md b/docs/api/XCEngine/Scene/Scene/Destructor.md new file mode 100644 index 00000000..6382d84b --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/Destructor.md @@ -0,0 +1,29 @@ +# Scene::~Scene() + +销毁对象并释放相关资源。 + +```cpp +~Scene(); +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/Find.md b/docs/api/XCEngine/Scene/Scene/Find.md new file mode 100644 index 00000000..b8da1f75 --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/Find.md @@ -0,0 +1,31 @@ +# Scene::Find + +查找并返回匹配对象。 + +```cpp +GameObject* Find(const std::string& name) const; +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `GameObject*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::Find(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/FindByID.md b/docs/api/XCEngine/Scene/Scene/FindByID.md new file mode 100644 index 00000000..c141ab2f --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/FindByID.md @@ -0,0 +1,31 @@ +# Scene::FindByID + +查找并返回匹配对象。 + +```cpp +GameObject* FindByID(GameObjectID id) const; +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** +- `id` - 参数语义详见头文件声明。 + +**返回:** `GameObject*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::FindByID(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/FindGameObjectWithTag.md b/docs/api/XCEngine/Scene/Scene/FindGameObjectWithTag.md new file mode 100644 index 00000000..e9aa8c7c --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/FindGameObjectWithTag.md @@ -0,0 +1,31 @@ +# Scene::FindGameObjectWithTag + +查找并返回匹配对象。 + +```cpp +GameObject* FindGameObjectWithTag(const std::string& tag) const; +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** +- `tag` - 参数语义详见头文件声明。 + +**返回:** `GameObject*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::FindGameObjectWithTag(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/FindObjectOfType.md b/docs/api/XCEngine/Scene/Scene/FindObjectOfType.md new file mode 100644 index 00000000..35c0c5aa --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/FindObjectOfType.md @@ -0,0 +1,30 @@ +# Scene::FindObjectOfType + +查找并返回匹配对象。 + +```cpp +template T* FindObjectOfType() const; +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `template T*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::FindObjectOfType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/FindObjectsOfType.md b/docs/api/XCEngine/Scene/Scene/FindObjectsOfType.md new file mode 100644 index 00000000..db0a7ca3 --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/FindObjectsOfType.md @@ -0,0 +1,30 @@ +# Scene::FindObjectsOfType + +查找并返回匹配对象。 + +```cpp +template std::vector FindObjectsOfType() const; +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `template std::vector` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::FindObjectsOfType(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/FixedUpdate.md b/docs/api/XCEngine/Scene/Scene/FixedUpdate.md new file mode 100644 index 00000000..a7bc808d --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/FixedUpdate.md @@ -0,0 +1,31 @@ +# Scene::FixedUpdate + +公开方法,详见头文件声明。 + +```cpp +void FixedUpdate(float fixedDeltaTime); +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** +- `fixedDeltaTime` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::FixedUpdate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/GetName.md b/docs/api/XCEngine/Scene/Scene/GetName.md new file mode 100644 index 00000000..68b09ac8 --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/GetName.md @@ -0,0 +1,30 @@ +# Scene::GetName + +获取相关状态或对象。 + +```cpp +const std::string& GetName() const; +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const std::string&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/GetRootGameObjects.md b/docs/api/XCEngine/Scene/Scene/GetRootGameObjects.md new file mode 100644 index 00000000..bde7cef4 --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/GetRootGameObjects.md @@ -0,0 +1,30 @@ +# Scene::GetRootGameObjects + +获取相关状态或对象。 + +```cpp +std::vector GetRootGameObjects() const; +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::vector` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::GetRootGameObjects(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/IsActive.md b/docs/api/XCEngine/Scene/Scene/IsActive.md new file mode 100644 index 00000000..999141d7 --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/IsActive.md @@ -0,0 +1,30 @@ +# Scene::IsActive + +查询当前状态。 + +```cpp +bool IsActive() const; +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::IsActive(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/LateUpdate.md b/docs/api/XCEngine/Scene/Scene/LateUpdate.md new file mode 100644 index 00000000..65f627df --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/LateUpdate.md @@ -0,0 +1,31 @@ +# Scene::LateUpdate + +公开方法,详见头文件声明。 + +```cpp +void LateUpdate(float deltaTime); +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** +- `deltaTime` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::LateUpdate(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/Load.md b/docs/api/XCEngine/Scene/Scene/Load.md new file mode 100644 index 00000000..25531315 --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/Load.md @@ -0,0 +1,31 @@ +# Scene::Load + +加载资源或数据。 + +```cpp +void Load(const std::string& filePath); +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** +- `filePath` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::Load(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/OnGameObjectCreated.md b/docs/api/XCEngine/Scene/Scene/OnGameObjectCreated.md new file mode 100644 index 00000000..bddf2c2b --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/OnGameObjectCreated.md @@ -0,0 +1,30 @@ +# Scene::OnGameObjectCreated + +公开方法,详见头文件声明。 + +```cpp +Core::Event& OnGameObjectCreated(); +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::Event&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::OnGameObjectCreated(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/OnGameObjectDestroyed.md b/docs/api/XCEngine/Scene/Scene/OnGameObjectDestroyed.md new file mode 100644 index 00000000..f72c56ae --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/OnGameObjectDestroyed.md @@ -0,0 +1,30 @@ +# Scene::OnGameObjectDestroyed + +公开方法,详见头文件声明。 + +```cpp +Core::Event& OnGameObjectDestroyed(); +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::Event&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::OnGameObjectDestroyed(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/Save.md b/docs/api/XCEngine/Scene/Scene/Save.md new file mode 100644 index 00000000..6facb39c --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/Save.md @@ -0,0 +1,31 @@ +# Scene::Save + +公开方法,详见头文件声明。 + +```cpp +void Save(const std::string& filePath); +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** +- `filePath` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::Save(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/Scene.md b/docs/api/XCEngine/Scene/Scene/Scene.md new file mode 100644 index 00000000..eff2e0ea --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/Scene.md @@ -0,0 +1,52 @@ +# Scene + +**命名空间**: `XCEngine::Components` + +**类型**: `class` + +**头文件**: `XCEngine/Scene/Scene.h` + +**描述**: 定义 `XCEngine/Scene` 子目录中的 `Scene` public API。 + +## 概述 + +`Scene.h` 是 `XCEngine/Scene` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Scene` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Scene()](Constructor.md) | 构造对象。 | +| [~Scene()](Destructor.md) | 销毁对象并释放相关资源。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [SetName](SetName.md) | 设置相关状态或配置。 | +| [IsActive](IsActive.md) | 查询当前状态。 | +| [SetActive](SetActive.md) | 设置相关状态或配置。 | +| [CreateGameObject](CreateGameObject.md) | 创建新对象或资源。 | +| [DestroyGameObject](DestroyGameObject.md) | 公开方法,详见头文件声明。 | +| [Find](Find.md) | 查找并返回匹配对象。 | +| [FindByID](FindByID.md) | 查找并返回匹配对象。 | +| [FindGameObjectWithTag](FindGameObjectWithTag.md) | 查找并返回匹配对象。 | +| [FindObjectOfType](FindObjectOfType.md) | 查找并返回匹配对象。 | +| [FindObjectsOfType](FindObjectsOfType.md) | 查找并返回匹配对象。 | +| [GetRootGameObjects](GetRootGameObjects.md) | 获取相关状态或对象。 | +| [Update](Update.md) | 更新运行时状态。 | +| [FixedUpdate](FixedUpdate.md) | 公开方法,详见头文件声明。 | +| [LateUpdate](LateUpdate.md) | 公开方法,详见头文件声明。 | +| [Save](Save.md) | 公开方法,详见头文件声明。 | +| [Load](Load.md) | 加载资源或数据。 | +| [SerializeToString](SerializeToString.md) | 公开方法,详见头文件声明。 | +| [DeserializeFromString](DeserializeFromString.md) | 公开方法,详见头文件声明。 | +| [OnGameObjectCreated](OnGameObjectCreated.md) | 公开方法,详见头文件声明。 | +| [OnGameObjectDestroyed](OnGameObjectDestroyed.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Scene.md) - 返回 `Scene` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Scene/Scene/SerializeToString.md b/docs/api/XCEngine/Scene/Scene/SerializeToString.md new file mode 100644 index 00000000..e088e538 --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/SerializeToString.md @@ -0,0 +1,30 @@ +# Scene::SerializeToString + +公开方法,详见头文件声明。 + +```cpp +std::string SerializeToString() const; +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::string` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::SerializeToString(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/SetActive.md b/docs/api/XCEngine/Scene/Scene/SetActive.md new file mode 100644 index 00000000..c377e5f9 --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/SetActive.md @@ -0,0 +1,31 @@ +# Scene::SetActive + +设置相关状态或配置。 + +```cpp +void SetActive(bool active); +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** +- `active` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::SetActive(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/SetName.md b/docs/api/XCEngine/Scene/Scene/SetName.md new file mode 100644 index 00000000..c99d56cb --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/SetName.md @@ -0,0 +1,31 @@ +# Scene::SetName + +设置相关状态或配置。 + +```cpp +void SetName(const std::string& name); +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::SetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/Scene/Update.md b/docs/api/XCEngine/Scene/Scene/Update.md new file mode 100644 index 00000000..2bd95049 --- /dev/null +++ b/docs/api/XCEngine/Scene/Scene/Update.md @@ -0,0 +1,31 @@ +# Scene::Update + +更新运行时状态。 + +```cpp +void Update(float deltaTime); +``` + +该方法声明于 `XCEngine/Scene/Scene.h`,当前页面用于固定 `Scene` 类目录下的方法级 canonical 路径。 + +**参数:** +- `deltaTime` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::Scene object; + // 根据上下文补齐参数后调用 Scene::Update(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Scene.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/SceneManager/CreateScene.md b/docs/api/XCEngine/Scene/SceneManager/CreateScene.md new file mode 100644 index 00000000..8c54ed4d --- /dev/null +++ b/docs/api/XCEngine/Scene/SceneManager/CreateScene.md @@ -0,0 +1,31 @@ +# SceneManager::CreateScene + +创建新对象或资源。 + +```cpp +Scene* CreateScene(const std::string& name); +``` + +该方法声明于 `XCEngine/Scene/SceneManager.h`,当前页面用于固定 `SceneManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `Scene*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::SceneManager object; + // 根据上下文补齐参数后调用 SceneManager::CreateScene(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](SceneManager.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/SceneManager/Get.md b/docs/api/XCEngine/Scene/SceneManager/Get.md new file mode 100644 index 00000000..b7f53cdc --- /dev/null +++ b/docs/api/XCEngine/Scene/SceneManager/Get.md @@ -0,0 +1,29 @@ +# SceneManager::Get + +获取相关状态或对象。 + +```cpp +static SceneManager& Get(); +``` + +该方法声明于 `XCEngine/Scene/SceneManager.h`,当前页面用于固定 `SceneManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `SceneManager&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + auto& instance = XCEngine::Components::SceneManager::Get(); + (void)instance; +} +``` + +## 相关文档 + +- [返回类总览](SceneManager.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/SceneManager/GetActiveScene.md b/docs/api/XCEngine/Scene/SceneManager/GetActiveScene.md new file mode 100644 index 00000000..91bdad74 --- /dev/null +++ b/docs/api/XCEngine/Scene/SceneManager/GetActiveScene.md @@ -0,0 +1,30 @@ +# SceneManager::GetActiveScene + +获取相关状态或对象。 + +```cpp +Scene* GetActiveScene() const; +``` + +该方法声明于 `XCEngine/Scene/SceneManager.h`,当前页面用于固定 `SceneManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Scene*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::SceneManager object; + // 根据上下文补齐参数后调用 SceneManager::GetActiveScene(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](SceneManager.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/SceneManager/GetAllScenes.md b/docs/api/XCEngine/Scene/SceneManager/GetAllScenes.md new file mode 100644 index 00000000..ce5d94d8 --- /dev/null +++ b/docs/api/XCEngine/Scene/SceneManager/GetAllScenes.md @@ -0,0 +1,30 @@ +# SceneManager::GetAllScenes + +获取相关状态或对象。 + +```cpp +std::vector GetAllScenes() const; +``` + +该方法声明于 `XCEngine/Scene/SceneManager.h`,当前页面用于固定 `SceneManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `std::vector` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::SceneManager object; + // 根据上下文补齐参数后调用 SceneManager::GetAllScenes(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](SceneManager.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/SceneManager/GetScene.md b/docs/api/XCEngine/Scene/SceneManager/GetScene.md new file mode 100644 index 00000000..adb48e65 --- /dev/null +++ b/docs/api/XCEngine/Scene/SceneManager/GetScene.md @@ -0,0 +1,31 @@ +# SceneManager::GetScene + +获取相关状态或对象。 + +```cpp +Scene* GetScene(const std::string& name) const; +``` + +该方法声明于 `XCEngine/Scene/SceneManager.h`,当前页面用于固定 `SceneManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `name` - 参数语义详见头文件声明。 + +**返回:** `Scene*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::SceneManager object; + // 根据上下文补齐参数后调用 SceneManager::GetScene(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](SceneManager.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/SceneManager/LoadScene.md b/docs/api/XCEngine/Scene/SceneManager/LoadScene.md new file mode 100644 index 00000000..d692fa2e --- /dev/null +++ b/docs/api/XCEngine/Scene/SceneManager/LoadScene.md @@ -0,0 +1,31 @@ +# SceneManager::LoadScene + +加载资源或数据。 + +```cpp +void LoadScene(const std::string& filePath); +``` + +该方法声明于 `XCEngine/Scene/SceneManager.h`,当前页面用于固定 `SceneManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `filePath` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::SceneManager object; + // 根据上下文补齐参数后调用 SceneManager::LoadScene(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](SceneManager.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/SceneManager/LoadSceneAsync.md b/docs/api/XCEngine/Scene/SceneManager/LoadSceneAsync.md new file mode 100644 index 00000000..1de31bd1 --- /dev/null +++ b/docs/api/XCEngine/Scene/SceneManager/LoadSceneAsync.md @@ -0,0 +1,32 @@ +# SceneManager::LoadSceneAsync + +加载资源或数据。 + +```cpp +void LoadSceneAsync(const std::string& filePath, std::function callback); +``` + +该方法声明于 `XCEngine/Scene/SceneManager.h`,当前页面用于固定 `SceneManager` 类目录下的方法级 canonical 路径。 + +**参数:** +- `filePath` - 参数语义详见头文件声明。 +- `callback` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::SceneManager object; + // 根据上下文补齐参数后调用 SceneManager::LoadSceneAsync(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](SceneManager.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/SceneManager/OnActiveSceneChanged.md b/docs/api/XCEngine/Scene/SceneManager/OnActiveSceneChanged.md new file mode 100644 index 00000000..c1941601 --- /dev/null +++ b/docs/api/XCEngine/Scene/SceneManager/OnActiveSceneChanged.md @@ -0,0 +1,30 @@ +# SceneManager::OnActiveSceneChanged + +公开方法,详见头文件声明。 + +```cpp +Core::Event& OnActiveSceneChanged(); +``` + +该方法声明于 `XCEngine/Scene/SceneManager.h`,当前页面用于固定 `SceneManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::Event&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::SceneManager object; + // 根据上下文补齐参数后调用 SceneManager::OnActiveSceneChanged(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](SceneManager.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/SceneManager/OnSceneLoaded.md b/docs/api/XCEngine/Scene/SceneManager/OnSceneLoaded.md new file mode 100644 index 00000000..f2266396 --- /dev/null +++ b/docs/api/XCEngine/Scene/SceneManager/OnSceneLoaded.md @@ -0,0 +1,30 @@ +# SceneManager::OnSceneLoaded + +公开方法,详见头文件声明。 + +```cpp +Core::Event& OnSceneLoaded(); +``` + +该方法声明于 `XCEngine/Scene/SceneManager.h`,当前页面用于固定 `SceneManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::Event&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::SceneManager object; + // 根据上下文补齐参数后调用 SceneManager::OnSceneLoaded(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](SceneManager.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/SceneManager/OnSceneUnloaded.md b/docs/api/XCEngine/Scene/SceneManager/OnSceneUnloaded.md new file mode 100644 index 00000000..5a40c424 --- /dev/null +++ b/docs/api/XCEngine/Scene/SceneManager/OnSceneUnloaded.md @@ -0,0 +1,30 @@ +# SceneManager::OnSceneUnloaded + +公开方法,详见头文件声明。 + +```cpp +Core::Event& OnSceneUnloaded(); +``` + +该方法声明于 `XCEngine/Scene/SceneManager.h`,当前页面用于固定 `SceneManager` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Core::Event&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::SceneManager object; + // 根据上下文补齐参数后调用 SceneManager::OnSceneUnloaded(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](SceneManager.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/SceneManager/SceneManager.md b/docs/api/XCEngine/Scene/SceneManager/SceneManager.md new file mode 100644 index 00000000..ffa1c50d --- /dev/null +++ b/docs/api/XCEngine/Scene/SceneManager/SceneManager.md @@ -0,0 +1,41 @@ +# SceneManager + +**命名空间**: `XCEngine::Components` + +**类型**: `class (singleton)` + +**头文件**: `XCEngine/Scene/SceneManager.h` + +**描述**: 定义 `XCEngine/Scene` 子目录中的 `SceneManager` public API。 + +## 概述 + +`SceneManager.h` 是 `XCEngine/Scene` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `SceneManager` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Get](Get.md) | 获取相关状态或对象。 | +| [CreateScene](CreateScene.md) | 创建新对象或资源。 | +| [LoadScene](LoadScene.md) | 加载资源或数据。 | +| [LoadSceneAsync](LoadSceneAsync.md) | 加载资源或数据。 | +| [UnloadScene](UnloadScene.md) | 卸载资源或释放缓存。 | +| [SetActiveScene](SetActiveScene.md) | 设置相关状态或配置。 | +| [GetActiveScene](GetActiveScene.md) | 获取相关状态或对象。 | +| [GetScene](GetScene.md) | 获取相关状态或对象。 | +| [GetAllScenes](GetAllScenes.md) | 获取相关状态或对象。 | +| [OnSceneLoaded](OnSceneLoaded.md) | 公开方法,详见头文件声明。 | +| [OnSceneUnloaded](OnSceneUnloaded.md) | 公开方法,详见头文件声明。 | +| [OnActiveSceneChanged](OnActiveSceneChanged.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Scene.md) - 返回 `Scene` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Scene/SceneManager/SetActiveScene.md b/docs/api/XCEngine/Scene/SceneManager/SetActiveScene.md new file mode 100644 index 00000000..2b7ff0c9 --- /dev/null +++ b/docs/api/XCEngine/Scene/SceneManager/SetActiveScene.md @@ -0,0 +1,44 @@ +# SceneManager::SetActiveScene + +设置相关状态或配置。 + +该方法在 `XCEngine/Scene/SceneManager.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void SetActiveScene(Scene* scene); +``` + +**参数:** +- `scene` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void SetActiveScene(const std::string& sceneName); +``` + +**参数:** +- `sceneName` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::SceneManager object; + // 根据上下文补齐参数后调用 SceneManager::SetActiveScene(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](SceneManager.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Scene/SceneManager/UnloadScene.md b/docs/api/XCEngine/Scene/SceneManager/UnloadScene.md new file mode 100644 index 00000000..a451331b --- /dev/null +++ b/docs/api/XCEngine/Scene/SceneManager/UnloadScene.md @@ -0,0 +1,44 @@ +# SceneManager::UnloadScene + +卸载资源或释放缓存。 + +该方法在 `XCEngine/Scene/SceneManager.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +void UnloadScene(Scene* scene); +``` + +**参数:** +- `scene` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +## 重载 2: 声明 + +```cpp +void UnloadScene(const std::string& sceneName); +``` + +**参数:** +- `sceneName` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Components::SceneManager object; + // 根据上下文补齐参数后调用 SceneManager::UnloadScene(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](SceneManager.md) +- [返回模块目录](../Scene.md) diff --git a/docs/api/XCEngine/Threading/LambdaTask/Constructor.md b/docs/api/XCEngine/Threading/LambdaTask/Constructor.md new file mode 100644 index 00000000..2ebf3668 --- /dev/null +++ b/docs/api/XCEngine/Threading/LambdaTask/Constructor.md @@ -0,0 +1,30 @@ +# LambdaTask::LambdaTask() + +构造对象。 + +```cpp +explicit LambdaTask(Func&& func, TaskPriority priority = TaskPriority::Normal) : ITask(priority), m_func(std::move(func)); +``` + +该方法声明于 `XCEngine/Threading/LambdaTask.h`,当前页面用于固定 `LambdaTask` 类目录下的方法级 canonical 路径。 + +**参数:** +- `func` - 参数语义详见头文件声明。 +- `priority` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::LambdaTask object; +} +``` + +## 相关文档 + +- [返回类总览](LambdaTask.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/LambdaTask/Execute.md b/docs/api/XCEngine/Threading/LambdaTask/Execute.md new file mode 100644 index 00000000..b84ed064 --- /dev/null +++ b/docs/api/XCEngine/Threading/LambdaTask/Execute.md @@ -0,0 +1,30 @@ +# LambdaTask::Execute + +公开方法,详见头文件声明。 + +```cpp +void Execute() override; +``` + +该方法声明于 `XCEngine/Threading/LambdaTask.h`,当前页面用于固定 `LambdaTask` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::LambdaTask object; + // 根据上下文补齐参数后调用 LambdaTask::Execute(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](LambdaTask.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/LambdaTask/LambdaTask.md b/docs/api/XCEngine/Threading/LambdaTask/LambdaTask.md new file mode 100644 index 00000000..86e8d028 --- /dev/null +++ b/docs/api/XCEngine/Threading/LambdaTask/LambdaTask.md @@ -0,0 +1,31 @@ +# LambdaTask + +**命名空间**: `XCEngine::Threading` + +**类型**: `class` + +**头文件**: `XCEngine/Threading/LambdaTask.h` + +**描述**: 定义 `XCEngine/Threading` 子目录中的 `LambdaTask` public API。 + +## 概述 + +`LambdaTask.h` 是 `XCEngine/Threading` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `LambdaTask` | `class` | 继承自 `ITask` 的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [LambdaTask()](Constructor.md) | 构造对象。 | +| [Execute](Execute.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Threading.md) - 返回 `Threading` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Threading/Mutex/Constructor.md b/docs/api/XCEngine/Threading/Mutex/Constructor.md new file mode 100644 index 00000000..0847bca8 --- /dev/null +++ b/docs/api/XCEngine/Threading/Mutex/Constructor.md @@ -0,0 +1,28 @@ +# Mutex::Mutex() + +构造对象。 + +```cpp +Mutex() = default; +``` + +该方法声明于 `XCEngine/Threading/Mutex.h`,当前页面用于固定 `Mutex` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::Mutex object; +} +``` + +## 相关文档 + +- [返回类总览](Mutex.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/Mutex/Destructor.md b/docs/api/XCEngine/Threading/Mutex/Destructor.md new file mode 100644 index 00000000..602e0147 --- /dev/null +++ b/docs/api/XCEngine/Threading/Mutex/Destructor.md @@ -0,0 +1,29 @@ +# Mutex::~Mutex() + +销毁对象并释放相关资源。 + +```cpp +~Mutex() = default; +``` + +该方法声明于 `XCEngine/Threading/Mutex.h`,当前页面用于固定 `Mutex` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::Mutex object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](Mutex.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/Mutex/Mutex.md b/docs/api/XCEngine/Threading/Mutex/Mutex.md new file mode 100644 index 00000000..2f9fc3c8 --- /dev/null +++ b/docs/api/XCEngine/Threading/Mutex/Mutex.md @@ -0,0 +1,37 @@ +# Mutex + +**命名空间**: `XCEngine::Threading` + +**类型**: `class` + +**头文件**: `XCEngine/Threading/Mutex.h` + +**描述**: 定义 `XCEngine/Threading` 子目录中的 `Mutex` public API。 + +## 概述 + +`Mutex.h` 是 `XCEngine/Threading` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Mutex` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Mutex()](Constructor.md) | 构造对象。 | +| [~Mutex()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Lock](Lock.md) | 公开方法,详见头文件声明。 | +| [Unlock](Unlock.md) | 公开方法,详见头文件声明。 | +| [TryLock](TryLock.md) | 公开方法,详见头文件声明。 | +| [lock](lock.md) | 公开方法,详见头文件声明。 | +| [unlock](unlock.md) | 公开方法,详见头文件声明。 | +| [try_lock](try_lock.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Threading.md) - 返回 `Threading` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Threading/Mutex/TryLock.md b/docs/api/XCEngine/Threading/Mutex/TryLock.md new file mode 100644 index 00000000..c9848b44 --- /dev/null +++ b/docs/api/XCEngine/Threading/Mutex/TryLock.md @@ -0,0 +1,30 @@ +# Mutex::TryLock + +公开方法,详见头文件声明。 + +```cpp +bool TryLock(); +``` + +该方法声明于 `XCEngine/Threading/Mutex.h`,当前页面用于固定 `Mutex` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::Mutex object; + // 根据上下文补齐参数后调用 Mutex::TryLock(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mutex.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/Mutex/lock.md b/docs/api/XCEngine/Threading/Mutex/lock.md new file mode 100644 index 00000000..03f78c60 --- /dev/null +++ b/docs/api/XCEngine/Threading/Mutex/lock.md @@ -0,0 +1,30 @@ +# Mutex::lock + +公开方法,详见头文件声明。 + +```cpp +void lock() const; +``` + +该方法声明于 `XCEngine/Threading/Mutex.h`,当前页面用于固定 `Mutex` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::Mutex object; + // 根据上下文补齐参数后调用 Mutex::lock(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mutex.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/Mutex/try_lock.md b/docs/api/XCEngine/Threading/Mutex/try_lock.md new file mode 100644 index 00000000..3edc33b1 --- /dev/null +++ b/docs/api/XCEngine/Threading/Mutex/try_lock.md @@ -0,0 +1,30 @@ +# Mutex::try_lock + +公开方法,详见头文件声明。 + +```cpp +bool try_lock() const; +``` + +该方法声明于 `XCEngine/Threading/Mutex.h`,当前页面用于固定 `Mutex` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::Mutex object; + // 根据上下文补齐参数后调用 Mutex::try_lock(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mutex.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/Mutex/unlock.md b/docs/api/XCEngine/Threading/Mutex/unlock.md new file mode 100644 index 00000000..48732f39 --- /dev/null +++ b/docs/api/XCEngine/Threading/Mutex/unlock.md @@ -0,0 +1,30 @@ +# Mutex::unlock + +公开方法,详见头文件声明。 + +```cpp +void unlock() const; +``` + +该方法声明于 `XCEngine/Threading/Mutex.h`,当前页面用于固定 `Mutex` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::Mutex object; + // 根据上下文补齐参数后调用 Mutex::unlock(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Mutex.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/ReadWriteLock/Constructor.md b/docs/api/XCEngine/Threading/ReadWriteLock/Constructor.md new file mode 100644 index 00000000..277ba6f1 --- /dev/null +++ b/docs/api/XCEngine/Threading/ReadWriteLock/Constructor.md @@ -0,0 +1,28 @@ +# ReadWriteLock::ReadWriteLock() + +构造对象。 + +```cpp +ReadWriteLock() = default; +``` + +该方法声明于 `XCEngine/Threading/ReadWriteLock.h`,当前页面用于固定 `ReadWriteLock` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::ReadWriteLock object; +} +``` + +## 相关文档 + +- [返回类总览](ReadWriteLock.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/ReadWriteLock/Destructor.md b/docs/api/XCEngine/Threading/ReadWriteLock/Destructor.md new file mode 100644 index 00000000..923c1dfb --- /dev/null +++ b/docs/api/XCEngine/Threading/ReadWriteLock/Destructor.md @@ -0,0 +1,29 @@ +# ReadWriteLock::~ReadWriteLock() + +销毁对象并释放相关资源。 + +```cpp +~ReadWriteLock() = default; +``` + +该方法声明于 `XCEngine/Threading/ReadWriteLock.h`,当前页面用于固定 `ReadWriteLock` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::ReadWriteLock object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](ReadWriteLock.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/ReadWriteLock/ReadLock.md b/docs/api/XCEngine/Threading/ReadWriteLock/ReadLock.md new file mode 100644 index 00000000..7de6c40e --- /dev/null +++ b/docs/api/XCEngine/Threading/ReadWriteLock/ReadLock.md @@ -0,0 +1,30 @@ +# ReadWriteLock::ReadLock + +公开方法,详见头文件声明。 + +```cpp +void ReadLock(); +``` + +该方法声明于 `XCEngine/Threading/ReadWriteLock.h`,当前页面用于固定 `ReadWriteLock` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::ReadWriteLock object; + // 根据上下文补齐参数后调用 ReadWriteLock::ReadLock(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ReadWriteLock.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/ReadWriteLock/ReadUnlock.md b/docs/api/XCEngine/Threading/ReadWriteLock/ReadUnlock.md new file mode 100644 index 00000000..fd525427 --- /dev/null +++ b/docs/api/XCEngine/Threading/ReadWriteLock/ReadUnlock.md @@ -0,0 +1,30 @@ +# ReadWriteLock::ReadUnlock + +公开方法,详见头文件声明。 + +```cpp +void ReadUnlock(); +``` + +该方法声明于 `XCEngine/Threading/ReadWriteLock.h`,当前页面用于固定 `ReadWriteLock` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::ReadWriteLock object; + // 根据上下文补齐参数后调用 ReadWriteLock::ReadUnlock(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ReadWriteLock.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/ReadWriteLock/ReadWriteLock.md b/docs/api/XCEngine/Threading/ReadWriteLock/ReadWriteLock.md new file mode 100644 index 00000000..d1a7efaf --- /dev/null +++ b/docs/api/XCEngine/Threading/ReadWriteLock/ReadWriteLock.md @@ -0,0 +1,35 @@ +# ReadWriteLock + +**命名空间**: `XCEngine::Threading` + +**类型**: `class` + +**头文件**: `XCEngine/Threading/ReadWriteLock.h` + +**描述**: 定义 `XCEngine/Threading` 子目录中的 `ReadWriteLock` public API。 + +## 概述 + +`ReadWriteLock.h` 是 `XCEngine/Threading` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `ReadWriteLock` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [ReadWriteLock()](Constructor.md) | 构造对象。 | +| [~ReadWriteLock()](Destructor.md) | 销毁对象并释放相关资源。 | +| [ReadLock](ReadLock.md) | 公开方法,详见头文件声明。 | +| [ReadUnlock](ReadUnlock.md) | 公开方法,详见头文件声明。 | +| [WriteLock](WriteLock.md) | 公开方法,详见头文件声明。 | +| [WriteUnlock](WriteUnlock.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Threading.md) - 返回 `Threading` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Threading/ReadWriteLock/WriteLock.md b/docs/api/XCEngine/Threading/ReadWriteLock/WriteLock.md new file mode 100644 index 00000000..51976556 --- /dev/null +++ b/docs/api/XCEngine/Threading/ReadWriteLock/WriteLock.md @@ -0,0 +1,30 @@ +# ReadWriteLock::WriteLock + +公开方法,详见头文件声明。 + +```cpp +void WriteLock(); +``` + +该方法声明于 `XCEngine/Threading/ReadWriteLock.h`,当前页面用于固定 `ReadWriteLock` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::ReadWriteLock object; + // 根据上下文补齐参数后调用 ReadWriteLock::WriteLock(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ReadWriteLock.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/ReadWriteLock/WriteUnlock.md b/docs/api/XCEngine/Threading/ReadWriteLock/WriteUnlock.md new file mode 100644 index 00000000..4f1988a4 --- /dev/null +++ b/docs/api/XCEngine/Threading/ReadWriteLock/WriteUnlock.md @@ -0,0 +1,30 @@ +# ReadWriteLock::WriteUnlock + +公开方法,详见头文件声明。 + +```cpp +void WriteUnlock(); +``` + +该方法声明于 `XCEngine/Threading/ReadWriteLock.h`,当前页面用于固定 `ReadWriteLock` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::ReadWriteLock object; + // 根据上下文补齐参数后调用 ReadWriteLock::WriteUnlock(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](ReadWriteLock.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/SpinLock/SpinLock.md b/docs/api/XCEngine/Threading/SpinLock/SpinLock.md new file mode 100644 index 00000000..e0c67193 --- /dev/null +++ b/docs/api/XCEngine/Threading/SpinLock/SpinLock.md @@ -0,0 +1,35 @@ +# SpinLock + +**命名空间**: `XCEngine::Threading` + +**类型**: `class` + +**头文件**: `XCEngine/Threading/SpinLock.h` + +**描述**: 定义 `XCEngine/Threading` 子目录中的 `SpinLock` public API。 + +## 概述 + +`SpinLock.h` 是 `XCEngine/Threading` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `SpinLock` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Lock](Lock.md) | 公开方法,详见头文件声明。 | +| [Unlock](Unlock.md) | 公开方法,详见头文件声明。 | +| [TryLock](TryLock.md) | 公开方法,详见头文件声明。 | +| [lock](lock.md) | 公开方法,详见头文件声明。 | +| [unlock](unlock.md) | 公开方法,详见头文件声明。 | +| [try_lock](try_lock.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Threading.md) - 返回 `Threading` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Threading/SpinLock/TryLock.md b/docs/api/XCEngine/Threading/SpinLock/TryLock.md new file mode 100644 index 00000000..fcbfb0cb --- /dev/null +++ b/docs/api/XCEngine/Threading/SpinLock/TryLock.md @@ -0,0 +1,30 @@ +# SpinLock::TryLock + +公开方法,详见头文件声明。 + +```cpp +bool TryLock(); +``` + +该方法声明于 `XCEngine/Threading/SpinLock.h`,当前页面用于固定 `SpinLock` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::SpinLock object; + // 根据上下文补齐参数后调用 SpinLock::TryLock(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](SpinLock.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/SpinLock/lock.md b/docs/api/XCEngine/Threading/SpinLock/lock.md new file mode 100644 index 00000000..376bce33 --- /dev/null +++ b/docs/api/XCEngine/Threading/SpinLock/lock.md @@ -0,0 +1,30 @@ +# SpinLock::lock + +公开方法,详见头文件声明。 + +```cpp +void lock(); +``` + +该方法声明于 `XCEngine/Threading/SpinLock.h`,当前页面用于固定 `SpinLock` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::SpinLock object; + // 根据上下文补齐参数后调用 SpinLock::lock(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](SpinLock.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/SpinLock/try_lock.md b/docs/api/XCEngine/Threading/SpinLock/try_lock.md new file mode 100644 index 00000000..540f3fb5 --- /dev/null +++ b/docs/api/XCEngine/Threading/SpinLock/try_lock.md @@ -0,0 +1,30 @@ +# SpinLock::try_lock + +公开方法,详见头文件声明。 + +```cpp +bool try_lock(); +``` + +该方法声明于 `XCEngine/Threading/SpinLock.h`,当前页面用于固定 `SpinLock` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::SpinLock object; + // 根据上下文补齐参数后调用 SpinLock::try_lock(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](SpinLock.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/SpinLock/unlock.md b/docs/api/XCEngine/Threading/SpinLock/unlock.md new file mode 100644 index 00000000..ec566251 --- /dev/null +++ b/docs/api/XCEngine/Threading/SpinLock/unlock.md @@ -0,0 +1,30 @@ +# SpinLock::unlock + +公开方法,详见头文件声明。 + +```cpp +void unlock(); +``` + +该方法声明于 `XCEngine/Threading/SpinLock.h`,当前页面用于固定 `SpinLock` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::SpinLock object; + // 根据上下文补齐参数后调用 SpinLock::unlock(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](SpinLock.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/Task/Task.md b/docs/api/XCEngine/Threading/Task/Task.md new file mode 100644 index 00000000..a79847d6 --- /dev/null +++ b/docs/api/XCEngine/Threading/Task/Task.md @@ -0,0 +1,36 @@ +# Task + +**命名空间**: `XCEngine::Threading` + +**类型**: `enum class` + +**头文件**: `XCEngine/Threading/Task.h` + +**描述**: 定义 `XCEngine/Threading` 子目录中的 `Task` public API。 + +## 概述 + +`Task.h` 是 `XCEngine/Threading` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `TaskPriority` | `enum class` | 头文件中的公开声明。 | +| `TaskStatus` | `enum class` | 头文件中的公开声明。 | +| `ITask` | `class` | 头文件中的公开声明。 | + +## 枚举值 + +| 枚举值 | 数值 | 描述 | +|--------|------|------| +| `Critical` | `0` | 枚举项。 | +| `High` | `1` | 枚举项。 | +| `Normal` | `2` | 枚举项。 | +| `Low` | `3` | 枚举项。 | +| `Idle` | `4` | 枚举项。 | + +## 相关文档 + +- [当前目录](../Threading.md) - 返回 `Threading` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Threading/TaskGroup/AddDependency.md b/docs/api/XCEngine/Threading/TaskGroup/AddDependency.md new file mode 100644 index 00000000..22ea9634 --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskGroup/AddDependency.md @@ -0,0 +1,32 @@ +# TaskGroup::AddDependency + +添加元素或建立关联。 + +```cpp +void AddDependency(uint64_t taskId, uint64_t dependsOn); +``` + +该方法声明于 `XCEngine/Threading/TaskGroup.h`,当前页面用于固定 `TaskGroup` 类目录下的方法级 canonical 路径。 + +**参数:** +- `taskId` - 参数语义详见头文件声明。 +- `dependsOn` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskGroup object; + // 根据上下文补齐参数后调用 TaskGroup::AddDependency(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TaskGroup.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskGroup/AddTask.md b/docs/api/XCEngine/Threading/TaskGroup/AddTask.md new file mode 100644 index 00000000..d343241c --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskGroup/AddTask.md @@ -0,0 +1,45 @@ +# TaskGroup::AddTask + +添加元素或建立关联。 + +该方法在 `XCEngine/Threading/TaskGroup.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +uint64_t AddTask(std::unique_ptr task); +``` + +**参数:** +- `task` - 参数语义详见头文件声明。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +uint64_t AddTask(Callback&& func, TaskPriority priority = TaskPriority::Normal); +``` + +**参数:** +- `func` - 参数语义详见头文件声明。 +- `priority` - 参数语义详见头文件声明。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskGroup object; + // 根据上下文补齐参数后调用 TaskGroup::AddTask(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TaskGroup.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskGroup/Cancel.md b/docs/api/XCEngine/Threading/TaskGroup/Cancel.md new file mode 100644 index 00000000..9091442a --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskGroup/Cancel.md @@ -0,0 +1,30 @@ +# TaskGroup::Cancel + +判断当前条件下是否可执行。 + +```cpp +void Cancel(); +``` + +该方法声明于 `XCEngine/Threading/TaskGroup.h`,当前页面用于固定 `TaskGroup` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskGroup object; + // 根据上下文补齐参数后调用 TaskGroup::Cancel(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TaskGroup.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskGroup/Constructor.md b/docs/api/XCEngine/Threading/TaskGroup/Constructor.md new file mode 100644 index 00000000..510b2290 --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskGroup/Constructor.md @@ -0,0 +1,28 @@ +# TaskGroup::TaskGroup() + +构造对象。 + +```cpp +TaskGroup(); +``` + +该方法声明于 `XCEngine/Threading/TaskGroup.h`,当前页面用于固定 `TaskGroup` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskGroup object; +} +``` + +## 相关文档 + +- [返回类总览](TaskGroup.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskGroup/Destructor.md b/docs/api/XCEngine/Threading/TaskGroup/Destructor.md new file mode 100644 index 00000000..c6270dca --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskGroup/Destructor.md @@ -0,0 +1,29 @@ +# TaskGroup::~TaskGroup() + +销毁对象并释放相关资源。 + +```cpp +~TaskGroup(); +``` + +该方法声明于 `XCEngine/Threading/TaskGroup.h`,当前页面用于固定 `TaskGroup` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskGroup object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](TaskGroup.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskGroup/GetProgress.md b/docs/api/XCEngine/Threading/TaskGroup/GetProgress.md new file mode 100644 index 00000000..dcba9d5f --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskGroup/GetProgress.md @@ -0,0 +1,30 @@ +# TaskGroup::GetProgress + +获取相关状态或对象。 + +```cpp +float GetProgress() const; +``` + +该方法声明于 `XCEngine/Threading/TaskGroup.h`,当前页面用于固定 `TaskGroup` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `float` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskGroup object; + // 根据上下文补齐参数后调用 TaskGroup::GetProgress(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TaskGroup.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskGroup/IsComplete.md b/docs/api/XCEngine/Threading/TaskGroup/IsComplete.md new file mode 100644 index 00000000..45844ecd --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskGroup/IsComplete.md @@ -0,0 +1,30 @@ +# TaskGroup::IsComplete + +查询当前状态。 + +```cpp +bool IsComplete() const; +``` + +该方法声明于 `XCEngine/Threading/TaskGroup.h`,当前页面用于固定 `TaskGroup` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskGroup object; + // 根据上下文补齐参数后调用 TaskGroup::IsComplete(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TaskGroup.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskGroup/SetCompleteCallback.md b/docs/api/XCEngine/Threading/TaskGroup/SetCompleteCallback.md new file mode 100644 index 00000000..d6cb4916 --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskGroup/SetCompleteCallback.md @@ -0,0 +1,31 @@ +# TaskGroup::SetCompleteCallback + +设置相关状态或配置。 + +```cpp +void SetCompleteCallback(Callback&& callback); +``` + +该方法声明于 `XCEngine/Threading/TaskGroup.h`,当前页面用于固定 `TaskGroup` 类目录下的方法级 canonical 路径。 + +**参数:** +- `callback` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskGroup object; + // 根据上下文补齐参数后调用 TaskGroup::SetCompleteCallback(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TaskGroup.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskGroup/TaskGroup.md b/docs/api/XCEngine/Threading/TaskGroup/TaskGroup.md new file mode 100644 index 00000000..35862b8c --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskGroup/TaskGroup.md @@ -0,0 +1,39 @@ +# TaskGroup + +**命名空间**: `XCEngine::Threading` + +**类型**: `class` + +**头文件**: `XCEngine/Threading/TaskGroup.h` + +**描述**: 定义 `XCEngine/Threading` 子目录中的 `TaskGroup` public API。 + +## 概述 + +`TaskGroup.h` 是 `XCEngine/Threading` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `TaskGroup` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [TaskGroup()](Constructor.md) | 构造对象。 | +| [~TaskGroup()](Destructor.md) | 销毁对象并释放相关资源。 | +| [AddTask](AddTask.md) | 添加元素或建立关联。 | +| [AddDependency](AddDependency.md) | 添加元素或建立关联。 | +| [Wait](Wait.md) | 公开方法,详见头文件声明。 | +| [WaitFor](WaitFor.md) | 公开方法,详见头文件声明。 | +| [SetCompleteCallback](SetCompleteCallback.md) | 设置相关状态或配置。 | +| [IsComplete](IsComplete.md) | 查询当前状态。 | +| [GetProgress](GetProgress.md) | 获取相关状态或对象。 | +| [Cancel](Cancel.md) | 判断当前条件下是否可执行。 | + +## 相关文档 + +- [当前目录](../Threading.md) - 返回 `Threading` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Threading/TaskGroup/Wait.md b/docs/api/XCEngine/Threading/TaskGroup/Wait.md new file mode 100644 index 00000000..58529345 --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskGroup/Wait.md @@ -0,0 +1,30 @@ +# TaskGroup::Wait + +公开方法,详见头文件声明。 + +```cpp +void Wait(); +``` + +该方法声明于 `XCEngine/Threading/TaskGroup.h`,当前页面用于固定 `TaskGroup` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskGroup object; + // 根据上下文补齐参数后调用 TaskGroup::Wait(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TaskGroup.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskGroup/WaitFor.md b/docs/api/XCEngine/Threading/TaskGroup/WaitFor.md new file mode 100644 index 00000000..105afd20 --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskGroup/WaitFor.md @@ -0,0 +1,31 @@ +# TaskGroup::WaitFor + +公开方法,详见头文件声明。 + +```cpp +bool WaitFor(std::chrono::milliseconds timeout); +``` + +该方法声明于 `XCEngine/Threading/TaskGroup.h`,当前页面用于固定 `TaskGroup` 类目录下的方法级 canonical 路径。 + +**参数:** +- `timeout` - 参数语义详见头文件声明。 + +**返回:** `bool` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskGroup object; + // 根据上下文补齐参数后调用 TaskGroup::WaitFor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TaskGroup.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskSystem/CreateTaskGroup.md b/docs/api/XCEngine/Threading/TaskSystem/CreateTaskGroup.md new file mode 100644 index 00000000..cc5ba6b8 --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskSystem/CreateTaskGroup.md @@ -0,0 +1,30 @@ +# TaskSystem::CreateTaskGroup + +创建新对象或资源。 + +```cpp +TaskGroup* CreateTaskGroup(); +``` + +该方法声明于 `XCEngine/Threading/TaskSystem.h`,当前页面用于固定 `TaskSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `TaskGroup*` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskSystem object; + // 根据上下文补齐参数后调用 TaskSystem::CreateTaskGroup(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TaskSystem.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskSystem/DestroyTaskGroup.md b/docs/api/XCEngine/Threading/TaskSystem/DestroyTaskGroup.md new file mode 100644 index 00000000..f871c70c --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskSystem/DestroyTaskGroup.md @@ -0,0 +1,31 @@ +# TaskSystem::DestroyTaskGroup + +公开方法,详见头文件声明。 + +```cpp +void DestroyTaskGroup(TaskGroup* group); +``` + +该方法声明于 `XCEngine/Threading/TaskSystem.h`,当前页面用于固定 `TaskSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `group` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskSystem object; + // 根据上下文补齐参数后调用 TaskSystem::DestroyTaskGroup(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TaskSystem.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskSystem/Get.md b/docs/api/XCEngine/Threading/TaskSystem/Get.md new file mode 100644 index 00000000..f5b79688 --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskSystem/Get.md @@ -0,0 +1,29 @@ +# TaskSystem::Get + +获取相关状态或对象。 + +```cpp +static TaskSystem& Get(); +``` + +该方法声明于 `XCEngine/Threading/TaskSystem.h`,当前页面用于固定 `TaskSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `TaskSystem&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + auto& instance = XCEngine::Threading::TaskSystem::Get(); + (void)instance; +} +``` + +## 相关文档 + +- [返回类总览](TaskSystem.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskSystem/GetWorkerThreadCount.md b/docs/api/XCEngine/Threading/TaskSystem/GetWorkerThreadCount.md new file mode 100644 index 00000000..fb68628d --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskSystem/GetWorkerThreadCount.md @@ -0,0 +1,30 @@ +# TaskSystem::GetWorkerThreadCount + +获取相关状态或对象。 + +```cpp +uint32_t GetWorkerThreadCount() const; +``` + +该方法声明于 `XCEngine/Threading/TaskSystem.h`,当前页面用于固定 `TaskSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `uint32_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskSystem object; + // 根据上下文补齐参数后调用 TaskSystem::GetWorkerThreadCount(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TaskSystem.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskSystem/Initialize.md b/docs/api/XCEngine/Threading/TaskSystem/Initialize.md new file mode 100644 index 00000000..94d170c2 --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskSystem/Initialize.md @@ -0,0 +1,31 @@ +# TaskSystem::Initialize + +初始化内部状态。 + +```cpp +void Initialize(const TaskSystemConfig& config); +``` + +该方法声明于 `XCEngine/Threading/TaskSystem.h`,当前页面用于固定 `TaskSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `config` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskSystem object; + // 根据上下文补齐参数后调用 TaskSystem::Initialize(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TaskSystem.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskSystem/ParallelFor.md b/docs/api/XCEngine/Threading/TaskSystem/ParallelFor.md new file mode 100644 index 00000000..cc3b8319 --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskSystem/ParallelFor.md @@ -0,0 +1,33 @@ +# TaskSystem::ParallelFor + +公开方法,详见头文件声明。 + +```cpp +template void ParallelFor(int32_t start, int32_t end, Func&& func); +``` + +该方法声明于 `XCEngine/Threading/TaskSystem.h`,当前页面用于固定 `TaskSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `start` - 参数语义详见头文件声明。 +- `end` - 参数语义详见头文件声明。 +- `func` - 参数语义详见头文件声明。 + +**返回:** `template void` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskSystem object; + // 根据上下文补齐参数后调用 TaskSystem::ParallelFor(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TaskSystem.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskSystem/RunOnMainThread.md b/docs/api/XCEngine/Threading/TaskSystem/RunOnMainThread.md new file mode 100644 index 00000000..6bbb24d5 --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskSystem/RunOnMainThread.md @@ -0,0 +1,31 @@ +# TaskSystem::RunOnMainThread + +公开方法,详见头文件声明。 + +```cpp +void RunOnMainThread(std::function&& func); +``` + +该方法声明于 `XCEngine/Threading/TaskSystem.h`,当前页面用于固定 `TaskSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `func` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskSystem object; + // 根据上下文补齐参数后调用 TaskSystem::RunOnMainThread(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TaskSystem.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskSystem/Shutdown.md b/docs/api/XCEngine/Threading/TaskSystem/Shutdown.md new file mode 100644 index 00000000..b31489b4 --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskSystem/Shutdown.md @@ -0,0 +1,30 @@ +# TaskSystem::Shutdown + +关闭并清理内部状态。 + +```cpp +void Shutdown(); +``` + +该方法声明于 `XCEngine/Threading/TaskSystem.h`,当前页面用于固定 `TaskSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskSystem object; + // 根据上下文补齐参数后调用 TaskSystem::Shutdown(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TaskSystem.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskSystem/Submit.md b/docs/api/XCEngine/Threading/TaskSystem/Submit.md new file mode 100644 index 00000000..2be6c3d6 --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskSystem/Submit.md @@ -0,0 +1,45 @@ +# TaskSystem::Submit + +公开方法,详见头文件声明。 + +该方法在 `XCEngine/Threading/TaskSystem.h` 中提供了 2 个重载,当前页面统一汇总这些公开声明。 + +## 重载 1: 声明 + +```cpp +uint64_t Submit(std::unique_ptr task); +``` + +**参数:** +- `task` - 参数语义详见头文件声明。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +## 重载 2: 声明 + +```cpp +uint64_t Submit(std::function&& func, TaskPriority priority = TaskPriority::Normal); +``` + +**参数:** +- `func` - 参数语义详见头文件声明。 +- `priority` - 参数语义详见头文件声明。 + +**返回:** `uint64_t` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskSystem object; + // 根据上下文补齐参数后调用 TaskSystem::Submit(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TaskSystem.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskSystem/TaskSystem.md b/docs/api/XCEngine/Threading/TaskSystem/TaskSystem.md new file mode 100644 index 00000000..405e2a0e --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskSystem/TaskSystem.md @@ -0,0 +1,40 @@ +# TaskSystem + +**命名空间**: `XCEngine::Threading` + +**类型**: `class (singleton)` + +**头文件**: `XCEngine/Threading/TaskSystem.h` + +**描述**: 定义 `XCEngine/Threading` 子目录中的 `TaskSystem` public API。 + +## 概述 + +`TaskSystem.h` 是 `XCEngine/Threading` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `TaskSystem` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Get](Get.md) | 获取相关状态或对象。 | +| [Initialize](Initialize.md) | 初始化内部状态。 | +| [Shutdown](Shutdown.md) | 关闭并清理内部状态。 | +| [Submit](Submit.md) | 公开方法,详见头文件声明。 | +| [CreateTaskGroup](CreateTaskGroup.md) | 创建新对象或资源。 | +| [DestroyTaskGroup](DestroyTaskGroup.md) | 公开方法,详见头文件声明。 | +| [Wait](Wait.md) | 公开方法,详见头文件声明。 | +| [GetWorkerThreadCount](GetWorkerThreadCount.md) | 获取相关状态或对象。 | +| [Update](Update.md) | 更新运行时状态。 | +| [ParallelFor](ParallelFor.md) | 公开方法,详见头文件声明。 | +| [RunOnMainThread](RunOnMainThread.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Threading.md) - 返回 `Threading` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Threading/TaskSystem/Update.md b/docs/api/XCEngine/Threading/TaskSystem/Update.md new file mode 100644 index 00000000..85922702 --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskSystem/Update.md @@ -0,0 +1,30 @@ +# TaskSystem::Update + +更新运行时状态。 + +```cpp +void Update(); +``` + +该方法声明于 `XCEngine/Threading/TaskSystem.h`,当前页面用于固定 `TaskSystem` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskSystem object; + // 根据上下文补齐参数后调用 TaskSystem::Update(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TaskSystem.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskSystem/Wait.md b/docs/api/XCEngine/Threading/TaskSystem/Wait.md new file mode 100644 index 00000000..0562871a --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskSystem/Wait.md @@ -0,0 +1,31 @@ +# TaskSystem::Wait + +公开方法,详见头文件声明。 + +```cpp +void Wait(uint64_t taskId); +``` + +该方法声明于 `XCEngine/Threading/TaskSystem.h`,当前页面用于固定 `TaskSystem` 类目录下的方法级 canonical 路径。 + +**参数:** +- `taskId` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::TaskSystem object; + // 根据上下文补齐参数后调用 TaskSystem::Wait(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](TaskSystem.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/TaskSystemConfig/TaskSystemConfig.md b/docs/api/XCEngine/Threading/TaskSystemConfig/TaskSystemConfig.md new file mode 100644 index 00000000..9eb3f09e --- /dev/null +++ b/docs/api/XCEngine/Threading/TaskSystemConfig/TaskSystemConfig.md @@ -0,0 +1,34 @@ +# TaskSystemConfig + +**命名空间**: `XCEngine::Threading` + +**类型**: `struct` + +**头文件**: `XCEngine/Threading/TaskSystemConfig.h` + +**描述**: 定义 `XCEngine/Threading` 子目录中的 `TaskSystemConfig` public API。 + +## 概述 + +`TaskSystemConfig.h` 是 `XCEngine/Threading` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `TaskSystemConfig` | `struct` | 头文件中的公开声明。 | + +## 结构体成员 + +| 成员 | 类型 | 描述 | 默认值 | +|------|------|------|--------| +| `workerThreadCount` | `uint32_t` | 结构体公开字段。 | `0` | +| `enableTaskProfiling` | `bool` | 结构体公开字段。 | `true` | +| `stealTasks` | `bool` | 结构体公开字段。 | `true` | +| `maxTaskQueueSize` | `uint32_t` | 结构体公开字段。 | `1024` | +| `threadStackSize` | `uint32_t` | 结构体公开字段。 | `0` | + +## 相关文档 + +- [当前目录](../Threading.md) - 返回 `Threading` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Threading/Thread/Constructor.md b/docs/api/XCEngine/Threading/Thread/Constructor.md new file mode 100644 index 00000000..f3ceb073 --- /dev/null +++ b/docs/api/XCEngine/Threading/Thread/Constructor.md @@ -0,0 +1,28 @@ +# Thread::Thread() + +构造对象。 + +```cpp +Thread(); +``` + +该方法声明于 `XCEngine/Threading/Thread.h`,当前页面用于固定 `Thread` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::Thread object; +} +``` + +## 相关文档 + +- [返回类总览](Thread.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/Thread/Destructor.md b/docs/api/XCEngine/Threading/Thread/Destructor.md new file mode 100644 index 00000000..486d4537 --- /dev/null +++ b/docs/api/XCEngine/Threading/Thread/Destructor.md @@ -0,0 +1,29 @@ +# Thread::~Thread() + +销毁对象并释放相关资源。 + +```cpp +~Thread(); +``` + +该方法声明于 `XCEngine/Threading/Thread.h`,当前页面用于固定 `Thread` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::Thread object; + // 对象离开作用域时会自动触发析构。 +} +``` + +## 相关文档 + +- [返回类总览](Thread.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/Thread/Detach.md b/docs/api/XCEngine/Threading/Thread/Detach.md new file mode 100644 index 00000000..41e68753 --- /dev/null +++ b/docs/api/XCEngine/Threading/Thread/Detach.md @@ -0,0 +1,30 @@ +# Thread::Detach + +公开方法,详见头文件声明。 + +```cpp +void Detach(); +``` + +该方法声明于 `XCEngine/Threading/Thread.h`,当前页面用于固定 `Thread` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::Thread object; + // 根据上下文补齐参数后调用 Thread::Detach(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Thread.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/Thread/GetCurrentId.md b/docs/api/XCEngine/Threading/Thread/GetCurrentId.md new file mode 100644 index 00000000..118f4427 --- /dev/null +++ b/docs/api/XCEngine/Threading/Thread/GetCurrentId.md @@ -0,0 +1,30 @@ +# Thread::GetCurrentId + +获取相关状态或对象。 + +```cpp +static Id GetCurrentId(); +``` + +该方法声明于 `XCEngine/Threading/Thread.h`,当前页面用于固定 `Thread` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Id` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::Thread object; + // 根据上下文补齐参数后调用 Thread::GetCurrentId(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Thread.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/Thread/GetId.md b/docs/api/XCEngine/Threading/Thread/GetId.md new file mode 100644 index 00000000..cec3bdd2 --- /dev/null +++ b/docs/api/XCEngine/Threading/Thread/GetId.md @@ -0,0 +1,30 @@ +# Thread::GetId + +获取相关状态或对象。 + +```cpp +Id GetId() const; +``` + +该方法声明于 `XCEngine/Threading/Thread.h`,当前页面用于固定 `Thread` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `Id` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::Thread object; + // 根据上下文补齐参数后调用 Thread::GetId(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Thread.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/Thread/GetName.md b/docs/api/XCEngine/Threading/Thread/GetName.md new file mode 100644 index 00000000..4e0b5e90 --- /dev/null +++ b/docs/api/XCEngine/Threading/Thread/GetName.md @@ -0,0 +1,30 @@ +# Thread::GetName + +获取相关状态或对象。 + +```cpp +const Containers::String& GetName() const; +``` + +该方法声明于 `XCEngine/Threading/Thread.h`,当前页面用于固定 `Thread` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `const Containers::String&` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::Thread object; + // 根据上下文补齐参数后调用 Thread::GetName(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Thread.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/Thread/Join.md b/docs/api/XCEngine/Threading/Thread/Join.md new file mode 100644 index 00000000..42edec87 --- /dev/null +++ b/docs/api/XCEngine/Threading/Thread/Join.md @@ -0,0 +1,30 @@ +# Thread::Join + +公开方法,详见头文件声明。 + +```cpp +void Join(); +``` + +该方法声明于 `XCEngine/Threading/Thread.h`,当前页面用于固定 `Thread` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::Thread object; + // 根据上下文补齐参数后调用 Thread::Join(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Thread.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/Thread/Sleep.md b/docs/api/XCEngine/Threading/Thread/Sleep.md new file mode 100644 index 00000000..831fba14 --- /dev/null +++ b/docs/api/XCEngine/Threading/Thread/Sleep.md @@ -0,0 +1,31 @@ +# Thread::Sleep + +公开方法,详见头文件声明。 + +```cpp +static void Sleep(uint32_t milliseconds); +``` + +该方法声明于 `XCEngine/Threading/Thread.h`,当前页面用于固定 `Thread` 类目录下的方法级 canonical 路径。 + +**参数:** +- `milliseconds` - 参数语义详见头文件声明。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::Thread object; + // 根据上下文补齐参数后调用 Thread::Sleep(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Thread.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/Thread/Start.md b/docs/api/XCEngine/Threading/Thread/Start.md new file mode 100644 index 00000000..948da07c --- /dev/null +++ b/docs/api/XCEngine/Threading/Thread/Start.md @@ -0,0 +1,32 @@ +# Thread::Start + +公开方法,详见头文件声明。 + +```cpp +template void Start(Func&& func, const Containers::String& name = "Thread"); +``` + +该方法声明于 `XCEngine/Threading/Thread.h`,当前页面用于固定 `Thread` 类目录下的方法级 canonical 路径。 + +**参数:** +- `func` - 参数语义详见头文件声明。 +- `name` - 参数语义详见头文件声明。 + +**返回:** `template void` - 返回值语义详见头文件声明。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::Thread object; + // 根据上下文补齐参数后调用 Thread::Start(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Thread.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/Thread/Thread.md b/docs/api/XCEngine/Threading/Thread/Thread.md new file mode 100644 index 00000000..7d44879c --- /dev/null +++ b/docs/api/XCEngine/Threading/Thread/Thread.md @@ -0,0 +1,39 @@ +# Thread + +**命名空间**: `XCEngine::Threading` + +**类型**: `class` + +**头文件**: `XCEngine/Threading/Thread.h` + +**描述**: 定义 `XCEngine/Threading` 子目录中的 `Thread` public API。 + +## 概述 + +`Thread.h` 是 `XCEngine/Threading` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 声明概览 + +| 声明 | 类型 | 说明 | +|------|------|------| +| `Thread` | `class` | 头文件中的公开声明。 | + +## 公共方法 + +| 方法 | 描述 | +|------|------| +| [Thread()](Constructor.md) | 构造对象。 | +| [~Thread()](Destructor.md) | 销毁对象并释放相关资源。 | +| [Start](Start.md) | 公开方法,详见头文件声明。 | +| [Join](Join.md) | 公开方法,详见头文件声明。 | +| [Detach](Detach.md) | 公开方法,详见头文件声明。 | +| [GetId](GetId.md) | 获取相关状态或对象。 | +| [GetName](GetName.md) | 获取相关状态或对象。 | +| [GetCurrentId](GetCurrentId.md) | 获取相关状态或对象。 | +| [Sleep](Sleep.md) | 公开方法,详见头文件声明。 | +| [Yield](Yield.md) | 公开方法,详见头文件声明。 | + +## 相关文档 + +- [当前目录](../Threading.md) - 返回 `Threading` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/Threading/Thread/Yield.md b/docs/api/XCEngine/Threading/Thread/Yield.md new file mode 100644 index 00000000..5000839c --- /dev/null +++ b/docs/api/XCEngine/Threading/Thread/Yield.md @@ -0,0 +1,30 @@ +# Thread::Yield + +公开方法,详见头文件声明。 + +```cpp +static void Yield(); +``` + +该方法声明于 `XCEngine/Threading/Thread.h`,当前页面用于固定 `Thread` 类目录下的方法级 canonical 路径。 + +**参数:** 无。 + +**返回:** `void` - 无返回值。 + +**示例:** + +```cpp +#include + +void Example() { + XCEngine::Threading::Thread object; + // 根据上下文补齐参数后调用 Thread::Yield(...)。 + (void)object; +} +``` + +## 相关文档 + +- [返回类总览](Thread.md) +- [返回模块目录](../Threading.md) diff --git a/docs/api/XCEngine/Threading/Threading.md b/docs/api/XCEngine/Threading/Threading.md new file mode 100644 index 00000000..38813e6f --- /dev/null +++ b/docs/api/XCEngine/Threading/Threading.md @@ -0,0 +1,29 @@ +# Threading + +**命名空间**: `XCEngine::Threading` + +**类型**: `module` + +**描述**: 线程封装、同步原语和任务系统。 + +## 概览 + +该目录与 `XCEngine/Threading` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 头文件 + +- [LambdaTask](LambdaTask/LambdaTask.md) - `LambdaTask.h` +- [Mutex](Mutex/Mutex.md) - `Mutex.h` +- [ReadWriteLock](ReadWriteLock/ReadWriteLock.md) - `ReadWriteLock.h` +- [SpinLock](SpinLock/SpinLock.md) - `SpinLock.h` +- [Task](Task/Task.md) - `Task.h` +- [TaskGroup](TaskGroup/TaskGroup.md) - `TaskGroup.h` +- [TaskSystem](TaskSystem/TaskSystem.md) - `TaskSystem.h` +- [TaskSystemConfig](TaskSystemConfig/TaskSystemConfig.md) - `TaskSystemConfig.h` +- [Thread](Thread/Thread.md) - `Thread.h` +- [Threading](Threading/Threading.md) - `Threading.h` + +## 相关文档 + +- [上级目录](../XCEngine.md) +- [API 总索引](../../main.md) diff --git a/docs/api/XCEngine/Threading/Threading/Threading.md b/docs/api/XCEngine/Threading/Threading/Threading.md new file mode 100644 index 00000000..c1c68b99 --- /dev/null +++ b/docs/api/XCEngine/Threading/Threading/Threading.md @@ -0,0 +1,18 @@ +# Threading + +**命名空间**: `XCEngine` + +**类型**: `header` + +**头文件**: `XCEngine/Threading/Threading.h` + +**描述**: 定义 `XCEngine/Threading` 子目录中的 `Threading` public API。 + +## 概述 + +`Threading.h` 是 `XCEngine/Threading` 子目录 下的 public header,当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。 + +## 相关文档 + +- [当前目录](../Threading.md) - 返回 `Threading` 平行目录 +- [API 总索引](../../../main.md) - 返回顶层索引 diff --git a/docs/api/XCEngine/XCEngine.md b/docs/api/XCEngine/XCEngine.md new file mode 100644 index 00000000..19aa7d2b --- /dev/null +++ b/docs/api/XCEngine/XCEngine.md @@ -0,0 +1,30 @@ +# XCEngine API 平行目录 + +**命名空间**: `XCEngine` + +**类型**: `module-root` + +**描述**: 与 `engine/include/XCEngine` 平行的 API 文档根目录。 + +## 概览 + +该目录与 `XCEngine` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。 + +## 子目录 + +- [Audio](Audio/Audio.md) +- [Components](Components/Components.md) +- [Core](Core/Core.md) +- [Debug](Debug/Debug.md) +- [Input](Input/Input.md) +- [Memory](Memory/Memory.md) +- [Platform](Platform/Platform.md) +- [RHI](RHI/RHI.md) +- [Resources](Resources/Resources.md) +- [Scene](Scene/Scene.md) +- [Threading](Threading/Threading.md) + +## 相关文档 + +- [API 总索引](../main.md) +- [API 文档重构状态](../_meta/rebuild-status.md) diff --git a/docs/api/_meta/README.md b/docs/api/_meta/README.md new file mode 100644 index 00000000..9eda0f42 --- /dev/null +++ b/docs/api/_meta/README.md @@ -0,0 +1,14 @@ +# API 元数据 + +**类型**: `meta-index` + +**描述**: 存放 API 文档重构过程中的审计报告与元信息文件。 + +## 当前文件 + +- [rebuild-status.md](rebuild-status.md) - 文档覆盖率、链接检查与目录状态报告 + +## 相关文档 + +- [API 总索引](../main.md) +- [XCEngine 平行目录根](../XCEngine/XCEngine.md) diff --git a/docs/api/_meta/rebuild-status.md b/docs/api/_meta/rebuild-status.md new file mode 100644 index 00000000..43c2f9ae --- /dev/null +++ b/docs/api/_meta/rebuild-status.md @@ -0,0 +1,51 @@ +# API 文档重构状态 + +**生成时间**: `2026-03-26 16:41:41` + +**来源**: `docs/api/_tools/audit_api_docs.py` + +## 摘要 + +- Markdown 页面数(全部): `2440` +- Markdown 页面数(canonical): `2437` +- Public headers 数: `185` +- 有效头文件引用数(全部): `185` +- 有效头文件引用数(canonical): `185` +- 无效头文件引用数: `0` +- 失效 `.md` 链接数: `0` +- 非 `.md` 相对链接数: `0` +- 旧模板页面数: `0` +- 扁平 header 页面数: `0` + +## 平行目录 + +- Canonical 根目录: `XCEngine` +- 源码目录节点数: `24` +- 已生成目录总览页节点数: `24` +- 缺失目录总览页节点数: `0` +- 支撑目录: `_meta, _tools` + +## 模块覆盖 + +| 模块 | Public headers | 已覆盖 | 未覆盖 | +|------|----------------|--------|--------| +| `Audio` | `11` | `11` | `0` | +| `Components` | `8` | `8` | `0` | +| `Core` | `42` | `42` | `0` | +| `Debug` | `10` | `10` | `0` | +| `Input` | `5` | `5` | `0` | +| `Memory` | `5` | `5` | `0` | +| `Platform` | `11` | `11` | `0` | +| `RHI` | `68` | `68` | `0` | +| `Resources` | `13` | `13` | `0` | +| `Scene` | `2` | `2` | `0` | +| `Threading` | `10` | `10` | `0` | + +## 元信息覆盖 + +| 字段 | 页面数 | +|------|--------| +| `命名空间` | `209` | +| `类型` | `209` | +| `描述` | `209` | +| `头文件` | `185` | diff --git a/docs/api/_tools/README.md b/docs/api/_tools/README.md new file mode 100644 index 00000000..613d532c --- /dev/null +++ b/docs/api/_tools/README.md @@ -0,0 +1,19 @@ +# API 工具脚本 + +**类型**: `tool-index` + +**描述**: 存放用于生成、审计和整理 API 文档的辅助脚本。 + +## 当前脚本 + +- `audit_api_docs.py` - 审计链接、头文件引用与覆盖率 +- `generate_parallel_canonical_pages.py` - 统一生成 `docs/api/XCEngine/**` 下的 canonical 类型页与方法页 +- `generate_core_resources_canonical_pages.py` - canonical 生成实现脚本 +- `scaffold_parallel_layout.py` - 生成与源码平行的目录总览页 +- `migrate_canonical_pages_to_class_dirs.py` - 将旧的 flat header 页面迁移到 `{TypeName}/{TypeName}.md` +- `fix_links.py` - 扫描并修复 Markdown 相对链接 + +## 相关文档 + +- [API 总索引](../main.md) +- [API 文档重构状态](../_meta/rebuild-status.md) diff --git a/docs/api/_tools/__pycache__/audit_api_docs.cpython-313.pyc b/docs/api/_tools/__pycache__/audit_api_docs.cpython-313.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8869b67d7a70fa2e85b13b88995e7dcf89ee490d GIT binary patch literal 20740 zcmc(HX>=RMnP3BGfVfBk1bAN{!3!k8LzE?vq9{=$b?}tYge;k~A&7(|S|rFcKp%`| zhV~>em1H716GwC`$MD9<&=XIr%z6?!<81tPz3+M7+qcs_jS-NJlBc(kDC^fyk#_U! zU;BO4=q5;kBWj#^TM`Rj*LPHP)mPW|RrS5}bRz}fYtfGA`~r{Eh>jb^Zx zQH!U1okxZkJ-#lRHJZg3+$M@*j2N@FQ5$0-kbTsWfU*HHle8Rw(g~CcP#S^qMst}A z0_BftJUeCi>%Zj`lL?qz>nSqy7}PTcwrEREi(F@H@s>2!he$8kk~0f19a0&RW2Ib< z(X>1Y%5N*67`vP*w-j5(IGF4L>KU3XXUdoy0y&v-CYL}J0Ob*=l5sNm1gc^xm;wS- zGnGssfohm4rief;rkW`xP%Tr#ln|(Hw4Ny?t(*?6>;^5WE2rcV$aND?omIPBckmTl zD$(Q*2B*XR@Wga5G>FgRfiwQu$?*8ZSQs7+rS>Zv-{skz+I5r9XZ zf``$kMr#0eA?TW`e%k4D)G#ju!~W+lcmh*?_I&6969_muCqvU0dY<=B%}fSDu8KLs zsZ*yKYWG7th7}+OjRdIf9Rc7~YLsGC3{Gmp}YrW!B|4UkrWbO?=V86%U1 z)h|~xt7G(R+F66kBxVdukIzm9x~88Eu>P}wJH@~tYC>UF)J+kLsF?_c#f+KR(~}cp zzHw}Vvr~a!I4~}!jU`3{5I|Ab6QIbdd)R?qrM#2}Q#S=jP4t*#gd0Y* z3hEuzpi9kW1A@(g2-`Chm^>50OdMhvWFH#!&rFO;%{%I!9iIsMAi;;2hM5<{%&Cb` zXd-x4E}mGj@l6{x;hi8jgag?;btBUj%Pi+J%Ok_F%61<9XSQ?t_IrS&-k}EHQHwe@ z5T0d&tQ}HZdQtE51^rV2pHDRUd{VUmZ1(xSH0z&CU^0EaGZSnmJP8UIoCY)`BxyDz z=x5mJnE)Gpfh`2FVz$qRx(Ai+4~N-_)3f0~$me5m++?wpSR5f)iyUE6s1l-=sT=0Z zzwC?Ka|Jp#o>wT)g*UY6_tYxwzIz%eKXMeq}Cz@6|;iV?390UVlLog1Cu^Pvu==91AieK zMDtYKlzFNBV*3)kG$xqJIl7#batv@v&;djW*bl&~)QD0%MpZzKDB9#n%zX+U08r=z zwe5ishrGsynt)8G7F6If05~ZJsSO)-1Ughu9P0G;5Boel$A&z^pmgenCbk|(Lim~v zhg7YG_OpRt;Q1N0L#&zz2Us7DEaTJ91wq?jKxt^7oF4N}hB_J)I;`|i9YlAa%GW45 zOZUI+wF})?`K=dQuVlpX>Uj8Xs{5msGNfOmMSJaMAwAH)RNkywHZ-f|=vo*KT^dmr znr2}D5cSE26c9xx^A-G#j@PA7hN8FWiYZU zYOlSgg@k()ZPr0CwYvY0+JI_Dv|$c_ByDI$ZCF=A&==~wz%yektd3Fb6kgP8(j>id2 z**K)9&=f3E2nvwU6b)+1&V}y#8p=?(v@=#%#~0SU+b zou7s9rC(~@tD4i)Hk@;5SX?iOwqxFd{YSfe$)#oY04BA{Y%C$$34~bw5YB1|m4QOt zv{%RMZr<)*4n*xc?`a|F9;HF0(WFuuRAn-RgaLqMv8quO#0e@fI6$Hj7&QzkN{gPz3e>Mz{psLi6g#P>^WX z#3~HAQw>!6Kuib)CI%`Cs9&2jQ0=|A_tL(5Fg_htEw~oDWA+N(UJ81Qmv+7MZM53w|iye4A90-mRy_AZLdWh=`EKc&wmA6%y z*H2^D%MP*^`qS#u9pfa_gnaPPTi?fQToAI--FvP_`XnOM5fHYCe zvSR^J7xuGf17T4+HW}~-L)fz%@c7~(WLxqJ zW=F)zo1HOp9dE8%?!M|2%)91$kYeECz)}xyE{mCJc~h-ms^{o>se+TckW#@7AR5*Y z5KAFt6{@_HT!l~(>Om2wY5Sp`!LFWeU)K-}y9fJ+y82+MhNbiDXd800cvLV8Otu$tG@+N2G;BuN^YU1do2j3tQ zNQsKngLWscgybd*sv4=F8vZovLzsf2M^Il#P|~y`%Cw}U=~ASnrAX65J_h(R!k-EL z%&X zLboUFJCC&gi@r z94`E@_w}YTY5Uas)YuG+-VG@sO-PLs+a?~v1|H+KcuX63%-iBg-@udcP#);(Be*jo zA(aKltJpe}dWH7!np4(U=6b!3;J!wZihG((VO=UL#$N+{%1Y9wED!F{Hw8v7%a(tG zHm}Z8wuuZLy*8P`L5-Blc(08Nj+OHB`md~m%KO1M&2S@i!!E2Xm z3|iwIikgL)A($P^@#duLZ4YV$&=0_l7U*$XvMDfDCQBZ7gSp;ZPva&6cx03|lM6Zy zi*?5C%_ThzM%58mq)Wk@;muX#<$3cw+i25qs1Oq(sTl=WY^{c&sO$JR1#(FQpi z+TgoDY1$U$kEPZ+tR9F+(1@HRHG=DD666*L<|kos!?F=u;H9CBV8;d8Z}Z^pYg1sd zm~6RrBx`E0(3|fq#1SfGX_cA>y@F{Jw<%sd?wNvS=-Y8rgoC3KC^{ zNDm%3l&CXQ1QNXY9$Zsy3UZao^=PAx7alJPX&PbU1aAY}M5_yfMI-xVR&U`*rvewr zoJnZ~o-P@`{tH|W%&>Be%QBdpR?RW>0F)E!Ggusie6i(@+d?pxlM=yPfoZZls2AZBv#c3+&PBZ|8X=S;6uqiYXX5BIoPDmDr}R zZlm_8m_n}#;v%ma;$p7`;u0?naj91ev17ed-ZZ&YAw8+IUS&pt^m4BOVyD*#afR0e zab=PObCQHAZwX+ly~PmMc+(+vdCMTK^_D|i=XErxdQ=slBMw+g1dD=&XCzo1v?);O z8Ol{ZNEYz0Y&W2#DKrBXJCP2*FcU!AdT0z5sc38$b&|37bM0*SjC;>JU|olm>-0F- zROj>wYkA`=nhv7`u;ZnF$#}~ zwAD+OKK<2INP7y?K&MfRY*>fnry+$!^>Wd3Y3IV>nYPBpIXwa)gwm$`6O-ZTHntz> zl)cED224|PG(^rjptE3|WN{c`voXTu%ACQ|)7d@H0~D$4edmBEY5xt%PV9Zq)iwuN zJ%NM-dH)T&HOzWbNbIF+rOuON@q0(j_5dy0gi&gHO~u&saBbc(%*Z`p3hrbZ+>k}q~5~!1^&2@64xa`f7 zubt#-_wmKVsG!tR)n_5xdVuMGR=t@4(NApU_ zx^A+?irJEjX;U)MP0^OZCL&s&1%tWlU;(rFnUGkxF8x8IZ6f$!V&-Xf`g|aW`)cq# zoDYfFP&|B6?1xgaIZ?V9a07)T7lb9@%NR>|heF_00p}Qc++hDY3)@>UE5S83Jq0Fx zV#*OMq1l-kFb#uYaz;wYlbtPK8}NfFPeSJYaTt4CRm2cXOnbzf0vqT+m>4)EgVJuO ze_~J)4anjPgV{zjf@6dYhn|~22cLgt2JASZwZG?ZXV*y|)6+G4bZ8Lw;<`}4&yJlF z4M(8M_joW#e`X>Go}vINYR|IMvooT`KR(XlssIf_6QQuQ85fNM-M;>#gJesehCEPe z$-DuB;5f;dm?zjFEFX>h^dzve1Ne+Lnk{*#LV26Enbum(={CcFG?fJ4eP~(TeKf3xVE2n-imksPeIoBb!n2 z>3|a;VZRv{EeTaV{X)VQ28CVs7AmP^U>4I79z~YL5*DIVEE_Rwv(I80nrYcth(b)37R)T!H9~gn{9wGajH8RZm$hRdEuLQ%%dhA2>zAJt^7kxc{LYjg2cwp`hBwzN+yBMfaKl_7Tfd^_=GDw% zu6*Z8nozz!ZZ2Hv6M(9dH@o5YcbUbJ`m5DKc`ITL31(;HOCSV(H(~|^bM3O9H#fpB zVj8bLA(Xcx&k?~~xeVsETKI*GqU9~I@;1J_ZDn_?yo)dIiktId=2G5V8qr71uAA8< zvFvI-yLvh8T6WVy&vk&b@0s2)UG4mFhLF8`;ZWS{h?y&Rb4BEM)LehvQnd6eZ>fxB zy7^3ZEVGf%Y>ZpVVwOrsjGT#D+;LlB%vQzQsv=*G*;;s8OWfWVv$yc}maB)Z+4tVn zQ1+cr^VW)(rIxqUE+4sihO66m&C+q#O64^F(N0-PF8=v-$DWm3!O_W?i?0_~$BG;I z;zq8i^IGx2R}71)#a(e*e#}myy{q91E1G$RlicjHFiex4q`U&_Lh3yQonp|MaQ}KU$Y#zpG%c=sqS{EKzHts zs;Gw65AA}xgQM-&oA!R#B{UrXrTk5nV?h_U=3Xv(rD$m^(kxgjBYxgm1Bv>)r5s-G zi0P|&ef6^Ln!fR_ma>)I(^0ktKxbyhG97%TBT^_;`>)ORE#wp}9q08GF?|iMuUXEy zrf<4y01@}|C`T1nwJTQD&R4YyRUOgN{rA(;@^pVNQ;q|wi$e>C77yPyQHETo*XxBP zOV7RDe!aAubMB5g_wvrYD~CSr`fojgvsWnXyPrlIjCYO5x0X(6v+q(M=dPV9slTUD z=jz1by2V|~&vN@t@Qo)f>0Wz!O+#tzYZRdFnyLJHFsH*(C$Dbd$aPEJ(jMO8jGX5! z&9Tf@KC?BJxfk7-)?eqOt>BFRX|w+J|{X)2koVG^}X>0!1}Axr+9+G~lKOBaN^`n7yaD3B-%5iSD19#>SqR*VlN5~37g2W2ScN}ATn@S!|G<-~^y z>1FO#;sa&V>OQ--7h3PLKV(7keD()DRA~rpa{sHgQ$4KH{Zor^*i3UO9meU-VJpq; z)ImI!ykN$a9ayDQ_izqF2b~vu_h^O40BbJ5bOP44Xc=9j8k`znT|QDQ?bBy=f>k!f zVx39zYJgwwr6D%7D0W}4T|oJ8jpKO+@NARUk;H3w#P=;r z;x#@ZZ+Q~0a-4UYWp*aaIJe9(a>=C+^l#>$i|%@2$s{q&NKc z%Gmi(8IL`bVwX3Q*^O%r@`lQ+wq@(?0s7WQpl<{Ey^lcO4)psTfj(Jdvy}b^wwx`r zrQ@MBvOyx~9%w@_dkbm%z1dK28&*gI1>4pP!#2u$;E~E}^Ps(HQy77bgcO)guK_N` z9Hf=QKaV8cxQ+65J(9$SmABh#`~u}QZKJ$Bf8z3*zCd}+N_oGsrT!jzr1F}fG>2&_ zp~X2{YH`k1TAVc3Dk~!9aNBp_ctF{fWjvCaD>26(eZ>7l`Zj8%_mOHP9cradsg>L< zYbAFZwURF9%=A4%tt4?JYNh|tYK0j{xr$KsgsF}V$?HC5zzxFzm<9$1*|Pw#=P*iP zl7EQt9fump$c<+Bb*nZpa?j!<>U4A-JL-U&MXPW9;Lgi`wfg<9-2VE{R_9-2y?~rW zHzs&ezw_qm!s6=XpAkoEo8#1+weqC9a>`vf?x;M{RyojC$%v{`vyFs$^^G5{{$jDV z7U=L=Oe5TnX_PL^G(K=)=F}`Mk>Qfk>MKj1{^-S7G`71P1Bu%NjyrGt!<{$&)9R~N z|MkO#TVGwi^YW#C{qQ2lokfr17IccMDnW`Bxdo}@d~n?Q>W8;}^1-d2zLem|B^<}d z-6KcBQ{aF?V8$+jTfK5|_0kI7o7LsF zR^RxQQpqSDtT5Odw?6pKpT70Y+pquR)-PWrYT|Zu$qq)xYUBe6gA6d0Vu^pTcsuf< zl=|t{U%LI$2Z`dK84im3^S_sL$RYW`9UEwh2+i#ee*tfmk|3K9^pmS{>#c>kZ^ZoF zqEfCob-iQODwXX!@2!6O6$K-|BE0;qH!gqrqp#h5{kyX*KzYF-C4p^iQ`=v_7mz3c zxq9VqWq7VmHq1$8y7f4b?sl&O>=np_eFLNKLo|yEVyx<~{^iYIy|wz{dx@gpnin$s zyUVLT`3J~NX&tZzS~ur*VHVfUU<*t>3PFs6!$R66WZ{~z2OOQQ|x`bt)J zc3>{~5MiB2>b*V=5DkZ`c|SrT6ame-8hKf!Pp$594R6x)JI7E6Zo@$_zxuPAzkCf! zjs5zR$W{(j$vkZ)_h7-lj9zK>?}1)K#+)=XOvj7MBOQG4j`{w0Sru2kn=jh~4%NCQ zuDOq|>qob0jhk!e;cE_|i_}pGE+gKt8%Qc^xw->%Y5^%aYBZGWNOCtL{d|4|Hpo|{g4O!ab zRdrnbKEA30k}F(XZ3kbmpQCf)<<(pbxG?u3NiFyRd->WvDD92he7HqG8(!{zv7fWn zMd|v)!(vtxC=&>9L|%whxAWEQ9QgIBALpt(oQL78!%^Csir#uKN_V9|EEY!T;uPte zZP)vul@4KdFSo1jlV;935Tyr|%v(QnavjHowkNpO6WocDob|~lJ)&R_d~D--o)kJq zxC5iy=u@2a=_u_}u(j{DEdRMs*TL29U-=Se?Tpd~6rH&c)x|)-7B>8{m(JZ^NcWfo^LtN?U>{yr#NdcN>3|%hl(f~z;?Vt5xLxV&7=aqjpNob^PMKKZ+}{J1{- zlKG;U%dKA?e(&TvC%N561$Qr3kD8D@5Y-R1qsO`I z!%_W_M4sELrwvVF?TFI*e`BwJBMDML;u+S(n#+x^G;-GRNaeCVR9RmzoQrW|0gYL8ddr+)&JFKz`d)XvMa&CsWoEP+E}d0 zC|#AZysju+D_5SiB1%`v54P&%%oP(~)6G@)d;}dYsjU_};NU_PU*5`M>fvd6QvI+5-TFUt0(x%4z6PVN{F*|MQOOlMaBVA*wwUBxz4k9MfJNA z4~w3tKJPbqO$$fjW-Gaz)Ux#a(lg5{F2DAgxeneszxjq#jf8YHtw0ge7}Yl=i%G!I zY#5sMbDhJS_XKzR1lM^|$bK@aA4w)%P0LZlG)48z$+%=O?JLutjD5m#9UdW@iRy=w z=~mNp z(wRu-Qt>r&H7Z5bO;g6g1;JFb#0sV|nX2vWvE_Q9YWGSxoG#!h_i_8qaQSDW=5xv7 zlWSo|RNs<}i|4>$n@C8=sl($Ya??D!bS~mwD!pcQLDsqTnDt)>rqYO0FjdM_n02F2 z)waU$RR=hjpgJeH{Hdrpm@NK=bXj`QE0_vnrgGj?E|@AJVYoES(RGq*73N4Kz*H%@ zR`GV(hTCSze(wZ1e4j(bsNv2MUP?vV-lo84)=!a-=w+m`v4-n@tr{>$QmO7%$(vfZ zw5+%~z^SR2`DJMoCCdY+ui9f-PnV&T_d9fqj!A1(!|fT|4Un+zHUy`!+JhUOO<@FA znk0A?gDRtE3`CA%pks{dhB>cBavRHK#H*?@40*5fm^bhcx3WyPB~Qi%9^!U>D34_W z4{=LBlqYKgj}068p*;2tJlWgg$=Se@yDgr)4LteV;wjj`Q@Aajq76L7+u|wlsyDXX z*;1EdaIUNqzX0NpZzdB{ihSyjd^@HA&S&7xYEJKVOKaJ=B4t-2B{-zR8V)>p*#I{@ z(-L2r5$SV*$(dnHk?yv_dYT*-^-Z5=eIS!Pg@SVwapVZCqXy25y4oDXV3d?s0;$*= zkYob+^EdNLMiIp0;m|4?&z+ryr;EgL&)WbbtsOk`W2BVWbOFlGn3?Et14Ci%yfF)@x zZrs^sh(seHM@)#t;TAv9LN+Xe_@JFSkH>7kM<_8v_-FzgB$jqF+8Gu;aYHtEcrTm? zVnv#W`X+F&??FVqXMh_eX;VbQ^@AY$UjcCpPMd^&4iOwEP0x;{SNwB&1=l>xr+epN zbzzLrxjbxf^jX&}w(krI7H2%YZY_<{=D{H{=>m9G%v8jiiUd>1eD}?)oW=0vFTe6- zA3aAj{hBLS|yldn1`ly`Au-JB8EW&~Gq zB@}s#bG5;lL7}vrE7`{xae+#36>l@k*<9lx-gQ{0Ji=8R<&3>ix{u(TZ+9(gmxFxG zKB1z6gSR&xh|-+|RT?oZ{TXL;N9l&R$xLQz{DKd*sL$u3$v0Lc&2nJtqmF^S1K~L% zp79LQo|^^a;chrFF;~7B|y(*hG*d`Q4$JsWZ%TpY*KS zaa!tlP?h-U84x#w6r}$dnJ&-KW5d4gqaNv=%Wg#d40D3}ILC%0bILwUJb=-=7!h-d zVW4NYQ~Iijad>E`pOHvOpNC8KQ!|j2Xc&MG|tOAJ^|3NGJJEVj7MR#70Ag2GYSKA9p$!Ixe>N3;R4}iPo9!`k5pOP9dK`{f&l}>I zc+xe~8JU2?((~qcPI=@>KBtkRY_J_$YJ-E*^Xc)7oTYp|qkP^3+>6ig<`Upb&tB5= z=?=)rTEG=I@z$pKj2q^ROTAz3<#JnBcKoXSgLc7u1SvBwJ^A$~xx5`hdJB--b1wIO zyO%3H`pJ%eYX2YYg8c+X!7=yz%X8nJgX87upBsK^5OUi%$_@uy)uunH(^UJ`D2U*j zQ)<&1KHj&hRL=W)tx9*_LPM01rn20(t5xp%MwP1hzWy&%kl0P9sj}|dLn>AM{Yg!} kDt&Dad;n-+PSE84+Gu}e_^*!(#v&L6;SexgKpNry0oh;zVgLXD literal 0 HcmV?d00001 diff --git a/docs/api/_tools/__pycache__/fix_links.cpython-313.pyc b/docs/api/_tools/__pycache__/fix_links.cpython-313.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4d58e68c5add58eb3d889b4691f1b50c452ebe56 GIT binary patch literal 8182 zcmcgxYit`=cD_Rn$>IB{hb37WNtA8sK}DAA*i7WuvL#E_E9Hn=Z6%wf#gR>m8Y(l? z%BGQBqG$nn{ljvdzzkXx3=&`!WPx>oVBw$XqCfhl02yjc?!+y$SYv_w^9x9kUp;q* zGo)=g>7w0UL6>*#oH_T-x!=9#J7=C*ttJG;lmFM)SSvz*z!yrg*d!*6~+Nym@i>H>Upi8-`{xW1> z5uu0$A-G@Xxp`ul;!TXM1@UG^54D9cKy76xsBMgeF}9#91aD_daP3%jGG<911^OIa zNSP6hE@>`leAd*kX(D!&zQ`xmSdL!d6M`_nv#Tu6ax1Jr$2j`byHj*Dv9h_&a>+JfsrY%b6+>x63}sH=In(hR9OXf*3Z$c$*v z8#L6BB$Uy-$frxa8D!TJKVj+U=0-fW5=pZ32D~sWu$Qnk1UepDV`=~3dLp_RX9ued zkysXqL6Pu_$VZ9>p52H?R#;IdfSRPJk8EtPTvQ~lBx0OTD^gf#SV;1sZX?1c1(B3~ zurX+w7Tdu3!g6FIwk+Fuc{O%59FK8pf`8+hXyX$6dL$l8v0@T44AzD(GIfN8*atM~c z_8I&f6i&0GE?7u4KBrym9xx+RZ;2EHbL3)Y&?sxEt?^D(0QG}9bc^F78dz#=YAVPI zi8!ovgjVq{uQt!d0rzkxnV?rTdDt0AdNmdYNiIsSTxM6+=-4V9OVaGsn2;3wJm3=X z7+gLbkIf?LVLjm~X>BkXq=9&R4*B$=rJ^&8b&3=WE-j>Jk{=33V|>jbN5de1r6e6u z(WtZz3wT(-3ltu90ur5-TlfiiKlA&czZw38FjQ&u$la8+6x}`PnX+?#$>}XPz3Fq$ z^{COCn=CdAq~{*%k+Zb`fU%Dh>?1|{(exyAx!OwY{zAKdCwY%4wjVDzkCz-{1;<#? zaV9;rXLje!?Rm1Dcf%MjzyyvU874CTkk`Sa20T?b;IpGHcwoQR>(?>_M^=Hgr0(=3 z6)@E^p{7r(z*PZ|at&vX2f(UZ?7?VVJc4WKSOv`?9ith5YmS@+85+%N@cB}sRXu$| zNJGu(8SNku(hq>DC4jnI7DpJ8R5y*J)xhZLxt5SYnH#`YpBg^PCh3&~pmQY& z0IncbI;~du#5$eeSQ)ec;s}>WUS@eek4^Ut-mEE&-#;fq)*wNaw?nU}<0IT9R@AP? zI8hsCIgyM5!g=iIe3WR!ie=Oqk_owClKSLRjDk+NWm-wBuP3-LRzbu>YI7sJlGua| zfkzQAEF{=gk$Z_v0&3-#kdL)KJSLX@1S&wT!?XS4JNER{Lz`>+&714#vly4HcROx( zq|cS@jkn&v@xF{zclz8ztLuZ|4}@&s&d+|S-I@H{T67B+LynVHyLELiq`O6C@K z*77}pBK=mu@>Y6$&uptXBws~8hKzJb{u4A_Kz|L+msB)!Ks7>ek`HS*Z57F(`d+Jw zTfCZ3I5I>6W}7f(L%JX~@k=En;WrB7%{E{R3mO`ECC>=7K$|)|5rfk$B4cJN22Sr1 z9Dy9oMb=r&3IIU##fSi|F@_GU=?Nz|)1X%M%R%-z3X(qG3Ifgo9QPbyDNilWr9zD*-Tk z@tUNMKMLcWf`5U53h-igZ%^L*X?pUZy-mV})3ZIjJ({<5rq5ys9lJYvdoduKt3=mKg1Etw!QO-{&6J4Gf9@l#`4`3kFU*h}J1a z2k0<_P>34QVgh-E;&e+YLV^-KmS>>UU1)K9!Egk>9TZN#xDwa`ih2-EE{tlaz}yTB zFf(;-b?9(Nubf%Hzh0glY5}n1s)j}#h=#wp$f&jhtrD-7z|YGvJ}Pza z6c>qKOUZ5;C=-x1piCIM5n70Gm%xEzkLwo+KBe1Ct_~anLQ4VdO+?}DT&i_>>Cn=J z<@4uzeaq*U4?){^zHiyT9`!BzUZA?zrC?w8tdT_Mg!V(sbYS8y7p7*LzeYlJ6qw}J zg9xK;bk#(Sm;~3AB^6^UvJp&>>(5P%V!W@@rY_x|rmYH)s>9{93+5o+E-w{ebYpcH zoq?eg7-L2!9cik|tSV795T_66m03o?B`==-lb`x`fVK+YkZSdM@fc@V!gNb2A;Xdy z(J3?Ls1T*hCK3X@aNNpe!5mWGi!(0Xkv7$7gcdA8IJjRf3+4qAgV%50%Xg3()sZL& zG40ERF)B!4hyl16(u9m5iZS`sRfp|p4iPrQSVBgqt;0Gmn*ZR>KMw|CY{tge{VKZX z{{cc55C1<}N(=O^zNNH^rG9u%`5be62Uz|a?A}v`%gN+MU~n)+;f4S$iHV6scQten z36oDJl2S|ntcwE{mWW41Eyr$&df9P`#8OIg{*XxcQVk1|E0w)9useDc=vCCG=TE?R z{5!ZhiK|n%8iPvIu{@vPeKt{diBD{9h$aD)CI#&2r7(rZD3wAKQ7^|eGA|s&-PpPE z7)d;)Wjv%RK%t~S)Jeq7XXWu`6pi@I4JX;F$x0IwQqiP_tWh3=S!Dv!U2BCF$fJrB zHi1MDbka+S<_gQj1W`1sB)BAmRzOBUOb(oMaM-hgfVZzgD``5NPRmh|r4o!w5wv(v zjitjePGS)Lx8sSGNL)DKuNAxq$^<8@-hZW0*|YEN^zG>!ac3@LeBlB(sHLG~?kJc$ za>kOmw_xtwiIx0g1^?KWfs%i&;GY8;ardp;Z)M-Rb0Tl)tbIURGJ6XW&!`cQgR!Y% zgFj;e;l_?qLrzf)*@Cu1%*cbA%b3(dX7=KhTJkM_2` z7H^?tC^KDdJ6LM-7ux*Awl^}fa04_qw`I>2n+}$m`U_3{nMvqrIFP&ig|+B8ks1F_ zyXR5+;63C0BgOVp+vc*nz3A@8Z##2)X3slN_V(?}@36mG`)uv=^}P4(l6S1&9s6>m z=$-txp@Mg&+}&U9_LmRzJu&O|wLI5S4ULaosJ$b5ExWek+L_)Ny-(y@19?y2aRc%U zJZ?tL#=Dl=mOa{6rVsAecY1!+_gUZP19|#bi9S)FPux!y=`&xxSD+`$9f!&t-Q}(W z<<4VItcHfh=USuF_1J@&_usvK`+9EZ&QJ4>p0c&6X!Y({oVR9f%GPGy++`4|_dUojMPxI7%i3p0smah^xO=3Wk2}tmWB+o{oqK1dPD{NjA zbz6Ka$@+}^0v0j+gykZr2tQzkt*_kYF{|al znIHkPkH402e)41`@P7r={0c|~vG}i{`mQE^+B17f=GKC_wPfC3Fz+whof+dJqcs!D zx^r7!83*qTm0j+;2W}s@b0}l@R*Ot;01TTu@}#GXGfQycIh>yPmYgDV?azOtLGFgT z2mby*w(Z_u7G0z1={fH8anVmPkvJT&SuWYg2I(y^n_VliW29356ybGM^ znamMTw5fq1erp{3?psa+w|1?=mAl^w*eCw8b8Nr%U*2(z`L(~QV11J5&5ES33?_lM+ya0q`NZ zs#Xa1RMtjINmEFiYC=FSC*K9$qpcO9=B9*f!^MrH*rOZZUA;4CF zGveU;r4p)P1hf4hMf{)?I2WAmm<4o6X%Ch8GDZd%#jwh0U$Cx8nbQlsH8u|s>TF?g zLj+i0S$;>xjAM?V%DJkqP_?6?ozqv-Nx*INubqz-yu1zTeXWEYBplx>;RFfSs}i#p zWXsH(Yv$rsX86MUf1kxXb)TrUm`1f2tVKuz7Mli(8A66Xlf?`_V6g@mxsJtVXY1Ib zvF_V_pFNuDKG9sW$5h+Ac1`!yNUJz~t+c8S)~uRFRC{asR9#YTxn(XjG5UW}Af|;U^v2l$ouX)Z2H0qTmRKdeoR3EXka9kW zpN7jhb_-u(rkQfXb8`t85BM0(v22u$`cngA!TIU&IXXB#F&-SBI}M{9k||$hV$lS5 zu#!yo1yVMe9+N*#K^hw-&@St&e6Uhe+k#Aa{V9qG&CZ?*{y30oqUnW1G7_(h48&5Px^RU(jHrclmCSa{YIZW2fK({8E~lRa z(HM!xfk(m%i)ML_IQv_&mQ;3Pg4g`~e0i%>9v!dGQKPOe8{9G`%G?6n0O z(9bk_NE$PT{&pUI@}}Wka-?z%3wQOp8b%#HQMqv?=IEz2u$$OjE?V; z0d+>Muifqcn;FgJhI5-A2Xg&+*Wd%o8&AO)9nUS&@PoV58?OwXncO8Cv0*ITpPt?^ zelnNu9?qLacF7}BXXmHgxwT@~;e2Pc7cclDvn_M&=81nC&R#FJ_T|led9qLDo>VxD zff5e;hy|ZZG=y>XG#nN+34ve2u*G@Q%kkJnDS{J0T#A*#d?VbH;ylsBoDNRCyAVDz z738G|PYUjEDnt5YB!_uN@g?2|5+t!69F~Q{pCM@;GG?i_<&U8!_^Tj^$$*f8>ams} zh$p0mAfHi)Fnx`T|ACr+547;m%?l-Kcfs0SwDy#&{RL}(+Enft{6+ZV@O`S-b8_2M za&&&>==}0Z+WJ&)AX=Y#Y(&S?t_EnmVIv&RyCMYPd^!m!n*PTd1R^b&R8hO{cO><9 M6OXlsY?0>n-<_s?>Hq)$ literal 0 HcmV?d00001 diff --git a/docs/api/_tools/__pycache__/generate_core_resources_canonical_pages.cpython-313.pyc b/docs/api/_tools/__pycache__/generate_core_resources_canonical_pages.cpython-313.pyc new file mode 100644 index 0000000000000000000000000000000000000000..32dbe1a847a71f113640b084f934a0ee71191879 GIT binary patch literal 38858 zcmeIb33OEFoiA9W+83#+wC^fyNF|WOCIpfIvj`9%33Mq(wg4fd0%Sx9-%??aNg~^E zEZIpYf^EtniHlA;$lXbhJ5C~RiF=tdelzDy-%80;rA&Kx-AINxulvb?*Ndl5&;0)1 zt$V8^N+#*obLN~mb3tEy_uJS1_y7Ley_cG5RN(Rc*S{M4-=0(`{*GRxMZ8M>{jwhJNZ-gr0^;1SH-LFtJHB+PQ6FFTgU6{ii5f`#X)_8QY@(} zLn=D{+Ys}1WyZrKA8$Hn>dKYg;=i1xsav7wGb;PlKjkjq;SrgBE+vvKD*Q@-K}HJ{Fna%Ses;8OX_gQ~6?sjT>KnSx7` zddX)mnZ_cg$yqXuRZf$;WEz{CCU40!>2jL z0o+2a2yQV~0@u!!!Y$*<;Z|^!aF=maaH}~7+!}5<+!b6c+&Zov?n-VI+|}F~xNEtF zUM1>T$2H<@J+}dF6W0v4h1&>s6So=eBit6aTe)p;w{xv^+vR;2v*C5oc6dlYDV3 zwg<5XABZjCp5_j*m0^ePF!Pmi=eb_yE91V*9bvw5?kij$^Hp$P<&H96B{#V179C!*Tkk>TMX&s~BpQLW2; ze9-NR>IU8YL*4;bRNuX=l?9FJPW27C>rM^y$G{MqWSVM~LZQ58hvyZAQ_;nO7dmMG zd23QC6poaR&s8Yl4OH#!JLST!ZeX~-cVLkBP@(oHx4r3Lx3|yTe`4@pJE}V<)qW7^ zJoSC22kXVw)*pAdU3}k&tG9occlGiv&#;&8cX@jI``p9s!T!FX-qU@@U7otr=b~vS zzjx3*;5yq&wesnx%7#A=!O<~ABrWU0(8SRAVgDMzR3fNL?jcyQpqBvLVlRu~pK-m+i@BL&u1eri_%bo&<<1j%ZCFyLs=_=rWJyE z1y9X$n4+33-hsj4sBzoysnf%5mwUt$Rc}M5qnhomqu%3DO`H3)cOhAwGTqN=W4ZBY%^k3owX4xHd!eFKB;0|tJzvO?-}8}{UhgHZtp3( z7(!mhLC^B)o-MVH_tlQ}9y<6`jiY*V(?L%S{hjt69UAOs2@XHqd}z7Dv3a!QFpaP0 zbYH*gft<+l^k~uHYBAsW)BNy=tAE5b0N>yl%%h{J!ds3GS8qP$aU3o$x6l6Yt+`iU zxc%-g4!Y}VHdk-nc+ic|^9LVyj8;|;pQgzl=6enw^i&^Oe*P<)7c>)<9jqSRaS$D- zL6iHj_($M%pqM82u$Lnne8$D|g9B)>7=LWg-8aNuHo{$b@aU*Ps%>L5tut2f z7LRA}xH}%TJZhGr_6>PGqedyu@{Q5-#F)hyYon=Bbo-z?F=y?@XvTu5#aU~jRyp1~ zG%|R4=v=(snvK!y#j%SEsE_w&``{UjK|Fi?#%QLLU5s0txiX%)eR#k-G#t-dnUGnG zTby}WJoDDUkuC0lc;;mZnZ>xpna{_E3<)~3 zc`934qBdzvxD$iNM)tanjf|RxV@sl?Wn(nwf%wIRY}yoG53G=`!Q&?qO4+n&V>EX` zDJ;R_Vm5A!4?^pc-oByuAe3&5uZxc15iwR?!!7ZJy4U6L#8>d9s70!FC*Z?~D`9NV zGr8xKYf+78vbsd$;om&eO&bNBPEQ-GQA=-S$N^mdmNojM$wMf*`4hVfdr;%&4QV3I%x!N_6$ z{D4dLO1Wx#03uh`Zm0z;ig^#oK{bwpIP@y|0o~*WXC^($du!poqByAFm7D?>0VS`h z#HHY%np0IFhWXU8Ps4m#UUOXM&_@kB2341a1VDVyo;WIFw5k3?1nc+)izBKqOvd_wVHVkaKBO_|Ux)|!i z0Ryb*ZV%eP?}QUop9B&S8({gM8#Q9o?dR2EGz7k?@-i4=Wp+sz9Fv*$30t<))Rf6-qT)S zJ7)&@5zJRKlR`W=$cJ1b!|vYWt`Y27HVqy89%}ZY8R0059O{#Y5Jzc7;?rWx45>3C zso5cQcEnr|QWr#Q%R=g9k?j1CIzN(Md_!F<&Ki}I97#He7~FG}T{4n{fY<{BF}C!j z5c-vH*e<$ME_$Rm3C&_?WK?N)sG{m8h6mkI4MuG6G=5GG4UPb%)QF?T5XuZL`^A4e4@@aM6^A;c@~!upBzzShfoF7CP19?q-^W>$qV9U)VVpsr!PP2SO6 z$j)%yBpv0HT#9tn;Z)SGFX}itrS2F_sjugCNXZjc?MUGV$WJ?icfmHdO~r)k}4Z>c;FS?`=W@UQyI5 z+)DfbD7jVmRXY_Kik-?`xO=!YPEE4emFCK=?TOt1(d{I2>eNcJ>DD=Q)u@)9K8z=q z;?y>if2%^_RCZB|7ClZ~mtj#5UOAOiqV#K5I8&14?_SphM1Apt$%;*4Euthp%1|dO z!>N?p47kRryD%n;AE#0(rBlgiB)?tJ-SEZrV`P)HPad&aP?~CK4phz*sTBhl?e@P` zD7sg3IvVaK+$dPsZ!wA~U33vy^hh&>9x5LaAFl;#W2dqmZel%sR5wmB#8?#ylY+(! z%UR#SR&iAMG+WZ2r!+P3Xt^S){PNxZ3y(w3R(90fv8BD0+qY#~Yj0O;RCB6tq#sw( zzSE~&?t!T0I6v&g*6ttnVtF5>?5fklr*ZaaXyJRJMi~x!qE^}8I{^ItgeR(Dzfmo2 zhd2SFYRVJUv#oR5HNey9;?cvg#~u+{WE}Ml4h^t#l3itbPxYPV&m$R2|M&1CqYe?ub71a{k49|F%mdfwk9~t~O2f|6p^_wmPU^ zJ+ApQtyoAa4m3<}4KCmOQTb+8zCCER&zQ^5f(soJ9W&;_f6^!{B|$k|xO}rvzWK8( zg)Mu&P+?9VYkv^_X)y#0Ojt4XBA6i1uxlENG9}?=EN>|+Rh6_<`;gnI;*@NY)6yxT z_hhg!z9mui*HN|_n=uJ6k(M$6r3JNUIF(#W8EVla+sd3;+L~VU>GW~8-l_ech<^dX;-w5i`%UI9q|{S+0-L% zad|Y%P9?@|4aP0inJSWNoo0DFfF?Rk$?9^ZO5+3(&FjbQ7PN_CTx6N z$0iJl2MQN!szeq@kvv1khK zV!M`q5@iA3b&W(-eFFoIw5aju@W45Cx_hG97}})b`<~)QDW#f@qV>ckzJZrEQ^WL@3uzN+zL6PyVMK4fpr6qDGJSm) zb8hJKP=YOI-l#BVjCFhgnAnYzb!jw7T1IU9r2|wblK}&HSp%(diogS<9>=*az6}7Z zaO%XE_!&LGQue4Z73}Fk+QkpsmP%<`5~z{4rkGpCIRJ#d@O)k(UMKbQi+YzF5K4XL z^cz&zV1^EU49$<~rORhjSshh6Msup`mT!KLWLI&QZ9KxH94fZ>`CahyZ4{v8pCNxg zInR0xxepH zT{wMNFnw7ly*gseq2+(c@|jL;*3K)`8tsGYm7o^>l=qIn^9s8o!GkB+jK#^mZe@I> z^#NRB{U$l2I2jwP0QneX;*<`C7vUC@*4}zxSLgO#LWBqh(t2EdeE$iaO+X4J0EEWA z5#0O40jJrt+hdSt(0$Cs_llQHk+}VRME?wbo+>zFiks&Au(>p7E)6(B<`o#RqO$P@ zb}M-DrA>l*)uaKAI2Kf}^w3^mWAShByrSq9xu4oKE@1An$afX6T68lVZml(UErC;i&2G(&;+){jc2}3(Q`B`_7wJ|8DHrsPZe` z3IyMMd2H_bGh*=U+rPN`!i#e+|LW5#)3eY2?9R`>HusK?(yDg4M!dv3xbv-F&R%#` zjQ;e+U(Ag?GdKQfyi64*rTgixK7IeEi_+bF{+kG-@>1G7-Yja<>wkRb`X9}{e`$8& zn__XSwq1Q5Zw;bn$A38Y>QCnU*Jph{ntlG4vp;-c?i(-6{`5O?&3B%AfA+;IEYG$+ zx0jZTm`5yf?t523f4@EbQmlvz*XJg#-MRV=%AnoGh=kq(mgmasyYI}sIwkf5U5a;I zy?3~8z)Rfc*%t$M-hW?=L6W&wrslrMdZTr^hbR#Z(Cjy-6BEUT^Sw*6Kk-wo#x^%F z0d|!a%N+mS?6sF>zwzqq*Pp-p++=(V^xO&W$iVPZZn4zoe|GosPcS`m)6akE`}*R< zTIXr7#ayh!xhr5hOx^jl5B;3G{ELJVyIjXX*KzUQQnYjKXOpvE|AsVk&&*!={++4k zs8{~L?9|s-Q=M*J%E1Qq!mD$?7=L&^)s_KqDCU0oE{1IO`R6`;D?qE{-FH6y)0b#j zJ@Yb~fG+TR&bV0rKE3wt-Pe97C%tp+2kcc!s@XOKkRq-a48R-jhyxIx0rd`0wpdA6 zQF9Z&!bsiu^~>ng>^I)Vs*}3;EK7pY=f3ZglYDyRr*nZ9K7IGn-1onWcCjSlw9UTv z%BL?+Qq$jgW%kWyf3Wad*#2q_l-N( ze{|>CGcq4&_6JjQ{%@fQR%`K`G{ZSLh zwv4H` z4gbQ(AI}*4wk;T-VPa|B-kP|CN-PpI{gB3(+a3`17k-F1`w4xXk zl>v$YD?`)y7{awl%b+xgWoSCLA+3(3r82a!GPIqI2-hbqgVH3Hq3tY1T7z7ME>?!F zGYjEH77iR_L0>3MVi~&bXIMIpjfIG?wX;5n{++CCqJIngI!^S1B*2-HqPQ}Glx(j_ zh?d*nG)Vh{p}$FquAq3t=D|*6WmWs%q6MmC^cbfs=7t^f-^CsCKh!>>)A)O|&lqo? zlO$El68W-)q3KcOCjJtZ5&trrsIn)jJQOEz@b4nfp^mCf^_^uzO7T8LGzy0)MrIgr z4Go^cp~drmP9^C2y*v++eN@v&+?y!vFwhxvNBO?~lb~v7$OC>-|A{`HL4~M#q;GJ@ zLpM)$+Y%k|7GPnV56H!w?j3TSaSic7r1}JZ9s*Ew@5;j-%qtk%Dbgw#!7|Mfd;OSE zEpg{x^HOufZ1e4(*ger2NwxX7mwIky=J=KVhQO-VHiR-O<>22tS%&Y)iM+b$X9pB(?HOXk?yt&FV8jTamJjev0B z3`a1-5z1ITz8y3cB)Dw8X!akNv6e-$bH{fk(ll=93qRXPq|Qf_3IHv@C|_g9R1h|m z22G_QQ~B8TPjn_6>KDutX5WDseLh$!VF6%D6$Yn>Xmt|wLM zjZ+h+H#+5f5>&;hxtySLcQqZV1RppRgG@RGfl?TR)wXBi%^<>FM*W14DPU(xZ4UBi z;bRb-#W)b7ckAqm&J;R7yDO0jB|CLrd;+@@cRr1tF$U2wNA-$MV-GIt;^UNezuSZ{ zrm@YC;^M#Yv3*Fr=I$+=PP`(oN&$FP^x;&)$z|?bRjlYizs0AEf1u&ohN~MU_y3?}sx(->CX}&uY_AB#ZAD|dZ`!hb z=YPmeX8qvt8@83>nusNH;=D+~jYIPnMQHxbo*1AVZ$&b{@|&X|C;N=QwPt;0Q>3rL zO(G*V@MJKzdNN-~UmH$u3Z^%O(p$#%e3DZZI63ubXj$__*I$(g`wxb;92(mJGMnGx z&mxj@VE>h3A-y`BUKdQS3#G3_^L6QgErG#6PoQ4NULDe{2IQSE-AYTpnVoz2*td^G zth*xC^oX_Ko=%;UHog=0AZt#@QVC!k$uE7q_O;q8_2YZcE=va5WzGpaI@R=n^36?C zn}ynK;o7!fZCj{zk6_v(sP}xq%>oP(hQ}w{1AiEQK9R`B$jRzIh@1>!)gl~3CMTnb zu_q2+DnL%d&eV#8UU6sAretVB->K2!g+iGSQzW^}9{e6WWTVFIvS=CqZKRFrC8;^k+q|BU;ZvZpn zv#WPU+ul}2Hs<)BBQ+l;r=Og^fP=aInEVWIYCYa#polD-?rf3M9fPCC1|bYaoG|_$ zkgbWP{0uxq^hgisN+Om*cz_N%`~|+@kghUfDL}wXwj-o-+_aPhnuC^lL0^xsu&yYm zEAl@P);WSYN5oe6T`rJ+rB^7b6>N23+uERQZOFC`Gy_ZCclS(c!_`ew)uBS$nFjmq-?4kY_yql6t1}P zAT7AyrY{(qp}wQQtLIVkP8t_#f;=wi1-=6RR>4vt=t~xjkS(1^ME))j!Y|b`z0|Wb zlr7$SSCV)K(H};E1E}NozV0m&mgQB0wEgJmvpqB}?CIVw#R2D1CA+i5Z()QR_19zU z48Y~&r5!IJzMSJ>gn8C!kTWG2{usxhfT8`s$pr6!ai!3H0#;>8nn&%_I(4|=s_JAe zJZ^oEwIDo?-NV!!#Dj`2O`0qSf3WEwx?I#i^4ml{_VD-d?of-^!heCEzeUd9Q>d1m z&1_*uRgjZoQ^|;XjFk*DN~+}9nE6?J1fKh7!~H{4va>%+Xzn!`c;%5hU* z+0D$F$>vbz)^P)IuuK;{kj)@BsL$RB9IG?(>ceFS8FqJ{x*NF8fAQ)6@ipTeYKk zG=maUQeq|sPQc)QI%r)!Jvi2elZg)T7%gMO-{x-)oB${NBmK&VAro{N1o$l> zL)C*xW{^b8CuDVer0=BknvkJL3d~tC`Pk&1sk1`XBQyFfQfOAqNBZU9f-u@iyuO6O za<+ZY_CfQ9M{%VP_8k%qxrD4^Gy3Cl0o5~lM?`ISVed10eHk3z~6oj`C*nkSAm+7qx+rz}SzlAL!c`#@~LgETA#c|E|meYG&a(f1>h`s9}-8|z*$*;6G=Q9Fb>IcCIUhukg8IK zk|a-?9!H0qCaISgm5fAi-(D`FD4n(?YRr^!E;)h=dy~a_V|JS5Ba;YLW-gl@Md?fS zEGJ$Mu?mvTeXi4t_U9$Ge~FX{ZQ7~qJh4Qod^T?d@tab7O`@K{KWrxBh$hysjw{-b z!eq>G_;K)o@&B)6KpkAv{vTY)?KQCrMe_Y&kME%+ zR!G9WK#C;9^Ehd|+uGgL5JQyzz;ctp?b82%GRklnB+=DH5B5*_@3DU>kQ;2&#ZS_( zBK%)a3Lm0sma%F?!5vnO z{Rm;cR0Yz;1bW8aLnbEBR#USesTX(zYmS`oAuXcWj*sMbC($F4lRIL+J^hop3%=XG zx^nxSuiL#%2t&}H+f)kFvQ$Bw$mr-P2>v9?>J>k?5LUub`(-M7^@>Kh7_1)PDMLi&msb*&Up z#t?RvXeOPg80p())Y}tdZ$rj+!*gHp+h%n6k&HtB{)^C=iHNE$z7sPbrip%kZeV#Z zuTIFVpL|ltUNxg%EhTa>nRKQb<2yQ|&x?ge(#isxg|aomn*Bo8L1F(P(CrQ@_om<{ zwLRs&D#c(Vkt_@8)QI^CD+1lY!n$$oCnj6OoX&_Q^)u$0kMl}=nwac-Ks8gbZps^~ z*eH~55;h$ZijUv0p7@xW|v$9r0iqbKasRTf3HwjJK6gl_d(vfhlQ5C z=uo?IC+pX)Wc|8XQazbBUHVZ;%S0!*KCzm12fTsflifo8x*2n$6j(L`274?)^^Cb( z@^=SL28&h;g=?l(3Hc2(=5Eu-_@9KRTmkLhu_VHuxS5nF_`6*gmTyV!#QRGI-CvRk z_;B(K7Ggj5gbHN5<-A*{(pJRU=%KkH%CBFi&G2A5muqw>a;p7 zH1`ZX;x_2CBppxL0v%Xd*ek@+LOHgcQfcI+{q0V7>QMF;l#Q9{DwE>lzs_{F+p(70 zvEQ7wr1d4tpEJD+aBT6DyliO)p_SWW_hgIH);+<5gEBgxd`;HEqPm!!CP>UM%TG*M zlU=uVhyn^HQ61Cwbf`ylKyqO##XhQKneC$*QjWBbGOHG%fhjxRM;R``88sa|D#{c= zVrVp5v@zAQtmY6&5P^_Sat+l7c%>4Iyp&O`mn>d@$WNj=Fm7UJ2)rYMsf|VrTefX$ zg%P{1Rwmvca_2l$)6dE2C+9dh1LQDV{t$do%RXmUYwx3NT?d?7_EPTeQv9MX_z8i)DlximAHset;n;7Nik7R6&72_nn=_{>Z-99 zX5LIj{^On)TT&EZI^{Zb)Wv)FVhrwIFmCnh5>rcG##B|1=4hIW22F)AC_p)?Mw?HV^6*jd6 zO>H0c3(m*>*OQTglGmGFYYOyV**tmR`r~grKCSxG-e5sXERW6C9WoUm`&@m4Z-;Na zf0h4$e}`Zz58E6;n`6ede0uG;_LeElx9p{jelD=%%AuRN%K~Svoxgg1YTL9eRMkAa zC0Mm7l)HJn?GsBbv0&3Kruom!SRIk_HR1BZZ;iay8E)wcwsZ;H!BESgP~&02YQG6t z)D7R>5HS6C>-DxjX`31ht$0LOzD3ybC84NWc)UNHF%Zlch%B!cGOHs6rLVWV)-tII z6|9&%bN&1q=cl)Y>K_RfJTksFl9e;QBTA!`<~s(&5Z>FFWr20qTCTQCsiyXa${VMZ z!Sbe1W;2+%whY`}EV(RwX4q5`gef~alrb8ErbfzXEr{`sNoO*Kw-XK@tH5!?R1i=F z&fT!DjF>aXHh_P_jJYyWQXejP{H?X`S;Ff(g6lgzJQrI3SZK}Tg1L~CjL*Gz&cEl! zDc22uVwiG-s#}DrjlxDw$U7iB+8eeU30jUss+J4Z3RLphu#(h`d8MMPVyyGy^gL1- zvH43rGF8LQOxRooL88FA8|E75jAZ1`>lIawv5uRCC0AO<_Izy1VLWeA6!jN`Ocj{a zh(0^4FAC~mLt#c=5z%K{uuNF|8q$Wop)ZGKa(XTlYRm=x4q-)$VCoXoT|Aw73*>fb zBdbW@Xbi3>c>y_1SSv_Cjb(I+jB0@0@&?e26TxaaUfYw3|TF*uiJZs3^5Fv5V zlYss+SsJII9%x2_Y_ohl;|%y`+#sX0c0ycnIq8v+!R}vxm4lr?50fwY#BBk(^Ly6o zOm(K!0~vB!7uNCxy+mDT19lXX^)ZP$7a}_G3fgd&+QQELxUvN^BN0^-KJhuT*dU@4 zI~)e_6lP~Lqo-l`6bUEpL3)*sU57C)Ef-Ba@YufAUhcq_t^-LB2ZkhYl-oxRos@15Rn8CllWgKX%aMn*-wj~;W1x~ zqDRuyC(`6a@1Wf zc%xuy|MlWGipRZD>ae9eXepnuR8AilSJP=${nBQ?XRV*`px4yA1o+03u0S z9wCb#r-JB4>>iUvn=r2To?z1erw37(=n#QmGVxzvy8vrT!4o(lGi<;Hf_T9KRgN3CelaAk~=SJ4n+5gSDK(r2`%X<_eg89fsPEE&#ss#Nu*-n(#ZOFu5Jx-Wsf0z3 zR7M|~dtCKj1qctkP~T_07}dkL2~VxRqqPvqS|9P21Tpk}~jYLy=CQm;Msq~5>rEAc9THBsdfjdO6+vSKTEv=2?xE3q-MU{6DSU4trRj>P32Bk zOlMDjRWNl5>dpsyB+nrTs_0PW!!UgZ1=^?00LXp~Vj2}M5xMxw_$T0IP7@$;nEx;b!Nq!Tu zpQpj0Z3^XOQCFGivNwh+)&?uqhD;4%)5f4_+d`&Yf_j%YPRJ=g#Gqs|e-mf? z;XGRH$<}rPEuBVo(Ie4fl3f`ZVrij@qUcJJ_ls+jO2$c`=+ZB$7O!qq5A}dOoRUnL zJ5!je5?xxeYgh;g_9jC_IVSkK;R~$|x-|)isVu+>Ymspj^igT%p>T*ZNqo8+rO;D( z2l8Zi3UF{BFPR!0t{_TWctBNq)Zl>OhJ7iL zREgW@HuT68Z)e_GSiym{epb6QXY%NqAlPrlbp@37t^%od@n48MLx_5T{9W>NGTquv zG~#3>K@t#iW=xd5SR&=a%QE#4;9!qabs$fgi~q3lVXE#wtgO@o3b-mxYX$yOCiNly zE6q#1NB<#XpGb*KK06N|b0c={W9DjK0;>z<=Sog`( z%lwEXSL4I`n<$E&yp}{!bdur(;sY{6CTQk{E(s(^1A|{FsLu)wXByo6H8L3hbamWBnL%V^vAvt?FVIJRFavn>YQF-4FS^Vk;+adS=(vtI7 z79ZgydY`bimPk?l&@w9GDKL*oT8eoDitYst<+g#Bl`gj&(g~Qk^n_W;SfUjcUAQuWX>suNOVVg}kU`dQ8_&cTSi+3?jcUk-fBnJ;&V)~s;mVAN}!*>LNexo{Ui zubvGFqm*PkoO&k=>o~I-s1iI*voo6xsP;X-@6094+kNDhBGTO<`Fh>h zvr%fFQ{A&k@=MT$Xdv7sa;0`crO>uSS)1c&xJSCSNM*%;^N;q|JVtVsq zjF!p&8gbDgQI3{~X-Ukn`G}&h6Y2h$?6J)&G&$Pe=@o_5<9p_HFtYbgiWF$tnR8;c zS)D<1%|AgdwdxiH6$Z_P0d3H{?7jv;ztbYyzj$aBKi9lT$t$Q$@8Zo%mu85BUwnVo z_e~geynFernwlp2k*M;BBoh7RyR+Yai3NIrMNwkuqgrAhO<_&V+=UBwemzAYUXpu* z;Pl*&o<)ck=Qqe{F#c)xj=>8lZW4I6$H-A4t#Xk-H*_~|Proz!_RnBGQ<9Qrw5+&r zyeN2$e4=!HO!)iyAIoi<`_5Z;zx!vX>Gt%ycYgGYEDO%W%h5V9fZBL%+>2Yh;(RO! zpJ9PuH@XbZo$GJGTBQB_X!iM9_AL5g^8Rv_BEfBu>^UPRe){gUxrtvx2Nl$~Og0{9 z*rJ4^s`K_EqnabA_QC`Wvv%{TTBQNm@`#vtfFWTAy8^_*5m(D5`q~Z&DpAH3QByf(Q!^7| z64gaWL=hBaAK8Kxl^X0vY{fLe-8PzhmG(pI=|{Zkl_{nj7HG)FFt&rW}1_NQ;p zzBYOH<)4a+6NAF5Xz*z{LFXW5zL%+#Fl_@iD-LLFh`I_`cm$KsiiBOo78NpsCTz!s z`t+?og0ksCDb_4#$KJA!1C$C0p9c5%ADW=3cG8{Fx zb!^+~+zyM?ot+1GMuXMU_lbr*gJ(q+gnoPHHWnK-(Dw#KdrL-UtB!rVgMCwjaVi-z zh(TYN^LL*U#j=Pu!P7woyZ!WaBxX2I6un|pddA*$qE9>%r~>{QQ@Cb~UdBTGX9^?b z2Jw50MCpwh+qblJ^tN?uZ|xRs_307n$d8&ta3*S9{3|j>t#Wr`->8grOV-WsQt=g3 zJn_E7(}PZoXy%zg&)`v5Q%U58Ma@`buunD6ON%XPj#*uy^TWfND4QBz>U8mWR2J(E z&AMnlPz!E1#I&NRu}q?c3Q@T2ca%!rAmV97tCkje(&rJ8A!m%AU;JUzIYuYe69D=D z3=TndX*jzUY70Le3fFB3)@=!8Zw+Vf31;sJWw(!YMsmu+IgVhCBb?I^%xQRQD3r5} zq`@Ti-Prb(-lF>rVqA%u9LJs6QMCrL7#>`AOvppDt`I{f)JB zs%EV1GddsdY1D<o9r?fA-xA@jEdRr4B!CJ*-C z3$^!+ip-q*bS{5J=kh%ReD@TZOzqfS$PM9p4SN^qxs3RZ`IgV9i<64~S4|oMPfwM? zaMp~vAxR2f`w#1@*< zeJ@Mc+!@~N3~qLYHar?C{gPns7SbP^Q9qt6&k`+<7)|4QM2tf)75N|i;hwiN!nz&d zb$f&B_J&rrhblUR^3HjMa-Y(p#E-$FysuJe$ck}Hm4ftq=5z%yg%u&YYDQlzYp=w0 za)j))Gx`QORo#rf{^J7J_<~JgeDA`NAGVa>e%RKD8vS zwk==^+gAqdD}|C(Q(03_hZ}bW8+Qupc73S+@W6*VgsuZZzVn9pQ3!t(t|ZgSaSfk2 zU7D})a?8aQe2OPyIYa`|ewijWre;RJJZY0fa|TSm2)3+d^y?#8g_jS%d>DcQb!)Dl zx_%1QkSfVqnZIOG8O*NvAcF)EnEFs8JtiCT@K6vqZ4It%71r$d;OK`re_i;W3O`H}9_<#g zADhuXF3n9p84Qi-vn{ErX7QQAR(sHD7c8YhY4h~Xa7%lzrCn(5Aj25l;r)k#`wt2G z4rBB6D%ZhHU56bAnGo0!kN4=7sE)U!f>Oj-{N1lip13~z#&Ec9d$4YMsH7FTQy&Zo z+~F|i3UaP6_e79;Lg+dvoIEG!N1-K$U9MH=b79O2|K-uD`SGFY^?&tvsCHj4d!N9a z3}&DFNIw+QQ4_M;XY?JnUvW-;k6b(M!4>c3p6g}Xq@ ziEccMqq-ZX(^C9YPUfoP4*4zIAtAh(j5EzROewK%R^X&-&&ADFm5dJH6is$g8c^SR z=nll5WSr{cbxF5x>DE60Ds%F>k_iwJnnq7@9_s^TQ#-%H%9r(k#Qfw+W!V+&zSzx| znL=0B0DEQ^cxGk}-&0c`9~wR?VpmLlBx`T$&Mn&>>y3Szgjt%4$<)LA*6>rf+y5LD zM73V}1mQ`T-J%O-G?i3R&kVYrVtTF7R7fEV@(_b3173`A4`hetl@JpV4Jlw2J-uYQ z_;_FcIq6#_B3g7DGykuImy93}&=PT{`yahwtzcFzX_@&q`s*h%gxuPYsg~q|#l`1O zg$5m7Z<_33)3TsxSzzSaxvS^Grd2`Hs;L9NeC*A~e%bqGZ>V8MxM6>=ffPl<4TnMv zhazSx**E-F`|nZ}w#o{+I^6msZRkXUWHX3z^bS3G3pmphgVRi)Jw)_*1)iDcUH1|jOV{pi5gK3 z;EP0nr5^UJ!pdAi#COSd>B#C1X}fh1d1BFn7(*hRvHh7PYcPI62`XtUu`~Wi+!-)3 zo@58b1+}~Aa=Yk}W|T7#r3|L&Q@V&Kv*@93;B0_ALW1dE$mA`4y3b0qKDVLU&$I?n zBTAHI3*tFot%u4?0VNCn9BCb&t7_^_NVj>Jsv%lKAjuiF*GFM>poias*HI1K^p5bm zC@O^g8Iu9cb(9Ac@-FQc=dIco;xu*Fc9cYKj>T>m3;6Mc83vHhOUZgE?TG zcpLLXQ#}wG#1}inPrLE8Q~^E+2LU$r%{E;u8V1#e-O#%q;r|v@d1#Xoh!GzV(Ae-v z5PS&o1XYL+r;<6~Gbl}qjq0IdA^Kx03Ftz$YJAzzlod7=21yyWIA|)y;deVN)7KNu zstjgT23(=66`{0R*iX+Y4|G9`W2{}&XUHkK{Pe}AeWwDe0*_wnx!MzGpTfsE8Xy>J z&bWN?;z{}p)0t~eUwt}oYHE#8(HJy0hE1D;rp;l~mY``%#GDs4(+3&@Yvg3Brv|5b zKG1w{?0-J_=O;fnBy@2?>46(&=dC1ZR|%yJH_YpR@IZmW4BNRE1}6pq2-B8@(`tih zwV^cJL4s-P#&+IH%MGWM1=GqVcM54`LfTq<0WPg1oK_x8D-Y}pr8S^$x-|L}mp(nF zWpR8;C+LfQqhCL-Qt0zVxQJ1fAEF#GxR?%?B;VZhr|gjvWI)t=*LLiZ1oP*jj1gpy z=uBV_lpkc-BPdajU>tjJeo_sK9!}oJ(tajL2$(p9dSFC6*#{V*5V0c}WJ$XFmp zbmTIdVM$;C%pOAHn)YP(3xHDEn6#83F549U>a8~gwvGNYLB8pQ9vLFUtxidz_;!+0 zN(Kdtu$ZK$8l8ZOOx1vNo(mQY5?&=Zg^>Y~kk$U5yT1`{Wzy19<jVS3Gq7WaR{D{vP~z3woD^c9&t~Nm3vgjFxA~ZH-I+bl-Pc zX}%<=3P@iewi+r2pv)5=ATB=xT~|6SQ@OOR@^~L4Uwjoy?L^uIHp>>2MAA&wM9Hh; zN{1~bGfkk09|XKP0A`6!G!5bb*Mz`q@9;?xDI-A4KS2&{fPQ%72fIt;pmf1gu8{dB zn1NwiG8sT=?xi!CNqb{8Ih8S<2v!8+iHM)2$wILZnAHw?2vCA4!WbbN(1b)GN|6PU z!^nmYev4)$8p&i$*|%tlj{T1k4|ls>A9!s5A+c}IUm6l{KTr zo%q%bG#Fe1_R*>YYdR86X=g~G{n#*X7e8I^X#$~rg*~dQgC$6jG-e-g(T6g`q;-z; zsII+pyK`?V$G6jPc9KIT6r&oRVZ7`pBkCo;mxZ1>N#_yK!+1hIMSV{<`QF07@LKZG zu>n)u{9w$ei^CQ*&}VvB)1y|2Mkj}8#nwjCr6W&#r}2dXCoH|h-}xu00y>VwLza+g z{!3J!RT>3+?OQzQ9;Z}{`sbwtY4W*71$+2m3e-z9%rDX(QPVW?FCl#aP27*+Aza%A zqmemKGsyhk)AM{)#Ql3`C!QGp{tT8#Y;{vV(bz<7qe3bA`O+;k;GByj4?` zp}h5>^bO;>kF$$FVaUk4+R8>{`EMp4!LS%xB~7~jq+s1@>R$3ZZPsT>B2j{W!y z=uY8v9l>=SA9_OTxS9F`p(0qXJoa&c17r&#kk$or>V*0&p`5Mg0lxKoa(Y*A`Su&; z*88BW)O=QjQ~G|LLIbrHTv{^6mkU`f(+7V2*xQf&)l;F3okGh#Vc-6FmD0e8B)9t@ zxf#bn5vvlit6^nCFm9SrZ;qJE>@1Gzd!aWx==E(>_Y&v^m>TB zgXAFE!@$>YAgwmQxOiny_{(_WToCGz~ zefZpxFvYOZdnlpHi6yM2%)W&sX!#Zjpq;{RlznV#P$RK8oC`un^AqZdk2Ni)L-?LO z1J4I-mj}KL|MaS9}RkJOjWe{4dJf4$Pei4~)@{&KQ!YSj}7&Z3x9`n*i zV0(LcLIL>oRK>IKLFcM(q>m{EfssUrG@%tECx!-(iZB3>f!R;*B_#>=)kTqAXXLhZ zwe365yS=ST+=uLNJWG`tx?1;jik!W6s^68r--}od#KlFQ>?13Qs5B zDRQpRYXUt(7fh(Mbm%o64yTp}Q_DlCmEqJC z!PFIF#)!S*RV zyn*~i7Ev{Cq8BqFU~FMNm0r?V48CSbFIE;)I&Y(wbQV)RpFuB~v6w7+$&SV3&`WMC zCXZh7V=)EvQivEdposj%ETU?@gkJ2iET!~PCT97poL(x}OXYkey)08`(uIr_^Huax z&0?0#JLsi`#njF(rx(}`v-#@hYsrsO8v{@=Ur#S9ss7^mRpejIsw|sdLoaJ%wKUMn zI`&dM-$*a(DNE7(2J$z>QZ>^{3toJ6^Bc*(iTw5Ro5_#+0M%GIzeP!}Akc`f+t}-N zyk`0if7VKGf+AxcWSzW%*NxvX3gst5xkG{?3v-rY`ll3?(l)Pvb5DiWdG=~%5e8++ zyaG-v0>1mXO677|ad0w~>G$ihl^OR}Tb0`T%Tko9?;DGi4fnSyQIBjmn(+`5HLZeB^Diq2B7fSiKQz#=MF=w=C)N8uFlJ*?IFi=G7~* z^5zZ9i;v0|&6}9ltk4?nr;_*n;gn7#RD13ZKu#?8{v#=BG$Kt0Z>CDQO?ls}1fP=H z+y?iYQrUd}tV*ZMzn__|+;G39M438|p;DX2M?$Ma-7h}J3#aB?&pYcO@OngN0Rh5jQ&QlD)-E@0_@RfQqiiS>#a_A@u@-vj%De0zJeYd{7BvnR;F-iqQS!1`6QPtBF#i&WB zA)yvS*3_+M(!aCdnHSjkjDSk26bu!gCH z(8|<7xPVy*VLh`5!o|!I2$wQXK)8%q4&e%BC4{S()yx{EfmzF}W7acIG8>qun2pRP zrjcn{q;Hn6g-kQEnc2c@Wm=eR%ywo6)5^3lJDFX~Zl;}Kn2tq8wy0ZCK*7k_iYVsk z6;ggQ1!`c6nFGu-Mbu$ATLQ685-Vj6GS8COJmwJd9Ep`NE~bmbEX-l1o5aeQBg`HW zt6=(=y(Cu2^fPu6t76>DJ`$^D1{ep4&1VLg{Ulbye2?iNv08>@dP&UMUB@^H#p!|K z763(CD=49*!dy5d2c=feee8x+!qE=5d%)}Px(3{yHu%=`I=qgaK8MExAM#xe?;%cU z_YMs7dG6!d;FM1HL6_Ufsa)=!K3}hsQ+GBt^GUMytt~^UeuvAwsK0lpb#E;}bHd|g zeLdb2PPeb$!lz)=+U;3T+qJR&IY<4FeNXobb=KMq4c(qP{0;i{_qloqz~19)_bjkl zHw=~SbvycC^Rbdp+JD5dm-j}-r;px8>)Pj(D>R7{T}Py z%1TS(osXt}d}`{GUw69~)orNVu)f<3sVBOhvvLa3L{7=Knv-K&zt*N2Z0w=i-T`(OOe{gfx8m*x z?@nI}B@yXUV2qP*lL&SH;wwURP0r_CJx(7E3g4|{hN2lpj_>aDTR)ka_%!k1Po{n| z0wogxKd0L4=z;o=k#dQTf020O<-|!cT8hn1H{c_^3%oY{kH44>otzGhCb80+Ss;V` zsliT6yvL7s62P#_HR$XE3fF#y1yI`^KgE;Za=}Twt z5C7!;OJ|c9)a_2sfR7ah=vP0Sz8*+ix__JIMf zg>fBpJG?&DY2hm+4Y_~n)O6_M#G6UNAcHvV{||r!hw|jdJQ@CM_}<7bQ$R?XQ`g^_ ze*NwHXOoqYR^Pq;o4bKm_?GZ(Ahq+!iPz63PW~X_f93wk*8vr2G&DZ()~iz!Z={n0 zOe)E=xm^ba*nSJY9xOPhfmg63O4O&Ftk-$evXNyS$AtdiL{EQwEph$b>9NbxKl_Xy zjI{B*d-22R&?!FIs^@gVh(7IdzQE~mki;?KRE(p4u+PbITBe6}I^CW_171$a9CE-k zaT?|Y$6(_j;7^>Y!+8`3l`|(J&}{FC-pvUAvsP_VUz? z&+eWZyZe(Lrmv4b55Mednxg=K-u>k4^jklix^ec;K%|6oz?x0`=rw-nCHxl?pIlFj zzC3+?91+z3B7WKNu<3kfHnNv}Yq8SMZ>C@WFcEm;?)z8yS>`d4b|%eV%nw)!2hS}|-AHy4 zE1n(=OnrLM(&S=+@poF5K4IZI0o-ru`uo`0bWTW$0{tc?Chnga#fn#_aF8kD8J2%M z9V0(Wfa~6k4`31TTonti#KQdiKGpznjvrq%vpbw#Q*r{JrZo1D`0%Z}Z;)ACK38LR z4m#aic3AjsWoRf8B2Nw$0hFKWxoSe8$**9cz~fv2yRrB&xJTK*Cug8ypwsD#AbCkI zs<1JHj|#YFafhAz55rUfa;uS3!<-OlLSp>dG(uXsTm@#lwIwN3ILv&6O>AvR;|O%q zvZkd^@Pd-lk`Ep~ALnbxBI&cx(EPCRu-W{_EPx_DEhAG&=4Iq5S$w%P&e8+JBR*i& z;3N5}9m4ZeH^oXA3Tzq)E2{?krd!U)aH*4+oWvB6rX(>H#MEL;LtgNHWK0w;yn^9xn=X_W)!=LYl$~3AuK=2i4aeyTj{cUHg4rr^jw* zTc8VH!H?n=_YU-Ux*dbAZeES;KIn8ip`%Vad&p()akvNEt{z99eGr(tXVKs>_DLv3 z0vrYplIbbxj#mGJmN*}nqjGaxpBI(q#j}c{@}hWN(JgrqyGtn6le8h>o1*0KgV~dO z)eRA_OeO8A9-xDcFiM6@X1I7DiGclsuiY~rYwL*#0;%JD23L`Z4zjGF|=OM*|8Q< zNuA(ZvB@*msYt_G%420@?cjZQ^s&hWNHTF`(uVYcb=c4VJb6gk&;To6*S4{>nc20m zvDx0<%qjXE-kw8bN;#!t5M)>{r#Q$C_y*Yyr~}{?IH4X+K`cN{PRMmHWO1qi78E;Y zFS`l8JUCMp^6(U%1v(xJW(Hw1#ByYv0D?cy5ClLB`Gv#HUzl?J^4q48n5iOSst7HA zui9XR+dGW&H z;VlG9oHl+=&x`AFM%zZ(g3E8|EDsa_IHRO=rqMMcYXZ+i>C&*g^zr2*QrXSfRCbk6 z8Km)#O)89WI@LI!v`xlHP=#|K1;IQ4tz_USu>6v^fCgR!+;W)pZ{RO(g-sz+5Ml;D zl}(Wmvy738OItyf_IJcfTCZS~V(Z%|std=1Jnd>BmU@FPMrBh7wasc@AGA-Bkvh}q z`1?E^w_fAluqu?|s!(-4KWkMeGh$N-;|OalxhiZ*@GYw46i~mW?MWPbPI8=+y!f^B z#kHJdAtza%;$u(3SW@gk3=TmsWZ0YT3aPq}u0pGl@U9fY~Y%D zgg5I2ApCj$GX$_!3W|m|e_<^2%WfMhLyb{mtzZ77F(=>+mo1LwFaD#>95)wS*mh=H z(DUP+{-)%|*&Y7oFLMh1Xex-C3sIDWWTD+rbIq6}Vy=ssmqg4nP*BOO)>dok2Jd^Xo$dPFYy>n}E-fdc;Mj|Qy z57es7I4YvoT!43&0anqTm8wgK*~AgF04=pzVe||(Eg8KEh#Qk}p4)y)dB&84Mw-oX zD*+!!f1u=Sq~ukv zism-rI^|SJw=AdR9kxWXC$rhGa zE0VQV>5$Urak&p#hSXkg-}E{USU5>7C$SF6)?1cz5RdJB+$pkZ2xH|;yKI|wv^3f` zHa0dh45%VJbKM6Z;07M>xxF0NJitUfFSxvih=R;BW5Ry*EQ}S!ZbWFMqo>E|@o+j& zQ^4g_JAsY4YY38$Hjg zlR)e%0CgIEo)3WPfl(LD3)Ng)Jo4<=(c#VU9P{vwxZVgc)KcR4C1JUF>M<@3+%OG(mXY2p4aS(Jc|W$&3AGO{hRO5hCuJD z8?d?NiqOjU)?HpVE*sw+tz0!BiBvX3&1?Odcvg;I`K7Udw89*t%OZ4H*s?N4uZqyC z1Oc&TQdiAkcMJhAX^KHA9gA9)r02$s=Ab5OERR>#giRI#YYeQug>yEQRg^#c$9 zAcyu!ctMn1=vT(+tj}qS0JQR!t^x#6PEoobDzt`aYglf5Tn$8KOT^J(B9745U?gs- zO`0ZXME2AGuG1|N$6LVkrO382sbzwp=$3WK0fao6M2bx&GCfcU1qRj&;t?3Iln4ZA zD-bfU&`gY7R4YMY%nXsjubcxyG#`Z89c6RYC&GSHpFw4C*Q8di% z7pQ@tE@u*SN?}yy$QK1MicPl~=1Y?rueoQ<0j4WIXKpQscu_zJGX(8P6A+!Jzol)N z#nG&`kr`B{wM`9*P6LbtjKU>d z6gH(zwV1NejE2#!5l5B?Ko+oqy2C%6=LK=>gW3oG>vzL!(*bV%Y|P)#FJ3Id+ObJM zG|_ED2oVW%A1bBpLq5eG!$1^BywWc2`E3RT9l1X-KG{Z$5l+7uW618UT29vIbn}+2 zzT??l&32|^V|&LeNyGjFf}=zs3ODb4LXK`Vunu@}y55v$4s2lX$2pI3YU1iZeV*6@ zvzx)u`@!sW@=}OMDNfbnV_Ecukj9Au$%CDlC13<|-~iME2t=Qthdl$J{{lbHbs!m# zGV^Oeu;}!|&2g>qTxGy{wr)~e63;0(vo4lX9m%PV=G6Grw@sxnQ)R?d8QK~()%z7+ z8qHu%2X>Ea^EV@ZHkwC|j~ov!ef1ywa$vY=AJ#=zi?0-q@4h(#a^Z4=9)3pYgaHu&kdrNXa` ztM!4b5iOVvhMaRf!RoVzqXtVnulP)#e@k4K7t@tSbfv+Ale+nFUH+x@Z>}H9i5Az7 zt3K9W(@*q7mu!j@Z;I$P`L~O;#*IZmN7PsrH|5UgDWjRk`nka}V*=wpoC8wEdb?=B z*tTfVDlAqI)0IVZWw%Ym@xs#NU&*|(InJ@-qkL6^AC}2FnXyJ8-?0H6*vaLc$M0Cw-EFK zjoF=QMxIQ85d-r^`pu@Ppg({qP(@LMA1?>ru1csq^-gIJ!W5CNY%)^G&r(1{_%3=0n{aoP?xBejW zf8*5Q{uI%p#RCwysU+vj%&z9fmW?~?P0dVWd&{nlmYr=3m&4dLZ*J+Fov3gDNq9Il zcqWM{0EBb_Fmndh*#}z>&pUx0z)ApnhIJlr9fiXqa6SRviay7FXP*aW0|-bUp)8(+ zdXtAR;NT7WEG&4@Ct z$qMX^YAWMdm44+^;lfzq6OqCvZWS&c(W4e>99=)MKA0DyEm2TM^GX7pL1*xpP-8f! z_7C8|R8U1LX4I51*WVfF4LluOpRSVPxCxI)dNYuMq}MLwq`hst*Q5x@P%PV-Er{_< zK97{wx(abB(~u>jjFgZzC>xpU1k#Z$1G{pL(sIIxzNxe#S^Dv+kt~&%YgM(eKZE>7 zL_beZ>D%_iy7Yk(NLj=!dLAmdkN)%V>EIi1cxV%Vkoo46u&)JsG=v>lWo!^LkgV9Z zA(+i|@&uCU=>wt6AKpQ_xdM>INH=I$61q8c?4@IYCSX9fjh2u(YFrsJu8$bkPdKB- zrm(sRC<`IN=DMh=E}ort!Ft9TC=RxUjdfvlT{1VYHL5B}Wo`=_Yr^W9xFLJgHRAGj z1@&Qiepo*LaV~{Z4?oFQAOet7aHAm~^kS41kn-qbqlkk7_)u#ua)~tFAZ}YYVDX?+ zF3Hi*xhmy#HLHXl%O3;U*`sCfIQwAl*bZ)neg}JueIFpIag>%oWSIKGRFdMz^3Q2d zTJleCM@N0>UzJqZ0{^<81T0ti@^Lu?kM~ks5a1s}c?lu^WRi!ONWasRiQL7-l0g!t z@0-C0$Y86lo0BZIDmdu??6MBxDLoZ1BN9;pGXhl)69)T0541`-%>j0xAD9$^c?U?u z1H%qnDd|uU85!)Y9ASSASqpK%kduQVjpHOrMn)`H1P z+vxW46pRpqJ(`Sd2Vbq|F0g<(n6a$rDV`HTV^hM+XqU-^Hq8n7?YL;0=I@3}XOsNh zaOrK@ztd=mr?vk-MoA0vSs~1B>J7a$f{9+8N)cjs=3Af?CL38ez~(FyssB5*MJ1?{ z4$yt)pceDrfd+EF6-QnggbG9(cn93NuK7Z5+pR(@^|tBS>r!7rEOV+bQf~bmz08Ml zna97triYO&?5Y=P=)9SUYkcR`oz&p~XVEgzjRb!EUwV%uq|RpT;?AD6tv;-}^ZS&Ut@Rt22*g*&H%FGo4#zar=xC zN*rx)JkHVX@^5W-Mb|Q65^eIXSSUHu4bGRujfyc6~0dE_-DJ7L*3q}T_b`-bHB8j@O0h*g~Yr~BtVFM@?wTWYc1ty(NgdZaGLh!T|4dVJ9l<)YCPgO;Bg&g ze+fu9T}xZz4qFqP?;@E^I~z%icbjNfaL3ud51{-m#@rJU( z>w`1>oPs!6cvtx*tON{bEX|(7g6A>Vh`|*Mnladn0U9%$wsm7mn;o2e&7I^>89N54 zRuf0_6v~@MMzL>vDrXWC;0&p~*Tupynq)+c5j3cHC%uLoO~cDcyyp&2s0Ia5rVp=OtD@r^QpYcH%5zPhy+Ve)gCkK(A5y!<%c`{XSP;FH{fL5#WFW zwFImQ&zB&y!3B_49?PqbV&&7`_E`4QMZsV)>VmQSizh#!k4)r-F{Tl`J83#%@by;(M9 zzFK&taJ=c`mTN81!YBRP;=1h7){)kDc5a~eg6oVc&=pdI4u`tO&66v4{A)*y>4`8s zlg`88Bgg-pqWUD8q!0MlR}^(X(kO-3swU|SMXhYcuvxkVUs+qFf0aq~25_$Amd|J@ zjS(A7+Bprb%vBdQT-YGC@v)xdm0lP)H{jo#Y+JA~qzoPneJ{B9maguBjLM&XhaZH% z{?FBgUusN&XJWav@F!xdn^Z4Ie(+c|Qr;6+<;PT|@Fz5o{rKbF}gBBS4QdTF?obu7?v-5 z+!ci$4B}x~BIO-!ybpyq+>#y!fDj)+=MZ$HUVu56=CK7`42`r$p46F9L7##1aB$*m zu@w9vvZNgZ=R`C4Vn9;@FRNSGnTP(9OrDuX+vHdZdRyir1j;$)fVl&lU1hZ${KD;p`yHJw9$tXONtfL(Ny(E_#soTnud*Qm51cvwjdZnA?Uxf+uy3 zuVrb2`D=RDo)psbWiP&0#$^4>Z zcp-`cY^Br53&$vj+5d*6l&DAa!&PKnTzfdZ2i(5k7w3<}vS$&97r-c^c=GD)v)&f2Co}k>dk@U5q$;7CpruF zTF^fVYkkUK4s^wGt0TG9A!jsqVbo9$5;eCn)E+k14!3?m&Isj~UO0Z{c%VPD4CECY zS<>aeUT}=AiO@AM+8Uv)ab00dXNl-6p=F`x-#dQ!c&LB;iE-C>*Gs5xR3METST^Lap25ZK)gw=(AP%od6 zQEL9?OAic=_~2#^VM|}aNTu&6r<}bR8I8E#EHWB6gqyr>aTo|(n%XZ00!M4ZEIkObUx9Js`n!g&(L^haN5}x(Va`42q}hPD6U;Ac3%QzQ@!?%-i&e*dfo1`+WCNc= z1U5$u=5yW2Q<92k?xLt+F)SEU)^H11>9@0sf=^%C^X8sd>B>my%8yP&OPeCuO?Zxj z=t9BXu@1jJqJAQtQ}iBvnGU`<))+2b63JNthi9@&f=@@Ys}R`4ANmMx89Nxp;~y*I zYCJ|`IIVf0hb8{dL@9F4t$U{cl;Yd+>~rfvHIW?a2dl>qMi#7}lt0O*)kbpaKG-^b zG_r8Rr2MJda*cmm;8@^DxV-UqTW>amwQZB~opD-6^bEY7hyAtNVbc=r5%wtvkmtg^ zX*cJ2Z5B5pKkiv?k*oSjt zon7ltc3ShmV}Q3Mp^+b9dDN}gUx~5w5&M0HR3&>yOhtLem&a0^oS>DGwsSJ1=!JNR z@&NpQ2XM>M&I0qL*sBoNy(H29&V6#B5CdWOai9i_+(=he;V@xwqV%;8+?j1fP88CClRans~{|cusA+U?Ked zWj#QLshpW636-@WZhAVN|5Q91oFJX?+%55(j(GNtc=on<;r4h=OT1`nykbkdf{7Py zcu;04fO6)U`IMCYcd1fRJVQb7l?*;-@bh7|M6%$anglw@yod90Bn1x_Hc09o4oOx) z)GJX+%n!2-kWitL)I2oHB`Y2pB$5`%L-kVb!)n%z=MYU}iUV@om^%lN=H5HP0!W58FUwlWSj5yEO45xJ%9mN*n9QD!z9 zJJb#)ghA|VEn+X6nyrdcv$ab$sZ6$Zs`hUy?LtZq%Tkpbc*ofC-dX+o~f?Ym6*jb);Fr9b2+0j0Jku%X`Sr)qRywwUo6MJ58|VR2^lLN)=Q+ zRVT_#;MS3IKHCMQtWanyBuvIWX6RCL8kPn!Uxd!0(mP8>PKEs5 zFd&HQ2%i_N3}Dh148&+}ggzHxi(!^3__!9x;#kI1d}-(W&WpR#CVR?cPgX9L3#N{= zXayh))^ZgS&P4 zeR7%7P}&_hqnXeveeNQql>7B)6gp(I9xXZ|N`8OJz|6#|hXWi31^eMHdw{Wr&d}_c z0DZRC{yTJ=E>hHoeJqf@NHD%xS}bB|pI^EsQFpk@>+Toz9PMMLPKm}>5e@XSY={+g zGi)dtW(MYahV z>)_+UkO4W^$}YV*|7Mc7Wx8of+c&4|oB77Br80iq)|72){BXuvnYP+fR{P>c-fHKq z-SL6D=8{W8^FxU$!R(0l-!m28wN~?WJxhm|dik0?f^{!X?#)u!!XI7SlQuP`OpSuc z!4nR)1QvaUtkA_vy!XeF5}Hss&x5HKi%qBmRESXWAc2%r5`gQUFu?3mqHtw4xO}`2 zApwVG*LJIfqm0gRKaiuU_$E|!Z#4JKotYjo)=jbU(tJ$YRQO3_Al5|-l>B=I0Vv#w)u0vS^$`G@PL@>ZbL?hLI zVC=}~2x4z?I>7h?5ttoN0q_RCx2Mf^WSSOmmtiVgG??U@R{J|j#MfM}l<&2mo98r3>>H5(9#5ef;n}QyB<=M7>~b=E>%ax%|?| z{79lpFt1CSn^NW`!Mq{f|7~UMpZBKgI#P8Vi)V$pmxRjg@zHyxS|mDZ+5~GmPqyE; zR$L2S4qjoBp(S6cd3(BfPpWy3(7cbg_NA=@DeHh>JrWI3j4-{En{<` zr0;qlWo=1YJ5tt;W$WhUW5@Z|Y2n!PoHpZVS>$*}Puj5~<=7!OcFvIk+3~am%c+n}kdqHc0V-0<*N9=Os6$nPxmBsA%%77F z>%njb8rF_TbSoltVL32*u;06XX!O7!5THz^Dusgiq0-37kpH|yHXNdDMSqkc8^SjQ zIwa($y(fdAsW;f|(7yvdZZl*+8RnX_*`6}nll6kR160C>*14_7$XFr%yO%UP(ftCv zorCFCv%hi@T*Vb^(*qO=MhC+DijLFl z+}qh1BT<1vCBv*Q5R8O+MZAecQY}V+>Td$X871E3&IZ811p~k@mB4z_151O_mCZMq zwJLHpSunu7;guoSJun^mxP6d;E;d-whU%07SYlt=(3djwWo#957HEF&?RVZ@h^7te zQigS4v27C^U2>PTd~SS!n%lz@HP7Rfgjpqe{0Asp#X7;%`a@|FbiwYdE@&!Dj~>m7 z=x{XZBSG>k~OUJqJZ$pt@hU z;xNb`q_#c8ZdG`qGePV^&uQ!+7Eteu-enjO@tq>xA_+uUYZEc@On{977`Ubk2jmlG?ILj|6!5$B!0O>3C}8O4WW}y$Wv5Lib+8DdEMOU21JKcd z8O9fhvRP>9(TEIl1K$02%=6|*cnN@SAF z17#@y8HSI$1sPCnabvo;HC5btr??Hs6-@freC*qtZQ~qq&sO%exja+e zxUf5k^CiwXea2Msr+YHB4L4e^whm@aEc zHh*Pq`Mv@xX@6XanMZaEi4V<5ir~bYh$aNDUNFsN_Wi@?r*gh6teo67B^u z>SfJvuS{%=26VN`T0SsMDNQG|yaJMn(sn|QNRI=kY1zwfw?~n?(AxUo(oY^zT5{~G&^-wsHvt*YhihxvwJ+t`x9r+4Sp8qQ_9x5#_4GfV{+D3-(DBqE zFnvy@4^3VC@mvJ?fqfG()xPfkN&t=rA_jU>E+i;i6O_1J_u=Xj|ik{H56P#P&P1tN6@ zd?F74;!W3s?05Z06gg(Ct&e{F;e%iNg@kiEdjy)I&Cj);Kn#Au-j1$7hJO(M9PT2D zeCKDUI1$|dZ3tEce6aA#Z$F)XbnBgmKmYXMudY7&`0pPkeui#RBVQt7QO8er28AIv9v|y;u*j~z5>Jt-*Vcs>un?`wJ^m#TUVQT534gy22c2OwA z1<@EB3@CgjAl-)$PvkDgqnf8tm@C}G5EJNRQpz)Rbvc*3u%@7NlwP@J#W-N}c{-w? zexVG{k17=5QS>KcSaTob^D{E!gc=uGW%oq|MuEGl3LK!!2{l+i89msuaVap-j2>el z=b18jbU@-}j|N5%3T8n66^7R5L8wtNpA$q~L3ocE1o(qyEI0>c$y>7^geQMj1tBQw zT5|w?f$~sVZKobXo<#tTF2HH?T4Wo+w$>~w)`5V;%9IyEDNK{a&(p#WTot(+D^gyt zqwuOFxmCwcZp{kMAG9v1P^)ixHF}{+f6$DD?|N-|A=g~x|AAhpvNcy(ljf*$i90L6 z6)o`IROqD%c)7AiwTgj8i@>ab=#dnD`@Arh!YU>hSLHE7UY$RB7{UgUHC!0edHbho z+yJ{Wd5j7U7>mb}Cv8=!-g_2gK1eP&p=0G}XthZCK?4?d?F`|n8)1==!y>MU6~U7Y zb)Jd%&K(l8Fbn|Z>y!$SwW6}7sY8s(cCGDFv%)a~U zfBN=|i?U&cggb2ZyI~^={+#}fbLWt0|E^+Ec@Op5ucZn4mdIj6g_~D0g$gytA(%8}= zzGkOj-Nlo;?pM{s`!ht*dqeLGEp#uOUYJalCI^$d`I4?>qFd=GT_(zr$(4-;{Aih6 zrgp_D6@i7KUxrc%mP>5{(00A&2ezGY&+(wqmfT%sKB!fm(U z+$WT*0{G#&#JL+6u3uO@0w-?ly*(Yv1P*Z+iH7$ zbcIW7Ni-)l$!*D&MF(Hec86?7Q5DDi?7bj_+%K)X=DO@k^b4gxH9$=tGRbkFvO_R* zWJvQR+q^AdTAZ1)rO0hSdhiG(Tf0DzYEqrf|9~d=uLqpT3)F%PK89W-^X=M#uA~~S zQsgF#gouO`w?QkcNZ?==Xay;*?UCIW;Fe)0*oL{VnYx0ajirdq79@cwq8+?S1{($^ z5lQ`FaP`n{PHs~=WLZ-Bo; zcIjCeq8g^LKKDTXnD^ijHwAB$AvQw$MPeoxIw=V!iSb2Um<=!ymlmERPx+V`fH2CD zPOm?}O0w!%$CZH4D#JzqSvTS1LXaUJ#}*&>_e#f{@osr-qW8w$>w6*KS=W81yl3tp z5-8{A&nIFx-oE}e-_Qw>`g(|O^n6`heb-i(IGDCM1e+sMT$Sj$Z2rLTqzJ3n0#sDx zd}_vY##5K_x)ja8uM zq={#jfI0Q7YbYxVmT|QHw6# zAsW5j>8KR@^0LVG6g4a@8p7~DAi=;%33~|H(}5uE^&)M=g@W)xj&vNnk{xg#d0C<` zS>KTdM-O=2qoZS@X{djo@4#zPg=G*hym`-tVHUAy*fTVC1meT}Y%_GoPjUMYi2mT{ zSl`ePyA3rLqpS&KJt%|t5hjI=W&Ml%^gNY|l$b=7Xs;-02YWSA=OHLK+kY+)`3RG! zMpl31uGx@38l?BIb1({rk86PZu@=Yi2bl94tmxmc>hJZKwREB7;_GQkQ_9jLST>|B zZ7EAz+?cVq-m=}aEo~R1(6pWkWhD>qkHRA_HzHal9^B-NGxP;u+)3j?$#fdRuiIvNs$Yr!=u!`ksiei-{S7FX++cm6E z%4E}6HLGFM*$nt;*-SPI{%5l}Y%ZI}=CcJ=S}tn^#j4ms3(Xd>#gLb_g-^C2%~ z^^h-M%OEdjDZDMPSspl9j7fN-c zln15Fq?FG#vs*~1fNf!)Af-aKmEB58MeKIAo|KAN6Wc&aB`nJ}l9H}{9=nauKON{l zAI?`-7N1uc6ZFM?bZmZkwa`I4Bbz0rl4u_S;3e#$J?`;mrEpC^~ z!A~Qngyc47m)&U#DeTS;ho{pPQa)9?nKbp}TO777YsUej)zfKr33=7N&K|wk-r?HU z?Q+_jZr+$EB1CQig0n#%XT#R{Vk>9kT^_E(#v9|MIe49JD=dmbykc<{-hHqUBWBnd zUuUOnx2MZUa%?XY=i6u7=i&|+g@4$SE%tDG?MC=vTXAw*XLaYwM~o!LK3#I3s~bq> zFbe;$H$Fe#VRPDyB**sne%*UHo3+#K>@vnn&~MP*%MfX8+=L{)mlLno#z}iGJ*kni z&4K~qZsK{H`(EKJ7-MamYWFf{_tdxC%bwlR1XN5~NFCDfo;D8CL}-^Z$Rr-#Jxv_Q zw6#7NVr#vzuDWjJBS~uo2xAKn?ul(lbFoOTq=7p`I(aq#YffG{uHPkar!mHyMsdbn z`ta4yrbgb1{{D6Srq+6W2Q^uZPdQ3HT?ky$M61F!lNClh-al zp}qyO@F!P=IU}dW!WTah22FkPRpi}q#Fl~B)I&ef- zfB43s$i?&FH-@Li$6;xcU%fx|`Mcq>Um+GPVp)M}x_CPJr;jGDdeC&y1sj-Nz2_YX$i{y^BdNT@>`Y8Fo=WRcV7 z!#7XEm{!iU$L_FkdYo|VwW&*|rq3RU^bN#Ms3&oI>Yd#lw`VO3pZe-#`0)AY8(&0V zvqR^nE`0!~ght^oa0ORC3-^y9p2O$k*ti^AK?!8xz9Z9z-;OcGk;CDOg96E6k3Cr; z0~%W$R`(tkw~vrG`p46RYYs+Ee=+?#!evRsL2?UIzA+9=gLsPW!()8X?(B5E#Cw*( z5@Ka!a#*Q=9mzm8CoDYt$+_t9F{FDgF1!L4e)vluvA{F}WyAe%gb#lq@CV_TLp{3q z%<+pX2%lPqz1y<@(7^40`y!x$Nrmbx93?4mfEclHcB_M+h`c{Ab$K+7La5F{QIHCS zjo&MfbNobP_=YeXx#!XiI4QUv(eY1UK~d71jLowcmK}Y+ck0-uu*>+g@s?SzcqO9O zuEHI9-~^<1)*vKr(KLOWA$VrC(d?-d?B0JzPJmmmbXXk7k?x*xCAJGd! zMc?h&?XY*~_ktDxrG{{&04K=9pN0v)cP(<}5;83*#4mqL@{ns9y>>G?`eu0S;M9kQ zkz50Bp-?zJG)|&>MDcgXph#lA1PicxacMopDUM}_ZNJ;Y*|O0!t@xjH=#ENd*5 z7d%!+tVe6H?6Gsa+W}UJ(*@nokYsp4L!QOLqZ!s=vAW%yeYeML<1H2r8RXvo5JWlt=G}$+g^{ zcdUcWAAR-Us{a z-nABYopk9qv~=K!N%1IKdZ}CL;(&U-Pd$Hdzt^zaukP?N9l}Oq?=FB!;$kOM9==iW zIGqx+WC=k)QJu)~R2xbVlFV@~H{oHMd1y)z1^$!B28!YXRTzFIQc!~5P=M$O;9TpHN&vUiV+YUb-?=a9L zy(Exc>Ps&jR{GNoy<7fWofXvP+)`@?7l^I7!6*WD$^a-vbm)MJHvXoFG1OsI6z9CSj#csacZXzjZHx6JZhH zVa$?LlXlq)NhtQJWW=W@6;O`xXD^o!If8B7M22Ts;SJu2Npb0`x*M#=3w>dcQN zAxYJW5QCgLOEjz2cfnI_e>b-wRAC20&yu8Z`Kt8}SBKTXZ>Wkxbpl!*JwnsKz235& z-_O7Ot|U66M-?|f3~~-ONpbTr(_^*( zGt_-tIb;TPNK@ZjyUkp;*1rq9L-ENFswQ!~iAukPP;@j~CXUM-W^Hk5>b(t$1;>?jr_g28a#>y$Tsz zT}@%%hWEDk%64Af7O2_ctJ(53KT*@@FWc$Y?ewX4_SOYU=Jjs=p`fHs9n6{6rv$nF z-ZH;>QLvzFxGk`7y>H?A8}0su4S|KMZz1bnX!aGD`?dz>8~)VppTG9hk{kQKSsG}t z`WmbgyPf_9mv5u1PZ3n6_iK)6ZfSCYy2Zi5(qPeoTg8ip_xp=i+$u4QF7cOC-_k7| z-Rjq^x|6O*&-ibtN|km;O%>{9=2M!i-fj0wTn4s71c@68$%4d`ESI4VlPQG=c`DNc z7j$kC6;P_{&eC9c#IVEFkT!?tcA{39O zx!cNt&Y8u}YQYpoVQb@d0@Qx^@pxxY0j2jpdhF5ujmI_)t`3y1@|Caht5*lq8+_^w zSKME-es#TdPqgrt62LUUh|+skndP zC^E^yZ^M;LUO1`+Fpz%c`6jHy`&ERKPLP9@J`n3q=-m`J(Rf24GAEhP^D`&0jCcgB z3|SMDQ_8WdoS1vCV^%?6&Z$zT*W+a^uzI|1ODte$f5cV!=C~8(LpgM{e!5ZeJK4NPJztSoM6I7 z?wrIjz(=v$02Ipl87GkaOIFy1&uNlUugM&r-6=QAQCeZL_Jej$&0jgcWcJiJQm@2R zBFvqfC*84Ja*IIPvw3DYP%6J#+5&N$HdN>&nVB|Jr$SkdW>*qj0s5iqE_^6N^2x_- zek(kBQ}2^4`ehiw1_K&66%W8xY*xU&OGvJ(mL+gE0S$<;m-@t#S53!HcIKs|GD<2b;SeMTHLl!9A}Qt zYJx|>+(am+f_%PN3Av^^9@PZBq&^gKy5G}8yJ|&aLEJ?&{L)QsOajjO~0x?pj`T;AcFsp&y3m<;}{$FcY1hQap zYFWT8nIj7f$!lRNP5APglg#nkWirm`f~v@$Y$Xl_Gi&MW2NsHR^1wpxOVR@ilrB85 zplxo7J)=Nr-v5kZ&^^dK0Yj3lO|AhNLZ!Psc5vpV!B6KS+zIy3vmyCByC{vFMlDXvh-rxHQc{l3AY7i7ZQ0CdQdHj z??Mvpiv|BktnZ%6w0Toq(`JmgO3L*i%7c&a%F6JG@$kUg(T}f9pT1mKxlX?;MDOz8 zyS}ng2#%0O4+^}>%1D3z)Xgz$@u1tGyj&mo=n%AcFcvp;>Ac|V0@s*+m**L1g81X5 ztKn=Z&|b?~G24zc+pK?Z~;;F&Y2^I;>8Y(+)4@q|l`p zWIN>91?VHEFT`fN{x;x?o;rhQt{tDcc`$n6dgQ&K@ZlQ}uLJax<3|wd^^1{r$HE_+ z6I^q!u*n;P;lq7X1LNWMMyGC`iM&4|%rJQc;*y6vXtcs61$zMa={kLz;IZ1dq^imYe<9l7SqXT5@o>)zWE7Bj zdgSxz_dl4ta((KfgOUD$$*;}|WPk|JRNo&Vm@%8!dW@W2y9s2Ny7W=>`Vlx+z#!0L z^2YC{dj}v8BJ45THx^@>>nGtPkOp}2K!fnb0b!CJ>2iHrk7VbP9uM(aRr%Z=51D+6Uh>-~$haPu+Yc zeD>V*$QKYo5+FQ{NyA7qTi_WXlu5>0_SxK4_+)|zlI0j(@bEEw!hyxOj1Z+q14k0y zh6kNhu&Bu^Z$z)fcx&epj}BTB%Zc`V0iDTr%Y)K0;2A;@J;yV|p)--VP`TAu!uNeh3Fkqa zKjfVZpS|q2^KPCzwK)qy;kD+rV+Ixscnu)B17RTuI5BpJHifjJ$1C<652bbNMR_jx zirjWLgsL~;KpFZJc9jggc*ZQh!1Jzr7)my*Go2YK_>stN!t-UR`vI=|!&y02ksy6tlHUz4+ z_^P%{RBiPaJmb%Lrnlj?CbPfkSW`e#>eG}COZ}RPVUtg@1i~o__0d-jzA~8RSCj=a zm-fkSXXl?@c4FCZi7$IuZ)32a2w)i1(QOB}4LmYn8+dX+H^IyoTe2sZ+*sM0vuN0T z;nk5>y^B_lS-n|nCYZG;zy^LboO_{kq|~clIhN(ks-9qKQbDaBW&-*ZKK%-B=}K?b zBNI$@DyWhPW?qW+U|Qi|?$Eq5^8!UxzM`s8eyrACw8mSwc7~$X?T|pOGE44CB{KPp zoRX#C-n?1-1mjM|HJPp(+%dHC%+Aq9fBG8m!7I{ZUN&#uq6y{VSY^O8p)8D*Z)%&pZaFIPt$Tcr|vIp-tFxZ&+hTsUA|{s z{>|Oqx);1JaIlEG3PzPSlSZjB(4Pk@&99f-h4nT_lIM#kvc&4M6Uqv)j7#|;ue5J- zP?Oca?bx=#>Os$7*RW|+HvH1)^WLI$-)kPbBc<~7w*_}0S$jm0FOI(tSN_7jEw>7n zjsC`8SkqS@EYuBY&S-`Y_zG7*Ou||31@nTZA26J-lRe!Jy^)%;k5|se(l_8L^F% zmE9KD&YM*>!IUQ-%`Bc3w&KmJpHMc$Hsa0O{V&Rn+vSTdtRI1utoD_!zOlq#{`iUc z-(>X3MWBKuqxqvs?}}~Syrv0dv)J6aBhcFJYi$p-cKBL5Cc0eyR+let8yv-cx&hCk zQSuvPp(iD~vDPVZV9h1jFS&!Y{gNLMXD$&h2A_%ySJ$*zurS-=p%+%36mp5XP~m-|K>02t z@FT@Ndl1u58dS|YAQGt%T)})uNyNOx^*py12K2~0?mf%bfKydzb9T7!i@ct+Cm^uF z!N)6|`kq|9pfL6L;SsO*IN_5BJ%=v@gOaF*kZj-csDsSVMAT0x?IjKrlf@0+NDvVX zac#~HPH3sa2BB^UB7pATIS$~HUj!ir)gbpeH2*Vpy$l)1bVhTu`C#*4&1gk$vyU;} z(##_f?jJJq`k0_ngAyR1EcPjjhik?vyjXfPs7mkG9n%e}eX8<+(&$qfFKe#s@UM9M znWf(_gNK*DvW_%z_h87WQEVX7=lE%-O8@CQnDM^1sef61HA2GYxY>E-_P zg@N>CzVv0iX+eGE1?`A-Y>i+4Sl_yUTKAn=_jPfv5z_uv|z zwtU#`(;CMrecJWCnxHyo;5mpb_bO+URDm&A@~dFp(qPGBLH*;w!ZpF-6~X+fV8O~@ z@w#B{l3?-bV98o+DPDJ{G&5V$n=!MfC`S@xGQ63sGg2ttW^%px%`-A6qM|MKmTa6+ zU`0vEa=m$NGb*g4k)Ee#)L79_GB6EHGwE2#pkxK!!Y5|5SjnVhMc(3;nJlbiQ?fj7 z{^K(_Sji=o?K62;$){xb-h!H$0<08LvO;fB<4h4&iYb}iyP##J1S>j%?bkE&uri;L zm3u3mm?_1Io|2V$%eTxdz)Be int: + return self.public_headers - self.documented_headers + + +def normalize_rel_path(path: str) -> str: + return path.replace("\\", "/") + + +def iter_markdown_files() -> list[Path]: + return sorted( + path + for path in DOC_ROOT.rglob("*.md") + if path.name != DEFAULT_REPORT.name + ) + + +def iter_canonical_markdown_files() -> list[Path]: + return sorted( + path + for path in PARALLEL_ROOT.rglob("*.md") + ) + + +def iter_public_headers() -> list[str]: + return sorted( + normalize_rel_path(path.relative_to(INCLUDE_ROOT).as_posix()) + for path in PUBLIC_INCLUDE_ROOT.rglob("*.h") + ) + + +def iter_public_include_dirs() -> list[str]: + dirs = ["XCEngine"] + dirs.extend( + f"XCEngine/{path.relative_to(PUBLIC_INCLUDE_ROOT).as_posix()}" + for path in sorted(PUBLIC_INCLUDE_ROOT.rglob("*")) + if path.is_dir() + ) + return dirs + + +def dir_index_name(relative: str) -> str: + return f"{Path(relative).name}.md" + + +def dir_index_doc_path(relative: str) -> Path: + return DOC_ROOT / relative / dir_index_name(relative) + + +def resolve_md_target(source: Path, target: str) -> Path: + clean = target.split("#", 1)[0].replace("\\", "/") + return (source.parent / clean).resolve() + + +def strip_fenced_code_blocks(content: str) -> str: + return FENCED_CODE_BLOCK_RE.sub("", content) + + +def is_dir_index_page(page: Path) -> bool: + if not page.is_relative_to(PARALLEL_ROOT): + return False + if page.stem != page.parent.name: + return False + + relative_dir = page.parent.relative_to(PARALLEL_ROOT) + source_dir = PUBLIC_INCLUDE_ROOT / relative_dir + return source_dir.exists() and source_dir.is_dir() + + +def is_flat_header_page(page: Path, rel_page: str) -> bool: + if not rel_page.startswith("XCEngine/"): + return False + if is_dir_index_page(page): + return False + return (INCLUDE_ROOT / Path(rel_page).with_suffix(".h")).exists() + + +def collect_doc_state(report_path: Path) -> dict[str, object]: + markdown_files = iter_markdown_files() + canonical_markdown_files = iter_canonical_markdown_files() + public_headers = iter_public_headers() + public_include_dirs = iter_public_include_dirs() + + declared_header_refs: set[str] = set() + valid_header_refs: set[str] = set() + canonical_valid_header_refs: set[str] = set() + invalid_header_refs: list[tuple[str, str]] = [] + broken_md_links: list[tuple[str, str]] = [] + non_md_relative_links: list[tuple[str, str]] = [] + old_template_pages: list[str] = [] + flat_header_pages: list[str] = [] + + metadata_counts = { + "namespace": 0, + "type": 0, + "description": 0, + "header": 0, + } + + for page in markdown_files: + rel_page = normalize_rel_path(page.relative_to(DOC_ROOT).as_posix()) + content = page.read_text(encoding="utf-8") + is_canonical_page = rel_page.startswith("XCEngine/") + + if is_canonical_page and NAMESPACE_RE.search(content): + metadata_counts["namespace"] += 1 + if is_canonical_page and TYPE_RE.search(content): + metadata_counts["type"] += 1 + if is_canonical_page and DESCRIPTION_RE.search(content): + metadata_counts["description"] += 1 + if is_canonical_page and HEADER_RE.search(content): + metadata_counts["header"] += 1 + + if is_canonical_page and LEGACY_SECTION_RE.search(content): + old_template_pages.append(rel_page) + + if is_flat_header_page(page, rel_page): + flat_header_pages.append(rel_page) + + for match in HEADER_RE.finditer(content): + header = normalize_rel_path(match.group(1)) + declared_header_refs.add(header) + if (INCLUDE_ROOT / header).exists(): + valid_header_refs.add(header) + if is_canonical_page: + canonical_valid_header_refs.add(header) + elif is_canonical_page: + invalid_header_refs.append((rel_page, header)) + + if is_canonical_page or rel_page.startswith(("_meta/", "_tools/")): + link_scan_content = strip_fenced_code_blocks(content) + for _, target in MD_LINK_RE.findall(link_scan_content): + if target.startswith(("http://", "https://", "mailto:", "#")): + continue + + normalized = target.replace("\\", "/") + if normalized.endswith(".md") or ".md#" in normalized: + resolved = resolve_md_target(page, normalized) + if not resolved.exists() and resolved != report_path.resolve(): + broken_md_links.append((rel_page, target)) + continue + + non_md_relative_links.append((rel_page, target)) + + public_by_module: dict[str, list[str]] = defaultdict(list) + documented_by_module: dict[str, set[str]] = defaultdict(set) + + for header in public_headers: + module = header.split("/", 2)[1] + public_by_module[module].append(header) + + for header in canonical_valid_header_refs: + if not header.startswith("XCEngine/"): + continue + module = header.split("/", 2)[1] + documented_by_module[module].add(header) + + module_coverages = [ + ModuleCoverage( + module=module, + public_headers=len(headers), + documented_headers=len(documented_by_module.get(module, set())), + ) + for module, headers in sorted(public_by_module.items()) + ] + + missing_headers = [ + header for header in public_headers if header not in canonical_valid_header_refs + ] + missing_parallel_indexes = [ + relative + for relative in public_include_dirs + if not dir_index_doc_path(relative).exists() + ] + support_top_dirs = sorted( + path.name + for path in DOC_ROOT.iterdir() + if path.is_dir() and path.name in {"_meta", "_tools"} + ) + + return { + "generated_at": datetime.now(), + "markdown_files": markdown_files, + "canonical_markdown_files": canonical_markdown_files, + "public_headers": public_headers, + "public_include_dirs": public_include_dirs, + "declared_header_refs": sorted(declared_header_refs), + "valid_header_refs": sorted(valid_header_refs), + "canonical_valid_header_refs": sorted(canonical_valid_header_refs), + "invalid_header_refs": invalid_header_refs, + "broken_md_links": broken_md_links, + "non_md_relative_links": non_md_relative_links, + "old_template_pages": sorted(old_template_pages), + "flat_header_pages": sorted(flat_header_pages), + "missing_headers": missing_headers, + "module_coverages": module_coverages, + "metadata_counts": metadata_counts, + "support_top_dirs": support_top_dirs, + "missing_parallel_indexes": missing_parallel_indexes, + } + + +def format_pairs_table(headers: tuple[str, str], rows: list[tuple[str, str]]) -> list[str]: + output = [ + f"| {headers[0]} | {headers[1]} |", + "|------|------|", + ] + for left, right in rows: + output.append(f"| `{left}` | `{right}` |") + return output + + +def build_report(state: dict[str, object]) -> str: + generated_at: datetime = state["generated_at"] # type: ignore[assignment] + markdown_files: list[Path] = state["markdown_files"] # type: ignore[assignment] + canonical_markdown_files: list[Path] = state["canonical_markdown_files"] # type: ignore[assignment] + public_headers: list[str] = state["public_headers"] # type: ignore[assignment] + public_include_dirs: list[str] = state["public_include_dirs"] # type: ignore[assignment] + valid_header_refs: list[str] = state["valid_header_refs"] # type: ignore[assignment] + canonical_valid_header_refs: list[str] = state["canonical_valid_header_refs"] # type: ignore[assignment] + invalid_header_refs: list[tuple[str, str]] = state["invalid_header_refs"] # type: ignore[assignment] + broken_md_links: list[tuple[str, str]] = state["broken_md_links"] # type: ignore[assignment] + non_md_relative_links: list[tuple[str, str]] = state["non_md_relative_links"] # type: ignore[assignment] + old_template_pages: list[str] = state["old_template_pages"] # type: ignore[assignment] + flat_header_pages: list[str] = state["flat_header_pages"] # type: ignore[assignment] + missing_headers: list[str] = state["missing_headers"] # type: ignore[assignment] + module_coverages: list[ModuleCoverage] = state["module_coverages"] # type: ignore[assignment] + metadata_counts: dict[str, int] = state["metadata_counts"] # type: ignore[assignment] + support_top_dirs: list[str] = state["support_top_dirs"] # type: ignore[assignment] + missing_parallel_indexes: list[str] = state["missing_parallel_indexes"] # type: ignore[assignment] + + lines: list[str] = [] + lines.append("# API 文档重构状态") + lines.append("") + lines.append(f"**生成时间**: `{generated_at.strftime('%Y-%m-%d %H:%M:%S')}`") + lines.append("") + lines.append("**来源**: `docs/api/_tools/audit_api_docs.py`") + lines.append("") + lines.append("## 摘要") + lines.append("") + lines.append(f"- Markdown 页面数(全部): `{len(markdown_files)}`") + lines.append(f"- Markdown 页面数(canonical): `{len(canonical_markdown_files)}`") + lines.append(f"- Public headers 数: `{len(public_headers)}`") + lines.append(f"- 有效头文件引用数(全部): `{len(valid_header_refs)}`") + lines.append(f"- 有效头文件引用数(canonical): `{len(canonical_valid_header_refs)}`") + lines.append(f"- 无效头文件引用数: `{len(invalid_header_refs)}`") + lines.append(f"- 失效 `.md` 链接数: `{len(broken_md_links)}`") + lines.append(f"- 非 `.md` 相对链接数: `{len(non_md_relative_links)}`") + lines.append(f"- 旧模板页面数: `{len(old_template_pages)}`") + lines.append(f"- 扁平 header 页面数: `{len(flat_header_pages)}`") + lines.append("") + lines.append("## 平行目录") + lines.append("") + lines.append(f"- Canonical 根目录: `{PARALLEL_ROOT.relative_to(DOC_ROOT).as_posix()}`") + lines.append(f"- 源码目录节点数: `{len(public_include_dirs)}`") + lines.append( + f"- 已生成目录总览页节点数: `{len(public_include_dirs) - len(missing_parallel_indexes)}`" + ) + lines.append(f"- 缺失目录总览页节点数: `{len(missing_parallel_indexes)}`") + if support_top_dirs: + lines.append(f"- 支撑目录: `{', '.join(support_top_dirs)}`") + lines.append("") + lines.append("## 模块覆盖") + lines.append("") + lines.append("| 模块 | Public headers | 已覆盖 | 未覆盖 |") + lines.append("|------|----------------|--------|--------|") + for coverage in module_coverages: + lines.append( + f"| `{coverage.module}` | `{coverage.public_headers}` | " + f"`{coverage.documented_headers}` | `{coverage.missing_headers}` |" + ) + lines.append("") + lines.append("## 元信息覆盖") + lines.append("") + lines.append("| 字段 | 页面数 |") + lines.append("|------|--------|") + lines.append(f"| `命名空间` | `{metadata_counts['namespace']}` |") + lines.append(f"| `类型` | `{metadata_counts['type']}` |") + lines.append(f"| `描述` | `{metadata_counts['description']}` |") + lines.append(f"| `头文件` | `{metadata_counts['header']}` |") + lines.append("") + + if missing_parallel_indexes: + lines.append("## 缺失的平行目录总览页") + lines.append("") + for relative in missing_parallel_indexes: + lines.append(f"- `{relative}`") + lines.append("") + + if invalid_header_refs: + lines.append("## 无效头文件引用") + lines.append("") + lines.extend(format_pairs_table(("文档", "头文件"), invalid_header_refs[:50])) + lines.append("") + + if broken_md_links: + lines.append("## 失效 Markdown 链接") + lines.append("") + lines.extend(format_pairs_table(("文档", "目标"), broken_md_links[:50])) + lines.append("") + + if non_md_relative_links: + lines.append("## 非 `.md` 相对链接") + lines.append("") + lines.extend(format_pairs_table(("文档", "目标"), non_md_relative_links[:50])) + lines.append("") + + if old_template_pages: + lines.append("## 旧模板页面") + lines.append("") + for page in old_template_pages[:80]: + lines.append(f"- `{page}`") + if len(old_template_pages) > 80: + lines.append(f"- 其余 `{len(old_template_pages) - 80}` 个页面请直接运行脚本查看。") + lines.append("") + + if flat_header_pages: + lines.append("## 扁平 header 页面") + lines.append("") + for page in flat_header_pages[:120]: + lines.append(f"- `{page}`") + if len(flat_header_pages) > 120: + lines.append(f"- 其余 `{len(flat_header_pages) - 120}` 个页面请直接运行脚本查看。") + lines.append("") + + if missing_headers: + lines.append("## 未覆盖的 public headers") + lines.append("") + for header in missing_headers[:120]: + lines.append(f"- `{header}`") + if len(missing_headers) > 120: + lines.append(f"- 其余 `{len(missing_headers) - 120}` 个 header 请直接运行脚本查看。") + lines.append("") + + return "\n".join(lines).rstrip() + "\n" + + +def main() -> int: + parser = argparse.ArgumentParser(description="Audit XCEngine API documentation.") + parser.add_argument( + "--report", + default=str(DEFAULT_REPORT), + help="Markdown report output path.", + ) + args = parser.parse_args() + + report_path = Path(args.report) + report_path.parent.mkdir(parents=True, exist_ok=True) + state = collect_doc_state(report_path) + report_path.write_text(build_report(state), encoding="utf-8") + + print(f"Markdown pages (all): {len(state['markdown_files'])}") + print(f"Markdown pages (canonical): {len(state['canonical_markdown_files'])}") + print(f"Public headers: {len(state['public_headers'])}") + print(f"Valid header refs (all): {len(state['valid_header_refs'])}") + print(f"Valid header refs (canonical): {len(state['canonical_valid_header_refs'])}") + print(f"Invalid header refs: {len(state['invalid_header_refs'])}") + print(f"Broken .md links: {len(state['broken_md_links'])}") + print(f"Non-.md relative links: {len(state['non_md_relative_links'])}") + print(f"Old template pages: {len(state['old_template_pages'])}") + print(f"Flat header pages: {len(state['flat_header_pages'])}") + print(f"Missing directory index pages: {len(state['missing_parallel_indexes'])}") + print(f"Report written to: {report_path}") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/docs/api/fix_links.py b/docs/api/_tools/fix_links.py similarity index 98% rename from docs/api/fix_links.py rename to docs/api/_tools/fix_links.py index 36867eae..37b228bf 100644 --- a/docs/api/fix_links.py +++ b/docs/api/_tools/fix_links.py @@ -7,7 +7,8 @@ import os import re from pathlib import Path -API_DOCS_ROOT = Path(r"D:\Xuanchi\Main\XCEngine\docs\api") +SCRIPT_DIR = Path(__file__).resolve().parent +API_DOCS_ROOT = SCRIPT_DIR.parent if SCRIPT_DIR.name == "_tools" else SCRIPT_DIR def normalize_path(path_str): diff --git a/docs/api/_tools/generate_core_resources_canonical_pages.py b/docs/api/_tools/generate_core_resources_canonical_pages.py new file mode 100644 index 00000000..bb8aed32 --- /dev/null +++ b/docs/api/_tools/generate_core_resources_canonical_pages.py @@ -0,0 +1,829 @@ +#!/usr/bin/env python3 +from __future__ import annotations + +import os +import re +from dataclasses import dataclass +from pathlib import Path + + +SCRIPT_DIR = Path(__file__).resolve().parent +DOC_ROOT = SCRIPT_DIR.parent if SCRIPT_DIR.name == "_tools" else SCRIPT_DIR +REPO_ROOT = DOC_ROOT.parents[1] +INCLUDE_ROOT = REPO_ROOT / "engine" / "include" / "XCEngine" +MAIN_INDEX = DOC_ROOT / "main.md" + + +def dir_index_name(doc_dir: Path) -> str: + return f"{doc_dir.name}.md" + + +def dir_index_path(doc_dir: Path) -> Path: + return doc_dir / dir_index_name(doc_dir) + +MODULES = ( + "Audio", + "Components", + "Core", + "Debug", + "Input", + "Memory", + "Platform", + "Resources", + "RHI", + "Scene", + "Threading", +) +TYPE_START_RE = re.compile( + r"^(class|struct|enum class|enum)\s+([A-Za-z_]\w*)(?:\s*:\s*public\s+([^{;]+))?" +) +NAMESPACE_RE = re.compile(r"^namespace\s+([A-Za-z_]\w*)\s*{") +ACCESS_RE = re.compile(r"^(public|protected|private):$") +HEADER_SECTION_RE = re.compile(r"(?ms)^## 头文件\n.*?(?=\n## |\Z)") +METHOD_NAME_RE = re.compile(r"(operator[^\s(]+|~?[A-Za-z_]\w*)\s*\(") +PURE_VIRTUAL_RE = re.compile(r"\)\s*(?:const\s*)?(?:noexcept\s*)?(?:override\s*)?(?:final\s*)?=\s*0\b") +OPERATOR_FILE_NAMES = { + "operator=": "OperatorAssign", + "operator+": "OperatorPlus", + "operator+=": "OperatorPlusAssign", + "operator-": "OperatorMinus", + "operator-=": "OperatorMinusAssign", + "operator*": "OperatorMultiply", + "operator*=": "OperatorMultiplyAssign", + "operator/": "OperatorDivide", + "operator/=": "OperatorDivideAssign", + "operator%": "OperatorModulo", + "operator%=": "OperatorModuloAssign", + "operator&": "OperatorBitAnd", + "operator&=": "OperatorBitAndAssign", + "operator|": "OperatorBitOr", + "operator|=": "OperatorBitOrAssign", + "operator^": "OperatorBitXor", + "operator^=": "OperatorBitXorAssign", + "operator<<": "OperatorShiftLeft", + "operator<<=": "OperatorShiftLeftAssign", + "operator>>": "OperatorShiftRight", + "operator>>=": "OperatorShiftRightAssign", + "operator==": "OperatorEqual", + "operator!=": "OperatorNotEqual", + "operator<": "OperatorLess", + "operator>": "OperatorGreater", + "operator<=": "OperatorLessEqual", + "operator>=": "OperatorGreaterEqual", + "operator!": "OperatorNot", + "operator[]": "OperatorSubscript", + "operator()": "OperatorCall", + "operator->": "OperatorArrow", + "operator++": "OperatorIncrement", + "operator--": "OperatorDecrement", + "operator bool": "OperatorBool", +} +LEGACY_METHOD_FILE_RE = re.compile(r"^(constructor|destructor|operator-[a-z0-9-]+|[a-z0-9][a-z0-9-]*)\.md$") + + +@dataclass +class FieldInfo: + name: str + type_name: str + default: str + + +@dataclass +class Declaration: + kind: str + name: str + namespace: str + base: str | None + methods: list[str] + fields: list[FieldInfo] + enum_values: list[tuple[str, str]] + has_pure_virtual: bool + has_singleton_getter: bool + + +def normalize_line(value: str) -> str: + return " ".join(value.strip().split()) + + +def strip_inline_comment(value: str) -> str: + return value.split("//", 1)[0].strip() + + +def build_namespace_map(lines: list[str]) -> list[str]: + namespaces: list[str] = [] + namespace_depths: list[int] = [] + depth = 0 + result: list[str] = [] + + for line in lines: + stripped = line.strip() + match = NAMESPACE_RE.match(stripped) + if match and "{" in stripped: + namespaces.append(match.group(1)) + namespace_depths.append(depth + stripped.count("{")) + + result.append("::".join(namespaces) if namespaces else "XCEngine") + depth += line.count("{") - line.count("}") + + while namespace_depths and depth < namespace_depths[-1]: + namespace_depths.pop() + namespaces.pop() + + return result + + +def parse_enum_values(body_lines: list[str]) -> list[tuple[str, str]]: + values: list[tuple[str, str]] = [] + for raw in body_lines: + line = strip_inline_comment(raw) + if not line or line in {"{", "}", "};"}: + continue + for part in line.split(","): + token = part.strip() + if not token or token in {"{", "}"}: + continue + name, _, value = token.partition("=") + enum_name = name.strip() + enum_value = value.strip() + if re.match(r"^[A-Za-z_]\w*$", enum_name): + values.append((enum_name, enum_value)) + deduped: list[tuple[str, str]] = [] + seen: set[str] = set() + for item in values: + if item[0] in seen: + continue + deduped.append(item) + seen.add(item[0]) + return deduped + + +def parse_field(statement: str) -> FieldInfo | None: + left, _, default = statement.partition("=") + left = left.strip() + if "operator" in left: + return None + if "(" in left or ")" in left: + return None + if not left: + return None + match = re.match(r"(.+?)\s+([A-Za-z_]\w*)$", left) + if not match: + return None + return FieldInfo( + name=match.group(2), + type_name=match.group(1).strip(), + default=default.strip(), + ) + + +def infer_method_name(signature: str) -> str: + match = METHOD_NAME_RE.search(signature) + return match.group(1) if match else signature + + +def infer_method_description(name: str, type_name: str) -> str: + if name == type_name: + return "构造对象。" + if name == f"~{type_name}": + return "销毁对象并释放相关资源。" + + prefix_map = { + "Get": "获取相关状态或对象。", + "Set": "设置相关状态或配置。", + "Is": "查询当前状态。", + "Has": "判断是否具备指定状态或能力。", + "Can": "判断当前条件下是否可执行。", + "Create": "创建新对象或资源。", + "Load": "加载资源或数据。", + "Unload": "卸载资源或释放缓存。", + "Initialize": "初始化内部状态。", + "Shutdown": "关闭并清理内部状态。", + "Update": "更新运行时状态。", + "Register": "注册对象、回调或映射。", + "Unregister": "取消注册对象、回调或映射。", + "Add": "添加元素或建立关联。", + "Remove": "移除元素或解除关联。", + "Clear": "清空内部数据。", + "Find": "查找并返回匹配对象。", + "Resolve": "解析并返回目标结果。", + "Release": "释放引用或底层资源。", + } + for prefix, description in prefix_map.items(): + if name.startswith(prefix): + return description + return "公开方法,详见头文件声明。" + + +def pascal_case(value: str) -> str: + parts = re.split(r"[^A-Za-z0-9]+", value) + return "".join(part[:1].upper() + part[1:] for part in parts if part) + + +def split_top_level(value: str, delimiter: str = ",") -> list[str]: + parts: list[str] = [] + current: list[str] = [] + angle = 0 + paren = 0 + bracket = 0 + brace = 0 + for char in value: + if char == "<": + angle += 1 + elif char == ">": + angle = max(0, angle - 1) + elif char == "(": + paren += 1 + elif char == ")": + paren = max(0, paren - 1) + elif char == "[": + bracket += 1 + elif char == "]": + bracket = max(0, bracket - 1) + elif char == "{": + brace += 1 + elif char == "}": + brace = max(0, brace - 1) + + if ( + char == delimiter + and angle == 0 + and paren == 0 + and bracket == 0 + and brace == 0 + ): + part = "".join(current).strip() + if part: + parts.append(part) + current = [] + continue + current.append(char) + + tail = "".join(current).strip() + if tail: + parts.append(tail) + return parts + + +def parse_signature_parts(signature: str, type_name: str) -> tuple[str, str, list[str], str]: + clean = signature.strip() + match = METHOD_NAME_RE.search(clean) + if not match: + return clean, "", [], "" + + method_name = match.group(1) + params_start = clean.find("(", match.end(1) - 1) + depth = 0 + params_end = params_start + for index in range(params_start, len(clean)): + char = clean[index] + if char == "(": + depth += 1 + elif char == ")": + depth -= 1 + if depth == 0: + params_end = index + break + + params_text = clean[params_start + 1:params_end].strip() + params = [] if not params_text or params_text == "void" else split_top_level(params_text) + return_type = clean[:match.start(1)].strip() + if method_name in {type_name, f"~{type_name}"}: + return_type = "" + else: + while True: + updated = re.sub( + r"^(virtual|static|inline|constexpr|explicit|friend)\s+", + "", + return_type, + ) + if updated == return_type: + break + return_type = updated.strip() + + return method_name, return_type, params, clean[params_end + 1:].strip() + + +def extract_param_name(param: str) -> str: + clean = param.split("=", 1)[0].strip() + if not clean: + return "param" + match = re.search(r"([A-Za-z_]\w*)\s*(?:\[\s*\])?$", clean) + return match.group(1) if match else "param" + + +def build_method_file_name(method_name: str, type_name: str) -> str: + if method_name == type_name: + return "Constructor" + if method_name == f"~{type_name}": + return "Destructor" + if method_name in OPERATOR_FILE_NAMES: + return OPERATOR_FILE_NAMES[method_name] + if method_name.startswith("operator"): + suffix = method_name[len("operator"):].strip() + return "Operator" + pascal_case(suffix or "Custom") + return method_name + + +def build_method_label(method_name: str, type_name: str) -> str: + if method_name == type_name: + return f"{type_name}()" + if method_name == f"~{type_name}": + return f"~{type_name}()" + return method_name + + +def group_methods(methods: list[str], type_name: str) -> list[dict[str, object]]: + groups: list[dict[str, object]] = [] + by_slug: dict[str, dict[str, object]] = {} + for signature in methods: + method_name, return_type, params, suffix = parse_signature_parts(signature, type_name) + file_name = build_method_file_name(method_name, type_name) + group = by_slug.get(file_name) + if group is None: + group = { + "file_name": file_name, + "method_name": method_name, + "label": build_method_label(method_name, type_name), + "description": infer_method_description(method_name, type_name), + "overloads": [], + } + groups.append(group) + by_slug[file_name] = group + overloads: list[dict[str, object]] = group["overloads"] # type: ignore[assignment] + overloads.append( + { + "signature": signature, + "return_type": return_type, + "params": params, + "suffix": suffix, + } + ) + return groups + + +def build_example_block(namespace: str, type_name: str, method_name: str, relative_header: str) -> list[str]: + lines = ["```cpp", f"#include <{relative_header}>", "", "void Example() {"] + qualified = f"{namespace}::{type_name}" if namespace else type_name + if method_name == type_name: + lines.append(f" {qualified} object;") + elif method_name == f"~{type_name}": + lines.append(f" {qualified} object;") + lines.append(" // 对象离开作用域时会自动触发析构。") + elif method_name == "Get": + lines.append(f" auto& instance = {qualified}::Get();") + lines.append(" (void)instance;") + else: + lines.append(f" {qualified} object;") + lines.append(f" // 根据上下文补齐参数后调用 {type_name}::{method_name}(...)。") + lines.append(" (void)object;") + lines.append("}") + lines.append("```") + return lines + + +def build_method_page( + class_name: str, + namespace: str, + relative_header: str, + class_doc_path: Path, + group: dict[str, object], +) -> str: + method_name = group["method_name"] # type: ignore[assignment] + label = group["label"] # type: ignore[assignment] + overloads: list[dict[str, object]] = group["overloads"] # type: ignore[assignment] + + output: list[str] = [] + output.append(f"# {class_name}::{label}") + output.append("") + output.append(infer_method_description(method_name, class_name)) + output.append("") + + if len(overloads) == 1: + overload = overloads[0] + output.append("```cpp") + output.append(f"{overload['signature']};") + output.append("```") + output.append("") + output.append( + f"该方法声明于 `{relative_header}`,当前页面用于固定 `{class_name}` 类目录下的方法级 canonical 路径。" + ) + output.append("") + params: list[str] = overload["params"] # type: ignore[assignment] + if params: + output.append("**参数:**") + for param in params: + output.append(f"- `{extract_param_name(param)}` - 参数语义详见头文件声明。") + else: + output.append("**参数:** 无。") + output.append("") + return_type = overload["return_type"] # type: ignore[assignment] + if not return_type or return_type == "void": + output.append("**返回:** `void` - 无返回值。") + else: + output.append(f"**返回:** `{return_type}` - 返回值语义详见头文件声明。") + output.append("") + else: + output.append( + f"该方法在 `{relative_header}` 中提供了 {len(overloads)} 个重载,当前页面统一汇总这些公开声明。" + ) + output.append("") + for index, overload in enumerate(overloads, start=1): + output.append(f"## 重载 {index}: 声明") + output.append("") + output.append("```cpp") + output.append(f"{overload['signature']};") + output.append("```") + output.append("") + params = overload["params"] # type: ignore[assignment] + if params: + output.append("**参数:**") + for param in params: + output.append(f"- `{extract_param_name(param)}` - 参数语义详见头文件声明。") + else: + output.append("**参数:** 无。") + output.append("") + return_type = overload["return_type"] # type: ignore[assignment] + if not return_type or return_type == "void": + output.append("**返回:** `void` - 无返回值。") + else: + output.append(f"**返回:** `{return_type}` - 返回值语义详见头文件声明。") + output.append("") + + output.append("**示例:**") + output.append("") + output.extend(build_example_block(namespace, class_name, method_name, relative_header)) + output.append("") + output.append("## 相关文档") + output.append("") + output.append(f"- [返回类总览]({class_doc_path.name})") + output.append(f"- [返回模块目录](../{class_doc_path.parent.parent.name}.md)") + return "\n".join(output).rstrip() + "\n" + + +def parse_members(body_lines: list[str], kind: str, type_name: str) -> tuple[list[str], list[FieldInfo], bool, bool]: + access = "private" if kind == "class" else "public" + nested_depth = 0 + buffer = "" + methods: list[str] = [] + fields: list[FieldInfo] = [] + has_pure_virtual = False + has_singleton_getter = False + + for raw in body_lines: + line = strip_inline_comment(raw) + if not line: + continue + + access_match = ACCESS_RE.match(line) + if access_match: + access = access_match.group(1) + continue + + if nested_depth > 0: + nested_depth += line.count("{") - line.count("}") + continue + + if line.startswith(("struct ", "class ", "enum ", "enum class ")) and "{" in line: + nested_depth = line.count("{") - line.count("}") + continue + + if access != "public": + continue + + buffer = f"{buffer} {line}".strip() if buffer else line + + if "{" in buffer and "(" in buffer: + statement = normalize_line(buffer.split("{", 1)[0]) + if statement: + methods.append(statement) + has_pure_virtual = has_pure_virtual or bool(PURE_VIRTUAL_RE.search(statement)) + if re.search(rf"\bstatic\s+{re.escape(type_name)}(?:\s*[&*])\s+Get\s*\(", statement): + has_singleton_getter = True + nested_depth = buffer.count("{") - buffer.count("}") + buffer = "" + continue + + if ";" not in buffer: + continue + + statement = normalize_line(buffer.split(";", 1)[0]) + buffer = "" + if not statement: + continue + + if statement.startswith(("using ", "typedef ")): + continue + + field = parse_field(statement) + if field: + fields.append(field) + continue + + if "(" in statement and ")" in statement: + methods.append(statement) + has_pure_virtual = has_pure_virtual or bool(PURE_VIRTUAL_RE.search(statement)) + if re.search(rf"\bstatic\s+{re.escape(type_name)}(?:\s*[&*])\s+Get\s*\(", statement): + has_singleton_getter = True + continue + + deduped_methods: list[str] = [] + for method in methods: + if method not in deduped_methods: + deduped_methods.append(method) + + deduped_fields: list[FieldInfo] = [] + seen_fields: set[str] = set() + for field in fields: + if field.name in seen_fields: + continue + deduped_fields.append(field) + seen_fields.add(field.name) + + return deduped_methods, deduped_fields, has_pure_virtual, has_singleton_getter + + +def find_declarations(lines: list[str], namespace_map: list[str]) -> list[Declaration]: + declarations: list[Declaration] = [] + index = 0 + while index < len(lines): + stripped = lines[index].strip() + match = TYPE_START_RE.match(stripped) + if not match: + index += 1 + continue + + kind = match.group(1) + name = match.group(2) + namespace = namespace_map[index] + base = match.group(3).strip() if match.group(3) else None + + if ";" in stripped and "{" not in stripped: + index += 1 + continue + + brace_depth = stripped.count("{") - stripped.count("}") + body_lines: list[str] = [] + index += 1 + while index < len(lines): + current = lines[index] + body_lines.append(current) + brace_depth += current.count("{") - current.count("}") + index += 1 + if brace_depth <= 0: + break + + if kind in {"enum", "enum class"}: + declarations.append( + Declaration( + kind=kind, + name=name, + namespace=namespace, + base=base, + methods=[], + fields=[], + enum_values=parse_enum_values(body_lines), + has_pure_virtual=False, + has_singleton_getter=False, + ) + ) + continue + + methods, fields, has_pure_virtual, has_singleton_getter = parse_members(body_lines, kind, name) + declarations.append( + Declaration( + kind=kind, + name=name, + namespace=namespace, + base=base, + methods=methods, + fields=fields, + enum_values=[], + has_pure_virtual=has_pure_virtual, + has_singleton_getter=has_singleton_getter, + ) + ) + + return declarations + + +def select_primary(stem: str, declarations: list[Declaration]) -> Declaration | None: + for declaration in declarations: + if declaration.name == stem: + return declaration + return declarations[0] if declarations else None + + +def infer_page_type(stem: str, primary: Declaration | None) -> str: + if not primary: + return "header" + if primary.kind == "class" and primary.has_singleton_getter: + return "class (singleton)" + if primary.kind == "class" and primary.has_pure_virtual: + return "class (abstract)" + return primary.kind + + +def scope_label(relative_parts: tuple[str, ...]) -> str: + if not relative_parts: + return "当前模块" + return "`XCEngine/" + "/".join(relative_parts) + "` 子目录" + + +def infer_description(stem: str, relative_parts: tuple[str, ...]) -> str: + return f"定义 {scope_label(relative_parts)}中的 `{stem}` public API。" + + +def relative_link(from_path: Path, to_path: Path) -> str: + return os.path.relpath(to_path, from_path.parent).replace("\\", "/") + + +def build_page(header_path: Path) -> tuple[str, dict[str, str]]: + relative_header = header_path.relative_to(INCLUDE_ROOT.parent).as_posix() + relative_doc_dir = header_path.parent.relative_to(INCLUDE_ROOT) + stem = header_path.stem + doc_path = DOC_ROOT / "XCEngine" / relative_doc_dir / stem / f"{stem}.md" + + lines = header_path.read_text(encoding="utf-8", errors="ignore").splitlines() + namespace_map = build_namespace_map(lines) + declarations = find_declarations(lines, namespace_map) + primary = select_primary(stem, declarations) + namespace = primary.namespace if primary else "XCEngine" + visible_declarations = [ + declaration + for declaration in declarations + if not primary or declaration.namespace == primary.namespace + ] + has_std_hash = any( + primary + and declaration.namespace == "std" + and declaration.name == "hash" + for declaration in declarations + ) + method_pages: dict[str, str] = {} + + output: list[str] = [] + output.append(f"# {stem}") + output.append("") + output.append(f"**命名空间**: `{namespace}`") + output.append("") + output.append(f"**类型**: `{infer_page_type(stem, primary)}`") + output.append("") + output.append(f"**头文件**: `{relative_header}`") + output.append("") + output.append(f"**描述**: {infer_description(stem, tuple(relative_doc_dir.parts))}") + output.append("") + output.append("## 概述") + output.append("") + output.append( + f"`{header_path.name}` 是 {scope_label(tuple(relative_doc_dir.parts))} 下的 public header," + "当前页面作为平行目录中的 canonical 总览,用于汇总该头文件暴露的主要声明。" + ) + output.append("") + + if visible_declarations: + output.append("## 声明概览") + output.append("") + output.append("| 声明 | 类型 | 说明 |") + output.append("|------|------|------|") + for declaration in visible_declarations: + note = "头文件中的公开声明。" + if declaration.base: + note = f"继承自 `{declaration.base}` 的公开声明。" + output.append(f"| `{declaration.name}` | `{declaration.kind}` | {note} |") + output.append("") + + if primary and primary.kind == "struct" and primary.fields: + output.append("## 结构体成员") + output.append("") + output.append("| 成员 | 类型 | 描述 | 默认值 |") + output.append("|------|------|------|--------|") + for field in primary.fields: + default = f"`{field.default}`" if field.default else "-" + output.append( + f"| `{field.name}` | `{field.type_name}` | 结构体公开字段。 | {default} |" + ) + output.append("") + + elif primary and primary.kind in {"enum", "enum class"} and primary.enum_values: + output.append("## 枚举值") + output.append("") + output.append("| 枚举值 | 数值 | 描述 |") + output.append("|--------|------|------|") + for name, value in primary.enum_values: + number = f"`{value}`" if value else "-" + output.append(f"| `{name}` | {number} | 枚举项。 |") + output.append("") + elif primary and primary.methods: + method_groups = group_methods(primary.methods, primary.name) + output.append("## 公共方法") + output.append("") + output.append("| 方法 | 描述 |") + output.append("|------|------|") + for group in method_groups: + file_name = group["file_name"] # type: ignore[assignment] + label = group["label"] # type: ignore[assignment] + description = group["description"] # type: ignore[assignment] + output.append(f"| [{label}]({file_name}.md) | {description} |") + method_pages[file_name] = build_method_page( + primary.name, + namespace, + relative_header, + doc_path, + group, + ) + output.append("") + + if primary and has_std_hash: + output.append("## std::hash 特化") + output.append("") + output.append("```cpp") + output.append("namespace std {") + output.append(f" template<> struct hash<{primary.namespace}::{primary.name}>;") + output.append("}") + output.append("```") + output.append("") + output.append( + f"`{header_path.name}` 同时提供 `std::hash<{primary.namespace}::{primary.name}>` 特化," + "可直接用于哈希容器键类型。" + ) + output.append("") + + output.append("## 相关文档") + output.append("") + output.append( + f"- [当前目录](../{dir_index_name(doc_path.parent.parent)}) - 返回 `{header_path.parent.name}` 平行目录" + ) + if relative_doc_dir.parts: + output.append("- [API 总索引](" + relative_link(doc_path, MAIN_INDEX) + ") - 返回顶层索引") + else: + output.append("- [API 总索引](../../main.md) - 返回顶层索引") + + return "\n".join(output).rstrip() + "\n", method_pages + + +def cleanup_stale_method_pages(doc_dir: Path, overview_name: str, desired_files: set[str]) -> None: + for page in doc_dir.glob("*.md"): + if page.name == f"{overview_name}.md": + continue + if page.stem in desired_files: + continue + page.unlink() + + +def refresh_dir_index(include_dir: Path, doc_dir: Path) -> None: + index_page = dir_index_path(doc_dir) + if not index_page.exists(): + return + + headers = sorted(include_dir.glob("*.h")) + section_lines = ["## 头文件", ""] + for header in headers: + page_name = f"{header.stem}/{header.stem}.md" + if (doc_dir / header.stem / f"{header.stem}.md").exists(): + section_lines.append(f"- [{header.stem}]({page_name}) - `{header.name}`") + else: + section_lines.append(f"- `{header.name}`") + section = "\n".join(section_lines).rstrip() + "\n" + + content = index_page.read_text(encoding="utf-8") + updated = HEADER_SECTION_RE.sub(section, content) + if updated != content: + index_page.write_text(updated, encoding="utf-8") + + +def main() -> int: + generated = 0 + method_generated = 0 + for module in MODULES: + include_module_dir = INCLUDE_ROOT / module + doc_module_dir = DOC_ROOT / "XCEngine" / module + headers = sorted(include_module_dir.rglob("*.h")) + for header in headers: + stem = header.stem + doc_dir = doc_module_dir / header.parent.relative_to(include_module_dir) / stem + doc_dir.mkdir(parents=True, exist_ok=True) + doc_path = doc_dir / f"{stem}.md" + overview_content, method_pages = build_page(header) + cleanup_stale_method_pages(doc_dir, stem, set(method_pages)) + doc_path.write_text(overview_content, encoding="utf-8") + generated += 1 + for file_name, content in method_pages.items(): + (doc_dir / f"{file_name}.md").write_text(content, encoding="utf-8") + method_generated += 1 + + dir_index_dirs = [include_module_dir] + dir_index_dirs.extend(path for path in sorted(include_module_dir.rglob("*")) if path.is_dir()) + for include_dir in dir_index_dirs: + relative = include_dir.relative_to(include_module_dir) + refresh_dir_index(include_dir, doc_module_dir / relative) + + print( + "Generated " + f"{generated} canonical overview pages for modules: {', '.join(MODULES)}." + ) + print(f"Generated {method_generated} method detail pages.") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/docs/api/_tools/generate_parallel_canonical_pages.py b/docs/api/_tools/generate_parallel_canonical_pages.py new file mode 100644 index 00000000..373c57fa --- /dev/null +++ b/docs/api/_tools/generate_parallel_canonical_pages.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 +from __future__ import annotations + +import runpy +from pathlib import Path + + +SCRIPT_DIR = Path(__file__).resolve().parent +IMPLEMENTATION = SCRIPT_DIR / "generate_core_resources_canonical_pages.py" + + +def main() -> int: + module_globals = runpy.run_path(str(IMPLEMENTATION)) + return int(module_globals["main"]()) + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/docs/api/_tools/generate_rhi_canonical_pages.py b/docs/api/_tools/generate_rhi_canonical_pages.py new file mode 100644 index 00000000..f344dfd4 --- /dev/null +++ b/docs/api/_tools/generate_rhi_canonical_pages.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 +from __future__ import annotations + +import runpy +from pathlib import Path + + +SCRIPT_DIR = Path(__file__).resolve().parent +UNIFIED_GENERATOR = SCRIPT_DIR / "generate_parallel_canonical_pages.py" + + +def main() -> int: + module_globals = runpy.run_path(str(UNIFIED_GENERATOR)) + return int(module_globals["main"]()) + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/docs/api/_tools/migrate_canonical_pages_to_class_dirs.py b/docs/api/_tools/migrate_canonical_pages_to_class_dirs.py new file mode 100644 index 00000000..03536c1a --- /dev/null +++ b/docs/api/_tools/migrate_canonical_pages_to_class_dirs.py @@ -0,0 +1,134 @@ +from __future__ import annotations + +import os +import re +from pathlib import Path + + +SCRIPT_DIR = Path(__file__).resolve().parent +DOC_ROOT = SCRIPT_DIR.parent if SCRIPT_DIR.name == "_tools" else SCRIPT_DIR +PARALLEL_ROOT = DOC_ROOT / "XCEngine" +REPO_ROOT = DOC_ROOT.parents[1] +PUBLIC_INCLUDE_ROOT = REPO_ROOT / "engine" / "include" / "XCEngine" + +MD_LINK_RE = re.compile(r"\[([^\]]+)\]\(([^)]+)\)") + + +def normalize(path: Path) -> Path: + return path.resolve() + + +def resolve_md_target(source: Path, target: str) -> tuple[Path, str]: + raw_target, _, anchor = target.partition("#") + resolved = normalize(source.parent / raw_target.replace("\\", "/")) + suffix = f"#{anchor}" if anchor else "" + return resolved, suffix + + +def relativize(source: Path, target: Path) -> str: + return os.path.relpath(target, source.parent).replace("\\", "/") + + +def iter_canonical_markdown() -> list[Path]: + return sorted( + path + for path in DOC_ROOT.rglob("*.md") + if "_meta" not in path.parts + and "_tools" not in path.parts + ) + + +def is_dir_index_page(page: Path) -> bool: + if not page.is_relative_to(PARALLEL_ROOT): + return False + if page.stem != page.parent.name: + return False + + relative_dir = page.parent.relative_to(PARALLEL_ROOT) + source_dir = PUBLIC_INCLUDE_ROOT / relative_dir + return source_dir.exists() and source_dir.is_dir() + + +def is_flat_header_page(page: Path) -> bool: + if is_dir_index_page(page): + return False + if not page.is_relative_to(PARALLEL_ROOT): + return False + relative = page.relative_to(DOC_ROOT).with_suffix(".h") + return (REPO_ROOT / "engine" / "include" / relative).exists() + + +def build_mapping(pages: list[Path]) -> dict[Path, Path]: + mapping: dict[Path, Path] = {} + for page in pages: + if not is_flat_header_page(page): + continue + mapping[normalize(page)] = normalize(page.parent / page.stem / page.name) + return mapping + + +def rewrite_links( + content: str, + source_path: Path, + dest_path: Path, + mapping: dict[Path, Path], +) -> str: + def replace(match: re.Match[str]) -> str: + label = match.group(1) + target = match.group(2) + if target.startswith(("http://", "https://", "mailto:", "#")): + return match.group(0) + + normalized = target.replace("\\", "/") + if not (normalized.endswith(".md") or ".md#" in normalized): + return match.group(0) + + resolved, anchor = resolve_md_target(source_path, normalized) + target_path = mapping.get(resolved, resolved) + rewritten = f"{relativize(dest_path, target_path)}{anchor}" + return f"[{label}]({rewritten})" + + return MD_LINK_RE.sub(replace, content) + + +def main() -> int: + markdown_pages = iter_canonical_markdown() + mapping = build_mapping(markdown_pages) + if not mapping: + print("No flat canonical header pages found.") + return 0 + + original_content = { + normalize(path): path.read_text(encoding="utf-8") + for path in markdown_pages + } + + written = 0 + for page in markdown_pages: + source_path = normalize(page) + dest_path = mapping.get(source_path, source_path) + rewritten = rewrite_links( + original_content[source_path], + source_path, + dest_path, + mapping, + ) + dest_path.parent.mkdir(parents=True, exist_ok=True) + dest_path.write_text(rewritten, encoding="utf-8") + written += 1 + + removed = 0 + for source_path, dest_path in mapping.items(): + if source_path == dest_path: + continue + source_path.unlink() + removed += 1 + + print(f"Migrated {len(mapping)} flat canonical header pages into class directories.") + print(f"Rewrote {written} markdown files.") + print(f"Removed {removed} obsolete flat pages.") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/docs/api/_tools/scaffold_parallel_layout.py b/docs/api/_tools/scaffold_parallel_layout.py new file mode 100644 index 00000000..bb79523e --- /dev/null +++ b/docs/api/_tools/scaffold_parallel_layout.py @@ -0,0 +1,180 @@ +#!/usr/bin/env python3 +from __future__ import annotations + +import os +from dataclasses import dataclass +from pathlib import Path + + +SCRIPT_DIR = Path(__file__).resolve().parent +API_ROOT = SCRIPT_DIR.parent if SCRIPT_DIR.name == "_tools" else SCRIPT_DIR +REPO_ROOT = API_ROOT.parents[1] +INCLUDE_ROOT = REPO_ROOT / "engine" / "include" / "XCEngine" +DOC_ROOT = API_ROOT / "XCEngine" + + +DESCRIPTION_MAP = { + "XCEngine": "与 `engine/include/XCEngine` 平行的 API 文档根目录。", + "XCEngine/Audio": "音频系统、混音器、效果器与后端接口。", + "XCEngine/Components": "组件系统与游戏对象 API。", + "XCEngine/Core": "基础类型、事件、IO、容器与数学基础设施。", + "XCEngine/Core/Asset": "资源句柄、资源管理器、异步加载与依赖图。", + "XCEngine/Core/Containers": "字符串、数组和哈希表等核心容器。", + "XCEngine/Core/IO": "资源路径、归档与虚拟文件系统。", + "XCEngine/Core/Math": "向量、矩阵、几何体与变换数学类型。", + "XCEngine/Debug": "日志、Profiler 与调试集成接口。", + "XCEngine/Input": "输入状态查询、输入事件与平台接入接口。", + "XCEngine/Memory": "分配器与内存管理。", + "XCEngine/Platform": "窗口、时钟、文件系统和平台抽象。", + "XCEngine/Platform/Windows": "Windows 平台窗口与输入接入实现。", + "XCEngine/Resources": "具体资源类型及其加载器。", + "XCEngine/Resources/AudioClip": "音频资源与音频加载器。", + "XCEngine/Resources/Material": "材质资源与材质加载器。", + "XCEngine/Resources/Mesh": "网格资源、导入设置与网格加载器。", + "XCEngine/Resources/Shader": "着色器资源与着色器加载器。", + "XCEngine/Resources/Texture": "纹理资源、导入设置与纹理加载器。", + "XCEngine/RHI": "渲染硬件抽象层及其后端。", + "XCEngine/RHI/D3D12": "DirectX 12 后端 public headers。", + "XCEngine/RHI/OpenGL": "OpenGL 后端 public headers。", + "XCEngine/Scene": "场景与场景管理器 API。", + "XCEngine/Threading": "线程封装、同步原语和任务系统。", +} + + +@dataclass +class DirInfo: + include_dir: Path + doc_dir: Path + relative: str + namespace: str + type_label: str + description: str + + +def to_namespace(relative: str) -> str: + if relative == "XCEngine": + return "XCEngine" + return "::".join(relative.split("/")) + + +def get_type_label(relative: str) -> str: + if relative == "XCEngine": + return "module-root" + if relative.count("/") == 1: + return "module" + return "submodule" + + +def get_description(relative: str) -> str: + return DESCRIPTION_MAP.get(relative, "与当前 public headers 平行的文档目录节点。") + + +def iter_include_dirs() -> list[DirInfo]: + dirs = [INCLUDE_ROOT] + dirs.extend(path for path in sorted(INCLUDE_ROOT.rglob("*")) if path.is_dir()) + + items: list[DirInfo] = [] + for include_dir in dirs: + relative = "XCEngine" + if include_dir != INCLUDE_ROOT: + relative = "XCEngine/" + include_dir.relative_to(INCLUDE_ROOT).as_posix() + + doc_dir = DOC_ROOT if include_dir == INCLUDE_ROOT else DOC_ROOT / include_dir.relative_to(INCLUDE_ROOT) + items.append( + DirInfo( + include_dir=include_dir, + doc_dir=doc_dir, + relative=relative, + namespace=to_namespace(relative), + type_label=get_type_label(relative), + description=get_description(relative), + ) + ) + return items + + +def relative_link(source: Path, target: Path) -> str: + return os.path.relpath(target, source.parent).replace("\\", "/") + + +def dir_index_name(doc_dir: Path) -> str: + return f"{doc_dir.name}.md" + + +def dir_index_path(doc_dir: Path) -> Path: + return doc_dir / dir_index_name(doc_dir) + + +def header_doc_page_name(header_name: str) -> str: + stem = Path(header_name).stem + return f"{stem}/{stem}.md" + + +def build_dir_index(info: DirInfo) -> str: + include_headers = sorted(path.name for path in info.include_dir.glob("*.h")) + child_dirs = sorted(path.name for path in info.include_dir.iterdir() if path.is_dir()) + index_path = dir_index_path(info.doc_dir) + + title = info.relative.split("/")[-1] + if info.relative == "XCEngine": + title = "XCEngine API 平行目录" + + lines: list[str] = [] + lines.append(f"# {title}") + lines.append("") + lines.append(f"**命名空间**: `{info.namespace}`") + lines.append("") + lines.append(f"**类型**: `{info.type_label}`") + lines.append("") + lines.append(f"**描述**: {info.description}") + lines.append("") + lines.append("## 概览") + lines.append("") + lines.append( + f"该目录与 `{info.relative}` 对应的 public headers 保持平行,用于承载唯一的 canonical API 文档入口。" + ) + lines.append("") + + if child_dirs: + lines.append("## 子目录") + lines.append("") + for child in child_dirs: + lines.append(f"- [{child}]({child}/{child}.md)") + lines.append("") + + if include_headers: + lines.append("## 头文件") + lines.append("") + for header in include_headers: + page_name = header_doc_page_name(header) + page_path = info.doc_dir / Path(page_name) + if page_path.exists(): + lines.append(f"- [{Path(header).stem}]({page_name}) - `{header}`") + else: + lines.append(f"- `{header}`") + lines.append("") + + lines.append("## 相关文档") + lines.append("") + if info.relative == "XCEngine": + lines.append("- [API 总索引](../main.md)") + lines.append("- [API 文档重构状态](../_meta/rebuild-status.md)") + else: + lines.append(f"- [上级目录](../{info.doc_dir.parent.name}.md)") + lines.append(f"- [API 总索引]({relative_link(index_path, API_ROOT / 'main.md')})") + + return "\n".join(lines).rstrip() + "\n" + + +def main() -> int: + DOC_ROOT.mkdir(parents=True, exist_ok=True) + infos = iter_include_dirs() + for info in infos: + info.doc_dir.mkdir(parents=True, exist_ok=True) + dir_index_path(info.doc_dir).write_text(build_dir_index(info), encoding="utf-8") + print(f"Generated {len(infos)} directory index files under {DOC_ROOT}") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/docs/api/audio/audio-3d-params/audio-3d-params.md b/docs/api/audio/audio-3d-params/audio-3d-params.md deleted file mode 100644 index a4435c23..00000000 --- a/docs/api/audio/audio-3d-params/audio-3d-params.md +++ /dev/null @@ -1,46 +0,0 @@ -# Audio3DParams - -**命名空间**: `XCEngine::Audio` - -**类型**: `struct` - -**头文件**: `XCEngine/Audio/AudioTypes.h` - -**描述**: 3D 空间化音频参数。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| `dopplerLevel` | `float` | 多普勒效应等级,0.0=禁用,1.0=正常 | `1.0f` | -| `speedOfSound` | `float` | 声速(米/秒) | `343.0f` | -| `minDistance` | `float` | 最小衰减距离(米) | `1.0f` | -| `maxDistance` | `float` | 最大衰减距离(米) | `500.0f` | -| `panLevel` | `float` | 声像等级,0.0=无 3D,1.0=完全 3D | `1.0f` | -| `spread` | `float` | 声源展开角度(度) | `0.0f` | -| `reverbZoneMix` | `float` | 混响区域混合比例 | `1.0f` | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Audio; - -Audio3DParams CreateOutdoorParams() { - Audio3DParams params; - params.dopplerLevel = 1.0f; - params.speedOfSound = 343.0f; - params.minDistance = 1.0f; - params.maxDistance = 1000.0f; - params.panLevel = 1.0f; - params.spread = 0.0f; - params.reverbZoneMix = 0.5f; - return params; -} -``` - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 -- [AudioMixer](../audio-mixer/audio-mixer.md) - 音频混音器 diff --git a/docs/api/audio/audio-buffer-desc/audio-buffer-desc.md b/docs/api/audio/audio-buffer-desc/audio-buffer-desc.md deleted file mode 100644 index 2fe19bdc..00000000 --- a/docs/api/audio/audio-buffer-desc/audio-buffer-desc.md +++ /dev/null @@ -1,25 +0,0 @@ -# AudioBufferDesc - -**命名空间**: `XCEngine::Audio` - -**类型**: `struct` - -**头文件**: `XCEngine/Audio/AudioTypes.h` - -**描述**: 音频缓冲区描述符。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| `size` | `uint32_t` | 缓冲区大小(字节) | `0` | -| `channels` | `uint32_t` | 通道数 | `2` | -| `sampleRate` | `uint32_t` | 采样率(Hz) | `48000` | -| `bitsPerSample` | `uint16_t` | 位深度 | `16` | -| `isFloat` | `bool` | 是否为浮点格式 | `false` | -| `isCompressed` | `bool` | 是否为压缩格式 | `false` | -| `format` | `AudioFormat` | 音频格式 | `AudioFormat::Unknown` | - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 diff --git a/docs/api/audio/audio-config/audio-config.md b/docs/api/audio/audio-config/audio-config.md deleted file mode 100644 index 62f03bbb..00000000 --- a/docs/api/audio/audio-config/audio-config.md +++ /dev/null @@ -1,44 +0,0 @@ -# AudioConfig - -**命名空间**: `XCEngine::Audio` - -**类型**: `struct` - -**头文件**: `XCEngine/Audio/AudioConfig.h` - -**描述**: 音频系统配置参数。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| `sampleRate` | `uint32_t` | 采样率(Hz),常用值:44100, 48000 | `48000` | -| `channels` | `uint16_t` | 通道数,1=单声道,2=立体声 | `2` | -| `bitsPerSample` | `uint16_t` | 位深度,常用值:16, 24, 32 | `16` | -| `speakerMode` | `SpeakerMode` | 扬声器模式 | `SpeakerMode::Stereo` | -| `bufferSize` | `uint32_t` | 音频缓冲区大小(样本数) | `8192` | -| `bufferCount` | `uint32_t` | 缓冲区数量 | `2` | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Audio; - -AudioConfig CreateHighQualityConfig() { - AudioConfig config; - config.sampleRate = 48000; - config.channels = 2; - config.bitsPerSample = 24; - config.speakerMode = SpeakerMode::Stereo; - config.bufferSize = 4096; - config.bufferCount = 4; - return config; -} -``` - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 -- [AudioSystem](../audio-system/audio-system.md) - 音频系统 diff --git a/docs/api/audio/audio-mixer/add-effect.md b/docs/api/audio/audio-mixer/add-effect.md deleted file mode 100644 index 8b168ad0..00000000 --- a/docs/api/audio/audio-mixer/add-effect.md +++ /dev/null @@ -1,17 +0,0 @@ -# AudioMixer::AddEffect - -添加音频效果到效果链。 - -```cpp -void AddEffect(IAudioEffect* effect); -``` - -效果按添加顺序依次处理音频数据。 - -**参数:** -- `effect` - IAudioEffect 指针,混音器不拥有效果对象的所有权 - -## 相关文档 - -- [AudioMixer 总览](audio-mixer.md) -- [RemoveEffect](remove-effect.md) diff --git a/docs/api/audio/audio-mixer/audio-mixer.md b/docs/api/audio/audio-mixer/audio-mixer.md deleted file mode 100644 index 80aea2dd..00000000 --- a/docs/api/audio/audio-mixer/audio-mixer.md +++ /dev/null @@ -1,67 +0,0 @@ -# AudioMixer - -**命名空间**: `XCEngine::Audio` - -**类型**: `class` - -**头文件**: `XCEngine/Audio/AudioMixer.h` - -**描述**: 音频混音器,管理效果链、通道音量和 3D 空间化参数。 - -## 概述 - -AudioMixer 是 XCEngine 音频模块中的混音器类,负责将多个音频效果串联处理、管理通道音量和 3D 空间化参数。混音器支持添加或移除 IAudioEffect 效果(如 Reverbation、Equalizer、FFTFilter),支持输出到父混音器形成混音树结构。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`SetVolume`](set-volume.md) | 设置混音器音量 | -| [`GetVolume`](get-volume.md) | 获取混音器音量 | -| [`SetMute`](set-mute.md) | 设置静音状态 | -| [`IsMute`](is-mute.md) | 检查静音状态 | -| [`AddEffect`](add-effect.md) | 添加音频效果 | -| [`RemoveEffect`](remove-effect.md) | 移除音频效果 | -| [`ClearEffects`](clear-effects.md) | 清除所有效果 | -| [`ProcessAudio`](process-audio.md) | 处理音频数据 | -| [`SetOutputMixer`](set-output-mixer.md) | 设置输出混音器 | -| [`GetOutputMixer`](get-output-mixer.md) | 获取输出混音器 | -| [`Set3DParams`](set-3d-params.md) | 设置 3D 空间化参数 | -| [`Get3DParams`](get-3d-params.md) | 获取 3D 空间化参数 | -| [`SetChannelVolume`](set-channel-volume.md) | 设置通道音量 | -| [`GetChannelVolume`](get-channel-volume.md) | 获取通道音量 | - -## 使用示例 - -```cpp -#include -#include -#include - -using namespace XCEngine::Audio; - -void SetupMixerWithEffects() { - AudioMixer* mixer = new AudioMixer(); - mixer->SetVolume(0.8f); - - Reverbation* reverb = new Reverbation(); - reverb->SetRoomSize(0.5f); - reverb->SetWetMix(0.3f); - - Equalizer* eq = new Equalizer(); - eq->SetBandCount(4); - - mixer->AddEffect(eq); - mixer->AddEffect(reverb); -} - -void RouteToParentMixer(AudioMixer* child, AudioMixer* parent) { - child->SetOutputMixer(parent); -} -``` - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 -- [IAudioEffect](../i-audio-effect/i-audio-effect.md) - 音频效果接口 -- [Audio3DParams](../audio-3d-params/audio-3d-params.md) - 3D 空间化参数 diff --git a/docs/api/audio/audio-mixer/clear-effects.md b/docs/api/audio/audio-mixer/clear-effects.md deleted file mode 100644 index 20f4ec18..00000000 --- a/docs/api/audio/audio-mixer/clear-effects.md +++ /dev/null @@ -1,12 +0,0 @@ -# AudioMixer::ClearEffects - -清除效果链中的所有音频效果。 - -```cpp -void ClearEffects(); -``` - -## 相关文档 - -- [AudioMixer 总览](audio-mixer.md) -- [AddEffect](add-effect.md) diff --git a/docs/api/audio/audio-mixer/get-3d-params.md b/docs/api/audio/audio-mixer/get-3d-params.md deleted file mode 100644 index c6534f5d..00000000 --- a/docs/api/audio/audio-mixer/get-3d-params.md +++ /dev/null @@ -1,15 +0,0 @@ -# AudioMixer::Get3DParams - -获取 3D 空间化参数。 - -```cpp -const Audio3DParams& Get3DParams() const; -``` - -**返回:** `const Audio3DParams&` - 3D 空间化参数结构体引用 - -## 相关文档 - -- [AudioMixer 总览](audio-mixer.md) -- [Set3DParams](set-3d-params.md) - 设置 3D 空间化参数 -- [Audio3DParams](../audio-3d-params/audio-3d-params.md) - 3D 空间化参数 diff --git a/docs/api/audio/audio-mixer/get-channel-volume.md b/docs/api/audio/audio-mixer/get-channel-volume.md deleted file mode 100644 index 242589c4..00000000 --- a/docs/api/audio/audio-mixer/get-channel-volume.md +++ /dev/null @@ -1,16 +0,0 @@ -# AudioMixer::GetChannelVolume - -获取指定音频通道的音量。 - -```cpp -float GetChannelVolume(AudioChannel channel) const; -``` - -**参数:** -- `channel` - 音频通道枚举值 - -**返回:** `float` - 通道音量值 - -## 相关文档 - -- [AudioMixer 总览](audio-mixer.md) diff --git a/docs/api/audio/audio-mixer/get-output-mixer.md b/docs/api/audio/audio-mixer/get-output-mixer.md deleted file mode 100644 index fd8aa86e..00000000 --- a/docs/api/audio/audio-mixer/get-output-mixer.md +++ /dev/null @@ -1,14 +0,0 @@ -# AudioMixer::GetOutputMixer - -获取输出混音器。 - -```cpp -AudioMixer* GetOutputMixer() const; -``` - -**返回:** `AudioMixer*` - 父混音器指针,如果直接输出到后端则返回 nullptr - -## 相关文档 - -- [AudioMixer 总览](audio-mixer.md) -- [SetOutputMixer](set-output-mixer.md) - 设置输出混音器 diff --git a/docs/api/audio/audio-mixer/get-volume.md b/docs/api/audio/audio-mixer/get-volume.md deleted file mode 100644 index bbee8d27..00000000 --- a/docs/api/audio/audio-mixer/get-volume.md +++ /dev/null @@ -1,14 +0,0 @@ -# AudioMixer::GetVolume - -获取混音器音量。 - -```cpp -float GetVolume() const; -``` - -**返回:** `float` - 混音器音量值,范围 [0.0, 1.0] - -## 相关文档 - -- [AudioMixer 总览](audio-mixer.md) -- [SetVolume](set-volume.md) - 设置混音器音量 diff --git a/docs/api/audio/audio-mixer/is-mute.md b/docs/api/audio/audio-mixer/is-mute.md deleted file mode 100644 index a14afeea..00000000 --- a/docs/api/audio/audio-mixer/is-mute.md +++ /dev/null @@ -1,14 +0,0 @@ -# AudioMixer::IsMute - -检查混音器静音状态。 - -```cpp -bool IsMute() const; -``` - -**返回:** `bool` - 如果当前处于静音状态则返回 true - -## 相关文档 - -- [AudioMixer 总览](audio-mixer.md) -- [SetMute](set-mute.md) - 设置混音器静音状态 diff --git a/docs/api/audio/audio-mixer/process-audio.md b/docs/api/audio/audio-mixer/process-audio.md deleted file mode 100644 index d22964e2..00000000 --- a/docs/api/audio/audio-mixer/process-audio.md +++ /dev/null @@ -1,16 +0,0 @@ -# AudioMixer::ProcessAudio - -处理音频数据,应用所有效果和音量。 - -```cpp -void ProcessAudio(float* buffer, uint32 sampleCount, uint32 channels); -``` - -**参数:** -- `buffer` - 音频缓冲区指针 -- `sampleCount` - 样本数量 -- `channels` - 通道数 - -## 相关文档 - -- [AudioMixer 总览](audio-mixer.md) diff --git a/docs/api/audio/audio-mixer/remove-effect.md b/docs/api/audio/audio-mixer/remove-effect.md deleted file mode 100644 index 858066e2..00000000 --- a/docs/api/audio/audio-mixer/remove-effect.md +++ /dev/null @@ -1,15 +0,0 @@ -# AudioMixer::RemoveEffect - -从效果链移除音频效果。 - -```cpp -void RemoveEffect(IAudioEffect* effect); -``` - -**参数:** -- `effect` - 要移除的 IAudioEffect 指针 - -## 相关文档 - -- [AudioMixer 总览](audio-mixer.md) -- [AddEffect](add-effect.md) diff --git a/docs/api/audio/audio-mixer/set-3d-params.md b/docs/api/audio/audio-mixer/set-3d-params.md deleted file mode 100644 index a9ba0077..00000000 --- a/docs/api/audio/audio-mixer/set-3d-params.md +++ /dev/null @@ -1,15 +0,0 @@ -# AudioMixer::Set3DParams - -设置 3D 空间化参数。 - -```cpp -void Set3DParams(const Audio3DParams& params); -``` - -**参数:** -- `params` - 3D 空间化参数结构体引用 - -## 相关文档 - -- [AudioMixer 总览](audio-mixer.md) -- [Audio3DParams](../audio-3d-params/audio-3d-params.md) diff --git a/docs/api/audio/audio-mixer/set-channel-volume.md b/docs/api/audio/audio-mixer/set-channel-volume.md deleted file mode 100644 index ebbd4558..00000000 --- a/docs/api/audio/audio-mixer/set-channel-volume.md +++ /dev/null @@ -1,15 +0,0 @@ -# AudioMixer::SetChannelVolume - -设置指定音频通道的音量。 - -```cpp -void SetChannelVolume(AudioChannel channel, float volume); -``` - -**参数:** -- `channel` - 音频通道枚举值 -- `volume` - 音量值,有效范围 [0.0, 1.0] - -## 相关文档 - -- [AudioMixer 总览](audio-mixer.md) diff --git a/docs/api/audio/audio-mixer/set-mute.md b/docs/api/audio/audio-mixer/set-mute.md deleted file mode 100644 index fa4e2878..00000000 --- a/docs/api/audio/audio-mixer/set-mute.md +++ /dev/null @@ -1,15 +0,0 @@ -# AudioMixer::SetMute - -设置混音器静音状态。 - -```cpp -void SetMute(bool mute); -``` - -**参数:** -- `mute` - true 为启用静音,false 为禁用静音 - -## 相关文档 - -- [AudioMixer 总览](audio-mixer.md) -- [IsMute](is-mute.md) diff --git a/docs/api/audio/audio-mixer/set-output-mixer.md b/docs/api/audio/audio-mixer/set-output-mixer.md deleted file mode 100644 index 28b408a0..00000000 --- a/docs/api/audio/audio-mixer/set-output-mixer.md +++ /dev/null @@ -1,16 +0,0 @@ -# AudioMixer::SetOutputMixer - -设置输出混音器。 - -```cpp -void SetOutputMixer(AudioMixer* mixer); -``` - -设置父混音器,处理后的音频将输出到父混音器进行进一步混音。 - -**参数:** -- `mixer` - 父混音器指针,nullptr 表示直接输出到后端 - -## 相关文档 - -- [AudioMixer 总览](audio-mixer.md) diff --git a/docs/api/audio/audio-mixer/set-volume.md b/docs/api/audio/audio-mixer/set-volume.md deleted file mode 100644 index bad35da3..00000000 --- a/docs/api/audio/audio-mixer/set-volume.md +++ /dev/null @@ -1,15 +0,0 @@ -# AudioMixer::SetVolume - -设置混音器音量。 - -```cpp -void SetVolume(float volume); -``` - -**参数:** -- `volume` - 音量值,有效范围 [0.0, 1.0] - -## 相关文档 - -- [AudioMixer 总览](audio-mixer.md) -- [GetVolume](get-volume.md) diff --git a/docs/api/audio/audio-system/audio-system.md b/docs/api/audio/audio-system/audio-system.md deleted file mode 100644 index 0f7c1539..00000000 --- a/docs/api/audio/audio-system/audio-system.md +++ /dev/null @@ -1,88 +0,0 @@ -# AudioSystem - -**命名空间**: `XCEngine::Audio` - -**类型**: `class (singleton)` - -**头文件**: `XCEngine/Audio/AudioSystem.h` - -**描述**: 音频系统单例,管理所有音频源、音频后端和监听器状态。 - -## 概述 - -AudioSystem 是 XCEngine 音频模块的核心单例类,负责管理整个音频子系统的生命周期。它维护音频监听器(listener)的 3D 变换和速度信息,注册和管理所有活动的音频源(AudioSourceComponent),并通过配置的 IAudioBackend 实现进行实际的音频输出。AudioSystem 每帧调用 Update 方法处理音频源的 3D 空间化计算和混音。 - -## 单例访问 - -| 方法 | 描述 | -|------|------| -| `static AudioSystem& Get()` | 获取音频系统单例实例 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Initialize`](initialize.md) | 初始化音频系统 | -| [`Shutdown`](shutdown.md) | 关闭音频系统 | -| [`Update`](update.md) | 每帧更新音频系统状态 | -| [`SetBackend`](set-backend.md) | 设置音频后端实现 | -| [`GetBackend`](get-backend.md) | 获取当前音频后端 | -| [`GetCurrentDevice`](get-current-device.md) | 获取当前音频设备名称 | -| [`SetDevice`](set-device.md) | 设置音频设备 | -| [`GetAvailableDevices`](get-available-devices.md) | 获取可用音频设备列表 | -| [`GetMasterVolume`](get-master-volume.md) | 获取主音量 | -| [`SetMasterVolume`](set-master-volume.md) | 设置主音量 | -| [`IsMuted`](is-muted.md) | 检查是否静音 | -| [`SetMuted`](set-muted.md) | 设置静音状态 | -| [`ProcessAudio`](process-audio.md) | 处理音频数据 | -| [`SetListenerTransform`](set-listener-transform.md) | 设置监听器变换 | -| [`SetListenerVelocity`](set-listener-velocity.md) | 设置监听器速度 | -| [`GetListenerPosition`](get-listener-position.md) | 获取监听器位置 | -| [`GetListenerRotation`](get-listener-rotation.md) | 获取监听器旋转 | -| [`GetListenerVelocity`](get-listener-velocity.md) | 获取监听器速度 | -| [`RegisterSource`](register-source.md) | 注册音频源 | -| [`UnregisterSource`](unregister-source.md) | 注销音频源 | -| [`GetStats`](get-stats.md) | 获取音频系统统计信息 | - -## 内部方法 - -| 方法 | 描述 | -|------|------| -| `ProcessSource()` | 处理单个音频源的音频数据(私有) | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Audio; - -void SetupAudio() { - AudioConfig config; - config.sampleRate = 48000; - config.channels = 2; - config.bitsPerSample = 16; - config.speakerMode = SpeakerMode::Stereo; - - AudioSystem::Get().SetBackend(std::make_unique()); - AudioSystem::Get().Initialize(config); -} - -void GameLoop(float deltaTime) { - Math::Vector3 listenerPos = mainCamera->GetPosition(); - Math::Quaternion listenerRot = mainCamera->GetRotation(); - AudioSystem::Get().SetListenerTransform(listenerPos, listenerRot); - AudioSystem::Get().Update(deltaTime); -} - -void CleanupAudio() { - AudioSystem::Get().Shutdown(); -} -``` - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 -- [IAudioBackend](../i-audio-backend/i-audio-backend.md) - 音频后端接口 -- [AudioConfig](../audio-config/audio-config.md) - 音频配置 diff --git a/docs/api/audio/audio-system/get-available-devices.md b/docs/api/audio/audio-system/get-available-devices.md deleted file mode 100644 index 749862b3..00000000 --- a/docs/api/audio/audio-system/get-available-devices.md +++ /dev/null @@ -1,34 +0,0 @@ -# AudioSystem::GetAvailableDevices - -获取可用音频设备列表。 - -```cpp -void GetAvailableDevices(std::vector& devices); -``` - -填充传入的 vector,获取系统中所有可用的音频输出设备列表。 - -**参数:** -- `devices` - 用于存储设备名称列表的 vector引用 - -**示例:** - -```cpp -#include - -using namespace XCEngine::Audio; - -void ListAudioDevices() { - std::vector devices; - AudioSystem::Get().GetAvailableDevices(devices); - - for (size_t i = 0; i < devices.size(); ++i) { - printf("Device %zu: %s\n", i, devices[i].c_str()); - } -} -``` - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) -- [SetDevice](set-device.md) - 设置音频设备 diff --git a/docs/api/audio/audio-system/get-backend.md b/docs/api/audio/audio-system/get-backend.md deleted file mode 100644 index 773823b8..00000000 --- a/docs/api/audio/audio-system/get-backend.md +++ /dev/null @@ -1,15 +0,0 @@ -# AudioSystem::GetBackend - -获取当前音频后端。 - -```cpp -IAudioBackend* GetBackend() const; -``` - -**返回:** `IAudioBackend*` - 当前音频后端指针,如果未设置则返回 nullptr - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) -- [SetBackend](set-backend.md) - 设置音频后端 -- [IAudioBackend](../i-audio-backend/i-audio-backend.md) - 音频后端接口 diff --git a/docs/api/audio/audio-system/get-current-device.md b/docs/api/audio/audio-system/get-current-device.md deleted file mode 100644 index 2eca87f1..00000000 --- a/docs/api/audio/audio-system/get-current-device.md +++ /dev/null @@ -1,26 +0,0 @@ -# AudioSystem::GetCurrentDevice - -获取当前音频设备名称。 - -```cpp -std::string GetCurrentDevice() const; -``` - -**返回:** `std::string` - 当前使用的音频设备名称 - -**示例:** - -```cpp -#include - -using namespace XCEngine::Audio; - -void PrintCurrentDevice() { - std::string device = AudioSystem::Get().GetCurrentDevice(); - printf("Current audio device: %s\n", device.c_str()); -} -``` - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) diff --git a/docs/api/audio/audio-system/get-listener-position.md b/docs/api/audio/audio-system/get-listener-position.md deleted file mode 100644 index c4be8e78..00000000 --- a/docs/api/audio/audio-system/get-listener-position.md +++ /dev/null @@ -1,14 +0,0 @@ -# AudioSystem::GetListenerPosition - -获取监听器位置。 - -```cpp -const Math::Vector3& GetListenerPosition() const; -``` - -**返回:** `const Math::Vector3&` - 监听器当前位置引用 - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) -- [SetListenerTransform](set-listener-transform.md) - 设置监听器变换 diff --git a/docs/api/audio/audio-system/get-listener-rotation.md b/docs/api/audio/audio-system/get-listener-rotation.md deleted file mode 100644 index a1a5af33..00000000 --- a/docs/api/audio/audio-system/get-listener-rotation.md +++ /dev/null @@ -1,14 +0,0 @@ -# AudioSystem::GetListenerRotation - -获取监听器旋转。 - -```cpp -const Math::Quaternion& GetListenerRotation() const; -``` - -**返回:** `const Math::Quaternion&` - 监听器当前旋转引用 - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) -- [SetListenerTransform](set-listener-transform.md) - 设置监听器变换 diff --git a/docs/api/audio/audio-system/get-listener-velocity.md b/docs/api/audio/audio-system/get-listener-velocity.md deleted file mode 100644 index 9d6b93bf..00000000 --- a/docs/api/audio/audio-system/get-listener-velocity.md +++ /dev/null @@ -1,14 +0,0 @@ -# AudioSystem::GetListenerVelocity - -获取监听器速度。 - -```cpp -const Math::Vector3& GetListenerVelocity() const; -``` - -**返回:** `const Math::Vector3&` - 监听器当前速度引用 - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) -- [SetListenerVelocity](set-listener-velocity.md) - 设置监听器速度 diff --git a/docs/api/audio/audio-system/get-master-volume.md b/docs/api/audio/audio-system/get-master-volume.md deleted file mode 100644 index d463f91e..00000000 --- a/docs/api/audio/audio-system/get-master-volume.md +++ /dev/null @@ -1,27 +0,0 @@ -# AudioSystem::GetMasterVolume - -获取主音量。 - -```cpp -float GetMasterVolume() const; -``` - -**返回:** `float` - 主音量值,范围 [0.0, 1.0] - -**示例:** - -```cpp -#include - -using namespace XCEngine::Audio; - -void PrintMasterVolume() { - float volume = AudioSystem::Get().GetMasterVolume(); - printf("Master volume: %.1f%%\n", volume * 100.0f); -} -``` - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) -- [SetMasterVolume](set-master-volume.md) - 设置主音量 diff --git a/docs/api/audio/audio-system/get-stats.md b/docs/api/audio/audio-system/get-stats.md deleted file mode 100644 index 7a2fdb4c..00000000 --- a/docs/api/audio/audio-system/get-stats.md +++ /dev/null @@ -1,39 +0,0 @@ -# AudioSystem::GetStats - -获取音频系统统计信息。 - -```cpp -const Stats& GetStats() const; -``` - -返回包含音频系统运行时统计信息的结构体,包括活跃源数量、总源数量、内存使用量和 CPU 使用率。 - -**返回:** `const Stats&` - 统计信息结构体引用 - -**Stats 结构体:** - -| 成员 | 类型 | 描述 | -|------|------|------| -| `activeSources` | `uint32_t` | 当前正在播放的音频源数量 | -| `totalSources` | `uint32_t` | 注册的音频源总数 | -| `memoryUsage` | `uint64_t` | 音频系统内存使用量(字节) | -| `cpuUsage` | `float` | CPU 使用率估算值 | - -**示例:** - -```cpp -#include - -using namespace XCEngine::Audio; - -void PrintAudioStats() { - const auto& stats = AudioSystem::Get().GetStats(); - printf("Active sources: %u / %u\n", stats.activeSources, stats.totalSources); - printf("Memory usage: %.2f MB\n", stats.memoryUsage / (1024.0 * 1024.0)); - printf("CPU usage: %.1f%%\n", stats.cpuUsage * 100.0f); -} -``` - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) diff --git a/docs/api/audio/audio-system/initialize.md b/docs/api/audio/audio-system/initialize.md deleted file mode 100644 index 077c827c..00000000 --- a/docs/api/audio/audio-system/initialize.md +++ /dev/null @@ -1,40 +0,0 @@ -# AudioSystem::Initialize - -初始化音频系统。 - -```cpp -void Initialize(const AudioConfig& config); -``` - -使用指定的配置参数初始化音频系统。在此之前必须先通过 SetBackend 设置音频后端实现。初始化过程会配置音频缓冲区大小、采样率、通道数等参数。 - -**参数:** -- `config` - 音频系统配置,包含采样率、通道数、位深度、扬声器模式、缓冲区大小等 - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Audio; - -void SetupAudio() { - AudioSystem::Get().SetBackend(std::make_unique()); - - AudioConfig config; - config.sampleRate = 48000; - config.channels = 2; - config.bitsPerSample = 16; - config.speakerMode = SpeakerMode::Stereo; - config.bufferSize = 8192; - config.bufferCount = 2; - - AudioSystem::Get().Initialize(config); -} -``` - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) -- [AudioConfig](../audio-config/audio-config.md) - 音频配置 diff --git a/docs/api/audio/audio-system/is-muted.md b/docs/api/audio/audio-system/is-muted.md deleted file mode 100644 index 6251b870..00000000 --- a/docs/api/audio/audio-system/is-muted.md +++ /dev/null @@ -1,28 +0,0 @@ -# AudioSystem::IsMuted - -检查是否静音。 - -```cpp -bool IsMuted() const; -``` - -**返回:** `bool` - 如果当前处于静音状态则返回 true - -**示例:** - -```cpp -#include - -using namespace XCEngine::Audio; - -void CheckMuteState() { - if (AudioSystem::Get().IsMuted()) { - printf("Audio is muted\n"); - } -} -``` - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) -- [SetMuted](set-muted.md) - 设置静音状态 diff --git a/docs/api/audio/audio-system/process-audio.md b/docs/api/audio/audio-system/process-audio.md deleted file mode 100644 index 1cb103b5..00000000 --- a/docs/api/audio/audio-system/process-audio.md +++ /dev/null @@ -1,18 +0,0 @@ -# AudioSystem::ProcessAudio - -处理音频数据。 - -```cpp -void ProcessAudio(float* buffer, uint32 sampleCount, uint32 channels); -``` - -将所有注册的音频源混音到输出缓冲区。内部处理 3D 空间化、音量控制和效果链。 - -**参数:** -- `buffer` - 输出音频缓冲区指针 -- `sampleCount` - 样本数量 -- `channels` - 通道数 - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) diff --git a/docs/api/audio/audio-system/register-source.md b/docs/api/audio/audio-system/register-source.md deleted file mode 100644 index 071c9569..00000000 --- a/docs/api/audio/audio-system/register-source.md +++ /dev/null @@ -1,29 +0,0 @@ -# AudioSystem::RegisterSource - -注册音频源。 - -```cpp -void RegisterSource(Components::AudioSourceComponent* source); -``` - -将音频源组件注册到音频系统。已注册的音频源将在每帧 Update 时被处理和混音。 - -**参数:** -- `source` - 要注册的 AudioSourceComponent 指针 - -**示例:** - -```cpp -#include - -using namespace XCEngine::Audio; - -void RegisterAudioSource(Components::AudioSourceComponent* audioSource) { - AudioSystem::Get().RegisterSource(audioSource); -} -``` - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) -- [UnregisterSource](unregister-source.md) - 注销音频源 diff --git a/docs/api/audio/audio-system/set-backend.md b/docs/api/audio/audio-system/set-backend.md deleted file mode 100644 index f52aa03b..00000000 --- a/docs/api/audio/audio-system/set-backend.md +++ /dev/null @@ -1,30 +0,0 @@ -# AudioSystem::SetBackend - -设置音频后端实现。 - -```cpp -void SetBackend(std::unique_ptr backend); -``` - -设置音频系统的后端实现。必须在调用 Initialize 之前设置后端。音频系统不拥有后端的所有权,后端通过 unique_ptr 传递。 - -**参数:** -- `backend` - 音频后端实现的 unique_ptr,支持 IAudioBackend 接口 - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Audio; - -void SetupAudio() { - AudioSystem::Get().SetBackend(std::make_unique()); -} -``` - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) -- [IAudioBackend](../i-audio-backend/i-audio-backend.md) - 音频后端接口 diff --git a/docs/api/audio/audio-system/set-device.md b/docs/api/audio/audio-system/set-device.md deleted file mode 100644 index 78623bf8..00000000 --- a/docs/api/audio/audio-system/set-device.md +++ /dev/null @@ -1,34 +0,0 @@ -# AudioSystem::SetDevice - -设置音频设备。 - -```cpp -void SetDevice(const std::string& deviceName); -``` - -切换到指定的音频设备。如果设备名称无效或设备不可用,操作失败。 - -**参数:** -- `deviceName` - 目标音频设备名称 - -**示例:** - -```cpp -#include - -using namespace XCEngine::Audio; - -void SwitchAudioDevice() { - std::vector devices; - AudioSystem::Get().GetAvailableDevices(devices); - - if (devices.size() > 1) { - AudioSystem::Get().SetDevice(devices[1]); - } -} -``` - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) -- [GetAvailableDevices](get-available-devices.md) - 获取可用设备列表 diff --git a/docs/api/audio/audio-system/set-listener-transform.md b/docs/api/audio/audio-system/set-listener-transform.md deleted file mode 100644 index 8070f6e3..00000000 --- a/docs/api/audio/audio-system/set-listener-transform.md +++ /dev/null @@ -1,31 +0,0 @@ -# AudioSystem::SetListenerTransform - -设置监听器变换。 - -```cpp -void SetListenerTransform(const Math::Vector3& position, const Math::Quaternion& rotation); -``` - -设置音频监听器的位置和旋转。用于 3D 空间音频计算,包括声音的方向、距离衰减和多普勒效应。 - -**参数:** -- `position` - 监听器位置(世界坐标) -- `rotation` - 监听器旋转(四元数) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Audio; - -void UpdateListenerFromCamera(Camera* camera) { - Math::Vector3 pos = camera->GetPosition(); - Math::Quaternion rot = camera->GetRotation(); - AudioSystem::Get().SetListenerTransform(pos, rot); -} -``` - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) diff --git a/docs/api/audio/audio-system/set-listener-velocity.md b/docs/api/audio/audio-system/set-listener-velocity.md deleted file mode 100644 index 33c3c7fa..00000000 --- a/docs/api/audio/audio-system/set-listener-velocity.md +++ /dev/null @@ -1,29 +0,0 @@ -# AudioSystem::SetListenerVelocity - -设置监听器速度。 - -```cpp -void SetListenerVelocity(const Math::Vector3& velocity); -``` - -设置音频监听器的速度向量。用于多普勒效应计算,当声源与监听器之间存在相对运动时会产生音调偏移。 - -**参数:** -- `velocity` - 监听器速度向量(世界坐标,单位:米/秒) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Audio; - -void UpdateListenerVelocity(RigidBody* listenerBody) { - Math::Vector3 velocity = listenerBody->GetVelocity(); - AudioSystem::Get().SetListenerVelocity(velocity); -} -``` - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) diff --git a/docs/api/audio/audio-system/set-master-volume.md b/docs/api/audio/audio-system/set-master-volume.md deleted file mode 100644 index f2b12d37..00000000 --- a/docs/api/audio/audio-system/set-master-volume.md +++ /dev/null @@ -1,29 +0,0 @@ -# AudioSystem::SetMasterVolume - -设置主音量。 - -```cpp -void SetMasterVolume(float volume); -``` - -设置全局主音量系数。该值影响所有音频源的输出电平。 - -**参数:** -- `volume` - 主音量值,有效范围 [0.0, 1.0] - -**示例:** - -```cpp -#include - -using namespace XCEngine::Audio; - -void SetGlobalVolume() { - AudioSystem::Get().SetMasterVolume(0.75f); -} -``` - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) -- [GetMasterVolume](get-master-volume.md) - 获取主音量 diff --git a/docs/api/audio/audio-system/set-muted.md b/docs/api/audio/audio-system/set-muted.md deleted file mode 100644 index 203743c2..00000000 --- a/docs/api/audio/audio-system/set-muted.md +++ /dev/null @@ -1,30 +0,0 @@ -# AudioSystem::SetMuted - -设置静音状态。 - -```cpp -void SetMuted(bool muted); -``` - -启用或禁用全局静音。静音状态下所有音频输出将被消音。 - -**参数:** -- `muted` - true 为启用静音,false 为禁用静音 - -**示例:** - -```cpp -#include - -using namespace XCEngine::Audio; - -void ToggleMute() { - bool currentlyMuted = AudioSystem::Get().IsMuted(); - AudioSystem::Get().SetMuted(!currentlyMuted); -} -``` - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) -- [IsMuted](is-muted.md) - 检查静音状态 diff --git a/docs/api/audio/audio-system/shutdown.md b/docs/api/audio/audio-system/shutdown.md deleted file mode 100644 index 90c3121d..00000000 --- a/docs/api/audio/audio-system/shutdown.md +++ /dev/null @@ -1,25 +0,0 @@ -# AudioSystem::Shutdown - -关闭音频系统,释放所有资源。 - -```cpp -void Shutdown(); -``` - -关闭音频系统并释放相关资源。调用后音频系统将停止所有音频处理,已注册的音频源将被注销。在程序退出或音频系统不再需要时调用。 - -**示例:** - -```cpp -#include - -using namespace XCEngine::Audio; - -void CleanupAudio() { - AudioSystem::Get().Shutdown(); -} -``` - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) diff --git a/docs/api/audio/audio-system/unregister-source.md b/docs/api/audio/audio-system/unregister-source.md deleted file mode 100644 index bbb9a184..00000000 --- a/docs/api/audio/audio-system/unregister-source.md +++ /dev/null @@ -1,29 +0,0 @@ -# AudioSystem::UnregisterSource - -注销音频源。 - -```cpp -void UnregisterSource(Components::AudioSourceComponent* source); -``` - -将音频源组件从音频系统注销。已注销的音频源将不再被处理和混音。 - -**参数:** -- `source` - 要注销的 AudioSourceComponent 指针 - -**示例:** - -```cpp -#include - -using namespace XCEngine::Audio; - -void UnregisterAudioSource(Components::AudioSourceComponent* audioSource) { - AudioSystem::Get().UnregisterSource(audioSource); -} -``` - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) -- [RegisterSource](register-source.md) - 注册音频源 diff --git a/docs/api/audio/audio-system/update.md b/docs/api/audio/audio-system/update.md deleted file mode 100644 index dff4918d..00000000 --- a/docs/api/audio/audio-system/update.md +++ /dev/null @@ -1,28 +0,0 @@ -# AudioSystem::Update - -每帧更新音频系统状态。 - -```cpp -void Update(float deltaTime); -``` - -每帧调用以更新音频系统状态。该方法处理所有已注册音频源的 3D 空间化计算,包括多普勒效应、距离衰减、声像定位等。同时更新内部统计信息。 - -**参数:** -- `deltaTime` - 距离上一帧的时间增量(秒) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Audio; - -void GameLoop(float deltaTime) { - AudioSystem::Get().Update(deltaTime); -} -``` - -## 相关文档 - -- [AudioSystem 总览](audio-system.md) diff --git a/docs/api/audio/audio.md b/docs/api/audio/audio.md deleted file mode 100644 index 6716762b..00000000 --- a/docs/api/audio/audio.md +++ /dev/null @@ -1,109 +0,0 @@ -# Audio 模块概览 - -**命名空间**: `XCEngine::Audio` - -**类型**: `module` - -**描述**: XCEngine 的音频系统模块,提供完整的音频播放、3D 空间化、效果处理和混音功能。 - -## 概述 - -Audio 模块是 XCEngine 的音频子系统,支持多通道音频播放、3D 空间化定位(HRTF)、音频效果处理(混响、均衡器、FFT)、以及基于 WASAPI 的 Windows 音频后端。该模块设计为与 ECS 组件系统集成,通过 AudioSourceComponent 和 AudioListenerComponent 实现音频源的播放和空间化处理。 - -## 模块内容 - -### 核心系统 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [AudioSystem](audio-system/audio-system.md) | `AudioSystem.h` | 音频系统单例,管理所有音频源和后端 | -| [AudioMixer](audio-mixer/audio-mixer.md) | `AudioMixer.h` | 音频混音器,支持效果链和 3D 参数 | -| [IAudioBackend](i-audio-backend/i-audio-backend.md) | `IAudioBackend.h` | 音频后端抽象接口 | -| [IAudioEffect](i-audio-effect/i-audio-effect.md) | `IAudioEffect.h` | 音频效果接口基类 | - -### 音频效果 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [FFTFilter](fft-filter/fft-filter.md) | `FFTFilter.h` | FFT 频谱分析滤波器 | -| [Reverbation](reverbation/reverbation.md) | `Reverbation.h` | 混响效果器( Schroeder 算法的并行 Comb 滤波器 + AllPass 滤波器) | -| [Equalizer](equalizer/equalizer.md) | `Equalizer.h` | 多频段参数均衡器 | -| [HRTF](hrtf/hrtf.md) | `HRTF.h` | 基于头部相关传输函数的 3D 空间化 | - -### Windows 后端 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [WASAPIBackend](wasapi-backend/wasapi-backend.md) | `XCEngine/Audio/WindowsAudioBackend.h` | Windows WASAPI 音频后端实现 | - -### 配置与类型 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [AudioConfig](audio-config/audio-config.md) | `AudioConfig.h` | 音频系统配置 | -| [Audio3DParams](audio-3d-params/audio-3d-params.md) | `AudioTypes.h` | 3D 空间化参数 | -| [AudioBufferDesc](audio-buffer-desc/audio-buffer-desc.md) | `AudioTypes.h` | 音频缓冲区描述符 | -| [SpatializerParams](spatializer-params/spatializer-params.md) | `AudioTypes.h` | 空间化计算参数 | - -### 枚举类型 - -| 枚举 | 描述 | -|------|------| -| [AudioResourceType](enums/audio-resource-type.md) | 音频资源类型 | -| [AudioLoadState](enums/audio-load-state.md) | 音频加载状态 | -| [AudioFormat](enums/audio-format.md) | 音频格式(WAV, OGG, MP3, FLAC, AAC) | -| [SpeakerMode](enums/speaker-mode.md) | 扬声器模式(Mono, Stereo, Surround51, Surround71 等) | -| [AudioChannel](enums/audio-channel.md) | 音频通道(FrontLeft, FrontRight, FrontCenter, LFE 等) | -| [PlayState](enums/play-state.md) | 播放状态(Stopped, Playing, Paused) | -| [StopMode](enums/stop-mode.md) | 停止模式(Immediate, AllowFadeOut) | -| [PanMode](enums/pan-mode.md) | 声像模式(Pan3D, Pan2D) | -| [VolumeSource](enums/volume-source.md) | 音量来源(Direct, PathOcclusion, Transmission, Obstruction) | - -## 使用示例 - -```cpp -#include -#include -#include -#include - -using namespace XCEngine::Audio; - -void InitializeAudioSystem() { - AudioConfig config; - config.sampleRate = 48000; - config.channels = 2; - config.bitsPerSample = 16; - config.speakerMode = SpeakerMode::Stereo; - config.bufferSize = 8192; - config.bufferCount = 2; - - AudioSystem::Get().Initialize(config); -} - -void SetupAudioWithEffects() { - AudioMixer* mixer = new AudioMixer(); - - Reverbation* reverb = new Reverbation(); - reverb->SetRoomSize(0.5f); - reverb->SetWetMix(0.3f); - reverb->SetDryMix(0.7f); - - Equalizer* eq = new Equalizer(); - eq->SetBandCount(4); - eq->SetBandFrequency(0, 100.0f); - eq->SetBandGain(0, 3.0f); - - mixer->AddEffect(eq); - mixer->AddEffect(reverb); - mixer->SetVolume(0.8f); -} - -void UpdateListener(const Math::Vector3& pos, const Math::Quaternion& rot) { - AudioSystem::Get().SetListenerTransform(pos, rot); -} -``` - -## 相关文档 - -- [Resources 模块 - AudioLoader](../resources/audio-loader/index.md) - 音频资源管理 diff --git a/docs/api/audio/enums/audio-channel.md b/docs/api/audio/enums/audio-channel.md deleted file mode 100644 index 2b1ad9a5..00000000 --- a/docs/api/audio/enums/audio-channel.md +++ /dev/null @@ -1,28 +0,0 @@ -# AudioChannel - -**命名空间**: `XCEngine::Audio` - -**类型**: `enum class` - -**头文件**: `XCEngine/Audio/AudioTypes.h` - -## 概述 - -音频通道枚举,定义多声道音频系统中的各个声道。 - -## 枚举值 - -| 枚举值 | 数值 | 描述 | -|--------|------|------| -| `FrontLeft` | 0 | 前左声道 | -| `FrontRight` | 1 | 前右声道 | -| `FrontCenter` | 2 | 前中声道 | -| `LFE` | 3 | 低频效果声道(低音炮) | -| `BackLeft` | 4 | 后左声道 | -| `BackRight` | 5 | 后右声道 | -| `SideLeft` | 6 | 侧左声道 | -| `SideRight` | 7 | 侧右声道 | - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 diff --git a/docs/api/audio/enums/audio-format.md b/docs/api/audio/enums/audio-format.md deleted file mode 100644 index bdb5ac03..00000000 --- a/docs/api/audio/enums/audio-format.md +++ /dev/null @@ -1,26 +0,0 @@ -# AudioFormat - -**命名空间**: `XCEngine::Audio` - -**类型**: `enum class` - -**头文件**: `XCEngine/Audio/AudioTypes.h` - -## 概述 - -支持的音频格式枚举。 - -## 枚举值 - -| 枚举值 | 数值 | 描述 | -|--------|------|------| -| `Unknown` | 0 | 未知格式 | -| `WAV` | 1 | WAV 格式(Microsoft) | -| `OGG` | 2 | OGG Vorbis 格式 | -| `MP3` | 3 | MP3 格式(MPEG-1 Audio Layer 3) | -| `FLAC` | 4 | FLAC 格式(Free Lossless Audio Codec) | -| `AAC` | 5 | AAC 格式(Advanced Audio Coding) | - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 diff --git a/docs/api/audio/enums/audio-load-state.md b/docs/api/audio/enums/audio-load-state.md deleted file mode 100644 index 5f9a0f5f..00000000 --- a/docs/api/audio/enums/audio-load-state.md +++ /dev/null @@ -1,24 +0,0 @@ -# AudioLoadState - -**命名空间**: `XCEngine::Audio` - -**类型**: `enum class` - -**头文件**: `XCEngine/Audio/AudioTypes.h` - -## 概述 - -音频资源加载状态枚举。 - -## 枚举值 - -| 枚举值 | 数值 | 描述 | -|--------|------|------| -| `Unloaded` | 0 | 未加载 | -| `Loading` | 1 | 正在加载 | -| `Loaded` | 2 | 已加载 | -| `Failed` | 3 | 加载失败 | - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 diff --git a/docs/api/audio/enums/audio-resource-type.md b/docs/api/audio/enums/audio-resource-type.md deleted file mode 100644 index dff21d82..00000000 --- a/docs/api/audio/enums/audio-resource-type.md +++ /dev/null @@ -1,23 +0,0 @@ -# AudioResourceType - -**命名空间**: `XCEngine::Audio` - -**类型**: `enum class` - -**头文件**: `XCEngine/Audio/AudioTypes.h` - -## 概述 - -音频资源类型枚举,区分不同种类的音频资源。 - -## 枚举值 - -| 枚举值 | 数值 | 描述 | -|--------|------|------| -| `AudioClip` | 0 | 音频片段资源 | -| `AudioMixer` | 1 | 音频混音器资源 | -| `AudioBank` | 2 | 音频银行/打包资源 | - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 diff --git a/docs/api/audio/enums/pan-mode.md b/docs/api/audio/enums/pan-mode.md deleted file mode 100644 index 694e0778..00000000 --- a/docs/api/audio/enums/pan-mode.md +++ /dev/null @@ -1,22 +0,0 @@ -# PanMode - -**命名空间**: `XCEngine::Audio` - -**类型**: `enum class` - -**头文件**: `XCEngine/Audio/AudioTypes.h` - -## 概述 - -声像模式枚举,控制 2D/3D 声像定位方式。 - -## 枚举值 - -| 枚举值 | 数值 | 描述 | -|--------|------|------| -| `Pan3D` | 0 | 3D 空间化声像 | -| `Pan2D` | 1 | 2D 平坦声像 | - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 diff --git a/docs/api/audio/enums/play-state.md b/docs/api/audio/enums/play-state.md deleted file mode 100644 index ab99e265..00000000 --- a/docs/api/audio/enums/play-state.md +++ /dev/null @@ -1,23 +0,0 @@ -# PlayState - -**命名空间**: `XCEngine::Audio` - -**类型**: `enum class` - -**头文件**: `XCEngine/Audio/AudioTypes.h` - -## 概述 - -音频播放状态枚举。 - -## 枚举值 - -| 枚举值 | 数值 | 描述 | -|--------|------|------| -| `Stopped` | 0 | 已停止 | -| `Playing` | 1 | 正在播放 | -| `Paused` | 2 | 已暂停 | - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 diff --git a/docs/api/audio/enums/speaker-mode.md b/docs/api/audio/enums/speaker-mode.md deleted file mode 100644 index a32e82ee..00000000 --- a/docs/api/audio/enums/speaker-mode.md +++ /dev/null @@ -1,26 +0,0 @@ -# SpeakerMode - -**命名空间**: `XCEngine::Audio` - -**类型**: `enum class` - -**头文件**: `XCEngine/Audio/AudioTypes.h` - -## 概述 - -扬声器输出模式枚举,定义音频输出的声道配置。 - -## 枚举值 - -| 枚举值 | 数值 | 描述 | -|--------|------|------| -| `Mono` | 0 | 单声道 | -| `Stereo` | 1 | 立体声(2.0) | -| `Surround51` | 2 | 5.1 环绕声 | -| `Surround71` | 3 | 7.1 环绕声 | -| `Surround51_2` | 4 | 5.1 环绕声(第二版) | -| `Surround71_2` | 5 | 7.1 环绕声(第二版) | - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 diff --git a/docs/api/audio/enums/stop-mode.md b/docs/api/audio/enums/stop-mode.md deleted file mode 100644 index f606b909..00000000 --- a/docs/api/audio/enums/stop-mode.md +++ /dev/null @@ -1,22 +0,0 @@ -# StopMode - -**命名空间**: `XCEngine::Audio` - -**类型**: `enum class` - -**头文件**: `XCEngine/Audio/AudioTypes.h` - -## 概述 - -音频停止模式枚举,控制停止播放时的行为。 - -## 枚举值 - -| 枚举值 | 数值 | 描述 | -|--------|------|------| -| `Immediate` | 0 | 立即停止 | -| `AllowFadeOut` | 1 | 允许淡出后停止 | - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 diff --git a/docs/api/audio/enums/volume-source.md b/docs/api/audio/enums/volume-source.md deleted file mode 100644 index 5d1b3192..00000000 --- a/docs/api/audio/enums/volume-source.md +++ /dev/null @@ -1,24 +0,0 @@ -# VolumeSource - -**命名空间**: `XCEngine::Audio` - -**类型**: `enum class` - -**头文件**: `XCEngine/Audio/AudioTypes.h` - -## 概述 - -音量来源枚举,定义不同物理因素对音量的影响。 - -## 枚举值 - -| 枚举值 | 数值 | 描述 | -|--------|------|------| -| `Direct` | 0 | 直接音量(无遮挡) | -| `PathOcclusion` | 1 | 路径遮挡(声波绕过障碍物) | -| `Transmission` | 2 | 透射(声波穿透障碍物) | -| `Obstruction` | 3 | 阻塞(直达声被完全遮挡) | - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 diff --git a/docs/api/audio/equalizer/equalizer.md b/docs/api/audio/equalizer/equalizer.md deleted file mode 100644 index b2ca6723..00000000 --- a/docs/api/audio/equalizer/equalizer.md +++ /dev/null @@ -1,65 +0,0 @@ -# Equalizer - -**命名空间**: `XCEngine::Audio` - -**类型**: `class` - -**头文件**: `XCEngine/Audio/Equalizer.h` - -**描述**: 多频段参数均衡器。 - -## 概述 - -Equalizer 是基于双二阶滤波器(Biquad Filter)的多频段参数均衡器实现。它支持设置任意数量的频段,每个频段可独立调节频率、增益(Gain/dB)和 Q 值。可用于调整音频频谱响应,实现低音增强、高音切平等效果。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `ProcessAudio` | 处理均衡后的音频 | -| `SetBandCount` | 设置频段数量 | -| `GetBandCount` | 获取频段数量 | -| `SetBandFrequency` | 设置频段频率 | -| `GetBandFrequency` | 获取频段频率 | -| `SetBandGain` | 设置频段增益 | -| `GetBandGain` | 获取频段增益 | -| `SetBandQ` | 设置频段 Q 值 | -| `GetBandQ` | 获取频段 Q 值 | -| `SetEnabled` | 设置启用状态 | -| `IsEnabled` | 检查启用状态 | -| `SetWetMix` | 设置湿信号混合比例 | -| `GetWetMix` | 获取湿信号混合比例 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Audio; - -void SetupEqualizer() { - Equalizer* eq = new Equalizer(); - eq->SetBandCount(4); - - eq->SetBandFrequency(0, 100.0f); - eq->SetBandGain(0, 3.0f); - eq->SetBandQ(0, 1.0f); - - eq->SetBandFrequency(1, 1000.0f); - eq->SetBandGain(1, 0.0f); - eq->SetBandQ(1, 1.0f); - - eq->SetBandFrequency(2, 5000.0f); - eq->SetBandGain(2, -2.0f); - eq->SetBandQ(2, 1.0f); - - eq->SetBandFrequency(3, 10000.0f); - eq->SetBandGain(3, 0.0f); - eq->SetBandQ(3, 1.0f); -} -``` - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 -- [IAudioEffect](../i-audio-effect/i-audio-effect.md) - 音频效果接口 diff --git a/docs/api/audio/fft-filter/fft-filter.md b/docs/api/audio/fft-filter/fft-filter.md deleted file mode 100644 index 12c0f8b5..00000000 --- a/docs/api/audio/fft-filter/fft-filter.md +++ /dev/null @@ -1,53 +0,0 @@ -# FFTFilter - -**命名空间**: `XCEngine::Audio` - -**类型**: `class` - -**头文件**: `XCEngine/Audio/FFTFilter.h` - -**描述**: FFT 频谱分析滤波器,用于音频频谱可视化和分析。 - -## 概述 - -FFTFilter 是基于 kissfft 库的 FFT(快速傅里叶变换)频谱分析滤波器。它将时域音频信号转换为频域频谱数据,支持频谱平滑处理,可用于音频可视化(如频谱图、音频分析器)和基于频谱的效果处理。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `ProcessAudio` | 处理音频并计算频谱 | -| `SetFFTSize` | 设置 FFT 大小 | -| `GetFFTSize` | 获取 FFT 大小 | -| `SetSmoothingFactor` | 设置平滑因子 | -| `GetSmoothingFactor` | 获取平滑因子 | -| `GetSpectrumData` | 获取频谱数据 | -| `GetSpectrumSize` | 获取频谱数据大小 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Audio; - -void AnalyzeAudio() { - FFTFilter fft(1024); - fft.SetSmoothingFactor(0.8f); - - float buffer[1024]; - fft.ProcessAudio(buffer, 1024, 2); - - const float* spectrum = fft.GetSpectrumData(); - size_t size = fft.GetSpectrumSize(); - - for (size_t i = 0; i < size; ++i) { - printf("Bin %zu: %.2f\n", i, spectrum[i]); - } -} -``` - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 -- [IAudioEffect](../i-audio-effect/i-audio-effect.md) - 音频效果接口 diff --git a/docs/api/audio/hrtf-params/hrtf-params.md b/docs/api/audio/hrtf-params/hrtf-params.md deleted file mode 100644 index 9ae40dd9..00000000 --- a/docs/api/audio/hrtf-params/hrtf-params.md +++ /dev/null @@ -1,42 +0,0 @@ -# HRTFParams - -**命名空间**: `XCEngine::Audio` - -**类型**: `struct` - -**头文件**: `XCEngine/Audio/HRTF.h` - -**描述**: HRTF 空间化参数。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| `azimuth` | `float` | 方位角(度) | `0.0f` | -| `elevation` | `float` | 仰角(度) | `0.0f` | -| `interauralTimeDelay` | `float` | 耳间时间差(秒) | `0.0f` | -| `interauralLevelDifference` | `float` | 耳间电平差 | `0.0f` | -| `headShadowing` | `float` | 头部阴影系数 | `0.0f` | -| `pinnaCues` | `float` | 耳廓线索系数 | `0.0f` | -| `torsoShoulderRotation` | `float` | 躯干/肩部旋转角度 | `0.0f` | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Audio; - -void ProcessWithHRTFParams(HRTF* hrtf) { - HRTFParams params; - params.azimuth = 45.0f; - params.elevation = 0.0f; - params.interauralTimeDelay = 0.0006f; - params.interauralLevelDifference = 3.0f; -} -``` - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 -- [HRTF](../hrtf/hrtf.md) - HRTF 类 diff --git a/docs/api/audio/hrtf/hrtf.md b/docs/api/audio/hrtf/hrtf.md deleted file mode 100644 index 71acfa5e..00000000 --- a/docs/api/audio/hrtf/hrtf.md +++ /dev/null @@ -1,53 +0,0 @@ -# HRTF - -**命名空间**: `XCEngine::Audio` - -**类型**: `class` - -**头文件**: `XCEngine/Audio/HRTF.h` - -**描述**: 基于头部相关传输函数(Head-Related Transfer Function)的 3D 空间音频处理器。 - -## 概述 - -HRTF 实现了基于头部相关传输函数(Head-Related Transfer Function)的 3D 空间音频算法。它通过计算声音的耳间时间差(ITD)、耳间电平差(ILD)和耳廓线索(Pinna Cues),在双耳耳机或扬声器上重现逼真的 3D 空间音效。支持多普勒效应、交叉馈送(Cross-feed)调节和质量级别设置。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `ProcessAudio` | 处理 3D 空间化音频 | -| `SetEnabled` | 设置启用状态 | -| `IsEnabled` | 检查启用状态 | -| `SetHRTFEnabled` | 设置 HRTF 处理启用状态 | -| `IsHRTFEnabled` | 检查 HRTF 处理启用状态 | -| `SetQualityLevel` | 设置质量级别 | -| `GetQualityLevel` | 获取质量级别 | -| `SetCrossFeed` | 设置交叉馈送值 | -| `GetCrossFeed` | 获取交叉馈送值 | -| `SetDopplerShiftEnabled` | 设置多普勒效应启用状态 | -| `IsDopplerShiftEnabled` | 检查多普勒效应启用状态 | -| `SetSpeedOfSound` | 设置声速 | -| `GetSpeedOfSound` | 获取声速 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Audio; - -void SetupHRTF() { - HRTF* hrtf = new HRTF(); - hrtf->SetHRTFEnabled(true); - hrtf->SetQualityLevel(2); - hrtf->SetCrossFeed(0.2f); - hrtf->SetDopplerShiftEnabled(true); - hrtf->SetSpeedOfSound(343.0f); -} -``` - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 -- [HRTFParams](../hrtf-params/hrtf-params.md) - HRTF 参数结构体 diff --git a/docs/api/audio/i-audio-backend/i-audio-backend.md b/docs/api/audio/i-audio-backend/i-audio-backend.md deleted file mode 100644 index b66ba24a..00000000 --- a/docs/api/audio/i-audio-backend/i-audio-backend.md +++ /dev/null @@ -1,60 +0,0 @@ -# IAudioBackend - -**命名空间**: `XCEngine::Audio` - -**类型**: `class (abstract)` - -**头文件**: `XCEngine/Audio/IAudioBackend.h` - -**描述**: 音频后端抽象接口,定义音频输出的统一接口。 - -## 概述 - -IAudioBackend 是音频后端的抽象接口,定义了音频系统与具体音频 API(如 WASAPI、OpenAL)交互的统一接口。不同的音频后端实现(如 WASAPIBackend)继承此接口,提供实际的音频输出能力。 - -## 抽象方法 - -| 方法 | 描述 | -|------|------| -| `Initialize` | 初始化音频后端 | -| `Shutdown` | 关闭音频后端 | -| `GetDeviceName` | 获取设备名称 | -| `GetAvailableDevices` | 获取可用设备列表 | -| `SetDevice` | 设置音频设备 | -| `GetMasterVolume` | 获取主音量 | -| `SetMasterVolume` | 设置主音量 | -| `IsMuted` | 检查静音状态 | -| `SetMuted` | 设置静音状态 | -| `Start` | 启动音频处理 | -| `Stop` | 停止音频处理 | -| `Suspend` | 暂停音频处理 | -| `Resume` | 恢复音频处理 | -| `ProcessAudio` | 处理音频数据 | -| `IsRunning` | 检查是否正在运行 | -| `GetConfig` | 获取配置信息 | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Audio; - -void CreateBackend() { - IAudioBackend* backend = new WASAPI::WASAPIBackend(); - - AudioConfig config; - config.sampleRate = 48000; - config.channels = 2; - - backend->Initialize(config); - backend->Start(); -} -``` - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 -- [WASAPIBackend](../wasapi-backend/wasapi-backend.md) - WASAPI 后端实现 -- [AudioSystem](../audio-system/audio-system.md) - 音频系统 diff --git a/docs/api/audio/i-audio-effect/i-audio-effect.md b/docs/api/audio/i-audio-effect/i-audio-effect.md deleted file mode 100644 index d4a19d30..00000000 --- a/docs/api/audio/i-audio-effect/i-audio-effect.md +++ /dev/null @@ -1,49 +0,0 @@ -# IAudioEffect - -**命名空间**: `XCEngine::Audio` - -**类型**: `class (abstract)` - -**头文件**: `XCEngine/Audio/IAudioEffect.h` - -**描述**: 音频效果接口基类,定义音频效果处理的统一接口。 - -## 概述 - -IAudioEffect 是所有音频效果处理器的抽象基类。它定义了音频效果的基本接口,包括音频处理方法、启用/禁用状态和干湿混合比例。具体的音频效果(如 Reverbation、Equalizer、FFTFilter)继承此接口并实现 ProcessAudio 方法来处理音频数据。 - -## 抽象方法 - -| 方法 | 描述 | -|------|------| -| `ProcessAudio` | 处理音频数据(纯虚函数) | - -## 虚方法 - -| 方法 | 描述 | -|------|------| -| `SetEnabled` | 设置启用状态 | -| `IsEnabled` | 检查启用状态 | -| `SetWetMix` | 设置湿信号混合比例 | -| `GetWetMix` | 获取湿信号混合比例 | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Audio; - -void ConfigureEffect(IAudioEffect* effect) { - effect->SetEnabled(true); - effect->SetWetMix(0.5f); -} -``` - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 -- [AudioMixer](../audio-mixer/audio-mixer.md) - 音频混音器 -- [Reverbation](../reverbation/reverbation.md) - 混响效果 -- [Equalizer](../equalizer/equalizer.md) - 均衡器效果 diff --git a/docs/api/audio/reverbation/reverbation.md b/docs/api/audio/reverbation/reverbation.md deleted file mode 100644 index f792fe15..00000000 --- a/docs/api/audio/reverbation/reverbation.md +++ /dev/null @@ -1,53 +0,0 @@ -# Reverbation - -**命名空间**: `XCEngine::Audio` - -**类型**: `class` - -**头文件**: `XCEngine/Audio/Reverbation.h` - -**描述**: 混响效果器,基于 Schroeder 算法实现。 - -## 概述 - -Reverbation 是 Schroeder 算法的并行 Comb 滤波器 + AllPass 滤波器混响实现。它模拟真实环境中声音的早期反射和后期混响,支持调节房间大小(RoomSize)、阻尼(Damping)、干湿信号混合比等参数,适用于游戏场景中的环境混响效果。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `ProcessAudio` | 处理混响音频 | -| `SetRoomSize` | 设置房间大小 | -| `GetRoomSize` | 获取房间大小 | -| `SetDamping` | 设置阻尼 | -| `GetDamping` | 获取阻尼 | -| `SetWetMix` | 设置湿信号混合比例 | -| `GetWetMix` | 获取湿信号混合比例 | -| `SetDryMix` | 设置干信号混合比例 | -| `GetDryMix` | 获取干信号混合比例 | -| `SetWidth` | 设置声场宽度 | -| `GetWidth` | 获取声场宽度 | -| `SetFreeze` | 设置冻结模式 | -| `IsFreeze` | 检查冻结状态 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Audio; - -void SetupReverb() { - Reverbation* reverb = new Reverbation(); - reverb->SetRoomSize(0.5f); - reverb->SetDamping(0.5f); - reverb->SetWetMix(0.3f); - reverb->SetDryMix(0.7f); - reverb->SetWidth(1.0f); -} -``` - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 -- [IAudioEffect](../i-audio-effect/i-audio-effect.md) - 音频效果接口 diff --git a/docs/api/audio/spatializer-params/spatializer-params.md b/docs/api/audio/spatializer-params/spatializer-params.md deleted file mode 100644 index 2b7d0dd2..00000000 --- a/docs/api/audio/spatializer-params/spatializer-params.md +++ /dev/null @@ -1,26 +0,0 @@ -# SpatializerParams - -**命名空间**: `XCEngine::Audio` - -**类型**: `struct` - -**头文件**: `XCEngine/Audio/AudioTypes.h` - -**描述**: 空间化计算参数。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| `azimuth` | `float` | 方位角(弧度) | `0.0f` | -| `elevation` | `float` | 仰角(弧度) | `0.0f` | -| `distance` | `float` | 到声源的距离(米) | `0.0f` | -| `volumeDb` | `float` | 体积(分贝) | `0.0f` | -| `panCartesianX` | `float` | 声像 X 坐标 | `0.0f` | -| `panCartesianY` | `float` | 声像 Y 坐标 | `0.0f` | -| `isOccluded` | `bool` | 是否被遮挡 | `false` | -| `isObstructed` | `bool` | 是否被阻塞 | `false` | - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 diff --git a/docs/api/audio/wasapi-backend/wasapi-backend.md b/docs/api/audio/wasapi-backend/wasapi-backend.md deleted file mode 100644 index 86bf59c8..00000000 --- a/docs/api/audio/wasapi-backend/wasapi-backend.md +++ /dev/null @@ -1,58 +0,0 @@ -# WASAPIBackend - -**命名空间**: `XCEngine::Audio::WASAPI` - -**类型**: `class` - -**头文件**: `XCEngine/Audio/WindowsAudioBackend.h` - -**描述**: Windows Audio Session API (WASAPI) 音频后端实现。 - -## 概述 - -WASAPIBackend 是基于 Windows WASAPI 的音频后端实现,通过 Windows MultiMedia API (waveXxx 函数) 提供音频输出能力。它运行在单独的音频线程上,使用双缓冲区交换机制实现流畅的音频播放,支持设备枚举、音量控制和静音管理。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `Initialize` | 初始化 WASAPI 后端 | -| `Shutdown` | 关闭 WASAPI 后端 | -| `GetDeviceName` | 获取当前设备名称 | -| `GetAvailableDevices` | 获取可用设备列表 | -| `SetDevice` | 设置音频设备 | -| `GetMasterVolume` | 获取主音量 | -| `SetMasterVolume` | 设置主音量 | -| `IsMuted` | 检查静音状态 | -| `SetMuted` | 设置静音状态 | -| `Start` | 启动音频处理 | -| `Stop` | 停止音频处理 | -| `Suspend` | 暂停音频处理 | -| `Resume` | 恢复音频处理 | -| `ProcessAudio` | 处理音频数据 | -| `IsRunning` | 检查是否正在运行 | -| `GetConfig` | 获取配置信息 | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Audio; - -void SetupAudioWithWASAPI() { - AudioSystem::Get().SetBackend(std::make_unique()); - - AudioConfig config; - config.sampleRate = 48000; - config.channels = 2; - - AudioSystem::Get().Initialize(config); -} -``` - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 -- [IAudioBackend](../i-audio-backend/i-audio-backend.md) - 音频后端接口 diff --git a/docs/api/audio/windows-audio-backend/windows-audio-backend.md b/docs/api/audio/windows-audio-backend/windows-audio-backend.md deleted file mode 100644 index 991d9129..00000000 --- a/docs/api/audio/windows-audio-backend/windows-audio-backend.md +++ /dev/null @@ -1,69 +0,0 @@ -# WindowsAudioBackend - -**命名空间**: `XCEngine::Audio::WASAPI` - -**类型**: `class` - -**头文件**: `XCEngine/Audio/WindowsAudioBackend.h` - -**描述**: Windows 平台音频后端实现,使用 Windows MultiMedia API (waveXxx 函数)。 - -## 概述 - -WindowsAudioBackend 是基于 Windows MultiMedia API 的音频后端实现,通过 waveXxx 函数提供音频输出能力。它运行在单独的音频线程上,使用双缓冲区交换机制实现流畅的音频播放,支持设备枚举、音量控制和静音管理。 - -该后端与 WASAPIBackend 类似,但使用更底层的 waveOut API 而非 WASAPI COM 接口,具有更好的兼容性和更低的依赖要求。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `WindowsAudioBackend` | 构造函数 | -| `~WindowsAudioBackend` | 析构函数,关闭音频设备并清理资源 | -| `Initialize` | 初始化音频后端和设备 | -| `Shutdown` | 关闭音频后端并释放资源 | -| `GetDeviceName` | 获取当前音频设备名称 | -| `GetAvailableDevices` | 获取系统可用音频设备列表 | -| `SetDevice` | 设置音频输出设备 | -| `GetMasterVolume` | 获取主音量(0.0-1.0) | -| `SetMasterVolume` | 设置主音量(0.0-1.0) | -| `IsMuted` | 检查静音状态 | -| `SetMuted` | 设置静音状态 | -| `Start` | 启动音频处理线程 | -| `Stop` | 停止音频处理线程 | -| `Suspend` | 暂停音频处理 | -| `Resume` | 恢复音频处理 | -| `ProcessAudio` | 处理音频数据到输出缓冲区 | -| `IsRunning` | 检查音频线程是否正在运行 | -| `GetConfig` | 获取当前音频配置 | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Audio; - -void SetupAudioWithWindowsBackend() { - // 创建 Windows 音频后端 - auto backend = std::make_unique(); - - // 设置到音频系统 - AudioSystem::Get().SetBackend(std::move(backend)); - - // 初始化配置 - AudioConfig config; - config.sampleRate = 48000; - config.channels = 2; - config.bufferSize = 512; - - AudioSystem::Get().Initialize(config); -} -``` - -## 相关文档 - -- [Audio 模块总览](../audio.md) - Audio 模块总览 -- [IAudioBackend](../i-audio-backend/i-audio-backend.md) - 音频后端接口 -- [WASAPIBackend](../wasapi-backend/wasapi-backend.md) - WASAPI 后端实现 diff --git a/docs/api/components/audio-listener-component/audio-listener-component.md b/docs/api/components/audio-listener-component/audio-listener-component.md deleted file mode 100644 index 26167204..00000000 --- a/docs/api/components/audio-listener-component/audio-listener-component.md +++ /dev/null @@ -1,86 +0,0 @@ -# AudioListenerComponent - -**命名空间**: `XCEngine::Components` - -**类型**: `class` - -**头文件**: `XCEngine/Components/AudioListenerComponent.h` - -**描述**: 音频监听组件,接收声音并处理多普勒效应、混响和音量控制。 - -## 概述 - -AudioListenerComponent 是 XCEngine ECS 系统中的音频监听组件,通常附加到相机或玩家对象上。它负责接收场景中所有 AudioSourceComponent 发出的声音,并进行多普勒效应、混响和音量控制处理。每个场景通常只有一个 AudioListenerComponent。 - -## 公共方法 - -### 音量控制 - -| 方法 | 描述 | -|------|------| -| [`SetMasterVolume`](../../audio/audio-system/set-master-volume.md) | 设置主音量 | -| [`GetMasterVolume`](../../audio/audio-system/get-master-volume.md) | 获取主音量 | - -### 静音控制 - -| 方法 | 描述 | -|------|------| -| [`SetMute`](../../audio/audio-mixer/set-mute.md) | 设置静音状态 | -| [`IsMute`](is-mute.md) | 检查是否静音 | - -### 多普勒效应 - -| 方法 | 描述 | -|------|------| -| [`SetDopplerLevel`](set-doppler-level.md) | 设置多普勒效应等级 | -| [`GetDopplerLevel`](get-doppler-level.md) | 获取多普勒效应等级 | -| [`SetSpeedOfSound`](set-speed-of-sound.md) | 设置声速(米/秒) | -| [`GetSpeedOfSound`](get-speed-of-sound.md) | 获取声速 | - -### 混响 - -| 方法 | 描述 | -|------|------| -| [`SetReverbLevel`](set-reverb-level.md) | 设置混响等级 | -| [`GetReverbLevel`](get-reverb-level.md) | 获取混响等级 | -| [`SetReverb`](set-reverb.md) | 设置混响效果器 | -| [`GetReverb`](get-reverb.md) | 获取混响效果器 | - -### 频谱分析 - -| 方法 | 描述 | -|------|------| -| [`GetEnergy`](get-energy.md) | 获取当前能量值 | -| [`GetFrequencyData`](get-frequency-data.md) | 获取频谱数据 | -| [`GetFrequencyDataSize`](get-frequency-data-size.md) | 获取频谱数据大小 | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Components; - -void SetupAudioListener(GameObject* listenerObject) { - auto listener = listenerObject->AddComponent(); - - listener->SetMasterVolume(1.0f); - listener->SetDopplerLevel(1.0f); - listener->SetSpeedOfSound(343.0f); - listener->SetReverbLevel(0.5f); -} - -void AdjustVolume(GameObject* listenerObject, float volume) { - auto listener = listenerObject->GetComponent(); - if (listener) { - listener->SetMasterVolume(volume); - } -} -``` - -## 相关文档 - -- [Components 模块总览](../components.md) - Components 模块总览 -- [Component](../component/component.md) - 组件基类 -- [AudioSourceComponent](../audio-source-component/audio-source-component.md) - 音频源组件 diff --git a/docs/api/components/audio-listener-component/get-doppler-level.md b/docs/api/components/audio-listener-component/get-doppler-level.md deleted file mode 100644 index a26bb802..00000000 --- a/docs/api/components/audio-listener-component/get-doppler-level.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetDopplerLevel - -**所属类**: `AudioListenerComponent` - -**头文件**: `XCEngine/Components/AudioListenerComponent.h` - -**描述**: 获取音频监听器的多普勒效应等级。 - -## 函数签名 - -```cpp -float GetDopplerLevel() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 当前多普勒等级,1.0 为默认值 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintDopplerLevel(AudioListenerComponent* listener) { - float level = listener->GetDopplerLevel(); - printf("Doppler level: %.2f\n", level); -} -``` - -## 相关文档 - -- [AudioListenerComponent](audio-listener-component.md) - 音频监听器组件 -- [SetDopplerLevel](set-doppler-level.md) - 设置多普勒等级 diff --git a/docs/api/components/audio-listener-component/get-energy.md b/docs/api/components/audio-listener-component/get-energy.md deleted file mode 100644 index 4fa4d4b0..00000000 --- a/docs/api/components/audio-listener-component/get-energy.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetEnergy - -**所属类**: `AudioListenerComponent` - -**头文件**: `XCEngine/Components/AudioListenerComponent.h` - -**描述**: 获取音频监听器当前接收到的音频能量值。 - -## 函数签名 - -```cpp -float GetEnergy() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 当前音频能量值,通常在 0.0 到 1.0 范围内 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void CheckAudioEnergy(AudioListenerComponent* listener) { - float energy = listener->GetEnergy(); - printf("Current audio energy: %.2f\n", energy); -} -``` - -## 相关文档 - -- [AudioListenerComponent](audio-listener-component.md) - 音频监听器组件 -- [GetFrequencyData](get-frequency-data.md) - 获取频谱数据 diff --git a/docs/api/components/audio-listener-component/get-frequency-data-size.md b/docs/api/components/audio-listener-component/get-frequency-data-size.md deleted file mode 100644 index 87c763af..00000000 --- a/docs/api/components/audio-listener-component/get-frequency-data-size.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetFrequencyDataSize - -**所属类**: `AudioListenerComponent` - -**头文件**: `XCEngine/Components/AudioListenerComponent.h` - -**描述**: 获取音频监听器频谱数据的大小。 - -## 函数签名 - -```cpp -size_t GetFrequencyDataSize() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `size_t` | 频谱数据数组的元素数量 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void CheckSpectrumSize(AudioListenerComponent* listener) { - size_t size = listener->GetFrequencyDataSize(); - printf("Spectrum data size: %zu\n", size); -} -``` - -## 相关文档 - -- [AudioListenerComponent](audio-listener-component.md) - 音频监听器组件 -- [GetFrequencyData](get-frequency-data.md) - 获取频谱数据 diff --git a/docs/api/components/audio-listener-component/get-frequency-data.md b/docs/api/components/audio-listener-component/get-frequency-data.md deleted file mode 100644 index 20fd1721..00000000 --- a/docs/api/components/audio-listener-component/get-frequency-data.md +++ /dev/null @@ -1,43 +0,0 @@ -# GetFrequencyData - -**所属类**: `AudioListenerComponent` - -**头文件**: `XCEngine/Components/AudioListenerComponent.h` - -**描述**: 获取音频监听器的频谱数据指针。 - -## 函数签名 - -```cpp -const float* GetFrequencyData() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `const float*` | 频谱数据数组指针,数据为 FFT 变换后的频率幅度 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void ProcessFrequencyData(AudioListenerComponent* listener) { - const float* data = listener->GetFrequencyData(); - size_t size = listener->GetFrequencyDataSize(); - - // 打印前几个频率值 - for (size_t i = 0; i < size && i < 10; ++i) { - printf("Freq[%zu]: %.2f\n", i, data[i]); - } -} -``` - -## 相关文档 - -- [AudioListenerComponent](audio-listener-component.md) - 音频监听器组件 -- [GetFrequencyDataSize](get-frequency-data-size.md) - 获取频谱数据大小 -- [GetEnergy](get-energy.md) - 获取音频能量 diff --git a/docs/api/components/audio-listener-component/get-master-volume.md b/docs/api/components/audio-listener-component/get-master-volume.md deleted file mode 100644 index 13fba7a2..00000000 --- a/docs/api/components/audio-listener-component/get-master-volume.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetMasterVolume - -**所属类**: `AudioListenerComponent` - -**头文件**: `XCEngine/Core/Components/AudioListenerComponent.h` - -**描述**: 获取音频监听器的主音量。 - -## 函数签名 - -```cpp -float GetMasterVolume() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 当前主音量,范围 0.0 到 1.0 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintListenerVolume(AudioListenerComponent* listener) { - float volume = listener->GetMasterVolume(); - printf("Master volume: %.2f\n", volume); -} -``` - -## 相关文档 - -- [AudioListenerComponent](audio-listener-component.md) - 音频监听器组件 -- [SetMasterVolume](set-master-volume.md) - 设置主音量 diff --git a/docs/api/components/audio-listener-component/get-reverb-level.md b/docs/api/components/audio-listener-component/get-reverb-level.md deleted file mode 100644 index b7c47585..00000000 --- a/docs/api/components/audio-listener-component/get-reverb-level.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetReverbLevel - -**所属类**: `AudioListenerComponent` - -**头文件**: `XCEngine/Components/AudioListenerComponent.h` - -**描述**: 获取音频监听器的混响等级。 - -## 函数签名 - -```cpp -float GetReverbLevel() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 当前混响等级,范围 0.0 到 1.0 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintReverbLevel(AudioListenerComponent* listener) { - float level = listener->GetReverbLevel(); - printf("Reverb level: %.2f\n", level); -} -``` - -## 相关文档 - -- [AudioListenerComponent](audio-listener-component.md) - 音频监听器组件 -- [SetReverbLevel](set-reverb-level.md) - 设置混响等级 diff --git a/docs/api/components/audio-listener-component/get-reverb.md b/docs/api/components/audio-listener-component/get-reverb.md deleted file mode 100644 index 81229e93..00000000 --- a/docs/api/components/audio-listener-component/get-reverb.md +++ /dev/null @@ -1,42 +0,0 @@ -# GetReverb - -**所属类**: `AudioListenerComponent` - -**头文件**: `XCEngine/Components/AudioListenerComponent.h` - -**描述**: 获取音频监听器当前的混响效果器。 - -## 函数签名 - -```cpp -Audio::AudioMixer* GetReverb() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `Audio::AudioMixer*` | 混响效果器指针,如果未设置则返回 nullptr | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; -using namespace XCEngine::Audio; - -void CheckReverb(AudioListenerComponent* listener) { - AudioMixer* reverb = listener->GetReverb(); - if (reverb) { - printf("Reverb effect is set\n"); - } else { - printf("No reverb effect\n"); - } -} -``` - -## 相关文档 - -- [AudioListenerComponent](audio-listener-component.md) - 音频监听器组件 -- [SetReverb](set-reverb.md) - 设置混响效果器 diff --git a/docs/api/components/audio-listener-component/get-speed-of-sound.md b/docs/api/components/audio-listener-component/get-speed-of-sound.md deleted file mode 100644 index 957f19f5..00000000 --- a/docs/api/components/audio-listener-component/get-speed-of-sound.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetSpeedOfSound - -**所属类**: `AudioListenerComponent` - -**头文件**: `XCEngine/Components/AudioListenerComponent.h` - -**描述**: 获取声音传播速度。 - -## 函数签名 - -```cpp -float GetSpeedOfSound() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 当前声速设置,单位米/秒 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintSpeedOfSound(AudioListenerComponent* listener) { - float speed = listener->GetSpeedOfSound(); - printf("Speed of sound: %.1f m/s\n", speed); -} -``` - -## 相关文档 - -- [AudioListenerComponent](audio-listener-component.md) - 音频监听器组件 -- [SetSpeedOfSound](set-speed-of-sound.md) - 设置声速 diff --git a/docs/api/components/audio-listener-component/is-mute.md b/docs/api/components/audio-listener-component/is-mute.md deleted file mode 100644 index d2adf158..00000000 --- a/docs/api/components/audio-listener-component/is-mute.md +++ /dev/null @@ -1,40 +0,0 @@ -# IsMute - -**所属类**: `AudioListenerComponent` - -**头文件**: `XCEngine/Components/AudioListenerComponent.h` - -**描述**: 检查音频监听器是否处于静音状态。 - -## 函数签名 - -```cpp -bool IsMute() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `bool` | 静音状态,true 表示静音,false 表示非静音 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void CheckMuteStatus(AudioListenerComponent* listener) { - if (listener->IsMute()) { - printf("Audio is muted\n"); - } else { - printf("Audio is not muted\n"); - } -} -``` - -## 相关文档 - -- [AudioListenerComponent](audio-listener-component.md) - 音频监听器组件 -- [SetMute](set-mute.md) - 设置静音状态 diff --git a/docs/api/components/audio-listener-component/set-doppler-level.md b/docs/api/components/audio-listener-component/set-doppler-level.md deleted file mode 100644 index 27c8f77c..00000000 --- a/docs/api/components/audio-listener-component/set-doppler-level.md +++ /dev/null @@ -1,44 +0,0 @@ -# SetDopplerLevel - -**所属类**: `AudioListenerComponent` - -**头文件**: `XCEngine/Components/AudioListenerComponent.h` - -**描述**: 设置音频监听器的多普勒效应等级。 - -## 函数签名 - -```cpp -void SetDopplerLevel(float level); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `level` | `float` | 多普勒等级,1.0 为默认值,0.0 禁用多普勒效应 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupDoppler(AudioListenerComponent* listener) { - // 设置正常多普勒效应 - listener->SetDopplerLevel(1.0f); - - // 禁用多普勒效应 - listener->SetDopplerLevel(0.0f); - - // 增强多普勒效应 - listener->SetDopplerLevel(2.0f); -} -``` - -## 相关文档 - -- [AudioListenerComponent](audio-listener-component.md) - 音频监听器组件 -- [GetDopplerLevel](get-doppler-level.md) - 获取多普勒等级 -- [SetSpeedOfSound](set-speed-of-sound.md) - 设置声速 diff --git a/docs/api/components/audio-listener-component/set-master-volume.md b/docs/api/components/audio-listener-component/set-master-volume.md deleted file mode 100644 index 564d3095..00000000 --- a/docs/api/components/audio-listener-component/set-master-volume.md +++ /dev/null @@ -1,36 +0,0 @@ -# SetMasterVolume - -**所属类**: `AudioListenerComponent` - -**头文件**: `XCEngine/Core/Components/AudioListenerComponent.h` - -**描述**: 设置音频监听器的主音量。 - -## 函数签名 - -```cpp -void SetMasterVolume(float volume); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `volume` | `float` | 主音量,范围 0.0 到 1.0 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetListenerVolume(AudioListenerComponent* listener) { - listener->SetMasterVolume(0.8f); // 80% 音量 -} -``` - -## 相关文档 - -- [AudioListenerComponent](audio-listener-component.md) - 音频监听器组件 -- [GetMasterVolume](get-master-volume.md) - 获取主音量 diff --git a/docs/api/components/audio-listener-component/set-mute.md b/docs/api/components/audio-listener-component/set-mute.md deleted file mode 100644 index 80bb6c96..00000000 --- a/docs/api/components/audio-listener-component/set-mute.md +++ /dev/null @@ -1,37 +0,0 @@ -# SetMute - -**所属类**: `AudioListenerComponent` - -**头文件**: `XCEngine/Components/AudioListenerComponent.h` - -**描述**: 设置音频监听器的静音状态。 - -## 函数签名 - -```cpp -void SetMute(bool mute); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `mute` | `bool` | 静音状态,true 启用静音,false 禁用静音 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void ToggleMute(AudioListenerComponent* listener) { - bool currentMute = listener->IsMute(); - listener->SetMute(!currentMute); -} -``` - -## 相关文档 - -- [AudioListenerComponent](audio-listener-component.md) - 音频监听器组件 -- [IsMute](is-mute.md) - 检查静音状态 diff --git a/docs/api/components/audio-listener-component/set-reverb-level.md b/docs/api/components/audio-listener-component/set-reverb-level.md deleted file mode 100644 index 99e54b75..00000000 --- a/docs/api/components/audio-listener-component/set-reverb-level.md +++ /dev/null @@ -1,44 +0,0 @@ -# SetReverbLevel - -**所属类**: `AudioListenerComponent` - -**头文件**: `XCEngine/Components/AudioListenerComponent.h` - -**描述**: 设置音频监听器的混响等级。 - -## 函数签名 - -```cpp -void SetReverbLevel(float level); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `level` | `float` | 混响等级,0.0 到 1.0,0.0 表示无混响,1.0 表示完全混响 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupReverb(AudioListenerComponent* listener) { - // 无混响 - listener->SetReverbLevel(0.0f); - - // 半混响 - listener->SetReverbLevel(0.5f); - - // 完全混响 - listener->SetReverbLevel(1.0f); -} -``` - -## 相关文档 - -- [AudioListenerComponent](audio-listener-component.md) - 音频监听器组件 -- [GetReverbLevel](get-reverb-level.md) - 获取混响等级 -- [SetReverb](set-reverb.md) - 设置混响效果器 diff --git a/docs/api/components/audio-listener-component/set-reverb.md b/docs/api/components/audio-listener-component/set-reverb.md deleted file mode 100644 index aee69dc1..00000000 --- a/docs/api/components/audio-listener-component/set-reverb.md +++ /dev/null @@ -1,40 +0,0 @@ -# SetReverb - -**所属类**: `AudioListenerComponent` - -**头文件**: `XCEngine/Components/AudioListenerComponent.h` - -**描述**: 设置音频监听器的混响效果器。 - -## 函数签名 - -```cpp -void SetReverb(Audio::AudioMixer* reverb); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `reverb` | `Audio::AudioMixer*` | 混响效果器指针,设置为 nullptr 则禁用混响 | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Components; -using namespace XCEngine::Audio; - -void SetupReverbEffect(AudioListenerComponent* listener, AudioMixer* reverbMixer) { - listener->SetReverb(reverbMixer); - listener->SetReverbLevel(0.5f); -} -``` - -## 相关文档 - -- [AudioListenerComponent](audio-listener-component.md) - 音频监听器组件 -- [GetReverb](get-reverb.md) - 获取混响效果器 -- [SetReverbLevel](set-reverb-level.md) - 设置混响等级 diff --git a/docs/api/components/audio-listener-component/set-speed-of-sound.md b/docs/api/components/audio-listener-component/set-speed-of-sound.md deleted file mode 100644 index 2809c80b..00000000 --- a/docs/api/components/audio-listener-component/set-speed-of-sound.md +++ /dev/null @@ -1,41 +0,0 @@ -# SetSpeedOfSound - -**所属类**: `AudioListenerComponent` - -**头文件**: `XCEngine/Components/AudioListenerComponent.h` - -**描述**: 设置声音在空气中的传播速度,用于多普勒效应计算。 - -## 函数签名 - -```cpp -void SetSpeedOfSound(float metersPerSecond); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `metersPerSecond` | `float` | 声速,单位米/秒,默认值为 343.0(20度 Celsius 时的声速) | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupSpeedOfSound(AudioListenerComponent* listener) { - // 标准声速(20度 Celsius) - listener->SetSpeedOfSound(343.0f); - - // 水中的声速 - listener->SetSpeedOfSound(1480.0f); -} -``` - -## 相关文档 - -- [AudioListenerComponent](audio-listener-component.md) - 音频监听器组件 -- [GetSpeedOfSound](get-speed-of-sound.md) - 获取声速 -- [SetDopplerLevel](set-doppler-level.md) - 设置多普勒等级 diff --git a/docs/api/components/audio-source-component/audio-source-component.md b/docs/api/components/audio-source-component/audio-source-component.md deleted file mode 100644 index 66fd396a..00000000 --- a/docs/api/components/audio-source-component/audio-source-component.md +++ /dev/null @@ -1,121 +0,0 @@ -# AudioSourceComponent - -**命名空间**: `XCEngine::Components` - -**类型**: `class` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 音频源组件,负责声音播放、3D 空间化、衰减和多普勒效应。 - -## 概述 - -AudioSourceComponent 是 XCEngine ECS 系统中的音频源组件,用于在场景中播放声音。它支持 3D 空间化、声音衰减、多普勒效应、混响区域混合等功能。该组件需要配合 AudioListenerComponent 使用来接收声音并进行音频处理。 - -## 公共方法 - -### 播放控制 - -| 方法 | 描述 | -|------|------| -| [`Play`](play.md) | 开始播放音频 | -| [`Pause`](pause.md) | 暂停播放 | -| [`Stop`](stop.md) | 停止播放 | -| [`IsPlaying`](is-playing.md) | 检查是否正在播放 | -| [`IsPaused`](is-paused.md) | 检查是否已暂停 | - -### 音频剪辑 - -| 方法 | 描述 | -|------|------| -| [`SetClip`](set-clip.md) | 设置音频剪辑 | -| [`GetClip`](get-clip.md) | 获取当前音频剪辑 | - -### 音频属性 - -| 方法 | 描述 | -|------|------| -| [`SetVolume`](../../audio/audio-mixer/set-volume.md) | 设置音量 | -| [`GetVolume`](get-volume.md) | 获取音量 | -| [`SetPitch`](set-pitch.md) | 设置音调 | -| [`GetPitch`](get-pitch.md) | 获取音调 | -| [`SetPan`](set-pan.md) | 设置平移 | -| [`GetPan`](get-pan.md) | 获取平移 | -| [`SetLooping`](set-looping.md) | 设置循环播放 | -| [`IsLooping`](is-looping.md) | 检查是否循环播放 | - -### 3D 空间化 - -| 方法 | 描述 | -|------|------| -| [`SetSpatialize`](set-spatialize.md) | 设置是否启用 3D 空间化 | -| [`IsSpatialize`](is-spatialize.md) | 检查是否启用 3D 空间化 | -| [`Set3DParams`](../../audio/audio-mixer/set-3d-params.md) | 设置 3D 音频参数 | -| [`Get3DParams`](get-3d-params.md) | 获取 3D 音频参数 | -| [`SetDopplerLevel`](set-doppler-level.md) | 设置多普勒效应等级 | -| [`GetDopplerLevel`](get-doppler-level.md) | 获取多普勒效应等级 | -| [`SetSpread`](set-spread.md) | 设置扩散角度 | -| [`GetSpread`](get-spread.md) | 获取扩散角度 | -| [`SetReverbZoneMix`](set-reverb-zone-mix.md) | 设置混响区域混合 | -| [`GetReverbZoneMix`](get-reverb-zone-mix.md) | 获取混响区域混合 | - -### 输出混音器 - -| 方法 | 描述 | -|------|------| -| [`SetOutputMixer`](../../audio/audio-mixer/set-output-mixer.md) | 设置输出混音器 | -| [`GetOutputMixer`](get-output-mixer.md) | 获取输出混音器 | - -### 播放时间 - -| 方法 | 描述 | -|------|------| -| [`SetTime`](set-time.md) | 设置播放位置 | -| [`GetTime`](get-time.md) | 获取当前播放位置 | -| [`GetDuration`](../../resources/audioclip/get-duration.md) | 获取音频总时长 | - -### 能量检测 - -| 方法 | 描述 | -|------|------| -| [`GetEnergy`](../audio-listener-component/get-energy.md) | 获取当前能量值 | -| [`StartEnergyDetect`](start-energy-detect.md) | 开始能量检测 | -| [`StopEnergyDetect`](stop-energy-detect.md) | 停止能量检测 | -| [`IsEnergyDetecting`](is-energy-detecting.md) | 检查是否正在能量检测 | - -## 使用示例 - -```cpp -#include -#include -#include - -using namespace XCEngine::Components; - -void PlaySound(GameObject* audioObject) { - auto audioSource = audioObject->AddComponent(); - - audioSource->SetVolume(0.8f); - audioSource->SetPitch(1.0f); - audioSource->SetLooping(false); - audioSource->SetSpatialize(true); - - audioSource->Play(); -} - -void Setup3DAudio(GameObject* audioObject) { - auto audioSource = audioObject->AddComponent(); - - Audio::Audio3DParams params; - params.dopplerLevel = 1.0f; - params.spread = 0.0f; - params.reverbZoneMix = 1.0f; - audioSource->Set3DParams(params); -} -``` - -## 相关文档 - -- [Components 模块总览](../components.md) - Components 模块总览 -- [Component](../component/component.md) - 组件基类 -- [AudioListenerComponent](../audio-listener-component/audio-listener-component.md) - 音频监听组件 diff --git a/docs/api/components/audio-source-component/get-3d-params.md b/docs/api/components/audio-source-component/get-3d-params.md deleted file mode 100644 index 63b7ab89..00000000 --- a/docs/api/components/audio-source-component/get-3d-params.md +++ /dev/null @@ -1,38 +0,0 @@ -# Get3DParams - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 获取音频源的3D音频参数。 - -## 函数签名 - -```cpp -const Audio::Audio3DParams& Get3DParams() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `const Audio::Audio3DParams&` | 3D音频参数引用 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void Print3DParams(AudioSourceComponent* source) { - const auto& params = source->Get3DParams(); - printf("Doppler: %.2f, Spread: %.2f, ReverbZoneMix: %.2f\n", - params.dopplerLevel, params.spread, params.reverbZoneMix); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [Set3DParams](../../audio/audio-mixer/set-3d-params.md) - 设置3D参数 diff --git a/docs/api/components/audio-source-component/get-clip.md b/docs/api/components/audio-source-component/get-clip.md deleted file mode 100644 index e0f22b5f..00000000 --- a/docs/api/components/audio-source-component/get-clip.md +++ /dev/null @@ -1,41 +0,0 @@ -# GetClip - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 获取音频源当前播放的音频片段。 - -## 函数签名 - -```cpp -Resources::AudioClip* GetClip() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `Resources::AudioClip*` | 音频片段指针,如果未设置则返回 nullptr | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void CheckCurrentClip(AudioSourceComponent* source) { - auto clip = source->GetClip(); - if (clip) { - printf("Current clip: %s\n", clip->GetName().c_str()); - } else { - printf("No clip set\n"); - } -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [SetClip](set-clip.md) - 设置音频片段 diff --git a/docs/api/components/audio-source-component/get-doppler-level.md b/docs/api/components/audio-source-component/get-doppler-level.md deleted file mode 100644 index 39ba5014..00000000 --- a/docs/api/components/audio-source-component/get-doppler-level.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetDopplerLevel - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 获取音频源的多普勒效应等级。 - -## 函数签名 - -```cpp -float GetDopplerLevel() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 当前多普勒等级 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintDopplerLevel(AudioSourceComponent* source) { - float level = source->GetDopplerLevel(); - printf("Doppler level: %.2f\n", level); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [SetDopplerLevel](set-doppler-level.md) - 设置多普勒等级 diff --git a/docs/api/components/audio-source-component/get-duration.md b/docs/api/components/audio-source-component/get-duration.md deleted file mode 100644 index d5a1f75c..00000000 --- a/docs/api/components/audio-source-component/get-duration.md +++ /dev/null @@ -1,38 +0,0 @@ -# GetDuration - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 获取音频源当前音频的总时长。 - -## 函数签名 - -```cpp -float GetDuration() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 音频总时长,单位秒。如果没有设置音频片段则返回 0.0 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintDuration(AudioSourceComponent* source) { - float duration = source->GetDuration(); - printf("Duration: %.2f seconds\n", duration); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [GetTime](get-time.md) - 获取当前播放位置 -- [SetClip](set-clip.md) - 设置音频片段 diff --git a/docs/api/components/audio-source-component/get-output-mixer.md b/docs/api/components/audio-source-component/get-output-mixer.md deleted file mode 100644 index 25ccbf37..00000000 --- a/docs/api/components/audio-source-component/get-output-mixer.md +++ /dev/null @@ -1,41 +0,0 @@ -# GetOutputMixer - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 获取音频源的输出混音器。 - -## 函数签名 - -```cpp -Audio::AudioMixer* GetOutputMixer() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `Audio::AudioMixer*` | 输出混音器指针,如果未设置则返回 nullptr | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void CheckOutputMixer(AudioSourceComponent* source) { - auto* mixer = source->GetOutputMixer(); - if (mixer) { - printf("Output mixer is set\n"); - } else { - printf("Using default output\n"); - } -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [SetOutputMixer](../../audio/audio-mixer/set-output-mixer.md) - 设置输出混音器 diff --git a/docs/api/components/audio-source-component/get-pan.md b/docs/api/components/audio-source-component/get-pan.md deleted file mode 100644 index 9c0bbfba..00000000 --- a/docs/api/components/audio-source-component/get-pan.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetPan - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 获取音频源的平移值。 - -## 函数签名 - -```cpp -float GetPan() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 当前平移值,-1.0 到 1.0 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintPan(AudioSourceComponent* source) { - float pan = source->GetPan(); - printf("Pan: %.2f\n", pan); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [SetPan](set-pan.md) - 设置平移值 diff --git a/docs/api/components/audio-source-component/get-pitch.md b/docs/api/components/audio-source-component/get-pitch.md deleted file mode 100644 index d119d71b..00000000 --- a/docs/api/components/audio-source-component/get-pitch.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetPitch - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 获取音频源的音高。 - -## 函数签名 - -```cpp -float GetPitch() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 当前音高,1.0 为正常速度 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintPitch(AudioSourceComponent* source) { - float pitch = source->GetPitch(); - printf("Pitch: %.2f\n", pitch); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [SetPitch](set-pitch.md) - 设置音高 diff --git a/docs/api/components/audio-source-component/get-reverb-zone-mix.md b/docs/api/components/audio-source-component/get-reverb-zone-mix.md deleted file mode 100644 index a015d5f9..00000000 --- a/docs/api/components/audio-source-component/get-reverb-zone-mix.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetReverbZoneMix - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 获取音频源的混响区域混合比例。 - -## 函数签名 - -```cpp -float GetReverbZoneMix() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 当前混响混合比例,0.0 到 1.0 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintReverbZoneMix(AudioSourceComponent* source) { - float mix = source->GetReverbZoneMix(); - printf("Reverb zone mix: %.2f\n", mix); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [SetReverbZoneMix](set-reverb-zone-mix.md) - 设置混响混合比例 diff --git a/docs/api/components/audio-source-component/get-spread.md b/docs/api/components/audio-source-component/get-spread.md deleted file mode 100644 index 1b8267c3..00000000 --- a/docs/api/components/audio-source-component/get-spread.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetSpread - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 获取音频源的扩散角度。 - -## 函数签名 - -```cpp -float GetSpread() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 当前扩散角度(度) | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintSpread(AudioSourceComponent* source) { - float spread = source->GetSpread(); - printf("Spread: %.1f degrees\n", spread); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [SetSpread](set-spread.md) - 设置扩散角度 diff --git a/docs/api/components/audio-source-component/get-time.md b/docs/api/components/audio-source-component/get-time.md deleted file mode 100644 index 94ae08ff..00000000 --- a/docs/api/components/audio-source-component/get-time.md +++ /dev/null @@ -1,39 +0,0 @@ -# GetTime - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 获取音频源当前的播放位置。 - -## 函数签名 - -```cpp -float GetTime() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 当前播放位置,单位秒 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintCurrentTime(AudioSourceComponent* source) { - float time = source->GetTime(); - float duration = source->GetDuration(); - printf("%.1f / %.1f seconds\n", time, duration); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [SetTime](set-time.md) - 设置播放位置 -- [GetDuration](get-duration.md) - 获取总时长 diff --git a/docs/api/components/audio-source-component/get-volume.md b/docs/api/components/audio-source-component/get-volume.md deleted file mode 100644 index 4ec491bb..00000000 --- a/docs/api/components/audio-source-component/get-volume.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetVolume - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 获取音频源的音量。 - -## 函数签名 - -```cpp -float GetVolume() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 当前音量,范围 0.0 到 1.0 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintVolume(AudioSourceComponent* source) { - float volume = source->GetVolume(); - printf("Volume: %.2f\n", volume); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [SetVolume](../../audio/audio-mixer/set-volume.md) - 设置音量 diff --git a/docs/api/components/audio-source-component/is-energy-detecting.md b/docs/api/components/audio-source-component/is-energy-detecting.md deleted file mode 100644 index 849a7787..00000000 --- a/docs/api/components/audio-source-component/is-energy-detecting.md +++ /dev/null @@ -1,41 +0,0 @@ -# IsEnergyDetecting - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 检查音频能量检测是否处于活跃状态。 - -## 函数签名 - -```cpp -bool IsEnergyDetecting() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `bool` | true 表示正在检测能量,false 表示未检测 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void CheckEnergyDetection(AudioSourceComponent* source) { - if (source->IsEnergyDetecting()) { - float energy = source->GetEnergy(); - printf("Current energy: %.2f\n", energy); - } -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [StartEnergyDetect](start-energy-detect.md) - 开始能量检测 -- [StopEnergyDetect](stop-energy-detect.md) - 停止能量检测 -- [GetEnergy](../audio-listener-component/get-energy.md) - 获取当前能量值 diff --git a/docs/api/components/audio-source-component/is-looping.md b/docs/api/components/audio-source-component/is-looping.md deleted file mode 100644 index 1a3d09b1..00000000 --- a/docs/api/components/audio-source-component/is-looping.md +++ /dev/null @@ -1,38 +0,0 @@ -# IsLooping - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 检查音频源是否设置为循环播放。 - -## 函数签名 - -```cpp -bool IsLooping() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `bool` | true 表示循环播放,false 表示播放一次后停止 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void CheckLoopingStatus(AudioSourceComponent* source) { - if (source->IsLooping()) { - printf("Audio is looping\n"); - } -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [SetLooping](set-looping.md) - 设置循环播放 diff --git a/docs/api/components/audio-source-component/is-paused.md b/docs/api/components/audio-source-component/is-paused.md deleted file mode 100644 index 1fbabc59..00000000 --- a/docs/api/components/audio-source-component/is-paused.md +++ /dev/null @@ -1,38 +0,0 @@ -# IsPaused - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 检查音频源是否处于暂停状态。 - -## 函数签名 - -```cpp -bool IsPaused() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `bool` | true 表示已暂停,false 表示未暂停 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void CheckPausedStatus(AudioSourceComponent* source) { - if (source->IsPaused()) { - printf("Audio is paused\n"); - } -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [IsPlaying](is-playing.md) - 检查是否正在播放 diff --git a/docs/api/components/audio-source-component/is-playing.md b/docs/api/components/audio-source-component/is-playing.md deleted file mode 100644 index 3b056df6..00000000 --- a/docs/api/components/audio-source-component/is-playing.md +++ /dev/null @@ -1,40 +0,0 @@ -# IsPlaying - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 检查音频源是否正在播放。 - -## 函数签名 - -```cpp -bool IsPlaying() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `bool` | true 表示正在播放,false 表示未在播放 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void CheckPlayingStatus(AudioSourceComponent* source) { - if (source->IsPlaying()) { - printf("Audio is playing\n"); - } else { - printf("Audio is not playing\n"); - } -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [IsPaused](is-paused.md) - 检查是否暂停 diff --git a/docs/api/components/audio-source-component/is-spatialize.md b/docs/api/components/audio-source-component/is-spatialize.md deleted file mode 100644 index 5a5f6d19..00000000 --- a/docs/api/components/audio-source-component/is-spatialize.md +++ /dev/null @@ -1,38 +0,0 @@ -# IsSpatialize - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 检查音频源是否启用3D空间化。 - -## 函数签名 - -```cpp -bool IsSpatialize() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `bool` | true 表示启用3D空间化,false 表示禁用 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void CheckSpatializeStatus(AudioSourceComponent* source) { - if (source->IsSpatialize()) { - printf("3D spatialization is enabled\n"); - } -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [SetSpatialize](set-spatialize.md) - 设置空间化 diff --git a/docs/api/components/audio-source-component/pause.md b/docs/api/components/audio-source-component/pause.md deleted file mode 100644 index 70795609..00000000 --- a/docs/api/components/audio-source-component/pause.md +++ /dev/null @@ -1,31 +0,0 @@ -# Pause - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 暂停音频播放。 - -## 函数签名 - -```cpp -void Pause(); -``` - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PauseAudio(AudioSourceComponent* source) { - source->Pause(); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [Play](play.md) - 开始播放 -- [Stop](stop.md) - 停止播放 diff --git a/docs/api/components/audio-source-component/play.md b/docs/api/components/audio-source-component/play.md deleted file mode 100644 index dcabd18d..00000000 --- a/docs/api/components/audio-source-component/play.md +++ /dev/null @@ -1,31 +0,0 @@ -# Play - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 开始播放音频。 - -## 函数签名 - -```cpp -void Play(); -``` - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void StartPlayback(AudioSourceComponent* source) { - source->Play(); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [Pause](pause.md) - 暂停播放 -- [Stop](stop.md) - 停止播放 diff --git a/docs/api/components/audio-source-component/set-3d-params.md b/docs/api/components/audio-source-component/set-3d-params.md deleted file mode 100644 index e7e187ba..00000000 --- a/docs/api/components/audio-source-component/set-3d-params.md +++ /dev/null @@ -1,40 +0,0 @@ -# Set3DParams - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 设置音频源的3D音频参数。 - -## 函数签名 - -```cpp -void Set3DParams(const Audio::Audio3DParams& params); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `params` | `const Audio::Audio3DParams&` | 3D音频参数引用,包含多普勒等级、扩散角度、混响混合等 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void Setup3DParams(AudioSourceComponent* source) { - Audio::Audio3DParams params; - params.dopplerLevel = 1.0f; // 正常多普勒效应 - params.spread = 0.0f; // 点声源 - params.reverbZoneMix = 1.0f; // 最大混响混合 - source->Set3DParams(params); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [Get3DParams](get-3d-params.md) - 获取3D参数 diff --git a/docs/api/components/audio-source-component/set-clip.md b/docs/api/components/audio-source-component/set-clip.md deleted file mode 100644 index 91a8c79b..00000000 --- a/docs/api/components/audio-source-component/set-clip.md +++ /dev/null @@ -1,39 +0,0 @@ -# SetClip - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 设置音频源播放的音频片段。 - -## 函数签名 - -```cpp -void SetClip(Resources::AudioClip* clip); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `clip` | `Resources::AudioClip*` | 音频片段指针,设置为 nullptr 则清除当前片段 | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Components; - -void LoadAndPlaySound(AudioSourceComponent* source) { - auto clip = Resources::AudioClip::Load("assets/audio/ explosion.wav"); - source->SetClip(clip); - source->Play(); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [GetClip](get-clip.md) - 获取当前音频片段 diff --git a/docs/api/components/audio-source-component/set-doppler-level.md b/docs/api/components/audio-source-component/set-doppler-level.md deleted file mode 100644 index a467178d..00000000 --- a/docs/api/components/audio-source-component/set-doppler-level.md +++ /dev/null @@ -1,36 +0,0 @@ -# SetDopplerLevel - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 设置音频源的多普勒效应等级。 - -## 函数签名 - -```cpp -void SetDopplerLevel(float level); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `level` | `float` | 多普勒等级,1.0 为默认值,0.0 禁用 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupDoppler(AudioSourceComponent* source) { - source->SetDopplerLevel(1.0f); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [GetDopplerLevel](get-doppler-level.md) - 获取多普勒等级 diff --git a/docs/api/components/audio-source-component/set-looping.md b/docs/api/components/audio-source-component/set-looping.md deleted file mode 100644 index 2910f545..00000000 --- a/docs/api/components/audio-source-component/set-looping.md +++ /dev/null @@ -1,36 +0,0 @@ -# SetLooping - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 设置音频源是否循环播放。 - -## 函数签名 - -```cpp -void SetLooping(bool loop); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `loop` | `bool` | true 启用循环播放,false 播放一次后停止 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupLooping(AudioSourceComponent* source, bool shouldLoop) { - source->SetLooping(shouldLoop); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [IsLooping](is-looping.md) - 检查是否循环播放 diff --git a/docs/api/components/audio-source-component/set-output-mixer.md b/docs/api/components/audio-source-component/set-output-mixer.md deleted file mode 100644 index 88188a8f..00000000 --- a/docs/api/components/audio-source-component/set-output-mixer.md +++ /dev/null @@ -1,38 +0,0 @@ -# SetOutputMixer - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 设置音频源的输出混音器。 - -## 函数签名 - -```cpp -void SetOutputMixer(Audio::AudioMixer* mixer); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `mixer` | `Audio::AudioMixer*` | 混音器指针,设置为 nullptr 使用默认输出 | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Components; -using namespace XCEngine::Audio; - -void ConnectToMixer(AudioSourceComponent* source, AudioMixer* mixer) { - source->SetOutputMixer(mixer); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [GetOutputMixer](get-output-mixer.md) - 获取输出混音器 diff --git a/docs/api/components/audio-source-component/set-pan.md b/docs/api/components/audio-source-component/set-pan.md deleted file mode 100644 index 6b8fdee2..00000000 --- a/docs/api/components/audio-source-component/set-pan.md +++ /dev/null @@ -1,43 +0,0 @@ -# SetPan - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 设置音频源的平移值(左右声道分布)。 - -## 函数签名 - -```cpp -void SetPan(float pan); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `pan` | `float` | 平移值,-1.0 表示完全左声道,0.0 表示居中,1.0 表示完全右声道 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupPan(AudioSourceComponent* source) { - // 居中 - source->SetPan(0.0f); - - // 偏左 - source->SetPan(-0.5f); - - // 偏右 - source->SetPan(0.5f); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [GetPan](get-pan.md) - 获取平移值 diff --git a/docs/api/components/audio-source-component/set-pitch.md b/docs/api/components/audio-source-component/set-pitch.md deleted file mode 100644 index 2c63f68b..00000000 --- a/docs/api/components/audio-source-component/set-pitch.md +++ /dev/null @@ -1,43 +0,0 @@ -# SetPitch - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 设置音频源的音高。 - -## 函数签名 - -```cpp -void SetPitch(float pitch); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `pitch` | `float` | 音高,0.5 表示半速,1.0 表示正常速度,2.0 表示双倍速度 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupPitch(AudioSourceComponent* source) { - // 正常音高 - source->SetPitch(1.0f); - - // 低八度 - source->SetPitch(0.5f); - - // 高八度 - source->SetPitch(2.0f); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [GetPitch](get-pitch.md) - 获取音高 diff --git a/docs/api/components/audio-source-component/set-reverb-zone-mix.md b/docs/api/components/audio-source-component/set-reverb-zone-mix.md deleted file mode 100644 index a2364951..00000000 --- a/docs/api/components/audio-source-component/set-reverb-zone-mix.md +++ /dev/null @@ -1,43 +0,0 @@ -# SetReverbZoneMix - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 设置混响区域混合比例。 - -## 函数签名 - -```cpp -void SetReverbZoneMix(float mix); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `mix` | `float` | 混响混合比例,0.0 到 1.0,0.0 表示干声,1.0 表示完全混响 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupReverbZoneMix(AudioSourceComponent* source) { - // 干声(无混响) - source->SetReverbZoneMix(0.0f); - - // 半湿声 - source->SetReverbZoneMix(0.5f); - - // 完全混响 - source->SetReverbZoneMix(1.0f); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [GetReverbZoneMix](get-reverb-zone-mix.md) - 获取混响混合比例 diff --git a/docs/api/components/audio-source-component/set-spatialize.md b/docs/api/components/audio-source-component/set-spatialize.md deleted file mode 100644 index 8a123932..00000000 --- a/docs/api/components/audio-source-component/set-spatialize.md +++ /dev/null @@ -1,40 +0,0 @@ -# SetSpatialize - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 设置音频源是否启用3D空间化。 - -## 函数签名 - -```cpp -void SetSpatialize(bool spatialize); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `spatialize` | `bool` | true 启用3D空间化,false 禁用(2D模式) | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupSpatialize(AudioSourceComponent* source) { - // 启用3D空间化(环境音) - source->SetSpatialize(true); - - // 禁用3D空间化(UI音效) - source->SetSpatialize(false); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [IsSpatialize](is-spatialize.md) - 检查是否启用空间化 diff --git a/docs/api/components/audio-source-component/set-spread.md b/docs/api/components/audio-source-component/set-spread.md deleted file mode 100644 index de0956ac..00000000 --- a/docs/api/components/audio-source-component/set-spread.md +++ /dev/null @@ -1,43 +0,0 @@ -# SetSpread - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 设置音频源的扩散角度。 - -## 函数签名 - -```cpp -void SetSpread(float spread); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `spread` | `float` | 扩散角度,0.0 到 360.0 度,0 表示点声源,360 表示全向 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupSpread(AudioSourceComponent* source) { - // 点声源 - source->SetSpread(0.0f); - - // 半全向 - source->SetSpread(180.0f); - - // 全向 - source->SetSpread(360.0f); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [GetSpread](get-spread.md) - 获取扩散角度 diff --git a/docs/api/components/audio-source-component/set-time.md b/docs/api/components/audio-source-component/set-time.md deleted file mode 100644 index 993b3d5c..00000000 --- a/docs/api/components/audio-source-component/set-time.md +++ /dev/null @@ -1,41 +0,0 @@ -# SetTime - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 设置音频源的当前播放位置。 - -## 函数签名 - -```cpp -void SetTime(float seconds); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `seconds` | `float` | 播放位置,单位秒 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SeekToPosition(AudioSourceComponent* source, float seconds) { - source->SetTime(seconds); -} - -void RewindToStart(AudioSourceComponent* source) { - source->SetTime(0.0f); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [GetTime](get-time.md) - 获取当前播放位置 -- [GetDuration](get-duration.md) - 获取总时长 diff --git a/docs/api/components/audio-source-component/set-volume.md b/docs/api/components/audio-source-component/set-volume.md deleted file mode 100644 index ddcab9c8..00000000 --- a/docs/api/components/audio-source-component/set-volume.md +++ /dev/null @@ -1,36 +0,0 @@ -# SetVolume - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 设置音频源的音量。 - -## 函数签名 - -```cpp -void SetVolume(float volume); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `volume` | `float` | 音量,范围 0.0 到 1.0 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetAudioVolume(AudioSourceComponent* source) { - source->SetVolume(0.5f); // 50% 音量 -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [GetVolume](get-volume.md) - 获取音量 diff --git a/docs/api/components/audio-source-component/start-energy-detect.md b/docs/api/components/audio-source-component/start-energy-detect.md deleted file mode 100644 index 04a8cf05..00000000 --- a/docs/api/components/audio-source-component/start-energy-detect.md +++ /dev/null @@ -1,32 +0,0 @@ -# StartEnergyDetect - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 开始音频能量检测。 - -## 函数签名 - -```cpp -void StartEnergyDetect(); -``` - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void BeginEnergyDetection(AudioSourceComponent* source) { - source->StartEnergyDetect(); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [StopEnergyDetect](stop-energy-detect.md) - 停止能量检测 -- [IsEnergyDetecting](is-energy-detecting.md) - 检查是否正在检测 -- [GetEnergy](../audio-listener-component/get-energy.md) - 获取当前能量值 diff --git a/docs/api/components/audio-source-component/stop-energy-detect.md b/docs/api/components/audio-source-component/stop-energy-detect.md deleted file mode 100644 index e10edeff..00000000 --- a/docs/api/components/audio-source-component/stop-energy-detect.md +++ /dev/null @@ -1,31 +0,0 @@ -# StopEnergyDetect - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 停止音频能量检测。 - -## 函数签名 - -```cpp -void StopEnergyDetect(); -``` - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void EndEnergyDetection(AudioSourceComponent* source) { - source->StopEnergyDetect(); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [StartEnergyDetect](start-energy-detect.md) - 开始能量检测 -- [IsEnergyDetecting](is-energy-detecting.md) - 检查是否正在检测 diff --git a/docs/api/components/audio-source-component/stop.md b/docs/api/components/audio-source-component/stop.md deleted file mode 100644 index 1fcf037f..00000000 --- a/docs/api/components/audio-source-component/stop.md +++ /dev/null @@ -1,42 +0,0 @@ -# Stop - -**所属类**: `AudioSourceComponent` - -**头文件**: `XCEngine/Components/AudioSourceComponent.h` - -**描述**: 停止音频播放。 - -## 函数签名 - -```cpp -void Stop(Audio::StopMode mode = Audio::StopMode::Immediate); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `mode` | `Audio::StopMode` | 停止模式,默认为 Immediate(立即停止) | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Components; - -void StopAudio(AudioSourceComponent* source) { - source->Stop(Audio::StopMode::Immediate); -} - -void FadeOutAndStop(AudioSourceComponent* source) { - source->Stop(Audio::StopMode::FadeOut); -} -``` - -## 相关文档 - -- [AudioSourceComponent](audio-source-component.md) - 音频源组件 -- [Play](play.md) - 开始播放 -- [Pause](pause.md) - 暂停播放 diff --git a/docs/api/components/camera-component/camera-component.md b/docs/api/components/camera-component/camera-component.md deleted file mode 100644 index 83910e48..00000000 --- a/docs/api/components/camera-component/camera-component.md +++ /dev/null @@ -1,80 +0,0 @@ -# CameraComponent - -**命名空间**: `XCEngine::Components` - -**类型**: `class` - -**头文件**: `XCEngine/Components/CameraComponent.h` - -**描述**: 相机组件,定义视图和投影参数,支持透视和正交两种投影模式。 - -## 概述 - -CameraComponent 是 XCEngine ECS 系统中的相机组件,用于定义场景的观察视角。它支持透视投影(Perspective)和正交投影(Orthographic)两种模式,可以设置视场角、近裁剪面、远裁剪面、深度值和清除颜色等参数。 - -## 枚举 - -### CameraProjectionType - -| 枚举值 | 描述 | -|--------|------| -| `Perspective` | 透视投影,符合人眼观察习惯 | -| `Orthographic` | 正交投影,保持物体真实大小 | - -## 公共方法 - -### 投影设置 - -| 方法 | 描述 | -|------|------| -| [`GetProjectionType`](get-projection-type.md) | 获取投影类型 | -| [`SetProjectionType`](set-projection-type.md) | 设置投影类型 | -| [`GetFieldOfView`](get-field-of-view.md) | 获取视场角(透视投影) | -| [`SetFieldOfView`](set-field-of-view.md) | 设置视场角 | -| [`GetOrthographicSize`](get-orthographic-size.md) | 获取正交投影大小 | -| [`SetOrthographicSize`](set-orthographic-size.md) | 设置正交投影大小 | - -### 裁剪平面 - -| 方法 | 描述 | -|------|------| -| [`GetNearClipPlane`](get-near-clip-plane.md) | 获取近裁剪面距离 | -| [`SetNearClipPlane`](set-near-clip-plane.md) | 设置近裁剪面距离 | -| [`GetFarClipPlane`](get-far-clip-plane.md) | 获取远裁剪面距离 | -| [`SetFarClipPlane`](set-far-clip-plane.md) | 设置远裁剪面距离 | - -### 相机属性 - -| 方法 | 描述 | -|------|------| -| [`GetDepth`](../../rhi/texture/get-depth.md) | 获取深度值 | -| [`SetDepth`](set-depth.md) | 设置深度值 | -| [`IsPrimary`](is-primary.md) | 检查是否为主相机 | -| [`SetPrimary`](set-primary.md) | 设置为主相机 | -| [`GetClearColor`](get-clear-color.md) | 获取清除颜色 | -| [`SetClearColor`](../../rhi/opengl/pipeline-state/set-clear-color.md) | 设置清除颜色 | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Components; - -void SetupCamera(GameObject* cameraObject) { - auto camera = cameraObject->AddComponent(); - - camera->SetProjectionType(CameraProjectionType::Perspective); - camera->SetFieldOfView(60.0f); - camera->SetNearClipPlane(0.1f); - camera->SetFarClipPlane(1000.0f); - camera->SetPrimary(true); -} -``` - -## 相关文档 - -- [Components 模块总览](../components.md) - Components 模块总览 -- [Component](../component/component.md) - 组件基类 -- [TransformComponent](../transform-component/transform-component.md) - 变换组件 diff --git a/docs/api/components/camera-component/get-clear-color.md b/docs/api/components/camera-component/get-clear-color.md deleted file mode 100644 index a2cada7b..00000000 --- a/docs/api/components/camera-component/get-clear-color.md +++ /dev/null @@ -1,38 +0,0 @@ -# GetClearColor - -**所属类**: `CameraComponent` - -**头文件**: `XCEngine/Components/CameraComponent.h` - -**描述**: 获取摄像机的清除颜色。 - -## 函数签名 - -```cpp -const Math::Color& GetClearColor() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `const Math::Color&` | 清除颜色引用,默认值为深蓝色 (0.192f, 0.302f, 0.475f, 1.0f) | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintClearColor(CameraComponent* camera) { - const auto& color = camera->GetClearColor(); - printf("Clear color: (%.2f, %.2f, %.2f, %.2f)\n", - color.r, color.g, color.b, color.a); -} -``` - -## 相关文档 - -- [CameraComponent](camera-component.md) - 摄像机组件 -- [SetClearColor](set-clear-color.md) - 设置清除颜色 diff --git a/docs/api/components/camera-component/get-depth.md b/docs/api/components/camera-component/get-depth.md deleted file mode 100644 index 7298fa39..00000000 --- a/docs/api/components/camera-component/get-depth.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetDepth - -**所属类**: `CameraComponent` - -**头文件**: `XCEngine/Components/CameraComponent.h` - -**描述**: 获取摄像机的深度值。 - -## 函数签名 - -```cpp -float GetDepth() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 摄像机深度值,用于确定渲染顺序 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintCameraDepth(CameraComponent* camera) { - float depth = camera->GetDepth(); - printf("Camera depth: %.2f\n", depth); -} -``` - -## 相关文档 - -- [CameraComponent](camera-component.md) - 摄像机组件 -- [SetDepth](set-depth.md) - 设置深度值 diff --git a/docs/api/components/camera-component/get-far-clip-plane.md b/docs/api/components/camera-component/get-far-clip-plane.md deleted file mode 100644 index 9a55795e..00000000 --- a/docs/api/components/camera-component/get-far-clip-plane.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetFarClipPlane - -**所属类**: `CameraComponent` - -**头文件**: `XCEngine/Components/CameraComponent.h` - -**描述**: 获取摄像机的远裁剪平面距离。 - -## 函数签名 - -```cpp -float GetFarClipPlane() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 远裁剪平面距离,默认值为 1000.0 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintFarPlane(CameraComponent* camera) { - float far = camera->GetFarClipPlane(); - printf("Far clip plane: %.2f\n", far); -} -``` - -## 相关文档 - -- [CameraComponent](camera-component.md) - 摄像机组件 -- [SetFarClipPlane](set-far-clip-plane.md) - 设置远裁剪平面 diff --git a/docs/api/components/camera-component/get-field-of-view.md b/docs/api/components/camera-component/get-field-of-view.md deleted file mode 100644 index 4d858e89..00000000 --- a/docs/api/components/camera-component/get-field-of-view.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetFieldOfView - -**所属类**: `CameraComponent` - -**头文件**: `XCEngine/Components/CameraComponent.h` - -**描述**: 获取摄像机的视场角(仅在透视投影模式下有效)。 - -## 函数签名 - -```cpp -float GetFieldOfView() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 视场角,单位度,默认值为 60.0 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintFOV(CameraComponent* camera) { - float fov = camera->GetFieldOfView(); - printf("Field of view: %.1f degrees\n", fov); -} -``` - -## 相关文档 - -- [CameraComponent](camera-component.md) - 摄像机组件 -- [SetFieldOfView](set-field-of-view.md) - 设置视场角 diff --git a/docs/api/components/camera-component/get-near-clip-plane.md b/docs/api/components/camera-component/get-near-clip-plane.md deleted file mode 100644 index 79646964..00000000 --- a/docs/api/components/camera-component/get-near-clip-plane.md +++ /dev/null @@ -1,39 +0,0 @@ -# GetNearClipPlane - -**所属类**: `CameraComponent` - -**头文件**: `XCEngine/Components/CameraComponent.h` - -**描述**: 获取摄像机的近裁剪平面距离。 - -## 函数签名 - -```cpp -float GetNearClipPlane() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 近裁剪平面距离,默认值为 0.1 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintClipPlanes(CameraComponent* camera) { - float near = camera->GetNearClipPlane(); - float far = camera->GetFarClipPlane(); - printf("Clip planes: %.2f to %.2f\n", near, far); -} -``` - -## 相关文档 - -- [CameraComponent](camera-component.md) - 摄像机组件 -- [SetNearClipPlane](set-near-clip-plane.md) - 设置近裁剪平面 -- [GetFarClipPlane](get-far-clip-plane.md) - 获取远裁剪平面 diff --git a/docs/api/components/camera-component/get-orthographic-size.md b/docs/api/components/camera-component/get-orthographic-size.md deleted file mode 100644 index 639bd4a2..00000000 --- a/docs/api/components/camera-component/get-orthographic-size.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetOrthographicSize - -**所属类**: `CameraComponent` - -**头文件**: `XCEngine/Components/CameraComponent.h` - -**描述**: 获取摄像机的正交投影大小(仅在正交投影模式下有效)。 - -## 函数签名 - -```cpp -float GetOrthographicSize() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 正交投影大小,默认值为 5.0 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintOrthoSize(CameraComponent* camera) { - float size = camera->GetOrthographicSize(); - printf("Orthographic size: %.2f\n", size); -} -``` - -## 相关文档 - -- [CameraComponent](camera-component.md) - 摄像机组件 -- [SetOrthographicSize](set-orthographic-size.md) - 设置正交大小 diff --git a/docs/api/components/camera-component/get-projection-type.md b/docs/api/components/camera-component/get-projection-type.md deleted file mode 100644 index 1eb66b0c..00000000 --- a/docs/api/components/camera-component/get-projection-type.md +++ /dev/null @@ -1,40 +0,0 @@ -# GetProjectionType - -**所属类**: `CameraComponent` - -**头文件**: `XCEngine/Components/CameraComponent.h` - -**描述**: 获取摄像机的投影类型。 - -## 函数签名 - -```cpp -CameraProjectionType GetProjectionType() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `CameraProjectionType` | 投影类型,可能是 `Perspective`(透视)或 `Orthographic`(正交) | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void CheckProjection(CameraComponent* camera) { - if (camera->GetProjectionType() == CameraProjectionType::Perspective) { - printf("Using perspective projection\n"); - } else { - printf("Using orthographic projection\n"); - } -} -``` - -## 相关文档 - -- [CameraComponent](camera-component.md) - 摄像机组件 -- [SetProjectionType](set-projection-type.md) - 设置投影类型 diff --git a/docs/api/components/camera-component/is-primary.md b/docs/api/components/camera-component/is-primary.md deleted file mode 100644 index b8a8bf29..00000000 --- a/docs/api/components/camera-component/is-primary.md +++ /dev/null @@ -1,38 +0,0 @@ -# IsPrimary - -**所属类**: `CameraComponent` - -**头文件**: `XCEngine/Components/CameraComponent.h` - -**描述**: 检查摄像机是否为主摄像机。 - -## 函数签名 - -```cpp -bool IsPrimary() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `bool` | true 表示为主摄像机,false 表示非主摄像机 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void CheckPrimaryCamera(CameraComponent* camera) { - if (camera->IsPrimary()) { - printf("This is the primary camera\n"); - } -} -``` - -## 相关文档 - -- [CameraComponent](camera-component.md) - 摄像机组件 -- [SetPrimary](set-primary.md) - 设置为主摄像机 diff --git a/docs/api/components/camera-component/set-clear-color.md b/docs/api/components/camera-component/set-clear-color.md deleted file mode 100644 index bf3e84ef..00000000 --- a/docs/api/components/camera-component/set-clear-color.md +++ /dev/null @@ -1,41 +0,0 @@ -# SetClearColor - -**所属类**: `CameraComponent` - -**头文件**: `XCEngine/Components/CameraComponent.h` - -**描述**: 设置摄像机的清除颜色。 - -## 函数签名 - -```cpp -void SetClearColor(const Math::Color& value); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `value` | `const Math::Color&` | 清除颜色引用 | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Components; - -void SetupClearColor(CameraComponent* camera) { - // 设置为黑色 - camera->SetClearColor(Math::Color::Black()); - - // 设置为天蓝色 - camera->SetClearColor(Math::Color(0.5f, 0.8f, 1.0f, 1.0f)); -} -``` - -## 相关文档 - -- [CameraComponent](camera-component.md) - 摄像机组件 -- [GetClearColor](get-clear-color.md) - 获取清除颜色 diff --git a/docs/api/components/camera-component/set-depth.md b/docs/api/components/camera-component/set-depth.md deleted file mode 100644 index 4c7d4bd4..00000000 --- a/docs/api/components/camera-component/set-depth.md +++ /dev/null @@ -1,37 +0,0 @@ -# SetDepth - -**所属类**: `CameraComponent` - -**头文件**: `XCEngine/Components/CameraComponent.h` - -**描述**: 设置摄像机的深度值,用于确定渲染顺序。 - -## 函数签名 - -```cpp -void SetDepth(float value); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `value` | `float` | 深度值,值越大越晚渲染(显示在前面) | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupCameraOrder(CameraComponent* mainCam, CameraComponent* uiCam) { - mainCam->SetDepth(0.0f); // 主摄像机先渲染 - uiCam->SetDepth(1.0f); // UI摄像机后渲染 -} -``` - -## 相关文档 - -- [CameraComponent](camera-component.md) - 摄像机组件 -- [GetDepth](get-depth.md) - 获取深度值 diff --git a/docs/api/components/camera-component/set-far-clip-plane.md b/docs/api/components/camera-component/set-far-clip-plane.md deleted file mode 100644 index 0bcda2d3..00000000 --- a/docs/api/components/camera-component/set-far-clip-plane.md +++ /dev/null @@ -1,36 +0,0 @@ -# SetFarClipPlane - -**所属类**: `CameraComponent` - -**头文件**: `XCEngine/Components/CameraComponent.h` - -**描述**: 设置摄像机的远裁剪平面距离。 - -## 函数签名 - -```cpp -void SetFarClipPlane(float value); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `value` | `float` | 远裁剪平面距离,必须大于近裁剪平面 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupFarPlane(CameraComponent* camera) { - camera->SetFarClipPlane(5000.0f); // 5公里 -} -``` - -## 相关文档 - -- [CameraComponent](camera-component.md) - 摄像机组件 -- [GetFarClipPlane](get-far-clip-plane.md) - 获取远裁剪平面 diff --git a/docs/api/components/camera-component/set-field-of-view.md b/docs/api/components/camera-component/set-field-of-view.md deleted file mode 100644 index 1233fa5b..00000000 --- a/docs/api/components/camera-component/set-field-of-view.md +++ /dev/null @@ -1,43 +0,0 @@ -# SetFieldOfView - -**所属类**: `CameraComponent` - -**头文件**: `XCEngine/Components/CameraComponent.h` - -**描述**: 设置摄像机的视场角(仅在透视投影模式下有效)。 - -## 函数签名 - -```cpp -void SetFieldOfView(float value); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `value` | `float` | 视场角,单位度,通常在 30.0 到 120.0 之间 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupCameraFOV(CameraComponent* camera) { - // 宽广视野(FPS游戏) - camera->SetFieldOfView(90.0f); - - // 窄视野(狙击视角) - camera->SetFieldOfView(30.0f); - - // 标准视野 - camera->SetFieldOfView(60.0f); -} -``` - -## 相关文档 - -- [CameraComponent](camera-component.md) - 摄像机组件 -- [GetFieldOfView](get-field-of-view.md) - 获取视场角 diff --git a/docs/api/components/camera-component/set-near-clip-plane.md b/docs/api/components/camera-component/set-near-clip-plane.md deleted file mode 100644 index e734c597..00000000 --- a/docs/api/components/camera-component/set-near-clip-plane.md +++ /dev/null @@ -1,36 +0,0 @@ -# SetNearClipPlane - -**所属类**: `CameraComponent` - -**头文件**: `XCEngine/Components/CameraComponent.h` - -**描述**: 设置摄像机的近裁剪平面距离。 - -## 函数签名 - -```cpp -void SetNearClipPlane(float value); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `value` | `float` | 近裁剪平面距离,必须大于 0 且小于远裁剪平面 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupNearPlane(CameraComponent* camera) { - camera->SetNearClipPlane(0.5f); // 50厘米 -} -``` - -## 相关文档 - -- [CameraComponent](camera-component.md) - 摄像机组件 -- [GetNearClipPlane](get-near-clip-plane.md) - 获取近裁剪平面 diff --git a/docs/api/components/camera-component/set-orthographic-size.md b/docs/api/components/camera-component/set-orthographic-size.md deleted file mode 100644 index a329b9d8..00000000 --- a/docs/api/components/camera-component/set-orthographic-size.md +++ /dev/null @@ -1,37 +0,0 @@ -# SetOrthographicSize - -**所属类**: `CameraComponent` - -**头文件**: `XCEngine/Components/CameraComponent.h` - -**描述**: 设置摄像机的正交投影大小(仅在正交投影模式下有效)。 - -## 函数签名 - -```cpp -void SetOrthographicSize(float value); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `value` | `float` | 正交投影大小,表示视口半高度 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupOrthoCamera(CameraComponent* camera) { - camera->SetProjectionType(CameraProjectionType::Orthographic); - camera->SetOrthographicSize(5.0f); // 视口高度为10个单位 -} -``` - -## 相关文档 - -- [CameraComponent](camera-component.md) - 摄像机组件 -- [GetOrthographicSize](get-orthographic-size.md) - 获取正交大小 diff --git a/docs/api/components/camera-component/set-primary.md b/docs/api/components/camera-component/set-primary.md deleted file mode 100644 index 41b6acb3..00000000 --- a/docs/api/components/camera-component/set-primary.md +++ /dev/null @@ -1,36 +0,0 @@ -# SetPrimary - -**所属类**: `CameraComponent` - -**头文件**: `XCEngine/Components/CameraComponent.h` - -**描述**: 设置摄像机是否为主摄像机。 - -## 函数签名 - -```cpp -void SetPrimary(bool value); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `value` | `bool` | true 设置为主摄像机,false 取消主摄像机 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupMainCamera(CameraComponent* camera) { - camera->SetPrimary(true); -} -``` - -## 相关文档 - -- [CameraComponent](camera-component.md) - 摄像机组件 -- [IsPrimary](is-primary.md) - 检查是否为主摄像机 diff --git a/docs/api/components/camera-component/set-projection-type.md b/docs/api/components/camera-component/set-projection-type.md deleted file mode 100644 index e4e07cf2..00000000 --- a/docs/api/components/camera-component/set-projection-type.md +++ /dev/null @@ -1,40 +0,0 @@ -# SetProjectionType - -**所属类**: `CameraComponent` - -**头文件**: `XCEngine/Components/CameraComponent.h` - -**描述**: 设置摄像机的投影类型。 - -## 函数签名 - -```cpp -void SetProjectionType(CameraProjectionType type); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `type` | `CameraProjectionType` | 投影类型:`Perspective`(透视)或 `Orthographic`(正交) | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupCamera(CameraComponent* camera) { - // 透视投影(3D游戏) - camera->SetProjectionType(CameraProjectionType::Perspective); - - // 正交投影(2D游戏或UI) - camera->SetProjectionType(CameraProjectionType::Orthographic); -} -``` - -## 相关文档 - -- [CameraComponent](camera-component.md) - 摄像机组件 -- [GetProjectionType](get-projection-type.md) - 获取投影类型 diff --git a/docs/api/components/component/component.md b/docs/api/components/component/component.md deleted file mode 100644 index 9c15478b..00000000 --- a/docs/api/components/component/component.md +++ /dev/null @@ -1,69 +0,0 @@ -# Component - -**命名空间**: `XCEngine::Components` - -**类型**: `class (abstract)` - -**头文件**: `XCEngine/Components/Component.h` - -**描述**: ECS 组件基类,定义所有组件的公共接口和生命周期。 - -## 概述 - -Component 是 XCEngine ECS 架构中的组件基类,所有具体组件(如 TransformComponent、AudioSourceComponent)都继承自此类。它定义了组件的通用生命周期方法(Awake、Start、Update、OnEnable、OnDisable、OnDestroy)以及获取所属 GameObject 和场景的接口。组件通过友元类 GameObject 自动管理其所属游戏对象。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`GetName`](get-name.md) | 获取组件名称(纯虚函数) | -| [`GetGameObject`](get-game-object.md) | 获取所属 GameObject | -| [`transform`](transform.md) | 获取变换组件引用 | -| [`GetScene`](get-scene.md) | 获取所属场景 | -| [`IsEnabled`](is-enabled.md) | 检查组件是否启用 | -| [`SetEnabled`](set-enabled.md) | 设置组件启用状态 | - -## 虚方法(生命周期) - -| 方法 | 描述 | -|------|------| -| `virtual void Awake()` | 组件创建后首次启用时调用 | -| `virtual void Start()` | 在首次更新前调用 | -| `virtual void Update(float deltaTime)` | 每帧更新 | -| `virtual void FixedUpdate()` | 固定频率更新(物理) | -| `virtual void LateUpdate(float deltaTime)` | 晚于 Update 更新 | -| `virtual void OnEnable()` | 启用时调用 | -| `virtual void OnDisable()` | 禁用时调用 | -| `virtual void OnDestroy()` | 销毁时调用 | -| `virtual void Serialize(std::ostream& os) const` | 序列化组件数据 | -| `virtual void Deserialize(std::istream& is)` | 反序列化组件数据 | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Components; - -class MyComponent : public Component { -public: - void Awake() override { - printf("Awake: %s\n", GetName().c_str()); - } - - void Update(float deltaTime) override { - // 每帧逻辑 - } - - std::string GetName() const override { - return "MyComponent"; - } -}; -``` - -## 相关文档 - -- [Components 模块总览](../components.md) - Components 模块总览 -- [GameObject](../game-object/game-object.md) - 游戏对象 -- [TransformComponent](../transform-component/transform-component.md) - 变换组件 diff --git a/docs/api/components/component/get-game-object.md b/docs/api/components/component/get-game-object.md deleted file mode 100644 index e1b76829..00000000 --- a/docs/api/components/component/get-game-object.md +++ /dev/null @@ -1,13 +0,0 @@ -# Component::GetGameObject - -获取所属的 GameObject。 - -```cpp -GameObject* GetGameObject() const; -``` - -**返回:** `GameObject*` - 所属游戏对象指针,如果组件未附加到游戏对象则返回 nullptr - -## 相关文档 - -- [Component 总览](component.md) diff --git a/docs/api/components/component/get-name.md b/docs/api/components/component/get-name.md deleted file mode 100644 index cc57f0d0..00000000 --- a/docs/api/components/component/get-name.md +++ /dev/null @@ -1,13 +0,0 @@ -# Component::GetName - -获取组件名称。 - -```cpp -virtual std::string GetName() const = 0; -``` - -**返回:** `std::string` - 组件名称 - -## 相关文档 - -- [Component 总览](component.md) diff --git a/docs/api/components/component/get-scene.md b/docs/api/components/component/get-scene.md deleted file mode 100644 index d9b9c469..00000000 --- a/docs/api/components/component/get-scene.md +++ /dev/null @@ -1,14 +0,0 @@ -# Component::GetScene - -获取所属的场景。 - -```cpp -Scene* GetScene() const; -``` - -**返回:** `Scene*` - 所属场景指针,如果组件未附加到游戏对象则返回 nullptr - -## 相关文档 - -- [Component 总览](component.md) -- [Scene](../../scene/scene.md) diff --git a/docs/api/components/component/is-enabled.md b/docs/api/components/component/is-enabled.md deleted file mode 100644 index bdc8c1d1..00000000 --- a/docs/api/components/component/is-enabled.md +++ /dev/null @@ -1,14 +0,0 @@ -# Component::IsEnabled - -检查组件是否启用。 - -```cpp -bool IsEnabled() const; -``` - -**返回:** `bool` - 如果组件启用则返回 true - -## 相关文档 - -- [Component 总览](component.md) -- [SetEnabled](set-enabled.md) diff --git a/docs/api/components/component/set-enabled.md b/docs/api/components/component/set-enabled.md deleted file mode 100644 index 418b04be..00000000 --- a/docs/api/components/component/set-enabled.md +++ /dev/null @@ -1,17 +0,0 @@ -# Component::SetEnabled - -设置组件启用状态。 - -```cpp -void SetEnabled(bool enabled); -``` - -当启用状态发生变化时,会自动调用 OnEnable 或 OnDisable 回调。 - -**参数:** -- `enabled` - true 为启用,false 为禁用 - -## 相关文档 - -- [Component 总览](component.md) -- [IsEnabled](is-enabled.md) diff --git a/docs/api/components/component/transform.md b/docs/api/components/component/transform.md deleted file mode 100644 index 77c1a4f8..00000000 --- a/docs/api/components/component/transform.md +++ /dev/null @@ -1,16 +0,0 @@ -# Component::transform - -获取变换组件引用。 - -```cpp -TransformComponent& transform() const; -``` - -**返回:** `TransformComponent&` - 所属 GameObject 的变换组件引用 - -**注意:** 如果组件未附加到 GameObject 或 GameObject 没有 TransformComponent,可能导致未定义行为。 - -## 相关文档 - -- [Component 总览](component.md) -- [TransformComponent](../transform-component/transform-component.md) diff --git a/docs/api/components/components.md b/docs/api/components/components.md deleted file mode 100644 index eed43963..00000000 --- a/docs/api/components/components.md +++ /dev/null @@ -1,65 +0,0 @@ -# Components 模块概览 - -**命名空间**: `XCEngine::Components` - -**类型**: `module` - -**描述**: XCEngine 的 ECS(实体组件系统)组件模块。 - -## 概述 - -Components 模块是 XCEngine ECS 架构中的组件层,提供各种游戏对象组件。这些组件附加到实体(Entity)上,定义了游戏对象的行为和数据。组件系统支持 Transform、Audio、Render 等功能。 - -## 模块内容 - -### 核心组件 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [Component](component/component.md) | `Component.h` | 组件基类,所有组件的父类 | -| [GameObject](game-object/game-object.md) | `GameObject.h` | 游戏对象实体 | - -### 变换组件 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [TransformComponent](transform-component/transform-component.md) | `TransformComponent.h` | 变换组件,包含位置、旋转、缩放 | - -### 渲染组件 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [CameraComponent](camera-component/camera-component.md) | `CameraComponent.h` | 相机组件,定义视图和投影参数 | -| [LightComponent](light-component/light-component.md) | `LightComponent.h` | 光源组件,支持方向光、点光、聚光灯 | - -### 音频组件 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [AudioSourceComponent](audio-source-component/audio-source-component.md) | `AudioSourceComponent.h` | 音频源组件,负责声音播放和3D音效 | -| [AudioListenerComponent](audio-listener-component/audio-listener-component.md) | `AudioListenerComponent.h` | 音频监听组件,接收声音并处理多普勒效应和混响 | - -## 使用示例 - -```cpp -#include -#include -#include - -using namespace XCEngine::Components; - -void CreateAudioEntity() { - GameObject* entity = new GameObject("AudioEntity"); - - auto transform = entity->AddComponent(); - transform->SetPosition(Vector3(0, 0, 0)); - - auto audioSource = entity->AddComponent(); - audioSource->SetVolume(0.8f); -} -``` - -## 相关文档 - -- [Audio 模块](../audio/audio.md) - 音频系统模块 -- [Core 模块](../core/core.md) - ECS 核心类型 diff --git a/docs/api/components/game-object/add-component.md b/docs/api/components/game-object/add-component.md deleted file mode 100644 index 29f357fa..00000000 --- a/docs/api/components/game-object/add-component.md +++ /dev/null @@ -1,23 +0,0 @@ -# GameObject::AddComponent - -向游戏对象添加组件。 - -```cpp -template -T* AddComponent(Args&&... args); -``` - -模板参数 T 必须继承自 Component。组件被添加后,其 m_gameObject 成员会自动设置为该 GameObject。 - -**模板参数:** -- `T` - 组件类型 - -**参数:** -- `args` - 传递给组件构造函数的参数 - -**返回:** `T*` - 创建的组件指针 - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [Component](../component/component.md) diff --git a/docs/api/components/game-object/awake.md b/docs/api/components/game-object/awake.md deleted file mode 100644 index 387fcb22..00000000 --- a/docs/api/components/game-object/awake.md +++ /dev/null @@ -1,14 +0,0 @@ -# GameObject::Awake - -唤醒游戏对象及其所有组件。 - -```cpp -void Awake(); -``` - -在对象创建后首次添加到活动场景时调用,用于初始化组件状态。 - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [Start](start.md) diff --git a/docs/api/components/game-object/destroy.md b/docs/api/components/game-object/destroy.md deleted file mode 100644 index 8adacf2e..00000000 --- a/docs/api/components/game-object/destroy.md +++ /dev/null @@ -1,14 +0,0 @@ -# GameObject::Destroy - -销毁游戏对象。 - -```cpp -void Destroy(); -``` - -将对象标记为待销毁,在当前帧结束时实际销毁。 - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [OnDestroy](on-destroy.md) diff --git a/docs/api/components/game-object/detach-children.md b/docs/api/components/game-object/detach-children.md deleted file mode 100644 index 0ab4a04a..00000000 --- a/docs/api/components/game-object/detach-children.md +++ /dev/null @@ -1,14 +0,0 @@ -# GameObject::DetachChildren - -分离所有子对象。 - -```cpp -void DetachChildren(); -``` - -将所有子对象从当前 GameObject 分离,使它们成为根对象。 - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [SetParent](set-parent.md) diff --git a/docs/api/components/game-object/detach-from-parent.md b/docs/api/components/game-object/detach-from-parent.md deleted file mode 100644 index 1323f35c..00000000 --- a/docs/api/components/game-object/detach-from-parent.md +++ /dev/null @@ -1,15 +0,0 @@ -# GameObject::DetachFromParent - -从父对象分离。 - -```cpp -void DetachFromParent(); -``` - -将当前 GameObject 从其父对象分离。分离后,该对象将成为根对象,但其子对象会保持为它的子对象。 - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [SetParent](set-parent.md) -- [DetachChildren](detach-children.md) diff --git a/docs/api/components/game-object/find-game-objects-with-tag.md b/docs/api/components/game-object/find-game-objects-with-tag.md deleted file mode 100644 index 8bf4de5b..00000000 --- a/docs/api/components/game-object/find-game-objects-with-tag.md +++ /dev/null @@ -1,18 +0,0 @@ -# GameObject::FindGameObjectsWithTag - -查找具有指定标签的所有游戏对象。 - -```cpp -static std::vector FindGameObjectsWithTag(const std::string& tag); -``` - -**参数:** -- `tag` - 要查找的标签 - -**返回:** `std::vector` - 具有指定标签的所有游戏对象列表 - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [Find](find.md) -- [FindObjectsOfType](find-objects-of-type.md) diff --git a/docs/api/components/game-object/find-objects-of-type.md b/docs/api/components/game-object/find-objects-of-type.md deleted file mode 100644 index 7e4e2a2c..00000000 --- a/docs/api/components/game-object/find-objects-of-type.md +++ /dev/null @@ -1,15 +0,0 @@ -# GameObject::FindObjectsOfType - -查找所有游戏对象。 - -```cpp -static std::vector FindObjectsOfType(); -``` - -**返回:** `std::vector` - 场景中所有 GameObject 的列表 - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [Find](find.md) -- [FindGameObjectsWithTag](find-game-objects-with-tag.md) diff --git a/docs/api/components/game-object/find.md b/docs/api/components/game-object/find.md deleted file mode 100644 index 6d71625e..00000000 --- a/docs/api/components/game-object/find.md +++ /dev/null @@ -1,18 +0,0 @@ -# GameObject::Find - -查找指定名称的游戏对象。 - -```cpp -static GameObject* Find(const std::string& name); -``` - -**参数:** -- `name` - 要查找的游戏对象名称 - -**返回:** `GameObject*` - 找到的游戏对象指针,如果未找到则返回 nullptr - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [FindObjectsOfType](find-objects-of-type.md) -- [FindGameObjectsWithTag](find-game-objects-with-tag.md) diff --git a/docs/api/components/game-object/fixed-update.md b/docs/api/components/game-object/fixed-update.md deleted file mode 100644 index db0a69e0..00000000 --- a/docs/api/components/game-object/fixed-update.md +++ /dev/null @@ -1,14 +0,0 @@ -# GameObject::FixedUpdate - -固定频率更新游戏对象及其所有组件(用于物理)。 - -```cpp -void FixedUpdate(); -``` - -以固定时间间隔调用,适合物理模拟更新。 - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [Update](update.md) diff --git a/docs/api/components/game-object/game-object.md b/docs/api/components/game-object/game-object.md deleted file mode 100644 index 4acb4d42..00000000 --- a/docs/api/components/game-object/game-object.md +++ /dev/null @@ -1,121 +0,0 @@ -# GameObject - -**命名空间**: `XCEngine::Components` - -**类型**: `class` - -**头文件**: `XCEngine/Components/GameObject.h` - -**描述**: ECS 架构中的游戏对象实体,可附加组件并形成层级结构。 - -## 概述 - -GameObject 是 XCEngine ECS 架构中的实体(Entity)类,代表游戏世界中的一个个对象(如角色、道具、光源等)。每个 GameObject 可以通过 AddComponent 附加各种组件(如 TransformComponent、AudioSourceComponent)来定义其行为和数据。GameObject 支持层级结构(父子关系)、名称查找、标签系统和生命周期管理。 - -## 类型别名 - -| 别名 | 类型 | 描述 | -|------|------|------| -| `ID` | `uint64_t` | 游戏对象唯一标识符类型 | -| `INVALID_ID` | `static constexpr ID` | 无效 ID 常量,值为 0 | - -## 公共方法 - -### 基础信息 - -| 方法 | 描述 | -|------|------| -| [`GetID`](get-id.md) | 获取唯一标识符 | -| [`GetUUID`](get-uuid.md) | 获取全局唯一标识符 | -| [`GetName`](get-name.md) | 获取名称 | -| [`SetName`](set-name.md) | 设置名称 | -| [`GetScene`](get-scene.md) | 获取所属场景 | - -### 组件系统 - -| 方法 | 描述 | -|------|------| -| [`GetTransform`](get-transform.md) | 获取变换组件 | -| [`AddComponent`](add-component.md) | 添加组件(模板方法) | -| [`GetComponent`](get-component.md) | 获取组件(模板方法) | -| [`GetComponents`](get-components.md) | 获取所有指定类型组件(模板方法) | -| [`GetComponentInChildren`](get-component-in-children.md) | 在子对象中查找组件 | -| [`GetComponentInParent`](get-component-in-parent.md) | 在父对象中查找组件 | -| [`GetComponentsInChildren`](get-components-in-children.md) | 获取所有子对象的指定组件 | -| [`RemoveComponent`](remove-component.md) | 移除组件(模板方法) | - -### 层级结构 - -| 方法 | 描述 | -|------|------| -| [`DetachFromParent`](detach-from-parent.md) | 从父对象分离 | -| [`GetParent`](get-parent.md) | 获取父对象 | -| [`SetParent`](set-parent.md) | 设置父对象 | -| [`GetChildCount`](get-child-count.md) | 获取子对象数量 | -| [`GetChild`](get-child.md) | 获取指定索引的子对象 | -| [`GetChildren`](get-children.md) | 获取所有子对象 | -| [`DetachChildren`](detach-children.md) | 分离所有子对象 | - -### 激活状态 - -| 方法 | 描述 | -|------|------| -| [`IsActive`](is-active.md) | 检查自身激活状态 | -| [`SetActive`](set-active.md) | 设置激活状态 | -| [`IsActiveInHierarchy`](is-active-in-hierarchy.md) | 检查在层级中的激活状态 | - -### 静态查找 - -| 方法 | 描述 | -|------|------| -| [`Find`](find.md) | 查找指定名称的对象 | -| [`FindObjectsOfType`](find-objects-of-type.md) | 查找所有对象 | -| [`FindGameObjectsWithTag`](find-game-objects-with-tag.md) | 查找具有指定标签的对象 | - -### 生命周期 - -| 方法 | 描述 | -|------|------| -| [`Awake`](awake.md) | 唤醒对象 | -| [`Start`](start.md) | 开始对象 | -| [`Update`](update.md) | 每帧更新 | -| [`FixedUpdate`](fixed-update.md) | 固定频率更新 | -| [`LateUpdate`](late-update.md) | 晚更新 | -| [`OnDestroy`](on-destroy.md) | 销毁回调 | -| [`Destroy`](destroy.md) | 销毁对象 | - -## 使用示例 - -```cpp -#include -#include -#include - -using namespace XCEngine::Components; - -void CreatePlayer() { - GameObject* player = new GameObject("Player"); - - auto transform = player->AddComponent(); - transform->SetPosition(Vector3(0, 0, 0)); - - auto audio = player->AddComponent(); - audio->SetVolume(0.8f); - - player->SetParent(cameraObject); -} - -void FindAndOperate() { - GameObject* enemy = GameObject::Find("Enemy"); - if (enemy) { - enemy->SetActive(false); - } -} -``` - -## 相关文档 - -- [Components 模块总览](../components.md) - Components 模块总览 -- [Component](../component/component.md) - 组件基类 -- [TransformComponent](../transform-component/transform-component.md) - 变换组件 -- [Scene](../../scene/scene.md) - 场景 diff --git a/docs/api/components/game-object/get-child-count.md b/docs/api/components/game-object/get-child-count.md deleted file mode 100644 index f779b097..00000000 --- a/docs/api/components/game-object/get-child-count.md +++ /dev/null @@ -1,14 +0,0 @@ -# GameObject::GetChildCount - -获取子对象数量。 - -```cpp -size_t GetChildCount() const; -``` - -**返回:** `size_t` - 子对象数量 - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [GetChild](get-child.md) diff --git a/docs/api/components/game-object/get-child.md b/docs/api/components/game-object/get-child.md deleted file mode 100644 index 4958fda9..00000000 --- a/docs/api/components/game-object/get-child.md +++ /dev/null @@ -1,17 +0,0 @@ -# GameObject::GetChild - -获取指定索引的子对象。 - -```cpp -GameObject* GetChild(size_t index) const; -``` - -**参数:** -- `index` - 子对象索引 - -**返回:** `GameObject*` - 指定索引的子对象,如果索引无效则返回 nullptr - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [GetChildren](get-children.md) diff --git a/docs/api/components/game-object/get-children.md b/docs/api/components/game-object/get-children.md deleted file mode 100644 index 32229e65..00000000 --- a/docs/api/components/game-object/get-children.md +++ /dev/null @@ -1,14 +0,0 @@ -# GameObject::GetChildren - -获取所有子对象。 - -```cpp -std::vector GetChildren() const; -``` - -**返回:** `std::vector` - 包含所有子对象的向量 - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [GetChild](get-child.md) diff --git a/docs/api/components/game-object/get-component-in-children.md b/docs/api/components/game-object/get-component-in-children.md deleted file mode 100644 index 9bd4fd16..00000000 --- a/docs/api/components/game-object/get-component-in-children.md +++ /dev/null @@ -1,20 +0,0 @@ -# GameObject::GetComponentInChildren - -在子对象中查找指定类型的组件。 - -```cpp -template -T* GetComponentInChildren(); -``` - -递归搜索所有子对象(深度优先),返回找到的第一个匹配组件。 - -**模板参数:** -- `T` - 组件类型 - -**返回:** `T*` - 找到的组件指针,如果未找到则返回 nullptr - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [GetComponentsInChildren](get-components-in-children.md) diff --git a/docs/api/components/game-object/get-component-in-parent.md b/docs/api/components/game-object/get-component-in-parent.md deleted file mode 100644 index 4258eb10..00000000 --- a/docs/api/components/game-object/get-component-in-parent.md +++ /dev/null @@ -1,20 +0,0 @@ -# GameObject::GetComponentInParent - -在父对象链中查找指定类型的组件。 - -```cpp -template -T* GetComponentInParent(); -``` - -递归向上搜索父对象及其父对象,返回找到的第一个匹配组件。 - -**模板参数:** -- `T` - 组件类型 - -**返回:** `T*` - 找到的组件指针,如果未找到则返回 nullptr - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [GetComponentInChildren](get-component-in-children.md) diff --git a/docs/api/components/game-object/get-component.md b/docs/api/components/game-object/get-component.md deleted file mode 100644 index db3a496c..00000000 --- a/docs/api/components/game-object/get-component.md +++ /dev/null @@ -1,23 +0,0 @@ -# GameObject::GetComponent - -获取游戏对象上指定类型的组件。 - -```cpp -template -T* GetComponent(); - -template -const T* GetComponent() const; -``` - -使用 dynamic_cast 在组件列表中查找匹配类型的第一个组件。 - -**模板参数:** -- `T` - 组件类型 - -**返回:** `T*` - 找到的组件指针,如果未找到则返回 nullptr - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [GetComponents](get-components.md) diff --git a/docs/api/components/game-object/get-components-in-children.md b/docs/api/components/game-object/get-components-in-children.md deleted file mode 100644 index fa03bf94..00000000 --- a/docs/api/components/game-object/get-components-in-children.md +++ /dev/null @@ -1,20 +0,0 @@ -# GameObject::GetComponentsInChildren - -获取所有子对象中指定类型的组件。 - -```cpp -template -std::vector GetComponentsInChildren(); -``` - -递归搜索所有子对象,返回所有匹配类型的组件。 - -**模板参数:** -- `T` - 组件类型 - -**返回:** `std::vector` - 包含所有匹配组件的向量 - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [GetComponentInChildren](get-component-in-children.md) diff --git a/docs/api/components/game-object/get-components.md b/docs/api/components/game-object/get-components.md deleted file mode 100644 index 27b085cc..00000000 --- a/docs/api/components/game-object/get-components.md +++ /dev/null @@ -1,21 +0,0 @@ -# GameObject::GetComponents - -获取游戏对象上所有指定类型的组件。 - -```cpp -template -std::vector GetComponents(); - -template -std::vector GetComponents() const; -``` - -**模板参数:** -- `T` - 组件类型 - -**返回:** `std::vector` - 包含所有匹配组件的向量 - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [GetComponent](get-component.md) diff --git a/docs/api/components/game-object/get-id.md b/docs/api/components/game-object/get-id.md deleted file mode 100644 index ce95cf3a..00000000 --- a/docs/api/components/game-object/get-id.md +++ /dev/null @@ -1,13 +0,0 @@ -# GameObject::GetID - -获取游戏对象的唯一标识符。 - -```cpp -ID GetID() const; -``` - -**返回:** `ID` - 游戏对象的唯一标识符 - -## 相关文档 - -- [GameObject 总览](game-object.md) diff --git a/docs/api/components/game-object/get-name.md b/docs/api/components/game-object/get-name.md deleted file mode 100644 index aae44046..00000000 --- a/docs/api/components/game-object/get-name.md +++ /dev/null @@ -1,14 +0,0 @@ -# GameObject::GetName - -获取游戏对象的名称。 - -```cpp -const std::string& GetName() const; -``` - -**返回:** `const std::string&` - 游戏对象名称引用 - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [SetName](set-name.md) diff --git a/docs/api/components/game-object/get-parent.md b/docs/api/components/game-object/get-parent.md deleted file mode 100644 index edd5bc83..00000000 --- a/docs/api/components/game-object/get-parent.md +++ /dev/null @@ -1,14 +0,0 @@ -# GameObject::GetParent - -获取父游戏对象。 - -```cpp -GameObject* GetParent() const; -``` - -**返回:** `GameObject*` - 父对象指针,如果无父对象则返回 nullptr - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [SetParent](set-parent.md) diff --git a/docs/api/components/game-object/get-scene.md b/docs/api/components/game-object/get-scene.md deleted file mode 100644 index a7aa7ea1..00000000 --- a/docs/api/components/game-object/get-scene.md +++ /dev/null @@ -1,14 +0,0 @@ -# GameObject::GetScene - -获取游戏对象所属的场景。 - -```cpp -Scene* GetScene() const; -``` - -**返回:** `Scene*` - 所属场景指针,如果对象未属于任何场景则返回 nullptr - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [Scene](../../scene/scene.md) diff --git a/docs/api/components/game-object/get-transform.md b/docs/api/components/game-object/get-transform.md deleted file mode 100644 index cbbd8dc2..00000000 --- a/docs/api/components/game-object/get-transform.md +++ /dev/null @@ -1,15 +0,0 @@ -# GameObject::GetTransform - -获取游戏对象的变换组件。 - -```cpp -TransformComponent* GetTransform(); -const TransformComponent* GetTransform() const; -``` - -**返回:** `TransformComponent*` - 变换组件指针 - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [TransformComponent](../transform-component/transform-component.md) diff --git a/docs/api/components/game-object/get-uuid.md b/docs/api/components/game-object/get-uuid.md deleted file mode 100644 index 3d263879..00000000 --- a/docs/api/components/game-object/get-uuid.md +++ /dev/null @@ -1,13 +0,0 @@ -# GameObject::GetUUID - -获取游戏对象的全局唯一标识符。 - -```cpp -uint64_t GetUUID() const; -``` - -**返回:** `uint64_t` - 游戏对象的全局唯一标识符 - -## 相关文档 - -- [GameObject 总览](game-object.md) diff --git a/docs/api/components/game-object/is-active-in-hierarchy.md b/docs/api/components/game-object/is-active-in-hierarchy.md deleted file mode 100644 index 85e4a09f..00000000 --- a/docs/api/components/game-object/is-active-in-hierarchy.md +++ /dev/null @@ -1,16 +0,0 @@ -# GameObject::IsActiveInHierarchy - -检查游戏对象在层级中的激活状态。 - -```cpp -bool IsActiveInHierarchy() const; -``` - -如果对象本身激活但父对象(或更上层的祖先)被禁用,则返回 false。只有当对象及其所有祖先都激活时,才返回 true。 - -**返回:** `bool` - 如果对象在层级中激活则返回 true - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [IsActive](is-active.md) diff --git a/docs/api/components/game-object/is-active.md b/docs/api/components/game-object/is-active.md deleted file mode 100644 index f747bfbc..00000000 --- a/docs/api/components/game-object/is-active.md +++ /dev/null @@ -1,15 +0,0 @@ -# GameObject::IsActive - -检查游戏对象的自身激活状态。 - -```cpp -bool IsActive() const; -``` - -**返回:** `bool` - 如果对象自身激活则返回 true - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [SetActive](set-active.md) -- [IsActiveInHierarchy](is-active-in-hierarchy.md) diff --git a/docs/api/components/game-object/late-update.md b/docs/api/components/game-object/late-update.md deleted file mode 100644 index 3e48e191..00000000 --- a/docs/api/components/game-object/late-update.md +++ /dev/null @@ -1,17 +0,0 @@ -# GameObject::LateUpdate - -晚更新游戏对象及其所有组件。 - -```cpp -void LateUpdate(float deltaTime); -``` - -在所有 Update 调用之后调用,适合处理依赖于其他对象更新的逻辑。 - -**参数:** -- `deltaTime` - 距离上一帧的时间(秒) - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [Update](update.md) diff --git a/docs/api/components/game-object/on-destroy.md b/docs/api/components/game-object/on-destroy.md deleted file mode 100644 index 628535d9..00000000 --- a/docs/api/components/game-object/on-destroy.md +++ /dev/null @@ -1,14 +0,0 @@ -# GameObject::OnDestroy - -销毁回调。 - -```cpp -void OnDestroy(); -``` - -在对象被销毁前调用,用于清理资源。 - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [Destroy](destroy.md) diff --git a/docs/api/components/game-object/remove-component.md b/docs/api/components/game-object/remove-component.md deleted file mode 100644 index 1121d756..00000000 --- a/docs/api/components/game-object/remove-component.md +++ /dev/null @@ -1,26 +0,0 @@ -# GameObject::RemoveComponent - -移除指定类型的组件。 - -```cpp -template -void RemoveComponent(); - -bool RemoveComponent(Component* component); -``` - -模板版本根据类型移除组件,参数版本根据指针移除具体组件实例。TransformComponent 无法被移除。 - -**模板参数:** -- `T` - 组件类型 - -**参数:** -- `component` - 要移除的组件指针 - -**返回:** `bool` - 对于指针版本,如果成功移除则返回 true - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [AddComponent](add-component.md) -- [GetComponent](get-component.md) diff --git a/docs/api/components/game-object/set-active.md b/docs/api/components/game-object/set-active.md deleted file mode 100644 index 39fbcc57..00000000 --- a/docs/api/components/game-object/set-active.md +++ /dev/null @@ -1,15 +0,0 @@ -# GameObject::SetActive - -设置游戏对象的激活状态。 - -```cpp -void SetActive(bool active); -``` - -**参数:** -- `active` - true 激活,false 禁用 - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [IsActive](is-active.md) diff --git a/docs/api/components/game-object/set-name.md b/docs/api/components/game-object/set-name.md deleted file mode 100644 index 6fad9083..00000000 --- a/docs/api/components/game-object/set-name.md +++ /dev/null @@ -1,15 +0,0 @@ -# GameObject::SetName - -设置游戏对象的名称。 - -```cpp -void SetName(const std::string& name); -``` - -**参数:** -- `name` - 新的名称 - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [GetName](get-name.md) diff --git a/docs/api/components/game-object/set-parent.md b/docs/api/components/game-object/set-parent.md deleted file mode 100644 index 9217dcfe..00000000 --- a/docs/api/components/game-object/set-parent.md +++ /dev/null @@ -1,19 +0,0 @@ -# GameObject::SetParent - -设置父游戏对象。 - -```cpp -void SetParent(GameObject* parent); -void SetParent(GameObject* parent, bool worldPositionStays); -``` - -将当前 GameObject 的父对象设置为指定对象。 - -**参数:** -- `parent` - 新的父对象,nullptr 表示成为根对象 -- `worldPositionStays` - true 保持世界坐标不变,false 保持本地坐标不变 - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [GetParent](get-parent.md) diff --git a/docs/api/components/game-object/start.md b/docs/api/components/game-object/start.md deleted file mode 100644 index 618d1904..00000000 --- a/docs/api/components/game-object/start.md +++ /dev/null @@ -1,15 +0,0 @@ -# GameObject::Start - -开始游戏对象及其所有组件。 - -```cpp -void Start(); -``` - -在首次 Update 之前调用,用于在游戏逻辑开始前完成初始化。 - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [Awake](awake.md) -- [Update](update.md) diff --git a/docs/api/components/game-object/update.md b/docs/api/components/game-object/update.md deleted file mode 100644 index 6ad01cc4..00000000 --- a/docs/api/components/game-object/update.md +++ /dev/null @@ -1,15 +0,0 @@ -# GameObject::Update - -每帧更新游戏对象及其所有组件。 - -```cpp -void Update(float deltaTime); -``` - -**参数:** -- `deltaTime` - 距离上一帧的时间(秒) - -## 相关文档 - -- [GameObject 总览](game-object.md) -- [LateUpdate](late-update.md) diff --git a/docs/api/components/light-component/get-casts-shadows.md b/docs/api/components/light-component/get-casts-shadows.md deleted file mode 100644 index e65966a9..00000000 --- a/docs/api/components/light-component/get-casts-shadows.md +++ /dev/null @@ -1,38 +0,0 @@ -# GetCastsShadows - -**所属类**: `LightComponent` - -**头文件**: `XCEngine/Components/LightComponent.h` - -**描述**: 检查光源是否投射阴影。 - -## 函数签名 - -```cpp -bool GetCastsShadows() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `bool` | true 表示投射阴影,false 表示不投射阴影 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void CheckShadowCasting(LightComponent* light) { - if (light->GetCastsShadows()) { - printf("This light casts shadows\n"); - } -} -``` - -## 相关文档 - -- [LightComponent](light-component.md) - 光源组件 -- [SetCastsShadows](set-casts-shadows.md) - 设置阴影投射 diff --git a/docs/api/components/light-component/get-color.md b/docs/api/components/light-component/get-color.md deleted file mode 100644 index 2a6cb3b1..00000000 --- a/docs/api/components/light-component/get-color.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetColor - -**所属类**: `LightComponent` - -**头文件**: `XCEngine/Components/LightComponent.h` - -**描述**: 获取光源的颜色。 - -## 函数签名 - -```cpp -const Math::Color& GetColor() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `const Math::Color&` | 光源颜色引用 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintLightColor(LightComponent* light) { - const auto& color = light->GetColor(); - printf("Light color: (%.2f, %.2f, %.2f)\n", color.r, color.g, color.b); -} -``` - -## 相关文档 - -- [LightComponent](light-component.md) - 光源组件 -- [SetColor](set-color.md) - 设置光源颜色 diff --git a/docs/api/components/light-component/get-intensity.md b/docs/api/components/light-component/get-intensity.md deleted file mode 100644 index 1fb83636..00000000 --- a/docs/api/components/light-component/get-intensity.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetIntensity - -**所属类**: `LightComponent` - -**头文件**: `XCEngine/Components/LightComponent.h` - -**描述**: 获取光源的强度。 - -## 函数签名 - -```cpp -float GetIntensity() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 光源强度,默认值为 1.0 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintLightIntensity(LightComponent* light) { - float intensity = light->GetIntensity(); - printf("Light intensity: %.2f\n", intensity); -} -``` - -## 相关文档 - -- [LightComponent](light-component.md) - 光源组件 -- [SetIntensity](set-intensity.md) - 设置光源强度 diff --git a/docs/api/components/light-component/get-light-type.md b/docs/api/components/light-component/get-light-type.md deleted file mode 100644 index f8e0b33e..00000000 --- a/docs/api/components/light-component/get-light-type.md +++ /dev/null @@ -1,42 +0,0 @@ -# GetLightType - -**所属类**: `LightComponent` - -**头文件**: `XCEngine/Components/LightComponent.h` - -**描述**: 获取光源的类型。 - -## 函数签名 - -```cpp -LightType GetLightType() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `LightType` | 光源类型:`Directional`(定向光)、`Point`(点光源)或 `Spot`(聚光灯) | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void CheckLightType(LightComponent* light) { - if (light->GetLightType() == LightType::Directional) { - printf("Directional light\n"); - } else if (light->GetLightType() == LightType::Point) { - printf("Point light\n"); - } else { - printf("Spot light\n"); - } -} -``` - -## 相关文档 - -- [LightComponent](light-component.md) - 光源组件 -- [SetLightType](set-light-type.md) - 设置光源类型 diff --git a/docs/api/components/light-component/get-range.md b/docs/api/components/light-component/get-range.md deleted file mode 100644 index 6093e2f1..00000000 --- a/docs/api/components/light-component/get-range.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetRange - -**所属类**: `LightComponent` - -**头文件**: `XCEngine/Components/LightComponent.h` - -**描述**: 获取光源的作用范围(仅对点光源和聚光灯有效)。 - -## 函数签名 - -```cpp -float GetRange() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 作用范围(米),默认值为 10.0 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintLightRange(LightComponent* light) { - float range = light->GetRange(); - printf("Light range: %.2f meters\n", range); -} -``` - -## 相关文档 - -- [LightComponent](light-component.md) - 光源组件 -- [SetRange](set-range.md) - 设置作用范围 diff --git a/docs/api/components/light-component/get-spot-angle.md b/docs/api/components/light-component/get-spot-angle.md deleted file mode 100644 index 8fd16298..00000000 --- a/docs/api/components/light-component/get-spot-angle.md +++ /dev/null @@ -1,37 +0,0 @@ -# GetSpotAngle - -**所属类**: `LightComponent` - -**头文件**: `XCEngine/Components/LightComponent.h` - -**描述**: 获取聚光灯的角度(仅对聚光灯有效)。 - -## 函数签名 - -```cpp -float GetSpotAngle() const; -``` - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `float` | 聚光灯角度(度),默认值为 30.0 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void PrintSpotAngle(LightComponent* light) { - float angle = light->GetSpotAngle(); - printf("Spot angle: %.1f degrees\n", angle); -} -``` - -## 相关文档 - -- [LightComponent](light-component.md) - 光源组件 -- [SetSpotAngle](set-spot-angle.md) - 设置聚光灯角度 diff --git a/docs/api/components/light-component/light-component.md b/docs/api/components/light-component/light-component.md deleted file mode 100644 index 093f0d8f..00000000 --- a/docs/api/components/light-component/light-component.md +++ /dev/null @@ -1,90 +0,0 @@ -# LightComponent - -**命名空间**: `XCEngine::Components` - -**类型**: `class` - -**头文件**: `XCEngine/Components/LightComponent.h` - -**描述**: 光源组件,支持方向光、点光、聚光灯三种类型,可设置颜色、强度和阴影。 - -## 概述 - -LightComponent 是 XCEngine ECS 系统中的光源组件,支持三种光源类型:方向光(Directional)、点光(Point)和聚光灯(Spot)。方向光从无穷远处照射,模拟太阳光;点光从一个点向所有方向照射;聚光灯沿一个锥形方向照射。光源组件可以设置颜色、强度、作用范围和是否投射阴影。 - -## 枚举 - -### LightType - -| 枚举值 | 描述 | -|--------|------| -| `Directional` | 方向光,从无穷远处照射 | -| `Point` | 点光,从一个点向所有方向照射 | -| `Spot` | 聚光灯,沿锥形方向照射 | - -## 公共方法 - -### 光源类型 - -| 方法 | 描述 | -|------|------| -| [`GetLightType`](get-light-type.md) | 获取光源类型 | -| [`SetLightType`](set-light-type.md) | 设置光源类型 | - -### 光源属性 - -| 方法 | 描述 | -|------|------| -| [`GetColor`](get-color.md) | 获取光源颜色 | -| [`SetColor`](set-color.md) | 设置光源颜色 | -| [`GetIntensity`](get-intensity.md) | 获取光源强度 | -| [`SetIntensity`](set-intensity.md) | 设置光源强度 | -| [`GetRange`](get-range.md) | 获取作用范围(点光/聚光灯) | -| [`SetRange`](set-range.md) | 设置作用范围 | - -### 聚光灯属性 - -| 方法 | 描述 | -|------|------| -| [`GetSpotAngle`](get-spot-angle.md) | 获取聚光灯角度 | -| [`SetSpotAngle`](set-spot-angle.md) | 设置聚光灯角度 | - -### 阴影 - -| 方法 | 描述 | -|------|------| -| [`GetCastsShadows`](get-casts-shadows.md) | 检查是否投射阴影 | -| [`SetCastsShadows`](set-casts-shadows.md) | 设置是否投射阴影 | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Components; - -void SetupLighting(GameObject* lightObject) { - auto light = lightObject->AddComponent(); - - light->SetLightType(LightType::Directional); - light->SetColor(Math::Color::White()); - light->SetIntensity(1.0f); - light->SetCastsShadows(true); -} - -void SetupPointLight(GameObject* pointLightObject) { - auto pointLight = pointLightObject->AddComponent(); - - pointLight->SetLightType(LightType::Point); - pointLight->SetColor(Math::Color(1.0f, 0.8f, 0.6f, 1.0f)); - pointLight->SetIntensity(2.0f); - pointLight->SetRange(10.0f); -} -``` - -## 相关文档 - -- [Components 模块总览](../components.md) - Components 模块总览 -- [Component](../component/component.md) - 组件基类 -- [TransformComponent](../transform-component/transform-component.md) - 变换组件 diff --git a/docs/api/components/light-component/set-casts-shadows.md b/docs/api/components/light-component/set-casts-shadows.md deleted file mode 100644 index 305f8245..00000000 --- a/docs/api/components/light-component/set-casts-shadows.md +++ /dev/null @@ -1,40 +0,0 @@ -# SetCastsShadows - -**所属类**: `LightComponent` - -**头文件**: `XCEngine/Components/LightComponent.h` - -**描述**: 设置光源是否投射阴影。 - -## 函数签名 - -```cpp -void SetCastsShadows(bool value); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `value` | `bool` | true 启用阴影投射,false 禁用阴影投射 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupShadowCasting(LightComponent* light) { - // 启用阴影 - light->SetCastsShadows(true); - - // 禁用阴影(性能优化) - light->SetCastsShadows(false); -} -``` - -## 相关文档 - -- [LightComponent](light-component.md) - 光源组件 -- [GetCastsShadows](get-casts-shadows.md) - 检查阴影投射 diff --git a/docs/api/components/light-component/set-color.md b/docs/api/components/light-component/set-color.md deleted file mode 100644 index 12fb97e5..00000000 --- a/docs/api/components/light-component/set-color.md +++ /dev/null @@ -1,43 +0,0 @@ -# SetColor - -**所属类**: `LightComponent` - -**头文件**: `XCEngine/Components/LightComponent.h` - -**描述**: 设置光源的颜色。 - -## 函数签名 - -```cpp -void SetColor(const Math::Color& value); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `value` | `const Math::Color&` | 光源颜色 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupLightColor(LightComponent* light) { - // 白色光源 - light->SetColor(Math::Color::White()); - - // 暖色光源 - light->SetColor(Math::Color(1.0f, 0.9f, 0.7f, 1.0f)); - - // 蓝色光源 - light->SetColor(Math::Color(0.5f, 0.7f, 1.0f, 1.0f)); -} -``` - -## 相关文档 - -- [LightComponent](light-component.md) - 光源组件 -- [GetColor](get-color.md) - 获取光源颜色 diff --git a/docs/api/components/light-component/set-intensity.md b/docs/api/components/light-component/set-intensity.md deleted file mode 100644 index 5e597a4d..00000000 --- a/docs/api/components/light-component/set-intensity.md +++ /dev/null @@ -1,43 +0,0 @@ -# SetIntensity - -**所属类**: `LightComponent` - -**头文件**: `XCEngine/Components/LightComponent.h` - -**描述**: 设置光源的强度。 - -## 函数签名 - -```cpp -void SetIntensity(float value); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `value` | `float` | 光源强度,值越大光线越亮 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupLightIntensity(LightComponent* light) { - // 标准强度 - light->SetIntensity(1.0f); - - // 高强度(太阳光) - light->SetIntensity(3.0f); - - // 低强度(月光) - light->SetIntensity(0.2f); -} -``` - -## 相关文档 - -- [LightComponent](light-component.md) - 光源组件 -- [GetIntensity](get-intensity.md) - 获取光源强度 diff --git a/docs/api/components/light-component/set-light-type.md b/docs/api/components/light-component/set-light-type.md deleted file mode 100644 index 01cd991f..00000000 --- a/docs/api/components/light-component/set-light-type.md +++ /dev/null @@ -1,43 +0,0 @@ -# SetLightType - -**所属类**: `LightComponent` - -**头文件**: `XCEngine/Components/LightComponent.h` - -**描述**: 设置光源的类型。 - -## 函数签名 - -```cpp -void SetLightType(LightType value); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `value` | `LightType` | 光源类型:`Directional`(定向光)、`Point`(点光源)或 `Spot`(聚光灯) | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupLightType(LightComponent* light) { - // 定向光(太阳光) - light->SetLightType(LightType::Directional); - - // 点光源(灯泡) - light->SetLightType(LightType::Point); - - // 聚光灯(手电筒) - light->SetLightType(LightType::Spot); -} -``` - -## 相关文档 - -- [LightComponent](light-component.md) - 光源组件 -- [GetLightType](get-light-type.md) - 获取光源类型 diff --git a/docs/api/components/light-component/set-range.md b/docs/api/components/light-component/set-range.md deleted file mode 100644 index 7a8f7350..00000000 --- a/docs/api/components/light-component/set-range.md +++ /dev/null @@ -1,37 +0,0 @@ -# SetRange - -**所属类**: `LightComponent` - -**头文件**: `XCEngine/Components/LightComponent.h` - -**描述**: 设置光源的作用范围(仅对点光源和聚光灯有效)。 - -## 函数签名 - -```cpp -void SetRange(float value); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `value` | `float` | 作用范围(米) | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupLightRange(LightComponent* light) { - light->SetLightType(LightType::Point); - light->SetRange(15.0f); // 15米范围 -} -``` - -## 相关文档 - -- [LightComponent](light-component.md) - 光源组件 -- [GetRange](get-range.md) - 获取作用范围 diff --git a/docs/api/components/light-component/set-spot-angle.md b/docs/api/components/light-component/set-spot-angle.md deleted file mode 100644 index 45700bbc..00000000 --- a/docs/api/components/light-component/set-spot-angle.md +++ /dev/null @@ -1,37 +0,0 @@ -# SetSpotAngle - -**所属类**: `LightComponent` - -**头文件**: `XCEngine/Components/LightComponent.h` - -**描述**: 设置聚光灯的角度(仅对聚光灯有效)。 - -## 函数签名 - -```cpp -void SetSpotAngle(float value); -``` - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `value` | `float` | 聚光灯角度(度),通常在 1.0 到 90.0 之间 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SetupSpotLight(LightComponent* light) { - light->SetLightType(LightType::Spot); - light->SetSpotAngle(45.0f); // 45度锥角 -} -``` - -## 相关文档 - -- [LightComponent](light-component.md) - 光源组件 -- [GetSpotAngle](get-spot-angle.md) - 获取聚光灯角度 diff --git a/docs/api/components/transform-component/detach-children.md b/docs/api/components/transform-component/detach-children.md deleted file mode 100644 index 15f5852f..00000000 --- a/docs/api/components/transform-component/detach-children.md +++ /dev/null @@ -1,26 +0,0 @@ -# DetachChildren - -Detach all child transforms. - -## Syntax - -```cpp -void DetachChildren(); -``` - -## Remarks - -Removes all children from this transform. The children become root-level transforms (their parent is set to `nullptr`). - -## See Also - -- [SetParent](set-parent) -- [GetChild](get-child) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - transform->DetachChildren(); -} -``` diff --git a/docs/api/components/transform-component/find.md b/docs/api/components/transform-component/find.md deleted file mode 100644 index 85d4ab91..00000000 --- a/docs/api/components/transform-component/find.md +++ /dev/null @@ -1,33 +0,0 @@ -# Find - -Find a child transform by name. - -## Syntax - -```cpp -TransformComponent* Find(const std::string& name) const; -``` - -## Parameters - -- `name` - The name of the child transform to find. - -## Returns - -Returns a pointer to the child transform with the specified name, or `nullptr` if not found. Only searches direct children, not the entire hierarchy. - -## See Also - -- [GetChild](get-child) -- [GetChildCount](get-child-count) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - TransformComponent* child = transform->Find("Weapon"); - if (child) { - XC_LOG_INFO("Found child: {}", child->GetName()); - } -} -``` diff --git a/docs/api/components/transform-component/get-child-count.md b/docs/api/components/transform-component/get-child-count.md deleted file mode 100644 index 36052196..00000000 --- a/docs/api/components/transform-component/get-child-count.md +++ /dev/null @@ -1,27 +0,0 @@ -# GetChildCount - -Get the number of child transforms. - -## Syntax - -```cpp -size_t GetChildCount() const; -``` - -## Returns - -Returns the number of direct child transforms. - -## See Also - -- [GetChild](get-child) -- [GetParent](get-parent) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - size_t count = transform->GetChildCount(); - XC_LOG_INFO("Child count: {}", count); -} -``` diff --git a/docs/api/components/transform-component/get-child.md b/docs/api/components/transform-component/get-child.md deleted file mode 100644 index 34083920..00000000 --- a/docs/api/components/transform-component/get-child.md +++ /dev/null @@ -1,32 +0,0 @@ -# GetChild - -Get a child transform by index. - -## Syntax - -```cpp -TransformComponent* GetChild(size_t index) const; -``` - -## Parameters - -- `index` - The index of the child transform (0-based). - -## Returns - -Returns a pointer to the child transform at the specified index, or `nullptr` if the index is out of range. - -## See Also - -- [GetChildCount](get-child-count) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - TransformComponent* firstChild = transform->GetChild(0); - if (firstChild) { - XC_LOG_INFO("First child: {}", firstChild->GetName()); - } -} -``` diff --git a/docs/api/components/transform-component/get-forward.md b/docs/api/components/transform-component/get-forward.md deleted file mode 100644 index 3e9f13a8..00000000 --- a/docs/api/components/transform-component/get-forward.md +++ /dev/null @@ -1,31 +0,0 @@ -# GetForward - -Get the forward direction vector in world space. - -## Syntax - -```cpp -Math::Vector3 GetForward() const; -``` - -## Returns - -Returns the forward direction vector as a `Math::Vector3`. - -## Remarks - -Returns the forward direction of this transform in world space, based on the world rotation. By convention, forward is typically the negative Z axis direction. - -## See Also - -- [GetRight](get-right) -- [GetUp](get-up) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - Math::Vector3 forward = transform->GetForward(); - XC_LOG_INFO("Forward: ({}, {}, {})", forward.x, forward.y, forward.z); -} -``` diff --git a/docs/api/components/transform-component/get-local-euler-angles.md b/docs/api/components/transform-component/get-local-euler-angles.md deleted file mode 100644 index c64ed009..00000000 --- a/docs/api/components/transform-component/get-local-euler-angles.md +++ /dev/null @@ -1,31 +0,0 @@ -# GetLocalEulerAngles - -Get the local rotation as Euler angles in degrees. - -## Syntax - -```cpp -Math::Vector3 GetLocalEulerAngles() const; -``` - -## Returns - -Returns the local rotation as Euler angles `(x, y, z)` in degrees. - -## Remarks - -Converts the local quaternion rotation to Euler angles representation. The angles represent rotation around the X, Y, and Z axes respectively. - -## See Also - -- [SetLocalEulerAngles](set-local-euler-angles) -- [GetLocalRotation](get-local-rotation) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - Math::Vector3 eulers = transform->GetLocalEulerAngles(); - XC_LOG_INFO("Local euler angles: ({}, {}, {})", eulers.x, eulers.y, eulers.z); -} -``` diff --git a/docs/api/components/transform-component/get-local-position.md b/docs/api/components/transform-component/get-local-position.md deleted file mode 100644 index b36ca2f9..00000000 --- a/docs/api/components/transform-component/get-local-position.md +++ /dev/null @@ -1,33 +0,0 @@ -# GetLocalPosition - -Get the position of this transform relative to the parent transform. - -## Syntax - -```cpp -const Math::Vector3& GetLocalPosition() const; -``` - -## Returns - -Returns the local position as a `Math::Vector3` reference. The returned reference remains valid until the transform is modified. - -## Remarks - -Local position represents the position of this transform in parent space. If this transform has no parent, local position is the same as world position. - -## See Also - -- [SetLocalPosition](set-local-position) -- [GetPosition](get-position) -- [SetPosition](set-position) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - const Math::Vector3& localPos = transform->GetLocalPosition(); - XC_LOG_INFO("Local position: ({}, {}, {})", - localPos.x, localPos.y, localPos.z); -} -``` diff --git a/docs/api/components/transform-component/get-local-rotation.md b/docs/api/components/transform-component/get-local-rotation.md deleted file mode 100644 index 028ce20a..00000000 --- a/docs/api/components/transform-component/get-local-rotation.md +++ /dev/null @@ -1,33 +0,0 @@ -# GetLocalRotation - -Get the rotation of this transform relative to the parent transform. - -## Syntax - -```cpp -const Math::Quaternion& GetLocalRotation() const; -``` - -## Returns - -Returns the local rotation as a `Math::Quaternion` reference. - -## Remarks - -Local rotation represents the rotation of this transform in parent space. If this transform has no parent, local rotation is the same as world rotation. - -## See Also - -- [SetLocalRotation](set-local-rotation) -- [GetRotation](get-rotation) -- [SetRotation](set-rotation) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - const Math::Quaternion& localRot = transform->GetLocalRotation(); - XC_LOG_INFO("Local rotation: ({}, {}, {}, {})", - localRot.x, localRot.y, localRot.z, localRot.w); -} -``` diff --git a/docs/api/components/transform-component/get-local-scale.md b/docs/api/components/transform-component/get-local-scale.md deleted file mode 100644 index 00422003..00000000 --- a/docs/api/components/transform-component/get-local-scale.md +++ /dev/null @@ -1,31 +0,0 @@ -# GetLocalScale - -Get the scale of this transform relative to the parent transform. - -## Syntax - -```cpp -const Math::Vector3& GetLocalScale() const; -``` - -## Returns - -Returns the local scale as a `Math::Vector3` reference. - -## Remarks - -Local scale represents the scale of this transform in parent space. If this transform has no parent, local scale is the same as world scale. - -## See Also - -- [SetLocalScale](set-local-scale) -- [GetScale](get-scale) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - const Math::Vector3& scale = transform->GetLocalScale(); - XC_LOG_INFO("Local scale: ({}, {}, {})", scale.x, scale.y, scale.z); -} -``` diff --git a/docs/api/components/transform-component/get-local-to-world-matrix.md b/docs/api/components/transform-component/get-local-to-world-matrix.md deleted file mode 100644 index 53341950..00000000 --- a/docs/api/components/transform-component/get-local-to-world-matrix.md +++ /dev/null @@ -1,29 +0,0 @@ -# GetLocalToWorldMatrix - -Get the transformation matrix from local space to world space. - -## Syntax - -```cpp -const Math::Matrix4x4& GetLocalToWorldMatrix() const; -``` - -## Returns - -Returns the local-to-world transformation matrix as a `Math::Matrix4x4` reference. - -## Remarks - -Returns the matrix that transforms a point from local space to world space. The matrix is computed from the local position, rotation, and scale combined with the parent's world transform. Uses lazy evaluation and is cached until the transform is marked dirty. - -## See Also - -- [GetWorldToLocalMatrix](get-world-to-local-matrix) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - const Math::Matrix4x4& matrix = transform->GetLocalToWorldMatrix(); -} -``` diff --git a/docs/api/components/transform-component/get-parent.md b/docs/api/components/transform-component/get-parent.md deleted file mode 100644 index d221e643..00000000 --- a/docs/api/components/transform-component/get-parent.md +++ /dev/null @@ -1,32 +0,0 @@ -# GetParent - -Get the parent transform. - -## Syntax - -```cpp -TransformComponent* GetParent() const; -``` - -## Returns - -Returns a pointer to the parent `TransformComponent`, or `nullptr` if this transform has no parent. - -## Remarks - -Returns the parent transform in the transform hierarchy. The parent transform affects this transform's world position, rotation, and scale. - -## See Also - -- [SetParent](set-parent) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - TransformComponent* parent = transform->GetParent(); - if (parent) { - XC_LOG_INFO("Has parent: {}", parent->GetName()); - } -} -``` diff --git a/docs/api/components/transform-component/get-position.md b/docs/api/components/transform-component/get-position.md deleted file mode 100644 index 413d8a78..00000000 --- a/docs/api/components/transform-component/get-position.md +++ /dev/null @@ -1,34 +0,0 @@ -# TransformComponent::GetPosition - -获取变换的世界空间位置。 - -```cpp -Math::Vector3 GetPosition() const; -``` - -返回变换的世界空间位置。如果变换有父对象,世界位置由局部位置与父对象世界位置组合计算得出。 - -**返回:** `Math::Vector3` - 世界空间位置向量 - -**线程安全:** ✅ (只读操作) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Components; - -void Example(TransformComponent* transform) { - Math::Vector3 worldPos = transform->GetPosition(); - printf("World position: (%f, %f, %f)\n", - worldPos.x, worldPos.y, worldPos.z); -} -``` - -## 相关文档 - -- [TransformComponent 总览](transform-component.md) - 返回类总览 -- [GetLocalPosition](get-local-position.md) - 获取局部位置 -- [SetPosition](set-position.md) - 设置世界位置 -- [SetLocalPosition](set-local-position.md) - 设置局部位置 diff --git a/docs/api/components/transform-component/get-right.md b/docs/api/components/transform-component/get-right.md deleted file mode 100644 index 197421c1..00000000 --- a/docs/api/components/transform-component/get-right.md +++ /dev/null @@ -1,30 +0,0 @@ -# GetRight - -Get the right direction vector in world space. - -## Syntax - -```cpp -Math::Vector3 GetRight() const; -``` - -## Returns - -Returns the right direction vector as a `Math::Vector3`. - -## Remarks - -Returns the right direction of this transform in world space, based on the world rotation. By convention, right is typically the positive X axis direction. - -## See Also - -- [GetForward](get-forward) -- [GetUp](get-up) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - Math::Vector3 right = transform->GetRight(); -} -``` diff --git a/docs/api/components/transform-component/get-rotation.md b/docs/api/components/transform-component/get-rotation.md deleted file mode 100644 index e0f20e8b..00000000 --- a/docs/api/components/transform-component/get-rotation.md +++ /dev/null @@ -1,31 +0,0 @@ -# GetRotation - -Get the world rotation of this transform. - -## Syntax - -```cpp -Math::Quaternion GetRotation() const; -``` - -## Returns - -Returns the world rotation as a `Math::Quaternion`. - -## Remarks - -Returns the world-space rotation of this transform. If this transform has a parent, the world rotation is computed by combining the local rotation with the parent's world rotation. - -## See Also - -- [GetLocalRotation](get-local-rotation) -- [SetLocalRotation](set-local-rotation) -- [SetRotation](set-rotation) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - Math::Quaternion worldRot = transform->GetRotation(); -} -``` diff --git a/docs/api/components/transform-component/get-scale.md b/docs/api/components/transform-component/get-scale.md deleted file mode 100644 index 74991d6a..00000000 --- a/docs/api/components/transform-component/get-scale.md +++ /dev/null @@ -1,31 +0,0 @@ -# GetScale - -Get the world scale of this transform. - -## Syntax - -```cpp -Math::Vector3 GetScale() const; -``` - -## Returns - -Returns the world scale as a `Math::Vector3`. - -## Remarks - -Returns the world-space scale of this transform. If this transform has a parent, the world scale is computed by multiplying the local scale with the parent's world scale. - -## See Also - -- [GetLocalScale](get-local-scale) -- [SetLocalScale](set-local-scale) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - Math::Vector3 worldScale = transform->GetScale(); - XC_LOG_INFO("World scale: ({}, {}, {})", worldScale.x, worldScale.y, worldScale.z); -} -``` diff --git a/docs/api/components/transform-component/get-sibling-index.md b/docs/api/components/transform-component/get-sibling-index.md deleted file mode 100644 index adbdd359..00000000 --- a/docs/api/components/transform-component/get-sibling-index.md +++ /dev/null @@ -1,28 +0,0 @@ -# GetSiblingIndex - -Get the sibling index of this transform among siblings. - -## Syntax - -```cpp -int GetSiblingIndex() const; -``` - -## Returns - -Returns the sibling index of this transform. - -## See Also - -- [SetSiblingIndex](set-sibling-index) -- [SetAsFirstSibling](set-as-first-sibling) -- [SetAsLastSibling](set-as-last-sibling) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - int index = transform->GetSiblingIndex(); - XC_LOG_INFO("Sibling index: {}", index); -} -``` diff --git a/docs/api/components/transform-component/get-up.md b/docs/api/components/transform-component/get-up.md deleted file mode 100644 index 6d2e4bf7..00000000 --- a/docs/api/components/transform-component/get-up.md +++ /dev/null @@ -1,30 +0,0 @@ -# GetUp - -Get the up direction vector in world space. - -## Syntax - -```cpp -Math::Vector3 GetUp() const; -``` - -## Returns - -Returns the up direction vector as a `Math::Vector3`. - -## Remarks - -Returns the up direction of this transform in world space, based on the world rotation. By convention, up is typically the positive Y axis direction. - -## See Also - -- [GetForward](get-forward) -- [GetRight](get-right) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - Math::Vector3 up = transform->GetUp(); -} -``` diff --git a/docs/api/components/transform-component/get-world-to-local-matrix.md b/docs/api/components/transform-component/get-world-to-local-matrix.md deleted file mode 100644 index 6b4d03be..00000000 --- a/docs/api/components/transform-component/get-world-to-local-matrix.md +++ /dev/null @@ -1,29 +0,0 @@ -# GetWorldToLocalMatrix - -Get the transformation matrix from world space to local space. - -## Syntax - -```cpp -Math::Matrix4x4 GetWorldToLocalMatrix() const; -``` - -## Returns - -Returns the world-to-local transformation matrix as a `Math::Matrix4x4`. - -## Remarks - -Returns the matrix that transforms a point from world space to local space. This is the inverse of `GetLocalToWorldMatrix()`. - -## See Also - -- [GetLocalToWorldMatrix](get-local-to-world-matrix) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - Math::Matrix4x4 worldToLocal = transform->GetWorldToLocalMatrix(); -} -``` diff --git a/docs/api/components/transform-component/inverse-transform-direction.md b/docs/api/components/transform-component/inverse-transform-direction.md deleted file mode 100644 index 14542764..00000000 --- a/docs/api/components/transform-component/inverse-transform-direction.md +++ /dev/null @@ -1,35 +0,0 @@ -# InverseTransformDirection - -Transform a direction from world space to local space. - -## Syntax - -```cpp -Math::Vector3 InverseTransformDirection(const Math::Vector3& direction) const; -``` - -## Parameters - -- `direction` - The world space direction to transform. - -## Returns - -Returns the transformed direction in local space. - -## Remarks - -Transforms a direction from world space to local space. Unlike `InverseTransformPoint`, this does not consider translation. Only rotation and scale are applied. - -## See Also - -- [TransformDirection](transform-direction) -- [InverseTransformPoint](inverse-transform-point) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - Math::Vector3 worldDir(1.0f, 0.0f, 0.0f); - Math::Vector3 localDir = transform->InverseTransformDirection(worldDir); -} -``` diff --git a/docs/api/components/transform-component/inverse-transform-point.md b/docs/api/components/transform-component/inverse-transform-point.md deleted file mode 100644 index 946fa46e..00000000 --- a/docs/api/components/transform-component/inverse-transform-point.md +++ /dev/null @@ -1,35 +0,0 @@ -# InverseTransformPoint - -Transform a point from world space to local space. - -## Syntax - -```cpp -Math::Vector3 InverseTransformPoint(const Math::Vector3& point) const; -``` - -## Parameters - -- `point` - The world space point to transform. - -## Returns - -Returns the transformed point in local space. - -## Remarks - -Transforms a point from world space to local space using the transform's world-to-local matrix. - -## See Also - -- [TransformPoint](transform-point) -- [InverseTransformDirection](inverse-transform-direction) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - Math::Vector3 worldPoint(10.0f, 0.0f, 0.0f); - Math::Vector3 localPoint = transform->InverseTransformPoint(worldPoint); -} -``` diff --git a/docs/api/components/transform-component/look-at.md b/docs/api/components/transform-component/look-at.md deleted file mode 100644 index bb4b76ca..00000000 --- a/docs/api/components/transform-component/look-at.md +++ /dev/null @@ -1,28 +0,0 @@ -# LookAt - -Rotate the transform to face a target position. - -## Syntax - -```cpp -void LookAt(const Math::Vector3& target); -void LookAt(const Math::Vector3& target, const Math::Vector3& up); -``` - -## Parameters - -- `target` - The position to look at. -- `up` - The up vector to use (defaults to world up). - -## Remarks - -Rotates the transform so its forward direction points toward the target position. The optional `up` vector defines which direction is considered up. - -## Examples - -```cpp -void Example(TransformComponent* transform) { - Math::Vector3 targetPos(10.0f, 0.0f, 5.0f); - transform->LookAt(targetPos); -} -``` diff --git a/docs/api/components/transform-component/rotate.md b/docs/api/components/transform-component/rotate.md deleted file mode 100644 index 978acece..00000000 --- a/docs/api/components/transform-component/rotate.md +++ /dev/null @@ -1,29 +0,0 @@ -# Rotate - -Rotate the transform by the specified angles. - -## Syntax - -```cpp -void Rotate(const Math::Vector3& eulers, Space relativeTo = Space::Self); -void Rotate(const Math::Vector3& axis, float angle, Space relativeTo = Space::Self); -``` - -## Parameters - -- `eulers` - The Euler angles of rotation (x, y, z). -- `axis` - The axis of rotation. -- `angle` - The angle of rotation in degrees. -- `relativeTo` - Whether the rotation is relative to self or world space. - -## Remarks - -Applies a rotation to the transform. When `relativeTo` is `Space::Self`, the rotation is applied in local space. When `Space::World`, the rotation is applied in world space. - -## Examples - -```cpp -void Example(TransformComponent* transform) { - transform->Rotate(Math::Vector3(0.0f, 45.0f, 0.0f), Space::Self); -} -``` diff --git a/docs/api/components/transform-component/set-as-first-sibling.md b/docs/api/components/transform-component/set-as-first-sibling.md deleted file mode 100644 index fa9b6395..00000000 --- a/docs/api/components/transform-component/set-as-first-sibling.md +++ /dev/null @@ -1,22 +0,0 @@ -# SetAsFirstSibling - -Set this transform as the first sibling (index 0). - -## Syntax - -```cpp -void SetAsFirstSibling(); -``` - -## See Also - -- [SetSiblingIndex](set-sibling-index) -- [SetAsLastSibling](set-as-last-sibling) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - transform->SetAsFirstSibling(); -} -``` diff --git a/docs/api/components/transform-component/set-as-last-sibling.md b/docs/api/components/transform-component/set-as-last-sibling.md deleted file mode 100644 index 0d31519a..00000000 --- a/docs/api/components/transform-component/set-as-last-sibling.md +++ /dev/null @@ -1,22 +0,0 @@ -# SetAsLastSibling - -Set this transform as the last sibling. - -## Syntax - -```cpp -void SetAsLastSibling(); -``` - -## See Also - -- [SetSiblingIndex](set-sibling-index) -- [SetAsFirstSibling](set-as-first-sibling) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - transform->SetAsLastSibling(); -} -``` diff --git a/docs/api/components/transform-component/set-local-euler-angles.md b/docs/api/components/transform-component/set-local-euler-angles.md deleted file mode 100644 index 98fd3b42..00000000 --- a/docs/api/components/transform-component/set-local-euler-angles.md +++ /dev/null @@ -1,30 +0,0 @@ -# SetLocalEulerAngles - -Set the local rotation using Euler angles in degrees. - -## Syntax - -```cpp -void SetLocalEulerAngles(const Math::Vector3& eulers); -``` - -## Parameters - -- `eulers` - The Euler angles `(x, y, z)` in degrees. - -## Remarks - -Sets the local rotation by converting the Euler angles to a quaternion. The angles represent rotation around the X, Y, and Z axes respectively. - -## See Also - -- [GetLocalEulerAngles](get-local-euler-angles) -- [SetLocalRotation](set-local-rotation) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - transform->SetLocalEulerAngles(Math::Vector3(45.0f, 90.0f, 0.0f)); -} -``` diff --git a/docs/api/components/transform-component/set-local-position.md b/docs/api/components/transform-component/set-local-position.md deleted file mode 100644 index 003aca7c..00000000 --- a/docs/api/components/transform-component/set-local-position.md +++ /dev/null @@ -1,31 +0,0 @@ -# SetLocalPosition - -Set the position of this transform relative to the parent transform. - -## Syntax - -```cpp -void SetLocalPosition(const Math::Vector3& position); -``` - -## Parameters - -- `position` - The new local position as a `Math::Vector3`. - -## Remarks - -Sets the local position of this transform. If this transform has no parent, local position is the same as world position. This marks the transform as dirty, requiring world transform recalculation. - -## See Also - -- [GetLocalPosition](get-local-position) -- [GetPosition](get-position) -- [SetPosition](set-position) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - transform->SetLocalPosition(Math::Vector3(10.0f, 0.0f, 5.0f)); -} -``` diff --git a/docs/api/components/transform-component/set-local-rotation.md b/docs/api/components/transform-component/set-local-rotation.md deleted file mode 100644 index 660dad3a..00000000 --- a/docs/api/components/transform-component/set-local-rotation.md +++ /dev/null @@ -1,32 +0,0 @@ -# SetLocalRotation - -Set the rotation of this transform relative to the parent transform. - -## Syntax - -```cpp -void SetLocalRotation(const Math::Quaternion& rotation); -``` - -## Parameters - -- `rotation` - The new local rotation as a `Math::Quaternion`. - -## Remarks - -Sets the local rotation of this transform. If this transform has no parent, local rotation is the same as world rotation. This marks the transform as dirty. - -## See Also - -- [GetLocalRotation](get-local-rotation) -- [GetRotation](get-rotation) -- [SetRotation](set-rotation) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - Math::Quaternion rotation = Math::Quaternion::FromEuler(0.0f, 90.0f, 0.0f); - transform->SetLocalRotation(rotation); -} -``` diff --git a/docs/api/components/transform-component/set-local-scale.md b/docs/api/components/transform-component/set-local-scale.md deleted file mode 100644 index 62dafe94..00000000 --- a/docs/api/components/transform-component/set-local-scale.md +++ /dev/null @@ -1,30 +0,0 @@ -# SetLocalScale - -Set the scale of this transform relative to the parent transform. - -## Syntax - -```cpp -void SetLocalScale(const Math::Vector3& scale); -``` - -## Parameters - -- `scale` - The new local scale as a `Math::Vector3`. - -## Remarks - -Sets the local scale of this transform. If this transform has no parent, local scale is the same as world scale. This marks the transform as dirty. - -## See Also - -- [GetLocalScale](get-local-scale) -- [GetScale](get-scale) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - transform->SetLocalScale(Math::Vector3(2.0f, 2.0f, 2.0f)); -} -``` diff --git a/docs/api/components/transform-component/set-parent.md b/docs/api/components/transform-component/set-parent.md deleted file mode 100644 index 6a72601a..00000000 --- a/docs/api/components/transform-component/set-parent.md +++ /dev/null @@ -1,31 +0,0 @@ -# SetParent - -Set the parent transform. - -## Syntax - -```cpp -void SetParent(TransformComponent* parent, bool worldPositionStays = true); -``` - -## Parameters - -- `parent` - The new parent transform, or `nullptr` to detach from parent. -- `worldPositionStays` - If `true`, the world position remains unchanged after reparenting. - -## Remarks - -Sets the parent of this transform. When `worldPositionStays` is `true`, the world position is preserved, which may adjust the local position. When `false`, the local position is preserved, which may adjust the world position. - -## See Also - -- [GetParent](get-parent) -- [DetachChildren](detach-children) - -## Examples - -```cpp -void Example(TransformComponent* child, TransformComponent* newParent) { - child->SetParent(newParent, true); -} -``` diff --git a/docs/api/components/transform-component/set-position.md b/docs/api/components/transform-component/set-position.md deleted file mode 100644 index bf82f5d1..00000000 --- a/docs/api/components/transform-component/set-position.md +++ /dev/null @@ -1,31 +0,0 @@ -# SetPosition - -Set the world position of this transform. - -## Syntax - -```cpp -void SetPosition(const Math::Vector3& position); -``` - -## Parameters - -- `position` - The new world position as a `Math::Vector3`. - -## Remarks - -Sets the world-space position of this transform. If this transform has a parent, the local position is computed by transforming the world position into parent space. - -## See Also - -- [GetPosition](get-position) -- [GetLocalPosition](get-local-position) -- [SetLocalPosition](set-local-position) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - transform->SetPosition(Math::Vector3(100.0f, 50.0f, 25.0f)); -} -``` diff --git a/docs/api/components/transform-component/set-rotation.md b/docs/api/components/transform-component/set-rotation.md deleted file mode 100644 index 6b171faa..00000000 --- a/docs/api/components/transform-component/set-rotation.md +++ /dev/null @@ -1,32 +0,0 @@ -# SetRotation - -Set the world rotation of this transform. - -## Syntax - -```cpp -void SetRotation(const Math::Quaternion& rotation); -``` - -## Parameters - -- `rotation` - The new world rotation as a `Math::Quaternion`. - -## Remarks - -Sets the world-space rotation of this transform. If this transform has a parent, the local rotation is computed by transforming the world rotation into parent space. - -## See Also - -- [GetRotation](get-rotation) -- [GetLocalRotation](get-local-rotation) -- [SetLocalRotation](set-local-rotation) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - Math::Quaternion rot = Math::Quaternion::FromEuler(0.0f, 180.0f, 0.0f); - transform->SetRotation(rot); -} -``` diff --git a/docs/api/components/transform-component/set-scale.md b/docs/api/components/transform-component/set-scale.md deleted file mode 100644 index 17575288..00000000 --- a/docs/api/components/transform-component/set-scale.md +++ /dev/null @@ -1,31 +0,0 @@ -# SetScale - -Set the world scale of this transform. - -## Syntax - -```cpp -void SetScale(const Math::Vector3& scale); -``` - -## Parameters - -- `scale` - The new world scale as a `Math::Vector3`. - -## Remarks - -Sets the world-space scale of this transform. If this transform has a parent, the local scale is computed accordingly. - -## See Also - -- [GetScale](get-scale) -- [GetLocalScale](get-local-scale) -- [SetLocalScale](set-local-scale) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - transform->SetScale(Math::Vector3(1.5f, 1.5f, 1.5f)); -} -``` diff --git a/docs/api/components/transform-component/set-sibling-index.md b/docs/api/components/transform-component/set-sibling-index.md deleted file mode 100644 index fc4cbbd5..00000000 --- a/docs/api/components/transform-component/set-sibling-index.md +++ /dev/null @@ -1,27 +0,0 @@ -# SetSiblingIndex - -Set the sibling index of this transform. - -## Syntax - -```cpp -void SetSiblingIndex(int index); -``` - -## Parameters - -- `index` - The new sibling index. - -## See Also - -- [GetSiblingIndex](get-sibling-index) -- [SetAsFirstSibling](set-as-first-sibling) -- [SetAsLastSibling](set-as-last-sibling) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - transform->SetSiblingIndex(0); -} -``` diff --git a/docs/api/components/transform-component/transform-component.md b/docs/api/components/transform-component/transform-component.md deleted file mode 100644 index c5cae7c7..00000000 --- a/docs/api/components/transform-component/transform-component.md +++ /dev/null @@ -1,126 +0,0 @@ -# TransformComponent - -**命名空间**: `XCEngine::Components` - -**类型**: `class` - -**头文件**: `XCEngine/Components/TransformComponent.h` - -**描述**: 游戏对象变换组件,管理位置、旋转、缩放和层级关系。 - -## 概述 - -TransformComponent 是 XCEngine ECS 系统中的变换组件,每个 GameObject 都拥有一个 TransformComponent。它管理对象的局部空间(Local)和世界空间(World)位置、旋转(四元数)和缩放,支持父子层级变换、方向向量计算(前后左右上下)、矩阵运算和坐标变换。变换组件使用延迟更新机制,只有在需要时才重新计算世界变换矩阵。 - -## 枚举 - -| 枚举值 | 描述 | -|--------|------| -| `Space::Self` | 相对于自身空间 | -| `Space::World` | 相对于世界空间 | - -## 公共方法 - -### 局部空间 - -| 方法 | 描述 | -|------|------| -| [`GetLocalPosition`](get-local-position.md) | 获取局部位置 | -| [`SetLocalPosition`](set-local-position.md) | 设置局部位置 | -| [`GetLocalRotation`](get-local-rotation.md) | 获取局部旋转 | -| [`SetLocalRotation`](set-local-rotation.md) | 设置局部旋转 | -| [`GetLocalScale`](get-local-scale.md) | 获取局部缩放 | -| [`SetLocalScale`](set-local-scale.md) | 设置局部缩放 | -| [`GetLocalEulerAngles`](get-local-euler-angles.md) | 获取局部欧拉角 | -| [`SetLocalEulerAngles`](set-local-euler-angles.md) | 设置局部欧拉角 | - -### 世界空间 - -| 方法 | 描述 | -|------|------| -| [`GetPosition`](get-position.md) | 获取世界位置 | -| [`SetPosition`](set-position.md) | 设置世界位置 | -| [`GetRotation`](get-rotation.md) | 获取世界旋转 | -| [`SetRotation`](set-rotation.md) | 设置世界旋转 | -| [`GetScale`](get-scale.md) | 获取世界缩放 | -| [`SetScale`](set-scale.md) | 设置世界缩放 | - -### 方向向量 - -| 方法 | 描述 | -|------|------| -| [`GetForward`](get-forward.md) | 获取前方方向 | -| [`GetRight`](get-right.md) | 获取右方方向 | -| [`GetUp`](get-up.md) | 获取上方方向 | - -### 矩阵运算 - -| 方法 | 描述 | -|------|------| -| [`GetLocalToWorldMatrix`](get-local-to-world-matrix.md) | 获取局部到世界矩阵 | -| [`GetWorldToLocalMatrix`](get-world-to-local-matrix.md) | 获取世界到局部矩阵 | - -### 层级结构 - -| 方法 | 描述 | -|------|------| -| [`GetParent`](get-parent.md) | 获取父变换 | -| [`SetParent`](set-parent.md) | 设置父变换 | -| [`GetChildCount`](get-child-count.md) | 获取子对象数量 | -| [`GetChild`](get-child.md) | 获取指定索引的子变换 | -| [`Find`](find.md) | 按名称查找子变换 | -| [`DetachChildren`](detach-children.md) | 分离所有子变换 | - -### 同级顺序 - -| 方法 | 描述 | -|------|------| -| [`GetSiblingIndex`](get-sibling-index.md) | 获取同级索引 | -| [`SetSiblingIndex`](set-sibling-index.md) | 设置同级索引 | -| [`SetAsFirstSibling`](set-as-first-sibling.md) | 设为第一个同级 | -| [`SetAsLastSibling`](set-as-last-sibling.md) | 设为最后一个同级 | - -### 变换操作 - -| 方法 | 描述 | -|------|------| -| [`LookAt`](look-at.md) | 指向目标 | -| [`Rotate`](rotate.md) | 旋转 | -| [`Translate`](translate.md) | 平移 | - -### 坐标变换 - -| 方法 | 描述 | -|------|------| -| [`TransformPoint`](transform-point.md) | 变换点坐标 | -| [`InverseTransformPoint`](inverse-transform-point.md) | 逆变换点坐标 | -| [`TransformDirection`](transform-direction.md) | 变换方向向量 | -| [`InverseTransformDirection`](inverse-transform-direction.md) | 逆变换方向向量 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void TransformExample(TransformComponent* transform) { - transform->SetPosition(Vector3(10, 0, 0)); - transform->SetRotation(Quaternion::FromEuler(0, 90, 0)); - - Vector3 forward = transform->GetForward(); - Vector3 right = transform->GetRight(); - - transform->Translate(Vector3(0, 0, 5), Space::Self); - transform->Rotate(Vector3(0, 45, 0), Space::World); - - Vector3 worldPos = transform->GetPosition(); - Matrix4x4 l2w = transform->GetLocalToWorldMatrix(); -} -``` - -## 相关文档 - -- [Components 模块总览](../components.md) - Components 模块总览 -- [Component](../component/component.md) - 组件基类 -- [GameObject](../game-object/game-object.md) - 游戏对象 diff --git a/docs/api/components/transform-component/transform-direction.md b/docs/api/components/transform-component/transform-direction.md deleted file mode 100644 index a7751cd5..00000000 --- a/docs/api/components/transform-component/transform-direction.md +++ /dev/null @@ -1,35 +0,0 @@ -# TransformDirection - -Transform a direction from local space to world space. - -## Syntax - -```cpp -Math::Vector3 TransformDirection(const Math::Vector3& direction) const; -``` - -## Parameters - -- `direction` - The local space direction to transform. - -## Returns - -Returns the transformed direction in world space. - -## Remarks - -Transforms a direction from local space to world space. Unlike `TransformPoint`, this does not consider translation. Only rotation and scale are applied. - -## See Also - -- [InverseTransformDirection](inverse-transform-direction) -- [TransformPoint](transform-point) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - Math::Vector3 localDir(1.0f, 0.0f, 0.0f); - Math::Vector3 worldDir = transform->TransformDirection(localDir); -} -``` diff --git a/docs/api/components/transform-component/transform-point.md b/docs/api/components/transform-component/transform-point.md deleted file mode 100644 index 1f93e5b6..00000000 --- a/docs/api/components/transform-component/transform-point.md +++ /dev/null @@ -1,35 +0,0 @@ -# TransformPoint - -Transform a point from local space to world space. - -## Syntax - -```cpp -Math::Vector3 TransformPoint(const Math::Vector3& point) const; -``` - -## Parameters - -- `point` - The local space point to transform. - -## Returns - -Returns the transformed point in world space. - -## Remarks - -Transforms a point from local space to world space using the transform's local-to-world matrix. - -## See Also - -- [InverseTransformPoint](inverse-transform-point) -- [TransformDirection](transform-direction) - -## Examples - -```cpp -void Example(TransformComponent* transform) { - Math::Vector3 localPoint(1.0f, 0.0f, 0.0f); - Math::Vector3 worldPoint = transform->TransformPoint(localPoint); -} -``` diff --git a/docs/api/components/transform-component/translate.md b/docs/api/components/transform-component/translate.md deleted file mode 100644 index f0d15dc2..00000000 --- a/docs/api/components/transform-component/translate.md +++ /dev/null @@ -1,26 +0,0 @@ -# Translate - -Move the transform by the specified translation. - -## Syntax - -```cpp -void Translate(const Math::Vector3& translation, Space relativeTo = Space::Self); -``` - -## Parameters - -- `translation` - The translation vector. -- `relativeTo` - Whether the translation is relative to self or world space. - -## Remarks - -Moves the transform by the specified amount. When `relativeTo` is `Space::Self`, the translation is applied in local space. When `Space::World`, the translation is applied in world space. - -## Examples - -```cpp -void Example(TransformComponent* transform) { - transform->Translate(Math::Vector3(0.0f, 0.0f, 10.0f), Space::Self); -} -``` diff --git a/docs/api/containers/array/array.md b/docs/api/containers/array/array.md deleted file mode 100644 index fa9e441c..00000000 --- a/docs/api/containers/array/array.md +++ /dev/null @@ -1,69 +0,0 @@ -# Array - -**命名空间**: `XCEngine::Containers` - -**类型**: `class` (template) - -**头文件**: `XCEngine/Core/Containers/Array.h` - -**描述**: 模板动态数组容器,提供自动扩容的数组实现。 - -## 概述 - -`Array` 是一个模板动态数组容器,提供了类似 `std::vector` 的功能,但针对游戏引擎进行了优化。 - -## 类型别名 - -| 别名 | 类型 | 描述 | -|------|------|------| -| `Iterator` | `T*` | 迭代器类型 | -| `ConstIterator` | `const T*` | 常量迭代器类型 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [Constructor](constructor.md) | 构造数组实例 | -| [Copy/Move Constructor](copy-move-constructor.md) | 拷贝或移动构造 | -| [Destructor](destructor.md) | 析构函数 | -| [operator=](operator-assign.md) | 赋值运算符 | -| [operator[]](operator-subscript.md) | 下标访问 | -| [Data](data.md) | 获取原始数据指针 | -| [Front/Back](front-back.md) | 获取首/尾元素引用 | -| [Size/Capacity/Empty](size.md) | 获取尺寸信息 | -| [Clear](clear.md) | 清空所有元素 | -| [Reserve](reserve.md) | 预留容量 | -| [Resize](resize.md) | 调整大小 | -| [PushBack](pushback.md) | 尾部添加(拷贝/移动) | -| [EmplaceBack](emplaceback.md) | 就地构造尾部添加 | -| [PopBack](popback.md) | 尾部移除 | -| [begin/end](begin-end.md) | 获取迭代器 | -| [SetAllocator](setallocator.md) | 设置内存分配器 | - -## 使用示例 - -```cpp -#include - -// 基本用法 -XCEngine::Containers::Array arr; -arr.PushBack(1); -arr.PushBack(2); -arr.PushBack(3); - -// 使用 initializer_list -XCEngine::Containers::Array arr2 = {1, 2, 3, 4, 5}; - -// 迭代 -for (auto& elem : arr) { - printf("%d\n", elem); -} - -// 使用 EmplaceBack -arr.EmplaceBack(4); -``` - -## 相关文档 - -- [HashMap](../hashmap/hashmap.md) - 哈希表容器 -- [Memory 模块](../../memory/memory.md) - 内存分配器 diff --git a/docs/api/containers/array/begin-end.md b/docs/api/containers/array/begin-end.md deleted file mode 100644 index 59f6264b..00000000 --- a/docs/api/containers/array/begin-end.md +++ /dev/null @@ -1,52 +0,0 @@ -# Array::begin() / end() - -```cpp -Iterator begin(); -Iterator end(); -ConstIterator begin() const; -ConstIterator end() const; -``` - -获取数组的迭代器,用于范围遍历。 - -**begin():** 返回指向第一个元素的迭代器。如果数组为空,返回值等于 `end()`。 - -**end():** 返回指向"最后一个元素之后"位置的迭代器(哨兵)。这是一个越界位置,不可解引用。 - -**迭代器类型:** `Iterator = T*`(原始指针),因此支持指针算术运算。 - -**复杂度:** O(1) - -**线程安全:** ❌ 迭代期间不可并发修改数组 - -**示例:** - -```cpp -#include - -XCEngine::Containers::Array arr = {10, 20, 30, 40, 50}; - -// 范围 for 循环(推荐) -for (int val : arr) { - printf("%d\n", val); -} - -// 手动迭代器 -for (auto it = arr.begin(); it != arr.end(); ++it) { - printf("%d\n", *it); -} - -// 指针算术(因为迭代器就是指针) -int* ptr = arr.begin(); -ptr += 2; // 指向第三个元素 -*ptr; // 30 - -// 常量迭代器 -for (const auto& val : arr) { - printf("%d\n", val); -} -``` - -## 相关文档 - -- [Array 总览](array.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/containers/array/clear.md b/docs/api/containers/array/clear.md deleted file mode 100644 index bbc67b40..00000000 --- a/docs/api/containers/array/clear.md +++ /dev/null @@ -1,36 +0,0 @@ -# Array::Clear() - -```cpp -void Clear(); -``` - -清空数组中的所有元素。 - -**行为:** -- 调用所有元素的析构函数 -- 将 `Size()` 设为 0 -- **不释放底层内存**,`Capacity()` 保持不变 - -**线程安全:** ❌ 清空期间不可并发访问 - -**示例:** - -```cpp -XCEngine::Containers::Array arr = {1, 2, 3, 4, 5}; - -arr.Size(); // 5 -arr.Capacity(); // 8(假设自动扩容到 8) - -arr.Clear(); - -arr.Size(); // 0 -arr.Capacity(); // 8(内存未被释放) - -// 可继续添加元素,不会重新分配内存 -arr.PushBack(10); -arr.PushBack(20); -``` - -## 相关文档 - -- [Array 总览](array.md) - 返回类总览 diff --git a/docs/api/containers/array/constructor.md b/docs/api/containers/array/constructor.md deleted file mode 100644 index 2f922344..00000000 --- a/docs/api/containers/array/constructor.md +++ /dev/null @@ -1,50 +0,0 @@ -# Array::Array() - -```cpp -Array() = default; -explicit Array(size_t capacity); -Array(size_t count, const T& value); -Array(std::initializer_list init); -``` - -构造一个 `template XCEngine::Containers::Array` 实例。 - -**默认构造**:构造空数组,不分配内存。数组初始为空,容量为0。 - -**容量构造(explicit)**:预分配指定容量的内存,但不设置元素数量。适用于已知大致元素数量时减少重新分配。 - -**数量构造**:创建 `count` 个元素,每个元素都是 `value` 的拷贝。使用拷贝构造,不调用默认构造。 - -**初始化列表构造**:使用 C++ initializer_list 语法创建数组。 - -**参数:** -- `capacity` - 预分配的容量大小 -- `count` - 元素数量 -- `value` - 每个元素的初始值 -- `init` - initializer_list 初始化列表 - -**注意:** `Array(size_t capacity)` 是 explicit 的,防止隐式转换。 - -**示例:** - -```cpp -#include - -using namespace XCEngine::Containers; - -// 默认构造 -Array arr1; - -// 预分配容量(不设置元素) -Array arr2(100); - -// 创建 10 个元素,初始值为 42 -Array arr3(10, 42); - -// 使用 initializer_list -Array arr4 = {1, 2, 3, 4, 5}; -``` - -## 相关文档 - -- [Array 总览](array.md) - 返回类总览 diff --git a/docs/api/containers/array/copy-move-constructor.md b/docs/api/containers/array/copy-move-constructor.md deleted file mode 100644 index 2a1643f1..00000000 --- a/docs/api/containers/array/copy-move-constructor.md +++ /dev/null @@ -1,44 +0,0 @@ -# Array::Array() - 拷贝/移动构造 - -```cpp -Array(const Array& other); -Array(Array&& other) noexcept; -``` - -拷贝或移动构造一个新数组。 - -**拷贝构造:** -- 分配与 `other` 相同容量的内存 -- 拷贝 `other` 中所有元素 - -**移动构造:** -- 接管 `other` 的所有资源(数据指针、容量、大小) -- 将 `other` 置为空状态(`m_data = nullptr, m_size = 0, m_capacity = 0`) -- 不拷贝、不移动任何元素数据,性能 O(1) - -**参数:** -- `other` - 源数组 - -**异常:** -- 拷贝构造:元素拷贝可能抛出异常 -- 移动构造:`noexcept`,不抛出异常 - -**线程安全:** ❌ 构造期间不可并发访问 - -**示例:** - -```cpp -XCEngine::Containers::Array arr1 = {1, 2, 3}; - -// 拷贝构造 -XCEngine::Containers::Array arr2(arr1); // arr2 = {1, 2, 3} - -// 移动构造 -XCEngine::Containers::Array arr3(std::move(arr1)); -// arr3 = {1, 2, 3} -// arr1 现在为空,Size() == 0 -``` - -## 相关文档 - -- [Array 总览](array.md) - 返回类总览 diff --git a/docs/api/containers/array/data.md b/docs/api/containers/array/data.md deleted file mode 100644 index 1db081c0..00000000 --- a/docs/api/containers/array/data.md +++ /dev/null @@ -1,30 +0,0 @@ -# Array::Data() - -```cpp -T* Data(); -const T* Data() const; -``` - -获取指向底层数组数据的原始指针。 - -**用途:** 用于与 C 风格 API 或需要直接访问内存的场景(如与 GPU 通信)。 - -**返回:** 指向底层连续内存块的指针。如果数组为空,返回 `nullptr`。 - -**复杂度:** O(1) - -**示例:** - -```cpp -XCEngine::Containers::Array arr = {1.0f, 2.0f, 3.0f}; - -float* raw = arr.Data(); -size_t count = arr.Size(); - -// 可用于与 C API 交互 -// memcpy(dst, arr.Data(), arr.Size() * sizeof(float)); -``` - -## 相关文档 - -- [Array 总览](array.md) - 返回类总览 diff --git a/docs/api/containers/array/destructor.md b/docs/api/containers/array/destructor.md deleted file mode 100644 index 1786ea2a..00000000 --- a/docs/api/containers/array/destructor.md +++ /dev/null @@ -1,28 +0,0 @@ -# Array::~Array() - -```cpp -~Array(); -``` - -销毁数组,释放所有已分配的元素并释放内存。 - -**行为:** -- 调用所有元素的析构函数 -- 释放底层数据缓冲区内存 - -**注意:** 使用 RAII 模式,无需手动调用析构。 - -**线程安全:** ❌ 析构期间不可并发访问 - -**示例:** - -```cpp -{ - XCEngine::Containers::Array arr = {1, 2, 3}; - // 使用 arr... -} // arr 在此自动销毁,析构函数被调用 -``` - -## 相关文档 - -- [Array 总览](array.md) - 返回类总览 diff --git a/docs/api/containers/array/emplaceback.md b/docs/api/containers/array/emplaceback.md deleted file mode 100644 index 9a098721..00000000 --- a/docs/api/containers/array/emplaceback.md +++ /dev/null @@ -1,51 +0,0 @@ -# Array::EmplaceBack() - -```cpp -template -T& EmplaceBack(Args&&... args); -``` - -在数组末尾就地构造一个元素,直接在内存中构造,不产生临时对象。 - -**容量管理:** -- 如果容量不足(`m_size >= m_capacity`),先扩容 -- 当容量为0时,首次扩容至4;之后每次扩容翻倍(即 4 → 8 → 16 → ...) - -**优势:** -- 避免拷贝或移动开销 -- 直接在底层缓冲区末尾构造元素 -- 参数完美转发,支持任意构造参数 - -**参数:** -- `args` - 转发给 `T` 构造函数的参数包 - -**返回:** 新构造元素的引用 - -**复杂度:** 均摊 O(1) - -**线程安全:** ❌ 操作期间不可并发访问 - -**示例:** - -```cpp -struct Vertex { - float x, y, z; - Vertex(float x_, float y_, float z_) : x(x_), y(y_), z(z_) {} -}; - -XCEngine::Containers::Array vertices; - -// EmplaceBack 直接构造,不产生临时 Vertex 对象 -vertices.EmplaceBack(1.0f, 2.0f, 3.0f); -vertices.EmplaceBack(4.0f, 5.0f, 6.0f); - -// 对比 PushBack(需要先构造临时对象) -Vertex v(7.0f, 8.0f, 9.0f); -vertices.PushBack(v); // 产生拷贝或移动 - -// EmplaceBack 更高效,始终优先使用 -``` - -## 相关文档 - -- [Array 总览](array.md) - 返回类总览 diff --git a/docs/api/containers/array/front-back.md b/docs/api/containers/array/front-back.md deleted file mode 100644 index a7a6d303..00000000 --- a/docs/api/containers/array/front-back.md +++ /dev/null @@ -1,38 +0,0 @@ -# Array::Front() / Back() - -```cpp -T& Front(); -const T& Front() const; -T& Back(); -const T& Back() const; -``` - -获取数组首尾元素的引用。 - -**Front():** 返回第一个元素(`index == 0`)的引用。 - -**Back():** 返回最后一个元素(`index == Size() - 1`)的引用。 - -**前置条件:** 数组必须非空,否则行为未定义。 - -**返回:** 首/尾元素的引用 - -**复杂度:** O(1) - -**线程安全:** ❌ 访问期间不可并发修改 - -**示例:** - -```cpp -XCEngine::Containers::Array arr = {10, 20, 30}; - -int& first = arr.Front(); // first == 10 -int& last = arr.Back(); // last == 30 - -arr.Front() = 5; // arr 现在是 {5, 20, 30} -arr.Back() = 100; // arr 现在是 {5, 20, 100} -``` - -## 相关文档 - -- [Array 总览](array.md) - 返回类总览 diff --git a/docs/api/containers/array/operator-assign.md b/docs/api/containers/array/operator-assign.md deleted file mode 100644 index 2ffe1c12..00000000 --- a/docs/api/containers/array/operator-assign.md +++ /dev/null @@ -1,44 +0,0 @@ -# Array::operator= - -```cpp -Array& operator=(const Array& other); -Array& operator=(Array&& other) noexcept; -``` - -赋值运算符,用另一个数组的内容替换当前数组的内容。 - -**拷贝赋值(`=`):** -- 先销毁当前所有元素 -- 分配与 `other` 相同大小的内存 -- 拷贝 `other` 中所有元素 - -**移动赋值(`=`):** -- 先销毁当前所有元素 -- 接管 `other` 的所有资源(数据指针、容量、分配器) -- 将 `other` 置为空状态 - -**参数:** -- `other` - 源数组 - -**返回:** 引用自身(`*this`) - -**异常:** -- 拷贝赋值:`other` 元素拷贝可能抛出异常 - -**线程安全:** ❌ 赋值期间不可并发访问 - -**示例:** - -```cpp -XCEngine::Containers::Array arr1 = {1, 2, 3}; -XCEngine::Containers::Array arr2; - -arr2 = arr1; // 拷贝赋值,arr2 现在是 {1, 2, 3} - -XCEngine::Containers::Array arr3 = {4, 5}; -arr2 = std::move(arr3); // 移动赋值,arr2 现在是 {4, 5},arr3 为空 -``` - -## 相关文档 - -- [Array 总览](array.md) - 返回类总览 diff --git a/docs/api/containers/array/operator-subscript.md b/docs/api/containers/array/operator-subscript.md deleted file mode 100644 index e1ac50b2..00000000 --- a/docs/api/containers/array/operator-subscript.md +++ /dev/null @@ -1,39 +0,0 @@ -# Array::operator[] - -```cpp -T& operator[](size_t index); -const T& operator[](size_t index) const; -``` - -按下标访问数组元素,不进行边界检查。 - -**行为:** -- 返回指定索引处元素的引用 -- 不进行下标越界检查,性能最优 -- 可用于读取和修改元素(非常量版本) - -**参数:** -- `index` - 元素下标,从 0 开始 - -**返回:** 元素的引用(常量版本返回常量引用) - -**复杂度:** O(1) - -**线程安全:** ❌ 访问元素期间不可并发修改 - -**注意:** 不会进行边界检查。如果 `index >= Size()`,行为未定义。如需边界检查,请自行先调用 `Empty()` 或检查 `Size()`。 - -**示例:** - -```cpp -XCEngine::Containers::Array arr = {10, 20, 30}; - -int first = arr[0]; // first == 10 -int last = arr[2]; // last == 30 - -arr[1] = 25; // arr 现在是 {10, 25, 30} -``` - -## 相关文档 - -- [Array 总览](array.md) - 返回类总览 diff --git a/docs/api/containers/array/popback.md b/docs/api/containers/array/popback.md deleted file mode 100644 index f599ebbf..00000000 --- a/docs/api/containers/array/popback.md +++ /dev/null @@ -1,38 +0,0 @@ -# Array::PopBack() - -```cpp -void PopBack(); -``` - -移除数组末尾的元素,并调用其析构函数。 - -**前置条件:** 数组必须非空(`Size() > 0`)。如果数组为空,行为未定义。 - -**行为:** -- 将 `Size()` 减 1 -- 调用被移除元素的析构函数 -- **不释放底层内存** - -**线程安全:** ❌ 操作期间不可并发访问 - -**示例:** - -```cpp -XCEngine::Containers::Array arr = {10, 20, 30, 40, 50}; - -arr.Size(); // 5 - -arr.PopBack(); // 移除 50 - -arr.Size(); // 4 -// arr = {10, 20, 30, 40} - -arr.PopBack(); -arr.PopBack(); -// arr = {10, 20} -// Capacity() 仍为之前的值(如 8) -``` - -## 相关文档 - -- [Array 总览](array.md) - 返回类总览 diff --git a/docs/api/containers/array/pushback.md b/docs/api/containers/array/pushback.md deleted file mode 100644 index 38b7e81a..00000000 --- a/docs/api/containers/array/pushback.md +++ /dev/null @@ -1,44 +0,0 @@ -# Array::PushBack() - -```cpp -void PushBack(const T& value); -void PushBack(T&& value); -``` - -在数组末尾添加一个元素。 - -**拷贝版本(`const T&`):** -- 如果容量不足(`m_size >= m_capacity`),先扩容 -- 当容量为0时,首次扩容至4;之后每次扩容翻倍(即 4 → 8 → 16 → ...) -- 在末尾位置拷贝构造 `value` - -**移动版本(`T&&`):** -- 行为同拷贝版本,但使用移动构造 -- 适用于临时对象或右值,避免拷贝开销 - -**参数:** -- `value` - 要添加的元素(拷贝或移动) - -**复杂度:** 均摊 O(1)。每次添加的摊销成本为常数,因为扩容是翻倍策略。 - -**线程安全:** ❌ 操作期间不可并发访问 - -**示例:** - -```cpp -XCEngine::Containers::Array arr; - -// 拷贝添加 -std::string s = "hello"; -arr.PushBack(s); // s 被拷贝 - -// 移动添加(更高效) -arr.PushBack(std::string("world")); // 直接移动构造 - -// 临时对象会被隐式移动 -arr.PushBack("temporary"); // 字符串字面量构造后移动 -``` - -## 相关文档 - -- [Array 总览](array.md) - 返回类总览 diff --git a/docs/api/containers/array/reserve.md b/docs/api/containers/array/reserve.md deleted file mode 100644 index c8a2fec2..00000000 --- a/docs/api/containers/array/reserve.md +++ /dev/null @@ -1,39 +0,0 @@ -# Array::Reserve() - -```cpp -void Reserve(size_t capacity); -``` - -预分配底层内存容量,确保能容纳至少 `capacity` 个元素而不重新分配。 - -**行为:** -- 如果 `capacity > Capacity()`,分配新内存并拷贝现有元素 -- 如果 `capacity <= Capacity()`,什么都不做 -- 不改变 `Size()` - -**参数:** -- `capacity` - 目标容量 - -**用途:** 当已知大致元素数量时,提前分配可以避免多次重新分配带来的性能开销和迭代器失效。 - -**复杂度:** O(n),其中 n 为当前元素数量(需要拷贝现有元素到新内存) - -**线程安全:** ❌ 操作期间不可并发访问 - -**示例:** - -```cpp -XCEngine::Containers::Array arr; - -// 预分配 1000 个元素的容量 -arr.Reserve(1000); - -// 之后添加 500 个元素不会触发重新分配 -for (int i = 0; i < 500; ++i) { - arr.PushBack(i); -} -``` - -## 相关文档 - -- [Array 总览](array.md) - 返回类总览 diff --git a/docs/api/containers/array/resize.md b/docs/api/containers/array/resize.md deleted file mode 100644 index dff8a74e..00000000 --- a/docs/api/containers/array/resize.md +++ /dev/null @@ -1,46 +0,0 @@ -# Array::Resize() - -```cpp -void Resize(size_t newSize); -void Resize(size_t newSize, const T& value); -``` - -调整数组大小。 - -**Resize(newSize):** -- 如果 `newSize > Size()`:在末尾构造 `newSize - Size()` 个默认构造的元素 -- 如果 `newSize < Size()`:销毁末尾多出的元素 -- 如果 `newSize == Size()`:什么都不做 - -**Resize(newSize, value):** -- 行为同上述,但扩展时使用 `value` 拷贝构造新元素,而非默认构造 - -**参数:** -- `newSize` - 新的元素数量 -- `value` - 扩展时用作填充值的元素 - -**复杂度:** O(n),涉及元素构造/析构和可能的内存重新分配 - -**线程安全:** ❌ 操作期间不可并发访问 - -**示例:** - -```cpp -XCEngine::Containers::Array arr = {1, 2, 3}; - -// 扩展到 5 个元素,新元素默认构造为 0 -arr.Resize(5); -// arr = {1, 2, 3, 0, 0} - -// 缩减到 2 个元素 -arr.Resize(2); -// arr = {1, 2} - -// 扩展到 4 个,填充为 -1 -arr.Resize(4, -1); -// arr = {1, 2, -1, -1} -``` - -## 相关文档 - -- [Array 总览](array.md) - 返回类总览 diff --git a/docs/api/containers/array/setallocator.md b/docs/api/containers/array/setallocator.md deleted file mode 100644 index ad5f5e1b..00000000 --- a/docs/api/containers/array/setallocator.md +++ /dev/null @@ -1,29 +0,0 @@ -# Array::SetAllocator() - -```cpp -void SetAllocator(Memory::IAllocator* allocator); -``` - -设置数组的内存分配器指针(当前实现未使用此分配器)。 - -**参数:** -- `allocator` - 指向 `Memory::IAllocator` 接口的指针 - -**注意:** -- 此方法仅存储分配器指针,**当前实现未使用该分配器进行内存分配** -- 所有内存分配仍使用 `::operator new/delete` -- 如果数组已有元素,设置新的分配器后,**不会**迁移现有元素 -- 仅影响后续的内存分配操作(但实际上分配器未被使用) - -**线程安全:** ❌ 操作期间不可并发访问 - -**示例:** - -```cpp -XCEngine::Containers::Array arr; -arr.SetAllocator(customAllocator); -``` - -## 相关文档 - -- [Array 总览](array.md) - 返回类总览 diff --git a/docs/api/containers/array/size.md b/docs/api/containers/array/size.md deleted file mode 100644 index 808cf25b..00000000 --- a/docs/api/containers/array/size.md +++ /dev/null @@ -1,47 +0,0 @@ -# Array::Size() / Capacity() / Empty() - -```cpp -size_t Size() const; -size_t Capacity() const; -bool Empty() const; -``` - -获取数组的尺寸信息。 - -**Size():** 返回数组中的实际元素数量。 - -**Capacity():** 返回底层内存缓冲区能容纳的元素数量,不一定等于 `Size()`。 - -**Empty():** 返回数组是否为空(`Size() == 0`)。等价于 `Size() == 0`,但更语义化。 - -**返回:** -- `Size()` - 元素数量 -- `Capacity()` - 底层缓冲区容量 -- `Empty()` - 是否为空 - -**复杂度:** O(1) - -**示例:** - -```cpp -XCEngine::Containers::Array arr; - -arr.Size(); // 0 -arr.Capacity(); // 0 -arr.Empty(); // true - -arr.PushBack(1); -arr.PushBack(2); - -arr.Size(); // 2 -arr.Capacity(); // 4(自动扩容) -arr.Empty(); // false - -arr.Reserve(100); -arr.Size(); // 2(元素数量不变) -arr.Capacity(); // 100(容量增加) -``` - -## 相关文档 - -- [Array 总览](array.md) - 返回类总览 diff --git a/docs/api/containers/containers.md b/docs/api/containers/containers.md deleted file mode 100644 index cfb762f3..00000000 --- a/docs/api/containers/containers.md +++ /dev/null @@ -1,59 +0,0 @@ -# Containers 容器模块概览 - -**命名空间**: `XCEngine::Containers` - -**类型**: `module` - -**头文件**: `XCEngine/Core/Containers/Containers.h` - -**描述**: XCEngine 的容器模块,提供常用的数据结构实现。 - -## 概述 - -Containers 模块提供了图形引擎常用的数据结构,包括动态数组、字符串和哈希表。这些容器都使用自定义内存分配器接口,支持内存跟踪和优化。 - -## 模块内容 - -### 容器类 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [Array](array/array.md) | `Array.h` | 模板动态数组,支持自动扩容 | -| [String](string/string.md) | `String.h` | 动态字符串类 | -| [HashMap](hashmap/hashmap.md) | `HashMap.h` | 模板哈希表 | - -## 设计特点 - -1. **自定义内存分配器支持** - 所有容器都支持通过 `IAllocator` 接口分配内存 -2. **迭代器支持** - Array 和 HashMap 都提供 STL 风格的迭代器 -3. **移动语义** - 完整支持 C++11 移动语义 -4. **异常安全** - 内存分配失败时提供良好的错误处理 - -## 使用示例 - -```cpp -#include -#include -#include - -// 使用 Array -XCEngine::Containers::Array arr; -arr.PushBack(1); -arr.PushBack(2); -arr.PushBack(3); - -// 使用 String -XCEngine::Containers::String str; -str = "Hello, "; -str += "World!"; - -// 使用 HashMap -XCEngine::Containers::HashMap map; -map.Insert("key1", 100); -map.Insert("key2", 200); -int* value = map.Find("key1"); -``` - -## 相关文档 - -- [Memory 模块](../memory/memory.md) - 内存分配器接口 diff --git a/docs/api/containers/hashmap/clear.md b/docs/api/containers/hashmap/clear.md deleted file mode 100644 index f7560e48..00000000 --- a/docs/api/containers/hashmap/clear.md +++ /dev/null @@ -1,38 +0,0 @@ -# HashMap::Clear - -```cpp -void Clear(); -``` - -清空哈希表中的所有元素,将元素数量置为 0。桶的数量保持不变。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(bucketCount),需要清空所有桶 - -**线程安全:** ❌ 非线程安全 - -**异常:** 无 - -**示例:** - -```cpp -XCEngine::Containers::HashMap map; -map.Insert(1, "one"); -map.Insert(2, "two"); -map.Insert(3, "three"); - -std::cout << "Size before clear: " << map.Size() << std::endl; // 输出 3 - -map.Clear(); - -std::cout << "Size after clear: " << map.Size() << std::endl; // 输出 0 -std::cout << "Empty: " << (map.Empty() ? "yes" : "no") << std::endl; // 输出 "yes" -``` - -## 相关文档 - -- [HashMap 总览](hashmap.md) - 返回类总览 -- [Erase](erase.md) - 删除单个元素 diff --git a/docs/api/containers/hashmap/constructor.md b/docs/api/containers/hashmap/constructor.md deleted file mode 100644 index 5467b0b3..00000000 --- a/docs/api/containers/hashmap/constructor.md +++ /dev/null @@ -1,34 +0,0 @@ -# HashMap::HashMap - -```cpp -HashMap(); -explicit HashMap(size_t bucketCount, Memory::IAllocator* allocator = nullptr); -``` - -构造哈希表实例。 - -**参数:** -- `bucketCount` - 初始桶的数量,默认为 16。若传入 0,则自动调整为 16。 -- `allocator` - 内存分配器指针,默认为 `nullptr`(使用默认分配器)。 - -**返回:** 无 - -**复杂度:** O(bucketCount),需要初始化所有桶 - -**线程安全:** ❌ 非线程安全 - -**异常:** 无 - -**示例:** - -```cpp -XCEngine::Containers::HashMap map1; - -XCEngine::Containers::HashMap map2(32); - -XCEngine::Containers::HashMap map3(64, nullptr); -``` - -## 相关文档 - -- [HashMap 总览](hashmap.md) - 返回类总览 diff --git a/docs/api/containers/hashmap/contains.md b/docs/api/containers/hashmap/contains.md deleted file mode 100644 index d3ed6e51..00000000 --- a/docs/api/containers/hashmap/contains.md +++ /dev/null @@ -1,39 +0,0 @@ -# HashMap::Contains - -```cpp -bool Contains(const Key& key) const; -``` - -检查哈希表中是否包含指定的键。 - -**参数:** -- `key` - 要检查的键 - -**返回:** 如果键存在返回 `true`,否则返回 `false`。 - -**复杂度:** O(1) 平均,最坏 O(n) - -**线程安全:** ❌ 非线程安全 - -**异常:** 无 - -**示例:** - -```cpp -XCEngine::Containers::HashMap map; -map.Insert(1, "one"); -map.Insert(2, "two"); - -if (map.Contains(1)) { - std::cout << "Key 1 exists" << std::endl; // 输出 "Key 1 exists" -} - -if (!map.Contains(99)) { - std::cout << "Key 99 does not exist" << std::endl; // 输出 "Key 99 does not exist" -} -``` - -## 相关文档 - -- [HashMap 总览](hashmap.md) - 返回类总览 -- [Find](find.md) - 查找键对应的值 diff --git a/docs/api/containers/hashmap/copy-move.md b/docs/api/containers/hashmap/copy-move.md deleted file mode 100644 index 47ae6b04..00000000 --- a/docs/api/containers/hashmap/copy-move.md +++ /dev/null @@ -1,38 +0,0 @@ -# HashMap::Copy/Move 构造 - -```cpp -HashMap(const HashMap& other); -HashMap(HashMap&& other) noexcept; -``` - -拷贝构造和移动构造。 - -**参数:** -- `other` - 源哈希表(拷贝版本为 `const` 引用,移动版本为右值引用) - -**返回:** 无(构造函数) - -**复杂度:** -- 拷贝构造:O(m_bucketCount + other.m_size) -- 移动构造:O(m_bucketCount),移动构造需要遍历所有桶以重新建立桶的指针关系 - -**线程安全:** ❌ 非线程安全 - -**异常:** 无 - -**示例:** - -```cpp -XCEngine::Containers::HashMap map1; -map1.Insert(1, "hello"); -map1.Insert(2, "world"); - -XCEngine::Containers::HashMap map2(map1); // 拷贝构造 - -XCEngine::Containers::HashMap map3(std::move(map1)); // 移动构造,map1 在此调用后状态不确定 -``` - -## 相关文档 - -- [HashMap 总览](hashmap.md) - 返回类总览 -- [operator=](operator-assign.md) - 赋值运算符 diff --git a/docs/api/containers/hashmap/destructor.md b/docs/api/containers/hashmap/destructor.md deleted file mode 100644 index 2f6c81cd..00000000 --- a/docs/api/containers/hashmap/destructor.md +++ /dev/null @@ -1,31 +0,0 @@ -# HashMap::~HashMap - -```cpp -~HashMap(); -``` - -析构函数,清空所有元素并释放资源。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(n),需要清空所有桶中的元素 - -**线程安全:** ❌ 非线程安全 - -**异常:** 无 - -**示例:** - -```cpp -{ - XCEngine::Containers::HashMap map; - map.Insert(1, "hello"); - map.Insert(2, "world"); -} // map 在此自动析构,所有资源被正确释放 -``` - -## 相关文档 - -- [HashMap 总览](hashmap.md) - 返回类总览 diff --git a/docs/api/containers/hashmap/erase.md b/docs/api/containers/hashmap/erase.md deleted file mode 100644 index c698d9a8..00000000 --- a/docs/api/containers/hashmap/erase.md +++ /dev/null @@ -1,43 +0,0 @@ -# HashMap::Erase - -```cpp -bool Erase(const Key& key); -``` - -删除指定键对应的元素。 - -**参数:** -- `key` - 要删除的键 - -**返回:** 如果元素被删除返回 `true`,如果键不存在返回 `false`。 - -**复杂度:** O(1) 平均,最坏 O(n)(同一桶中有多个键发生哈希冲突) - -**线程安全:** ❌ 非线程安全 - -**异常:** 无 - -**实现备注:** 使用 swap-with-last 策略,将待删除元素与桶内最后一个元素交换,然后 popBack,避免数组元素批量移动。 - -**示例:** - -```cpp -XCEngine::Containers::HashMap map; -map.Insert(1, "one"); -map.Insert(2, "two"); -map.Insert(3, "three"); - -bool erased = map.Erase(2); // 返回 true - -if (!map.Contains(2)) { - std::cout << "Key 2 removed" << std::endl; // 输出 "Key 2 removed" -} - -bool notErased = map.Erase(99); // 返回 false,键不存在 -``` - -## 相关文档 - -- [HashMap 总览](hashmap.md) - 返回类总览 -- [Insert](insert.md) - 插入键值对 -- [Clear](clear.md) - 清空所有元素 diff --git a/docs/api/containers/hashmap/find.md b/docs/api/containers/hashmap/find.md deleted file mode 100644 index 2a96c056..00000000 --- a/docs/api/containers/hashmap/find.md +++ /dev/null @@ -1,43 +0,0 @@ -# HashMap::Find - -```cpp -Value* Find(const Key& key); -const Value* Find(const Key& key) const; -``` - -根据键查找对应的值指针。 - -**参数:** -- `key` - 要查找的键 - -**返回:** 如果找到,返回指向值的指针;否则返回 `nullptr`。 - -**复杂度:** O(1) 平均,最坏 O(n)(同一桶中有多个键发生哈希冲突) - -**线程安全:** ❌ 非线程安全 - -**异常:** 无 - -**示例:** - -```cpp -XCEngine::Containers::HashMap map; -map.Insert(1, "one"); -map.Insert(2, "two"); - -const char* value1 = map.Find(1); -if (value1) { - std::cout << "Found: " << value1 << std::endl; // 输出 "Found: one" -} - -const char* value2 = map.Find(99); -if (!value2) { - std::cout << "Not found" << std::endl; // 输出 "Not found" -} -``` - -## 相关文档 - -- [HashMap 总览](hashmap.md) - 返回类总览 -- [Contains](contains.md) - 检查是否包含键 -- [operator[]](./operator-subscript.md) - 下标访问 diff --git a/docs/api/containers/hashmap/hashmap.md b/docs/api/containers/hashmap/hashmap.md deleted file mode 100644 index f919dab6..00000000 --- a/docs/api/containers/hashmap/hashmap.md +++ /dev/null @@ -1,91 +0,0 @@ -# HashMap - -**命名空间**: `XCEngine::Containers` - -**类型**: `class` (template) - -**头文件**: `XCEngine/Core/Containers/HashMap.h` - -**描述**: 模板哈希表容器,提供键值对存储和快速查找。 - -## 概述 - -`HashMap` 是一个模板哈希表容器,使用分离链接法(separate chaining)解决哈希冲突,每个桶是一个动态数组。 - -## 实现细节 - -| 参数 | 值 | 描述 | -|------|-----|------| -| 默认桶数 | 16 | `DefaultBucketCount` | -| 负载因子 | 0.75 | 当 `size / bucketCount > 0.75` 时触发扩容 | -| 扩容策略 | ×2 | 每次扩容桶数翻倍 | -| Erase 策略 | swap-with-last | 将待删除元素与最后一个元素交换,避免数组元素移动 | - -## 公共类型 - -### Pair - -| 成员 | 类型 | 描述 | -|------|------|------| -| `first` | `Key` | 键 | -| `second` | `Value` | 值 | - -### 迭代器 - -| 别名 | 类型 | 描述 | -|------|------|------| -| `Iterator` | `typename Array::Iterator` | 迭代器类型 | -| `ConstIterator` | `typename Array::ConstIterator` | 常量迭代器类型 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [Constructor](constructor.md) | 构造哈希表实例 | -| [Destructor](destructor.md) | 析构函数 | -| [operator=](operator-assign.md) | 赋值运算符 | -| [Copy/Move](copy-move.md) | 拷贝/移动构造 | -| [operator[]](operator-subscript.md) | 下标访问(不存在时插入) | -| [Find](find.md) | 查找键对应的值指针 | -| [Contains](contains.md) | 检查是否包含键 | -| [Insert](insert.md) | 插入键值对 | -| [Erase](erase.md) | 删除键对应的元素 | -| [Clear](clear.md) | 清空所有元素 | -| [Size/Empty](size.md) | 获取元素数量 | -| [begin/end](iterator.md) | 获取迭代器 | -| [SetAllocator](setallocator.md) | 设置内存分配器 | - -## 使用示例 - -```cpp -#include -#include - -int main() { - XCEngine::Containers::HashMap map; - - map.Insert(1, "one"); - map.Insert(2, "two"); - map.Insert(3, "three"); - - if (const char* value = map.Find(1)) { - std::cout << "Key 1: " << value << std::endl; - } - - std::cout << "Size: " << map.Size() << std::endl; - - for (auto it = map.begin(); it != map.end(); ++it) { - std::cout << it->first << " -> " << it->second << std::endl; - } - - map.Erase(2); - std::cout << "Contains 2: " << (map.Contains(2) ? "yes" : "no") << std::endl; - - return 0; -} -``` - -## 相关文档 - -- [Array](../array/array.md) - 动态数组 -- [Memory 模块](../../memory/memory.md) - 内存分配器 diff --git a/docs/api/containers/hashmap/insert.md b/docs/api/containers/hashmap/insert.md deleted file mode 100644 index f4993498..00000000 --- a/docs/api/containers/hashmap/insert.md +++ /dev/null @@ -1,42 +0,0 @@ -# HashMap::Insert - -```cpp -bool Insert(const Key& key, const Value& value); -bool Insert(const Key& key, Value&& value); -bool Insert(Pair&& pair); -``` - -插入键值对。如果键已存在,则更新其值并返回 `false`;否则插入新元素并返回 `true`。 - -**参数:** -- `key` - 要插入的键 -- `value` - 要插入的值(const 版本为拷贝,&& 版本为移动) -- `pair` - 包含键值对的 `Pair` 结构(右值) - -**返回:** 如果插入成功(键不存在)返回 `true`,如果键已存在(更新值)返回 `false`。 - -**复杂度:** O(1) 平均,最坏 O(n)(包括可能的 rehash) - -**线程安全:** ❌ 非线程安全 - -**异常:** 无 - -**示例:** - -```cpp -XCEngine::Containers::HashMap map; - -bool inserted1 = map.Insert(1, "one"); // 返回 true -bool inserted2 = map.Insert(1, "ONE"); // 返回 false,更新现有值 - -bool inserted3 = map.Insert(2, std::string("two")); // 移动语义版本 - -XCEngine::Containers::HashMap::Pair p{3, "three"}; -bool inserted4 = map.Insert(std::move(p)); // Pair 移动版本 -``` - -## 相关文档 - -- [HashMap 总览](hashmap.md) - 返回类总览 -- [operator[]](./operator-subscript.md) - 下标访问(总是插入) -- [Erase](erase.md) - 删除键对应的元素 diff --git a/docs/api/containers/hashmap/iterator.md b/docs/api/containers/hashmap/iterator.md deleted file mode 100644 index e26fc2a0..00000000 --- a/docs/api/containers/hashmap/iterator.md +++ /dev/null @@ -1,38 +0,0 @@ -# HashMap::begin / end - -```cpp -Iterator begin(); -Iterator end(); -ConstIterator begin() const; -ConstIterator end() const; -``` - -获取哈希表的迭代器。迭代器遍历所有桶中的元素。 - -**参数:** 无 - -**返回:** 返回指向第一个元素和末尾(最后一个元素之后)位置的迭代器。 - -**复杂度:** O(1) - -**线程安全:** ❌ 非线程安全 - -**异常:** 无 - -**示例:** - -```cpp -XCEngine::Containers::HashMap map; -map.Insert(1, "one"); -map.Insert(2, "two"); -map.Insert(3, "three"); - -for (auto it = map.begin(); it != map.end(); ++it) { - std::cout << it->first << " -> " << it->second << std::endl; -} -// 输出顺序不确定,取决于哈希桶的内部布局 -``` - -## 相关文档 - -- [HashMap 总览](hashmap.md) - 返回类总览 diff --git a/docs/api/containers/hashmap/operator-assign.md b/docs/api/containers/hashmap/operator-assign.md deleted file mode 100644 index 601df44e..00000000 --- a/docs/api/containers/hashmap/operator-assign.md +++ /dev/null @@ -1,40 +0,0 @@ -# HashMap::operator= - -```cpp -HashMap& operator=(const HashMap& other); -HashMap& operator=(HashMap&& other) noexcept; -``` - -赋值运算符,用另一个 HashMap 的内容替换当前内容。 - -**参数:** -- `other` - 源哈希表(拷贝版本为 `const` 引用,移动版本为右值引用) - -**返回:** 对当前对象的引用 (`*this`) - -**复杂度:** -- 拷贝赋值:O(m_bucketCount + other.m_size) -- 移动赋值:O(m_size),需要先清空当前内容 - -**线程安全:** ❌ 非线程安全 - -**异常:** 无 - -**示例:** - -```cpp -XCEngine::Containers::HashMap map1; -map1.Insert(1, "one"); -map1.Insert(2, "two"); - -XCEngine::Containers::HashMap map2; -map2 = map1; // 拷贝赋值 - -XCEngine::Containers::HashMap map3; -map3 = std::move(map1); // 移动赋值,map1 在此调用后状态不确定 -``` - -## 相关文档 - -- [HashMap 总览](hashmap.md) - 返回类总览 -- [Copy/Move](copy-move.md) - 拷贝/移动构造 diff --git a/docs/api/containers/hashmap/operator-subscript.md b/docs/api/containers/hashmap/operator-subscript.md deleted file mode 100644 index 4b416768..00000000 --- a/docs/api/containers/hashmap/operator-subscript.md +++ /dev/null @@ -1,37 +0,0 @@ -# HashMap::operator[] - -```cpp -Value& operator[](const Key& key); -``` - -按下标访问键对应的值。如果键不存在,则插入一个默认构造的值并返回引用。 - -**参数:** -- `key` - 要访问的键 - -**返回:** 对应值的引用。如果键不存在,则返回一个默认构造的 `Value` 的引用。 - -**复杂度:** O(1) 平均,最坏 O(n)(发生 rehash 时) - -**线程安全:** ❌ 非线程安全 - -**异常:** 无 - -**示例:** - -```cpp -XCEngine::Containers::HashMap map; - -map[1] = "one"; // 插入键 1,值 "one" -map[2] = "two"; // 插入键 2,值 "two" - -std::string& value = map[1]; // 获取键 1 对应的值,结果为 "one" - -map[3]; // 插入键 3,值为 std::string 的默认构造值 -``` - -## 相关文档 - -- [HashMap 总览](hashmap.md) - 返回类总览 -- [Find](find.md) - 查找键对应的值(不插入) -- [Insert](insert.md) - 插入键值对(不覆盖已存在的键) diff --git a/docs/api/containers/hashmap/setallocator.md b/docs/api/containers/hashmap/setallocator.md deleted file mode 100644 index bc653d96..00000000 --- a/docs/api/containers/hashmap/setallocator.md +++ /dev/null @@ -1,32 +0,0 @@ -# HashMap::SetAllocator - -```cpp -void SetAllocator(Memory::IAllocator* allocator); -``` - -设置哈希表的内存分配器。 - -**参数:** -- `allocator` - 内存分配器指针,可以为 `nullptr`(使用默认分配器) - -**返回:** 无 - -**复杂度:** O(1) - -**线程安全:** ❌ 非线程安全 - -**异常:** 无 - -**示例:** - -```cpp -XCEngine::Containers::HashMap map; - -// 设置自定义分配器(如果使用内存分配器接口) -// map.SetAllocator(customAllocator); -``` - -## 相关文档 - -- [HashMap 总览](hashmap.md) - 返回类总览 -- [Memory 模块](../../memory/memory.md) - 内存分配器 diff --git a/docs/api/containers/hashmap/size.md b/docs/api/containers/hashmap/size.md deleted file mode 100644 index 1a784003..00000000 --- a/docs/api/containers/hashmap/size.md +++ /dev/null @@ -1,39 +0,0 @@ -# HashMap::Size / Empty - -```cpp -size_t Size() const; -bool Empty() const; -``` - -获取哈希表的元素数量或判断是否为空。 - -**参数:** 无 - -**返回:** -- `Size()` - 返回元素数量 -- `Empty()` - 容器为空返回 `true`,否则返回 `false` - -**复杂度:** O(1) - -**线程安全:** ❌ 非线程安全 - -**异常:** 无 - -**示例:** - -```cpp -XCEngine::Containers::HashMap map; - -std::cout << "Empty: " << (map.Empty() ? "yes" : "no") << std::endl; // 输出 "yes" -std::cout << "Size: " << map.Size() << std::endl; // 输出 0 - -map.Insert(1, "one"); -map.Insert(2, "two"); - -std::cout << "Empty: " << (map.Empty() ? "yes" : "no") << std::endl; // 输出 "no" -std::cout << "Size: " << map.Size() << std::endl; // 输出 2 -``` - -## 相关文档 - -- [HashMap 总览](hashmap.md) - 返回类总览 diff --git a/docs/api/containers/string/clear.md b/docs/api/containers/string/clear.md deleted file mode 100644 index 5ae5bd5f..00000000 --- a/docs/api/containers/string/clear.md +++ /dev/null @@ -1,39 +0,0 @@ -# String::Clear - -```cpp -void Clear(); -``` - -清空字符串内容,将长度设为 0,但不释放已分配的内存。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(1) - -**示例:** -```cpp -#include "XCEngine/Core/Containers/String.h" -#include - -int main() { - XCEngine::Containers::String s("Hello World"); - std::cout << "Before clear - Length: " << s.Length() - << ", Capacity: " << s.Capacity() << std::endl; - // 输出: Before clear - Length: 11, Capacity: 12 - - s.Clear(); - std::cout << "After clear - Length: " << s.Length() - << ", Capacity: " << s.Capacity() << std::endl; - // 输出: After clear - Length: 0, Capacity: 12 - std::cout << "Empty: " << s.Empty() << std::endl; // 输出: Empty: 1 - - return 0; -} -``` - -## 相关文档 - -- [String 总览](string.md) - 返回类总览 -- [Reserve / Resize](reserve-resize.md) - 内存管理 diff --git a/docs/api/containers/string/constructor.md b/docs/api/containers/string/constructor.md deleted file mode 100644 index 559d9b4b..00000000 --- a/docs/api/containers/string/constructor.md +++ /dev/null @@ -1,48 +0,0 @@ -# String::String - -```cpp -String(); -String(const char* str); -String(const char* str, SizeType len); -String(const String& other); -String(String&& other) noexcept; -``` - -构造 String 对象。提供多种构造方式以适应不同的使用场景。 - -**参数:** -- `str` - 以 null 结尾的 C 字符串 -- `len` - 要复制的字符数量 -- `other` - 另一个 String 对象(用于拷贝构造或移动构造) - -**返回:** 无 - -**复杂度:** -- 默认构造:O(1) -- 从 `const char*` 构造:O(n),其中 n 为字符串长度 -- 拷贝构造:O(n) -- 移动构造:O(1) - -**示例:** -```cpp -#include "XCEngine/Core/Containers/String.h" -#include - -int main() { - XCEngine::Containers::String s1; // 默认构造 - XCEngine::Containers::String s2("hello"); // 从 C 字符串构造 - XCEngine::Containers::String s3("world", 3); // 从 C 字符串前 n 个字符构造 - XCEngine::Containers::String s4(s2); // 拷贝构造 - XCEngine::Containers::String s5(std::move(s4)); // 移动构造 - - std::cout << s2.CStr() << std::endl; // 输出: hello - std::cout << s3.CStr() << std::endl; // 输出: wor - std::cout << s4.CStr() << std::endl; // 输出: hello - std::cout << s5.CStr() << std::endl; // 输出: hello - return 0; -} -``` - -## 相关文档 - -- [String 总览](string.md) - 返回类总览 diff --git a/docs/api/containers/string/cstr.md b/docs/api/containers/string/cstr.md deleted file mode 100644 index 416ca740..00000000 --- a/docs/api/containers/string/cstr.md +++ /dev/null @@ -1,36 +0,0 @@ -# String::CStr - -```cpp -const char* CStr() const; -``` - -返回指向以 null 结尾的 C 字符串的指针。 - -**参数:** 无 - -**返回:** 指向内部字符数组的指针,以 null 结尾 - -**复杂度:** O(1) - -**示例:** -```cpp -#include "XCEngine/Core/Containers/String.h" -#include -#include - -int main() { - XCEngine::Containers::String s("Hello World"); - - const char* cstr = s.CStr(); - std::cout << cstr << std::endl; // 输出: Hello World - - std::cout << "Length: " << std::strlen(cstr) << std::endl; // 输出: Length: 11 - - return 0; -} -``` - -## 相关文档 - -- [String 总览](string.md) - 返回类总览 -- [Length](size.md) - 获取长度 diff --git a/docs/api/containers/string/destructor.md b/docs/api/containers/string/destructor.md deleted file mode 100644 index 5e870244..00000000 --- a/docs/api/containers/string/destructor.md +++ /dev/null @@ -1,31 +0,0 @@ -# String::~String - -```cpp -~String(); -``` - -销毁 String 对象,释放所有动态分配的内存。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(1) - -**示例:** -```cpp -#include "XCEngine/Core/Containers/String.h" - -int main() { - { - XCEngine::Containers::String s("hello"); - // s 在作用域结束时自动销毁 - } - // 内存已释放 - return 0; -} -``` - -## 相关文档 - -- [String 总览](string.md) - 返回类总览 diff --git a/docs/api/containers/string/ends-with.md b/docs/api/containers/string/ends-with.md deleted file mode 100644 index b38edea8..00000000 --- a/docs/api/containers/string/ends-with.md +++ /dev/null @@ -1,39 +0,0 @@ -# String::EndsWith - -```cpp -bool EndsWith(const String& suffix) const; -bool EndsWith(const char* suffix) const; -``` - -检查字符串是否以指定的后缀结尾。 - -**参数:** -- `suffix` - 要检查的后缀(String 或 const char*) - -**返回:** 如果字符串以指定后缀结尾则返回 `true`,否则返回 `false` - -**复杂度:** O(n),其中 n 为后缀长度 - -**示例:** -```cpp -#include "XCEngine/Core/Containers/String.h" -#include - -int main() { - XCEngine::Containers::String s("Hello World"); - - std::cout << std::boolalpha; - std::cout << s.EndsWith("World") << std::endl; // 输出: true - std::cout << s.EndsWith(XCEngine::Containers::String("World")) << std::endl; // 输出: true - std::cout << s.EndsWith("Hello") << std::endl; // 输出: false - std::cout << s.EndsWith("") << std::endl; // 输出: true - - return 0; -} -``` - -## 相关文档 - -- [String 总览](string.md) - 返回类总览 -- [StartsWith](starts-with.md) - 检查前缀 -- [Find](find.md) - 查找子串 diff --git a/docs/api/containers/string/find.md b/docs/api/containers/string/find.md deleted file mode 100644 index 0f339a88..00000000 --- a/docs/api/containers/string/find.md +++ /dev/null @@ -1,47 +0,0 @@ -# String::Find - -```cpp -SizeType Find(const char* str, SizeType pos = 0) const; -``` - -在字符串中查找子串 `str`,从位置 `pos` 开始搜索。 - -**参数:** -- `str` - 要查找的以 null 结尾的 C 字符串 -- `pos` - 开始搜索的位置,默认为 0 - -**返回:** 子串首次出现的起始位置;如果未找到,返回 `String::npos` - -**复杂度:** O(n * m),其中 n 为原字符串长度,m 为要查找的字符串长度 - -**示例:** -```cpp -#include "XCEngine/Core/Containers/String.h" -#include - -int main() { - XCEngine::Containers::String s("Hello World, Hello Universe"); - - XCEngine::Containers::String::SizeType pos1 = s.Find("World"); - std::cout << "Found at: " << pos1 << std::endl; // 输出: Found at: 6 - - XCEngine::Containers::String::SizeType pos2 = s.Find("Hello", 0); - std::cout << "First 'Hello' at: " << pos2 << std::endl; // 输出: First 'Hello' at: 0 - - XCEngine::Containers::String::SizeType pos3 = s.Find("Hello", 7); - std::cout << "Second 'Hello' at: " << pos3 << std::endl; // 输出: Second 'Hello' at: 13 - - XCEngine::Containers::String::SizeType pos4 = s.Find("NotFound"); - if (pos4 == XCEngine::Containers::String::npos) { - std::cout << "Not found" << std::endl; // 输出: Not found - } - - return 0; -} -``` - -## 相关文档 - -- [String 总览](string.md) - 返回类总览 -- [StartsWith](starts-with.md) - 检查前缀 -- [EndsWith](ends-with.md) - 检查后缀 diff --git a/docs/api/containers/string/operator-assign.md b/docs/api/containers/string/operator-assign.md deleted file mode 100644 index ca82d16f..00000000 --- a/docs/api/containers/string/operator-assign.md +++ /dev/null @@ -1,47 +0,0 @@ -# String::operator= - -```cpp -String& operator=(const String& other); -String& operator=(String&& other) noexcept; -String& operator=(const char* str); -``` - -将新的值赋给 String 对象,替换原有的内容。 - -**参数:** -- `other` - 另一个 String 对象(拷贝赋值或移动赋值) -- `str` - 以 null 结尾的 C 字符串 - -**返回:** `*this`,支持链式调用 - -**复杂度:** -- 拷贝赋值:O(n),n 为 other 的长度 -- 移动赋值:O(1) -- 从 `const char*` 赋值:O(n),n 为 str 的长度 - -**示例:** -```cpp -#include "XCEngine/Core/Containers/String.h" -#include - -int main() { - XCEngine::Containers::String s1; - XCEngine::Containers::String s2("hello"); - - s1 = s2; // 拷贝赋值 - std::cout << s1.CStr() << std::endl; // 输出: hello - - s1 = "world"; // 从 const char* 赋值 - std::cout << s1.CStr() << std::endl; // 输出: world - - XCEngine::Containers::String s3("moved"); - s1 = std::move(s3); // 移动赋值 - std::cout << s1.CStr() << std::endl; // 输出: moved - - return 0; -} -``` - -## 相关文档 - -- [String 总览](string.md) - 返回类总览 diff --git a/docs/api/containers/string/operator-equal.md b/docs/api/containers/string/operator-equal.md deleted file mode 100644 index 6d2b4f5d..00000000 --- a/docs/api/containers/string/operator-equal.md +++ /dev/null @@ -1,43 +0,0 @@ -# operator== / operator!= - -```cpp -inline bool operator==(const String& lhs, const String& rhs); -inline bool operator!=(const String& lhs, const String& rhs); -``` - -判断两个字符串是否相等或不相等。 - -**operator==:** 比较两个字符串的长度是否相等,以及内容是否相同。 - -**operator!=:** 相当于 `!(lhs == rhs)`。 - -**参数:** -- `lhs` - 左侧字符串 -- `rhs` - 右侧字符串 - -**返回:** 布尔值,表示比较结果 - -**复杂度:** O(n),其中 n 为字符串长度 - -**示例:** -```cpp -#include "XCEngine/Core/Containers/String.h" -#include - -int main() { - XCEngine::Containers::String s1("Hello"); - XCEngine::Containers::String s2("Hello"); - XCEngine::Containers::String s3("World"); - - std::cout << std::boolalpha; - std::cout << (s1 == s2) << std::endl; // 输出: true - std::cout << (s1 == s3) << std::endl; // 输出: false - std::cout << (s1 != s3) << std::endl; // 输出: true - - return 0; -} -``` - -## 相关文档 - -- [String 总览](string.md) - 返回类总览 diff --git a/docs/api/containers/string/operator-plus-assign.md b/docs/api/containers/string/operator-plus-assign.md deleted file mode 100644 index 67bc7abc..00000000 --- a/docs/api/containers/string/operator-plus-assign.md +++ /dev/null @@ -1,43 +0,0 @@ -# String::operator+= - -```cpp -String& operator+=(const String& other); -String& operator+=(const char* str); -String& operator+=(char c); -``` - -将指定的内容追加到当前 String 的末尾。 - -**参数:** -- `other` - 要追加的 String 对象 -- `str` - 要追加的以 null 结尾的 C 字符串 -- `c` - 要追加的单个字符 - -**返回:** `*this`,支持链式调用 - -**复杂度:** O(n),其中 n 为被追加内容的长度。可能会触发重新分配,但均摊复杂度为 O(1)。 - -**示例:** -```cpp -#include "XCEngine/Core/Containers/String.h" -#include - -int main() { - XCEngine::Containers::String s("Hello"); - - s += XCEngine::Containers::String(" World"); // 追加 String - std::cout << s.CStr() << std::endl; // 输出: Hello World - - s += "!"; // 追加 const char* - std::cout << s.CStr() << std::endl; // 输出: Hello World! - - s += '?'; // 追加 char - std::cout << s.CStr() << std::endl; // 输出: Hello World!? - - return 0; -} -``` - -## 相关文档 - -- [String 总览](string.md) - 返回类总览 diff --git a/docs/api/containers/string/operator-plus.md b/docs/api/containers/string/operator-plus.md deleted file mode 100644 index d2c1c401..00000000 --- a/docs/api/containers/string/operator-plus.md +++ /dev/null @@ -1,39 +0,0 @@ -# operator+ - -```cpp -inline String operator+(const String& lhs, const String& rhs); -``` - -将两个 String 对象连接,返回一个新的 String 对象。 - -**参数:** -- `lhs` - 左侧的 String 对象 -- `rhs` - 右侧的 String 对象 - -**返回:** 新的 String 对象,内容为 lhs 和 rhs 的拼接 - -**复杂度:** O(n + m),其中 n 和 m 分别为 lhs 和 rhs 的长度 - -**示例:** -```cpp -#include "XCEngine/Core/Containers/String.h" -#include - -int main() { - XCEngine::Containers::String s1("Hello"); - XCEngine::Containers::String s2(" World"); - XCEngine::Containers::String s3 = s1 + s2; - - std::cout << s3.CStr() << std::endl; // 输出: Hello World - - XCEngine::Containers::String s4 = XCEngine::Containers::String("Foo") + "Bar"; - std::cout << s4.CStr() << std::endl; // 输出: FooBar - - return 0; -} -``` - -## 相关文档 - -- [String 总览](string.md) - 返回类总览 -- [operator+=](operator-plus-assign.md) - 追加操作 diff --git a/docs/api/containers/string/operator-subscript.md b/docs/api/containers/string/operator-subscript.md deleted file mode 100644 index 4aff8ed7..00000000 --- a/docs/api/containers/string/operator-subscript.md +++ /dev/null @@ -1,51 +0,0 @@ -# String::operator[] - -```cpp -char& operator[](SizeType index); -const char& operator[](SizeType index) const; -``` - -通过索引访问字符串中的字符。 - -**参数:** -- `index` - 要访问的字符位置(从 0 开始) - -**返回:** 位置 `index` 处字符的引用(可写或只读) - -**复杂度:** O(1) - -**注意:** 不进行边界检查。调用者需确保 `index < Length()`。 - -**示例:** -```cpp -#include "XCEngine/Core/Containers/String.h" -#include - -int main() { - XCEngine::Containers::String s("Hello"); - - // 只读访问 - for (XCEngine::Containers::String::SizeType i = 0; i < s.Length(); ++i) { - std::cout << s[i]; - } - std::cout << std::endl; // 输出: Hello - - // 可写访问 - s[0] = 'J'; - s[1] = 'a'; - s[4] = '!'; - std::cout << s.CStr() << std::endl; // 输出: Jallo! - - // const 版本 - const XCEngine::Containers::String& cs = s; - char first = cs[0]; - std::cout << "First char: " << first << std::endl; // 输出: First char: J - - return 0; -} -``` - -## 相关文档 - -- [String 总览](string.md) - 返回类总览 -- [Length](size.md) - 获取长度 diff --git a/docs/api/containers/string/reserve-resize.md b/docs/api/containers/string/reserve-resize.md deleted file mode 100644 index 952f1279..00000000 --- a/docs/api/containers/string/reserve-resize.md +++ /dev/null @@ -1,51 +0,0 @@ -# String::Reserve / Resize - -```cpp -void Reserve(SizeType capacity); -void Resize(SizeType newSize); -void Resize(SizeType newSize, char fillChar); -``` - -管理字符串的内存和大小。 - -**参数:** -- `capacity` - 要预留的最小容量 -- `newSize` - 新的字符串长度 -- `fillChar` - 当扩展字符串时用于填充新增位置的字符,默认为 '\0' - -**返回:** 无 - -**复杂度:** -- `Reserve`:最坏 O(n),仅在需要扩展容量时复制数据 -- `Resize`:O(n),当 newSize > Length 时可能需要扩展 - -**示例:** -```cpp -#include "XCEngine/Core/Containers/String.h" -#include - -int main() { - XCEngine::Containers::String s("Hi"); - - // Reserve - 预分配内存 - s.Reserve(100); - std::cout << "After Reserve(100), Capacity: " << s.Capacity() << std::endl; - // 输出: After Reserve(100), Capacity: 100 - - // Resize - 缩短字符串 - s.Resize(1); - std::cout << "After Resize(1): " << s.CStr() << std::endl; // 输出: H - - // Resize - 扩展字符串,用 'X' 填充 - s.Resize(5, 'X'); - std::cout << "After Resize(5, 'X'): " << s.CStr() << std::endl; // 输出: HXXXX - - return 0; -} -``` - -## 相关文档 - -- [String 总览](string.md) - 返回类总览 -- [Length / Capacity](size.md) - 获取长度和容量 -- [Clear](clear.md) - 清空字符串 diff --git a/docs/api/containers/string/size.md b/docs/api/containers/string/size.md deleted file mode 100644 index d5168517..00000000 --- a/docs/api/containers/string/size.md +++ /dev/null @@ -1,44 +0,0 @@ -# String::Length / Capacity / Empty - -```cpp -SizeType Length() const; -SizeType Capacity() const; -bool Empty() const; -``` - -获取字符串的长度、容量和判空状态。 - -**参数:** 无 - -**返回:** -- `Length()` - 返回字符串的字符数(不包括终止 null 字符) -- `Capacity()` - 返回已分配的存储容量 -- `Empty()` - 如果字符串为空则返回 `true` - -**复杂度:** 均为 O(1) - -**示例:** -```cpp -#include "XCEngine/Core/Containers/String.h" -#include - -int main() { - XCEngine::Containers::String s1; - std::cout << "Empty: " << s1.Empty() << std::endl; // 输出: Empty: 1 - - XCEngine::Containers::String s2("Hello"); - std::cout << "Length: " << s2.Length() << std::endl; // 输出: Length: 5 - std::cout << "Capacity: " << s2.Capacity() << std::endl; // 输出: Capacity: 6 或更大 - - s2.Reserve(100); - std::cout << "After Reserve(100), Capacity: " << s2.Capacity() << std::endl; // 输出: 100 - - return 0; -} -``` - -## 相关文档 - -- [String 总览](string.md) - 返回类总览 -- [CStr](cstr.md) - 获取 C 字符串 -- [Reserve / Resize](reserve-resize.md) - 内存管理 diff --git a/docs/api/containers/string/starts-with.md b/docs/api/containers/string/starts-with.md deleted file mode 100644 index 0efec461..00000000 --- a/docs/api/containers/string/starts-with.md +++ /dev/null @@ -1,39 +0,0 @@ -# String::StartsWith - -```cpp -bool StartsWith(const String& prefix) const; -bool StartsWith(const char* prefix) const; -``` - -检查字符串是否以指定的前缀开头。 - -**参数:** -- `prefix` - 要检查的前缀(String 或 const char*) - -**返回:** 如果字符串以指定前缀开头则返回 `true`,否则返回 `false` - -**复杂度:** O(n),其中 n 为前缀长度 - -**示例:** -```cpp -#include "XCEngine/Core/Containers/String.h" -#include - -int main() { - XCEngine::Containers::String s("Hello World"); - - std::cout << std::boolalpha; - std::cout << s.StartsWith("Hello") << std::endl; // 输出: true - std::cout << s.StartsWith(XCEngine::Containers::String("Hello")) << std::endl; // 输出: true - std::cout << s.StartsWith("World") << std::endl; // 输出: false - std::cout << s.StartsWith("") << std::endl; // 输出: true - - return 0; -} -``` - -## 相关文档 - -- [String 总览](string.md) - 返回类总览 -- [EndsWith](ends-with.md) - 检查后缀 -- [Find](find.md) - 查找子串 diff --git a/docs/api/containers/string/string.md b/docs/api/containers/string/string.md deleted file mode 100644 index 9e75991b..00000000 --- a/docs/api/containers/string/string.md +++ /dev/null @@ -1,107 +0,0 @@ -# String - -**命名空间**: `XCEngine::Containers` - -**类型**: `class` - -**头文件**: `XCEngine/Core/Containers/String.h` - -**描述**: 动态字符串类,提供 UTF-8 编码的字符串操作。 - -## 概述 - -`String` 是一个自定义动态字符串类,提供常见的字符串操作功能,支持拷贝构造、移动构造和多种字符串操作方法。 - -## 类型别名 - -| 别名 | 类型 | 描述 | -|------|------|------| -| `SizeType` | `size_t` | 大小类型 | - -## 常量 - -| 常量 | 值 | 描述 | -|------|-----|------| -| `static constexpr SizeType npos` | `static_cast(-1)` | 无效位置标识 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [Constructor](constructor.md) | 构造字符串实例 | -| [Destructor](destructor.md) | 析构函数 | -| [operator=](operator-assign.md) | 赋值运算符 | -| [operator+=](operator-plus-assign.md) | 追加字符串/字符 | -| [operator+](operator-plus.md) | 字符串连接 | -| [operator==](operator-equal.md) | 判断两个字符串是否相等 | -| [operator!=](operator-equal.md) | 判断两个字符串是否不相等 | -| [Substring](substring.md) | 获取子串 | -| [Trim](trim.md) | 去除首尾空白 | -| [ToLower/ToUpper](to-lower-upper.md) | 大小写转换 | -| [Find](find.md) | 查找子串位置 | -| [StartsWith](starts-with.md) | 检查前缀 | -| [EndsWith](ends-with.md) | 检查后缀 | -| [CStr](cstr.md) | 获取 C 字符串指针 | -| [Length/Capacity/Empty](size.md) | 获取尺寸信息 | -| [operator[]](operator-subscript.md) | 下标访问 | -| [Clear](clear.md) | 清空字符串 | -| [Reserve/Resize](reserve-resize.md) | 预留/调整容量 | - -## std::hash 特化 - -```cpp -namespace std { - template<> - struct hash { - size_t operator()(const XCEngine::Containers::String& str) const noexcept; - }; -} -``` - -提供了 `std::hash` 特化,使 `String` 可以作为 unordered_map 或 unordered_set 的键使用。 - -**实现算法:** DJB hash (Daniel J. Bernstein hash) - -**算法细节:** -- 初始值:5381 -- 对每个字符:`hash = hash * 33 + c`(等价于 `(hash << 5) + hash + c`) - -**示例:** -```cpp -#include -#include - -int main() { - std::unordered_map map; - map["key1"] = 100; - map["key2"] = 200; - return 0; -} -``` - -## 使用示例 - -```cpp -#include - -// 基本用法 -Containers::String str = "Hello"; -str += ", World!"; - -// 字符串操作 -Containers::String sub = str.Substring(0, 5); // "Hello" -bool hasPrefix = str.StartsWith("Hello"); -bool hasSuffix = str.EndsWith("!"); - -// 查找 - XCEngine::Containers::String::SizeType pos = str.Find("World"); // 返回 6 - -// 转换 -Containers::String upper = str.ToUpper(); -Containers::String lower = str.ToLower(); -``` - -## 相关文档 - -- [Array](../array/array.md) - 动态数组 -- [HashMap](../hashmap/hashmap.md) - 哈希表 diff --git a/docs/api/containers/string/substring.md b/docs/api/containers/string/substring.md deleted file mode 100644 index d1fc2749..00000000 --- a/docs/api/containers/string/substring.md +++ /dev/null @@ -1,43 +0,0 @@ -# String::Substring - -```cpp -String Substring(SizeType pos, SizeType len = npos) const; -``` - -返回从位置 `pos` 开始、长度为 `len` 的子字符串。如果 `len` 省略或为 `npos`,则返回从 `pos` 到字符串末尾的所有字符。 - -**参数:** -- `pos` - 子字符串的起始位置(从 0 开始) -- `len` - 子字符串的长度,默认为 `npos`(即到字符串末尾) - -**返回:** 新的 String 对象,包含指定的子字符串 - -**复杂度:** O(n),其中 n 为子字符串的长度 - -**示例:** -```cpp -#include "XCEngine/Core/Containers/String.h" -#include - -int main() { - XCEngine::Containers::String s("Hello World"); - - XCEngine::Containers::String sub1 = s.Substring(6); // 从位置6到末尾 - std::cout << sub1.CStr() << std::endl; // 输出: World - - XCEngine::Containers::String sub2 = s.Substring(6, 5); // 从位置6开始,长度5 - std::cout << sub2.CStr() << std::endl; // 输出: World - - XCEngine::Containers::String sub3 = s.Substring(0, 5); // 从位置0开始,长度5 - std::cout << sub3.CStr() << std::endl; // 输出: Hello - - XCEngine::Containers::String sub4 = s.Substring(6, 100); // len超过剩余长度,自动截断 - std::cout << sub4.CStr() << std::endl; // 输出: World - - return 0; -} -``` - -## 相关文档 - -- [String 总览](string.md) - 返回类总览 diff --git a/docs/api/containers/string/to-lower-upper.md b/docs/api/containers/string/to-lower-upper.md deleted file mode 100644 index 6f3a38b6..00000000 --- a/docs/api/containers/string/to-lower-upper.md +++ /dev/null @@ -1,36 +0,0 @@ -# String::ToLower / ToUpper - -```cpp -String ToLower() const; -String ToUpper() const; -``` - -将字符串转换为小写/大写形式,返回一个新的 String 对象,原字符串不变。 - -**参数:** 无 - -**返回:** 转换后的新 String 对象 - -**复杂度:** O(n),其中 n 为字符串长度 - -**示例:** -```cpp -#include "XCEngine/Core/Containers/String.h" -#include - -int main() { - XCEngine::Containers::String s("Hello World 123"); - - XCEngine::Containers::String lower = s.ToLower(); - std::cout << lower.CStr() << std::endl; // 输出: hello world 123 - - XCEngine::Containers::String upper = s.ToUpper(); - std::cout << upper.CStr() << std::endl; // 输出: HELLO WORLD 123 - - return 0; -} -``` - -## 相关文档 - -- [String 总览](string.md) - 返回类总览 diff --git a/docs/api/containers/string/trim.md b/docs/api/containers/string/trim.md deleted file mode 100644 index d5dcc86c..00000000 --- a/docs/api/containers/string/trim.md +++ /dev/null @@ -1,35 +0,0 @@ -# String::Trim - -```cpp -String Trim() const; -``` - -移除字符串两端的空白字符(空格、制表符、换行符、回车符),返回一个新的 String 对象,原字符串不变。 - -**参数:** 无 - -**返回:** 去除两端空白后的新 String 对象 - -**复杂度:** O(n),其中 n 为字符串长度 - -**示例:** -```cpp -#include "XCEngine/Core/Containers/String.h" -#include - -int main() { - XCEngine::Containers::String s(" Hello World "); - - XCEngine::Containers::String trimmed = s.Trim(); - std::cout << "\"" << trimmed.CStr() << "\"" << std::endl; // 输出: "Hello World" - - XCEngine::Containers::String s2("\t\n test \t\n"); - std::cout << "\"" << s2.Trim().CStr() << "\"" << std::endl; // 输出: "test" (空格、制表符、换行、回车被移除) - - return 0; -} -``` - -## 相关文档 - -- [String 总览](string.md) - 返回类总览 diff --git a/docs/api/core/core.md b/docs/api/core/core.md deleted file mode 100644 index d518e3d2..00000000 --- a/docs/api/core/core.md +++ /dev/null @@ -1,99 +0,0 @@ -# Core 模块概览 - -**命名空间**: `XCEngine::Core` - -**类型**: `module` - -**头文件**: `XCEngine/Core/Core.h` - -**描述**: XCEngine 的核心基础模块,提供类型别名、智能指针、事件系统等基础功能。 - -## 概述 - -Core 模块包含了引擎所需的基础类型和工具,是其他所有模块的依赖基础。 - -## 模块内容 - -### 类型 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [Types](types/types.md) | `Types.h` | 类型别名定义 | - -### 智能指针 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [SmartPtr](smartptr/smartptr.md) | `SmartPtr.h` | 智能指针别名和工厂函数 | -| [RefCounted](refcounted/refcounted.md) | `RefCounted.h` | 引用计数基类 | - -### 事件系统 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [Event](event/event.md) | `Event.h` | 事件系统模板 | - -### 文件操作 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [FileWriter](filewriter/filewriter.md) | `FileWriter.h` | 文件写入工具 | - -## 类型别名 - -```cpp -using int8 = int8_t; -using int16 = int16_t; -using int32 = int32_t; -using int64 = int64_t; -using uint8 = uint8_t; -using uint16 = uint16_t; -using uint32 = uint32_t; -using uint64 = uint64_t; -using byte = uint8_t; -``` - -## 智能指针别名 - -```cpp -template -using Ref = std::shared_ptr; - -template -using UniqueRef = std::unique_ptr; - -template -Ref MakeRef(Args&&... args); - -template -UniqueRef MakeUnique(Args&&... args); -``` - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Core; - -// 使用类型别名 -uint32 value = 100; -byte data[4]; - -// 使用智能指针 -auto ref = MakeRef(); -auto unique = MakeUnique(); - -// 使用事件系统 -Event myEvent; -myEvent.Subscribe([](int a, float b) { - printf("Event: %d, %f\n", a, b); -}); -myEvent.Invoke(42, 3.14f); -``` - -## 相关文档 - -- [Containers 模块](../containers/containers.md) - 容器类型 -- [Memory 模块](../memory/memory.md) - 内存管理 diff --git a/docs/api/core/event/Clear.md b/docs/api/core/event/Clear.md deleted file mode 100644 index 3d49bf9c..00000000 --- a/docs/api/core/event/Clear.md +++ /dev/null @@ -1,39 +0,0 @@ -# Event::Clear - -```cpp -void Clear(); -``` - -清空所有订阅。 - -**描述** - -移除所有已订阅的回调,清空事件。线程安全。 - -**复杂度:** O(n) 其中 n 为订阅数量 - -**示例:** - -```cpp -#include - -using namespace XCEngine::Core; - -Event event; - -// 订阅多个回调 -event.Subscribe([](int v) { }); -event.Subscribe([](int v) { }); -event.Subscribe([](int v) { }); - -// 清空所有订阅 -event.Clear(); - -// 触发(无回调被执行) -event.Invoke(42); -``` - -## 相关文档 - -- [Event 总览](event.md) - 返回类总览 -- [Unsubscribe](Unsubscribe.md) - 退订单个事件 diff --git a/docs/api/core/event/Invoke.md b/docs/api/core/event/Invoke.md deleted file mode 100644 index 1cd708a0..00000000 --- a/docs/api/core/event/Invoke.md +++ /dev/null @@ -1,45 +0,0 @@ -# Event::Invoke - -```cpp -void Invoke(Args... args); -``` - -调用所有订阅的回调。 - -**描述** - -依次调用所有已订阅的回调函数。在调用前会自动处理待退订的回调。回调是在锁外执行的,因此可以在回调中安全地进行订阅/退订操作。线程安全。 - -**参数:** -- `args` - 传递给回调的参数 - -**复杂度:** O(n) 其中 n 为订阅数量 - -**示例:** - -```cpp -#include - -using namespace XCEngine::Core; - -// 无参数事件 -Event<> frameEndEvent; -frameEndEvent.Subscribe([]() { - printf("Frame ended\n"); -}); - -// 带参数事件 -Event playerDiedEvent; -playerDiedEvent.Subscribe([](int playerId, const char* reason) { - printf("Player %d died: %s\n", playerId, reason); -}); - -// 触发事件 -frameEndEvent.Invoke(); -playerDiedEvent.Invoke(1, "fell off a cliff"); -``` - -## 相关文档 - -- [Event 总览](event.md) - 返回类总览 -- [Subscribe](Subscribe.md) - 订阅事件 diff --git a/docs/api/core/event/ProcessUnsubscribes.md b/docs/api/core/event/ProcessUnsubscribes.md deleted file mode 100644 index 32bcbf78..00000000 --- a/docs/api/core/event/ProcessUnsubscribes.md +++ /dev/null @@ -1,39 +0,0 @@ -# Event::ProcessUnsubscribes - -```cpp -void ProcessUnsubscribes(); -``` - -处理积压的退订请求。 - -**描述** - -手动处理待退订的回调,将其从订阅列表中移除。通常不需要手动调用,`Invoke` 会自动处理退订。但在某些场景下可能需要主动调用。 - -**复杂度:** O(n) 其中 n 为待退订数量 - -**示例:** - -```cpp -#include - -using namespace XCEngine::Core; - -Event event; - -// 订阅 -uint64_t id = event.Subscribe([](int value) { }); - -// 退订请求入队 -event.Unsubscribe(id); - -// 主动处理退订 -event.ProcessUnsubscribes(); - -// 此时事件列表中已无该回调 -``` - -## 相关文档 - -- [Event 总览](event.md) - 返回类总览 -- [Unsubscribe](Unsubscribe.md) - 退订事件 diff --git a/docs/api/core/event/Subscribe.md b/docs/api/core/event/Subscribe.md deleted file mode 100644 index 6f961f5b..00000000 --- a/docs/api/core/event/Subscribe.md +++ /dev/null @@ -1,50 +0,0 @@ -# Event::Subscribe - -```cpp -uint64_t Subscribe(Callback callback); -``` - -订阅事件回调。 - -**描述** - -将回调函数添加到事件订阅列表中,并返回一个唯一的订阅 ID。该 ID 可用于后续退订。线程安全,可在任意线程调用。 - -**参数:** -- `callback` - 要订阅的回调函数,类型为 `std::function` - -**返回:** `uint64_t` - 订阅 ID,用于退订 - -**复杂度:** O(1) amortized - -**示例:** - -```cpp -#include - -using namespace XCEngine::Core; - -// 定义事件 -Event damageEvent; - -// 订阅多个回调 -uint64_t id1 = damageEvent.Subscribe([](int damage, float time) { - printf("Damage taken: %d at time %f\n", damage, time); -}); - -uint64_t id2 = damageEvent.Subscribe([](int damage, float time) { - // 记录伤害日志 -}); - -// 使用 lambda 表达式 -auto callback = [](int damage, float time) { - // 处理伤害 -}; -uint64_t id3 = damageEvent.Subscribe(callback); -``` - -## 相关文档 - -- [Event 总览](event.md) - 返回类总览 -- [Unsubscribe](Unsubscribe.md) - 退订事件 -- [Invoke](Invoke.md) - 触发事件 diff --git a/docs/api/core/event/Unsubscribe.md b/docs/api/core/event/Unsubscribe.md deleted file mode 100644 index 821b4de6..00000000 --- a/docs/api/core/event/Unsubscribe.md +++ /dev/null @@ -1,43 +0,0 @@ -# Event::Unsubscribe - -```cpp -void Unsubscribe(uint64_t id); -``` - -退订事件。 - -**描述** - -将指定 ID 的回调从订阅列表中移除。退订是延迟生效的,在调用 `Invoke` 时会一并处理待退订的回调。线程安全,可在任意线程调用。 - -**参数:** -- `id` - 订阅时返回的 ID - -**复杂度:** O(n) 在 Invoke 时处理 - -**示例:** - -```cpp -#include - -using namespace XCEngine::Core; - -Event someEvent; - -// 订阅 -uint64_t id = someEvent.Subscribe([](int value) { - printf("Value: %d\n", value); -}); - -// 退订 -someEvent.Unsubscribe(id); - -// 触发(已退订的回调不会被调用) -someEvent.Invoke(42); -``` - -## 相关文档 - -- [Event 总览](event.md) - 返回类总览 -- [Subscribe](Subscribe.md) - 订阅事件 -- [ProcessUnsubscribes](ProcessUnsubscribes.md) - 手动处理退订 diff --git a/docs/api/core/event/begin.md b/docs/api/core/event/begin.md deleted file mode 100644 index 4337dcc5..00000000 --- a/docs/api/core/event/begin.md +++ /dev/null @@ -1,37 +0,0 @@ -# Event::begin - -```cpp -Iterator begin(); -``` - -获取开始迭代器。 - -**描述** - -返回订阅列表的开始迭代器,用于范围for循环遍历所有订阅的回调。 - -**返回:** `Iterator` - 指向第一个监听器的迭代器(等价于 `std::vector::iterator`) - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Core; - -Event event; -event.Subscribe([](int v) { printf("Callback 1: %d\n", v); }); -event.Subscribe([](int v) { printf("Callback 2: %d\n", v); }); - -// 遍历所有订阅 -for (auto& [id, callback] : event) { - callback(100); -} -``` - -## 相关文档 - -- [Event 总览](event.md) - 返回类总览 -- [end](end.md) - 获取结束迭代器 diff --git a/docs/api/core/event/end.md b/docs/api/core/event/end.md deleted file mode 100644 index cbbf5d35..00000000 --- a/docs/api/core/event/end.md +++ /dev/null @@ -1,36 +0,0 @@ -# Event::end - -```cpp -Iterator end(); -``` - -获取结束迭代器。 - -**描述** - -返回订阅列表的结束迭代器,用于范围for循环遍历所有订阅的回调。 - -**返回:** `Iterator` - 指向末尾的迭代器(等价于 `std::vector::iterator`) - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Core; - -Event event; -event.Subscribe([](int v) { printf("Callback: %d\n", v); }); - -// 遍历所有订阅 -for (auto& [id, callback] : event) { - callback(42); -} -``` - -## 相关文档 - -- [Event 总览](event.md) - 返回类总览 -- [begin](begin.md) - 获取开始迭代器 diff --git a/docs/api/core/event/event.md b/docs/api/core/event/event.md deleted file mode 100644 index e46fbcfb..00000000 --- a/docs/api/core/event/event.md +++ /dev/null @@ -1,71 +0,0 @@ -# Event - -**命名空间**: `XCEngine::Core` - -**类型**: `class` (template) - -**头文件**: `XCEngine/Core/Event.h` - -**描述**: 事件系统模板类,提供类型安全的多订阅者事件/委托系统。 - -## 概述 - -`Event` 是一个类型安全的事件发布-订阅系统。它支持多个回调订阅、退订和线程安全的调用。非常适合用于游戏引擎中的事件驱动通信。 - -## 模板参数 - -| 参数 | 描述 | -|------|------| -| `Args...` | 事件回调的参数类型 | - -## 类型别名 - -| 别名 | 类型 | 描述 | -|------|------|------| -| `Callback` | `std::function` | 回调函数类型 | -| `Listener` | `std::pair` | 监听器条目 | -| `Iterator` | `std::vector::iterator` | 迭代器类型 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Subscribe`](Subscribe.md) | 订阅事件回调,返回订阅 ID | -| [`Unsubscribe`](Unsubscribe.md) | 退订事件(延迟生效) | -| [`ProcessUnsubscribes`](ProcessUnsubscribes.md) | 处理积压的退订请求 | -| [`Clear`](Clear.md) | 清空所有订阅 | -| [`Invoke`](Invoke.md) | 调用所有订阅的回调 | -| [`begin`](begin.md) | 获取开始迭代器 | -| [`end`](end.md) | 获取结束迭代器 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Core; - -// 定义事件(无参数) -Event<> frameStartEvent; - -// 定义事件(带参数) -Event damageEvent; - -// 订阅 -uint64_t id = damageEvent.Subscribe([](int damage, float time) { - printf("Damage: %d at time %f\n", damage, time); -}); - -// 触发事件 -damageEvent.Invoke(100, 3.14f); - -// 退订 -damageEvent.Unsubscribe(id); - -// 清空 -frameStartEvent.Clear(); -``` - -## 相关文档 - -- [Core 模块总览](../core.md) - 返回模块总览 diff --git a/docs/api/core/filewriter/Close.md b/docs/api/core/filewriter/Close.md deleted file mode 100644 index f5c9f771..00000000 --- a/docs/api/core/filewriter/Close.md +++ /dev/null @@ -1,44 +0,0 @@ -# FileWriter::Close - -```cpp -void Close(); -``` - -关闭文件。 - -**描述** - -关闭当前打开的文件。如果文件未打开,则什么都不做。析构函数会自动调用此方法。 - -**返回:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Core; - -FileWriter writer; - -if (writer.Open("data.txt")) { - writer.Write("Some data\n"); - writer.Flush(); - writer.Close(); -} - -// 文件已关闭,可再次打开其他文件 -if (writer.Open("other.txt")) { - writer.Write("New content\n"); -} -// 析构时自动关闭 -``` - -## 相关文档 - -- [FileWriter 总览](filewriter.md) - 返回类总览 -- [Open](Open.md) - 打开文件 diff --git a/docs/api/core/filewriter/Flush.md b/docs/api/core/filewriter/Flush.md deleted file mode 100644 index d4a5cc45..00000000 --- a/docs/api/core/filewriter/Flush.md +++ /dev/null @@ -1,47 +0,0 @@ -# FileWriter::Flush - -```cpp -bool Flush(); -``` - -刷新缓冲区。 - -**描述** - -将缓冲区中的数据强制写入磁盘,确保数据持久化。在写入大量数据后应调用此方法以确保数据已保存。 - -**返回:** `bool` - 是否刷新成功 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Core; - -FileWriter writer("output.txt"); -if (writer.IsOpen()) { - // 写入大量数据 - for (int i = 0; i < 1000; i++) { - writer.Write("Line "); - writer.Write(std::to_string(i).c_str()); - writer.Write("\n"); - } - - // 刷新确保数据写入磁盘 - writer.Flush(); - - // 数据已安全保存 - writer.Close(); -} -``` - -## 相关文档 - -- [FileWriter 总览](filewriter.md) - 返回类总览 -- [Write](Write.md) - 写入数据 diff --git a/docs/api/core/filewriter/IsOpen.md b/docs/api/core/filewriter/IsOpen.md deleted file mode 100644 index bcff01dc..00000000 --- a/docs/api/core/filewriter/IsOpen.md +++ /dev/null @@ -1,45 +0,0 @@ -# FileWriter::IsOpen - -```cpp -bool IsOpen() const; -``` - -检查文件是否已打开。 - -**描述** - -返回文件是否已成功打开并可用于写入。 - -**返回:** `bool` - 文件是否已打开 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Core; - -FileWriter writer1; -if (writer1.IsOpen()) { - // 不会执行 - writer1.Write("test"); -} - -// 打开文件 -FileWriter writer2("output.txt"); -if (writer2.IsOpen()) { - printf("File opened successfully\n"); - writer2.Write("Content"); -} else { - printf("Failed to open file\n"); -} -``` - -## 相关文档 - -- [FileWriter 总览](filewriter.md) - 返回类总览 -- [Open](Open.md) - 打开文件 diff --git a/docs/api/core/filewriter/Open.md b/docs/api/core/filewriter/Open.md deleted file mode 100644 index 5e35b5dc..00000000 --- a/docs/api/core/filewriter/Open.md +++ /dev/null @@ -1,55 +0,0 @@ -# FileWriter::Open - -```cpp -bool Open(const char* filePath, bool append = false); -``` - -打开文件。 - -**描述** - -打开指定路径的文件,准备写入。如果之前已打开文件,会先关闭。返回是否成功打开文件。 - -**参数:** -- `filePath` - 要打开的文件路径 -- `append` - 是否以追加模式打开,默认为覆盖模式 - -**返回:** `bool` - 是否成功打开 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Core; - -FileWriter writer; - -// 打开文件(覆盖模式) -if (writer.Open("output.txt")) { - writer.Write("Hello\n"); - writer.Close(); -} - -// 打开文件(追加模式) -if (writer.Open("log.txt", true)) { - writer.Write("Another line\n"); - writer.Flush(); -} - -// 检查是否成功 -FileWriter writer2; -if (!writer2.Open("/invalid/path/file.txt")) { - printf("Failed to open file\n"); -} -``` - -## 相关文档 - -- [FileWriter 总览](filewriter.md) - 返回类总览 -- [Close](Close.md) - 关闭文件 -- [IsOpen](IsOpen.md) - 检查文件状态 diff --git a/docs/api/core/filewriter/Write.md b/docs/api/core/filewriter/Write.md deleted file mode 100644 index 0ce8ea75..00000000 --- a/docs/api/core/filewriter/Write.md +++ /dev/null @@ -1,50 +0,0 @@ -# FileWriter::Write - -```cpp -bool Write(const char* data, size_t length); -bool Write(const Containers::String& str); -``` - -写入数据到文件。 - -**描述** - -将数据写入文件。如果文件未打开,操作会失败。 - -**参数:** -- `data` - 要写入的字符数据 -- `length` - 要写入的字节数 -- `str` - 要写入的 String 对象 - -**返回:** `bool` - 是否写入成功 - -**线程安全:** ❌ - -**复杂度:** O(n) 其中 n 为写入的字节数 - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Core; - -FileWriter writer("output.txt"); -if (writer.IsOpen()) { - // 写入原始字符数组 - writer.Write("Hello, World!", 13); - writer.Write("\n", 1); - - // 写入 String - Containers::String message = "This is a test string"; - writer.Write(message); - - writer.Flush(); -} -``` - -## 相关文档 - -- [FileWriter 总览](filewriter.md) - 返回类总览 -- [Flush](Flush.md) - 刷新缓冲区 diff --git a/docs/api/core/filewriter/constructor.md b/docs/api/core/filewriter/constructor.md deleted file mode 100644 index 87d2d9a4..00000000 --- a/docs/api/core/filewriter/constructor.md +++ /dev/null @@ -1,81 +0,0 @@ -# FileWriter::FileWriter - -## 重载 1: 默认构造 - -```cpp -FileWriter(); -``` - -默认构造 FileWriter 对象,不打开任何文件。 - -**描述** - -创建 FileWriter 实例,m_file 初始化为 nullptr。可后续通过 Open 方法打开文件。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Core; - -FileWriter writer; -if (!writer.IsOpen()) { - writer.Open("output.txt"); - writer.Write("Hello\n"); - writer.Close(); -} -``` - ---- - -## 重载 2: 文件路径构造 - -```cpp -FileWriter(const char* filePath, bool append = false); -``` - -构造 FileWriter 对象并打开文件。 - -**参数:** -- `filePath` - 要打开的文件路径 -- `append` - 是否以追加模式打开,默认 false(覆盖模式) - -**返回:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Core; - -// 覆盖模式打开 -FileWriter writer1("output.txt"); -if (writer1.IsOpen()) { - writer1.Write("Content\n"); -} - -// 追加模式打开 -FileWriter writer2("log.txt", true); -if (writer2.IsOpen()) { - writer2.Write("New log entry\n"); -} -``` - -## 相关文档 - -- [FileWriter 总览](filewriter.md) - 返回类总览 -- [Open](Open.md) - 打开文件 diff --git a/docs/api/core/filewriter/destructor.md b/docs/api/core/filewriter/destructor.md deleted file mode 100644 index 57e5019e..00000000 --- a/docs/api/core/filewriter/destructor.md +++ /dev/null @@ -1,37 +0,0 @@ -# FileWriter::~FileWriter - -```cpp -~FileWriter(); -``` - -析构函数,自动关闭文件。 - -**描述** - -销毁 FileWriter 实例,如果文件处于打开状态则自动调用 Close 关闭文件,释放 FILE* 资源。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Core; - -{ - FileWriter writer("output.txt"); - writer.Write("Content inside scope\n"); -} // 析构时自动关闭文件 -``` - -## 相关文档 - -- [FileWriter 总览](filewriter.md) - 返回类总览 -- [Close](Close.md) - 关闭文件 diff --git a/docs/api/core/filewriter/filewriter.md b/docs/api/core/filewriter/filewriter.md deleted file mode 100644 index d1a59a8c..00000000 --- a/docs/api/core/filewriter/filewriter.md +++ /dev/null @@ -1,68 +0,0 @@ -# FileWriter - -**命名空间**: `XCEngine::Core` - -**类型**: `class` - -**头文件**: `XCEngine/Core/FileWriter.h` - -**描述**: 文件写入工具类,提供简单的文件写入操作封装。 - -## 概述 - -`FileWriter` 是一个轻量级的文件写入工具,封装了 `FILE*` 接口,提供便捷的字符串和二进制数据写入功能。它支持追加模式和自动资源管理(RAII)。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`FileWriter()`](constructor.md) | 默认构造(不打开文件) | -| [`FileWriter(filePath, append)`](constructor.md) | 构造并打开文件 | -| [`~FileWriter()`](destructor.md) | 析构函数,自动关闭文件 | -| [`Open`](Open.md) | 打开文件,append=true 时为追加模式 | -| [`Close`](Close.md) | 关闭文件 | -| [`IsOpen`](IsOpen.md) | 检查文件是否已打开 | -| [`Write`](Write.md) | 写入数据 | -| [`Flush`](Flush.md) | 刷新缓冲区 | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Core; - -// 方式1:构造时打开 -FileWriter writer("output.txt", false); -if (writer.IsOpen()) { - writer.Write("Hello, World!\n"); - writer.Write("Line 2\n"); - writer.Flush(); -} - -// 方式2:先构造再打开 -FileWriter writer2; -if (writer2.Open("log.txt")) { - writer2.Write("Application started\n"); - writer2.Close(); -} - -// 追加模式 -FileWriter appendWriter("log.txt", true); -if (appendWriter.IsOpen()) { - appendWriter.Write("Another log entry\n"); - appendWriter.Flush(); -} - -// 使用 String 写入 -Containers::String content = "Content written from String"; -FileWriter writer3("data.txt"); -writer3.Write(content); -``` - -## 相关文档 - -- [Core 模块总览](../core.md) - 返回模块总览 -- [Logger](../../debug/logger/logger.md) - 日志系统 -- [FileLogSink](../../debug/filelogsink/filelogsink.md) - 文件日志输出 diff --git a/docs/api/core/refcounted/AddRef.md b/docs/api/core/refcounted/AddRef.md deleted file mode 100644 index 3f294fbb..00000000 --- a/docs/api/core/refcounted/AddRef.md +++ /dev/null @@ -1,46 +0,0 @@ -# RefCounted::AddRef - -```cpp -void AddRef(); -``` - -原子地增加引用计数。 - -**描述** - -原子地增加引用计数。在复制 `RefCounted` 指针或传递引用时调用此方法。 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -class MyObject : public XCEngine::Core::RefCounted { -public: - void DoSomething() { } -}; - -int main() { - MyObject* obj = new MyObject(); - printf("After create: %u\n", obj->GetRefCount()); - - obj->AddRef(); - printf("After AddRef: %u\n", obj->GetRefCount()); - - obj->Release(); - printf("After Release: %u\n", obj->GetRefCount()); - - obj->Release(); - return 0; -} -``` - -## 相关文档 - -- [RefCounted 总览](refcounted.md) - 返回类总览 -- [Release](Release.md) - 减少引用计数 diff --git a/docs/api/core/refcounted/GetRefCount.md b/docs/api/core/refcounted/GetRefCount.md deleted file mode 100644 index a86124d8..00000000 --- a/docs/api/core/refcounted/GetRefCount.md +++ /dev/null @@ -1,51 +0,0 @@ -# RefCounted::GetRefCount - -```cpp -uint32_t GetRefCount() const; -``` - -获取当前引用计数。 - -**描述** - -返回当前的引用计数值。由于使用 `std::atomic` 实现,因此是线程安全的。 - -**返回:** `uint32_t` - 当前引用计数 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -class MyObject : public XCEngine::Core::RefCounted { -public: - void Debug() { - printf("RefCount: %u\n", GetRefCount()); - } -}; - -int main() { - MyObject* obj = new MyObject(); - printf("After create: %u\n", obj->GetRefCount()); - - obj->AddRef(); - printf("After AddRef: %u\n", obj->GetRefCount()); - - obj->Release(); - printf("After Release: %u\n", obj->GetRefCount()); - - obj->Release(); - return 0; -} -``` - -## 相关文档 - -- [RefCounted 总览](refcounted.md) - 返回类总览 -- [AddRef](AddRef.md) - 增加引用计数 -- [Release](Release.md) - 减少引用计数 diff --git a/docs/api/core/refcounted/Release.md b/docs/api/core/refcounted/Release.md deleted file mode 100644 index 3cd20df8..00000000 --- a/docs/api/core/refcounted/Release.md +++ /dev/null @@ -1,46 +0,0 @@ -# RefCounted::Release - -```cpp -void Release(); -``` - -原子地减少引用计数。 - -**描述** - -原子地减少引用计数。当引用计数归零时,对象会自动 `delete this`。这是实现自动内存管理的关键方法。 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -class MyObject : public XCEngine::Core::RefCounted { -public: - void DoSomething() { } -}; - -int main() { - MyObject* obj = new MyObject(); - printf("After create: %u\n", obj->GetRefCount()); - - obj->AddRef(); - printf("After AddRef: %u\n", obj->GetRefCount()); - - obj->Release(); - printf("After Release: %u\n", obj->GetRefCount()); - - obj->Release(); - return 0; -} -``` - -## 相关文档 - -- [RefCounted 总览](refcounted.md) - 返回类总览 -- [AddRef](AddRef.md) - 增加引用计数 diff --git a/docs/api/core/refcounted/refcounted.md b/docs/api/core/refcounted/refcounted.md deleted file mode 100644 index e31d24f2..00000000 --- a/docs/api/core/refcounted/refcounted.md +++ /dev/null @@ -1,57 +0,0 @@ -# RefCounted - -**命名空间**: `XCEngine::Core` - -**类型**: `class` - -**头文件**: `XCEngine/Core/RefCounted.h` - -**描述**: 引用计数基类,提供线程安全的引用计数生命周期管理。 - -## 概述 - -`RefCounted` 是一个简单的引用计数基类。当引用计数归零时,对象会自动删除。它提供了 `AddRef` 和 `Release` 方法,线程安全地管理引用计数。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`RefCounted()`](refcounted.md) | 构造函数,初始引用计数为 1 | -| [`~RefCounted()`](refcounted.md) | 虚析构函数 | -| [`AddRef()`](AddRef.md) | 增加引用计数 | -| [`Release()`](Release.md) | 减少引用计数(归零时自动 delete this) | -| [`GetRefCount()`](GetRefCount.md) | 获取当前引用计数 | - -## 使用示例 - -```cpp -#include -#include - -class MyObject : public XCEngine::Core::RefCounted { -public: - MyObject() { } - virtual ~MyObject() { } - - void DoSomething() { } -}; - -int main() { - MyObject* obj = new MyObject(); - printf("After create: %u\n", obj->GetRefCount()); - - obj->AddRef(); - printf("After AddRef: %u\n", obj->GetRefCount()); - - obj->Release(); - printf("After Release: %u\n", obj->GetRefCount()); - - obj->Release(); - return 0; -} -``` - -## 相关文档 - -- [Core 模块总览](../core.md) - 返回模块总览 -- [SmartPtr](../smartptr/smartptr.md) - 智能指针 diff --git a/docs/api/core/smartptr/MakeRef.md b/docs/api/core/smartptr/MakeRef.md deleted file mode 100644 index a361213b..00000000 --- a/docs/api/core/smartptr/MakeRef.md +++ /dev/null @@ -1,51 +0,0 @@ -# SmartPtr::MakeRef - -```cpp -template -Ref MakeRef(Args&&... args); -``` - -创建共享指针的工厂函数。 - -**描述** - -`MakeRef` 是创建 `Ref` 的工厂函数,使用完美转发将参数传递给 `T` 的构造函数。相比直接使用 `std::make_shared`,代码更简洁。 - -**模板参数:** -- `T` - 被创建对象的类型 -- `Args` - 构造函数的参数类型 - -**参数:** -- `args` - 转发给 T 构造函数的参数 - -**返回:** `Ref` - 新创建的共享指针 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -class MyClass { -public: - MyClass(int a, int b) : m_a(a), m_b(b) {} - int GetSum() const { return m_a + m_b; } -private: - int m_a, m_b; -}; - -// 创建共享指针 -Core::Ref ref = Core::MakeRef(10, 20); -printf("Sum: %d\n", ref->GetSum()); - -// 使用 lambda -Core::Ref> callback = Core::MakeRef>([]() { - printf("Callback invoked!\n"); -}); -``` - -## 相关文档 - -- [SmartPtr 总览](smartptr.md) - 返回类总览 -- [Ref](Ref.md) - Ref 类型说明 diff --git a/docs/api/core/smartptr/MakeUnique.md b/docs/api/core/smartptr/MakeUnique.md deleted file mode 100644 index 699012e0..00000000 --- a/docs/api/core/smartptr/MakeUnique.md +++ /dev/null @@ -1,49 +0,0 @@ -# SmartPtr::MakeUnique - -```cpp -template -UniqueRef MakeUnique(Args&&... args); -``` - -创建独占指针的工厂函数。 - -**描述** - -`MakeUnique` 是创建 `UniqueRef` 的工厂函数,使用完美转发将参数传递给 `T` 的构造函数。相比直接使用 `std::make_unique`,代码更简洁。 - -**模板参数:** -- `T` - 被创建对象的类型 -- `Args` - 构造函数的参数类型 - -**参数:** -- `args` - 转发给 T 构造函数的参数 - -**返回:** `UniqueRef` - 新创建的独占指针 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -class MyClass { -public: - MyClass(int value) : m_value(value) {} - int GetValue() const { return m_value; } -private: - int m_value; -}; - -// 创建独占指针 -Core::UniqueRef unique = Core::MakeUnique(42); -printf("Value: %d\n", unique->GetValue()); - -// 转移所有权 -Core::UniqueRef moved = Core::MakeUnique(100); -``` - -## 相关文档 - -- [SmartPtr 总览](smartptr.md) - 返回类总览 -- [UniqueRef](UniqueRef.md) - UniqueRef 类型说明 diff --git a/docs/api/core/smartptr/Ref.md b/docs/api/core/smartptr/Ref.md deleted file mode 100644 index 1f7721e3..00000000 --- a/docs/api/core/smartptr/Ref.md +++ /dev/null @@ -1,40 +0,0 @@ -# SmartPtr::Ref - -```cpp -template -using Ref = std::shared_ptr; -``` - -共享引用智能指针类型别名。 - -**描述** - -`Ref` 是 `std::shared_ptr` 的类型别名,提供共享所有权的智能指针。多个 `Ref` 可以指向同一个对象,通过引用计数管理生命周期。当最后一个 `Ref` 被销毁时,对象会被自动删除。 - -**模板参数:** -- `T` - 被托管对象的类型 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -class MyClass { -public: - void DoSomething() { /* ... */ } -}; - -Core::Ref ref1 = Core::MakeRef(); -Core::Ref ref2 = ref1; // 共享所有权 - -if (ref1) { - ref1->DoSomething(); -} -``` - -## 相关文档 - -- [SmartPtr 总览](smartptr.md) - 返回类总览 -- [MakeRef](MakeRef.md) - 创建 Ref 的工厂函数 diff --git a/docs/api/core/smartptr/UniqueRef.md b/docs/api/core/smartptr/UniqueRef.md deleted file mode 100644 index c25dea40..00000000 --- a/docs/api/core/smartptr/UniqueRef.md +++ /dev/null @@ -1,46 +0,0 @@ -# SmartPtr::UniqueRef - -```cpp -template -using UniqueRef = std::unique_ptr; -``` - -独占所有权的智能指针类型别名。 - -**描述** - -`UniqueRef` 是 `std::unique_ptr` 的类型别名,提供独占所有权的智能指针。每个对象只能有一个 `UniqueRef` 持有,当 `UniqueRef` 被销毁时,对象会被自动删除。不能复制,只能移动。 - -**模板参数:** -- `T` - 被托管对象的类型 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -class MyClass { -public: - void DoSomething() { /* ... */ } -}; - -Core::UniqueRef unique = Core::MakeUnique(); - -if (unique) { - unique->DoSomething(); -} - -// 自定义删除器 -Core::UniqueRef - file(fopen("test.txt", "r"), &fclose); - -// 转移所有权 -Core::UniqueRef moved = std::move(unique); -``` - -## 相关文档 - -- [SmartPtr 总览](smartptr.md) - 返回类总览 -- [MakeUnique](MakeUnique.md) - 创建 UniqueRef 的工厂函数 diff --git a/docs/api/core/smartptr/smartptr.md b/docs/api/core/smartptr/smartptr.md deleted file mode 100644 index 74c0eedb..00000000 --- a/docs/api/core/smartptr/smartptr.md +++ /dev/null @@ -1,66 +0,0 @@ -# SmartPtr - -**命名空间**: `XCEngine::Core` - -**类型**: `header-only` - -**头文件**: `XCEngine/Core/SmartPtr.h` - -**描述**: 智能指针类型别名和工厂函数,提供 `std::shared_ptr` 和 `std::unique_ptr` 的简化接口。 - -## 概述 - -`Core::SmartPtr` 提供了 `std::shared_ptr` 和 `std::unique_ptr` 的类型别名和工厂函数,使智能指针的使用更加简洁。 - -## 类型别名 - -| 别名 | 底层类型 | 描述 | -|------|----------|------| -| `Core::Ref` | `std::shared_ptr` | 共享引用智能指针 | -| `Core::UniqueRef` | `std::unique_ptr` | 独占所有权的智能指针 | - -## 工厂函数 - -| 函数 | 返回值 | 描述 | -|------|--------|------| -| `Core::MakeRef(Args&&... args)` | `Ref` | 创建共享指针 | -| `Core::MakeUnique(Args&&... args)` | `UniqueRef` | 创建独占指针 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Ref`](Ref.md) | `std::shared_ptr` 类型别名 | -| [`UniqueRef`](UniqueRef.md) | `std::unique_ptr` 类型别名 | -| [`MakeRef`](MakeRef.md) | 创建共享指针的工厂函数 | -| [`MakeUnique`](MakeUnique.md) | 创建独占指针的工厂函数 | - -## 使用示例 - -```cpp -#include - -// 使用 Ref(共享指针) -Core::Ref ref = Core::MakeRef(arg1, arg2); - -// 使用 UniqueRef(独占指针) -Core::UniqueRef unique = Core::MakeUnique(); - -// 传递所有权 -Core::Ref ref2 = ref; // 引用计数 +1 - -// 检查有效性 -if (ref) { - ref->DoSomething(); -} - -// 自定义删除器 -Core::UniqueRef - file(fopen("test.txt", "r"), &fclose); -``` - -## 相关文档 - -- [Core 模块总览](../core.md) - 返回模块总览 -- [RefCounted](../refcounted/refcounted.md) - 引用计数基类 -- [Types](../types/types.md) - 类型别名 diff --git a/docs/api/core/types/byte.md b/docs/api/core/types/byte.md deleted file mode 100644 index 23de7d1f..00000000 --- a/docs/api/core/types/byte.md +++ /dev/null @@ -1,28 +0,0 @@ -# Types::byte - -```cpp -using byte = uint8_t; -``` - -字节类型别名,对应 `uint8_t` 类型。 - -**描述** - -`byte` 是 1 字节无符号整数类型,专门用于表示原始字节数据。语义上比 `uint8` 更清晰,适用于二进制数据、内存缓冲区等场景。 - -**示例:** - -```cpp -#include - -Core::byte header[4] = {0x00, 0x01, 0x02, 0x03}; -Core::byte flags = 0b11001010; - -// 内存缓冲区 -Core::byte* buffer = new Core::byte[1024]; -``` - -## 相关文档 - -- [Types 总览](types.md) - 返回类型总览 -- [uint8](uint8.md) - 底层类型 diff --git a/docs/api/core/types/int16.md b/docs/api/core/types/int16.md deleted file mode 100644 index 88971f38..00000000 --- a/docs/api/core/types/int16.md +++ /dev/null @@ -1,25 +0,0 @@ -# Types::int16 - -```cpp -using int16 = int16_t; -``` - -16位有符号整数类型别名,对应 C++ 标准库的 `int16_t` 类型。 - -**描述** - -`int16` 是 16 位(2 字节)有符号整数类型,范围为 -32,768 到 32,767。该类型别名确保跨平台一致性。 - -**示例:** - -```cpp -#include - -Core::int16 shortValue = -10000; -Core::int16 maxValue = 32767; -``` - -## 相关文档 - -- [Types 总览](types.md) - 返回类型总览 -- [uint16](uint16.md) - 对应的无符号类型 diff --git a/docs/api/core/types/int32.md b/docs/api/core/types/int32.md deleted file mode 100644 index 12c3b050..00000000 --- a/docs/api/core/types/int32.md +++ /dev/null @@ -1,28 +0,0 @@ -# Types::int32 - -```cpp -using int32 = int32_t; -``` - -32位有符号整数类型别名,对应 C++ 标准库的 `int32_t` 类型。 - -**描述** - -`int32` 是 32 位(4 字节)有符号整数类型,范围为 -2,147,483,648 到 2,147,483,647。该类型别名确保跨平台一致性,是最常用的整数类型。 - -**示例:** - -```cpp -#include - -Core::int32 score = 1000000; -Core::int32 negative = -500000; - -// 函数参数类型 -void SetHealth(Core::int32 health); -``` - -## 相关文档 - -- [Types 总览](types.md) - 返回类型总览 -- [uint32](uint32.md) - 对应的无符号类型 diff --git a/docs/api/core/types/int64.md b/docs/api/core/types/int64.md deleted file mode 100644 index 842bacbf..00000000 --- a/docs/api/core/types/int64.md +++ /dev/null @@ -1,28 +0,0 @@ -# Types::int64 - -```cpp -using int64 = int64_t; -``` - -64位有符号整数类型别名,对应 C++ 标准库的 `int64_t` 类型。 - -**描述** - -`int64` 是 64 位(8 字节)有符号整数类型,范围为 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807。该类型别名用于需要大范围整数的场景,如时间戳、大文件大小等。 - -**示例:** - -```cpp -#include - -Core::int64 largeNumber = 9223372036854775807LL; -Core::int64 fileSize = 1099511627776LL; // 1TB - -// 时间戳(毫秒) -Core::int64 timestamp = 1700000000000LL; -``` - -## 相关文档 - -- [Types 总览](types.md) - 返回类型总览 -- [uint64](uint64.md) - 对应的无符号类型 diff --git a/docs/api/core/types/int8.md b/docs/api/core/types/int8.md deleted file mode 100644 index 6a402d33..00000000 --- a/docs/api/core/types/int8.md +++ /dev/null @@ -1,26 +0,0 @@ -# Types::int8 - -```cpp -using int8 = int8_t; -``` - -8位有符号整数类型别名,对应 C++ 标准库的 `int8_t` 类型。 - -**描述** - -`int8` 是 8 位(1 字节)有符号整数类型,范围为 -128 到 127。该类型别名确保跨平台一致性。 - -**示例:** - -```cpp -#include - -Core::int8 signedByte = -50; -Core::int8 maxValue = 127; -Core::int8 minValue = -128; -``` - -## 相关文档 - -- [Types 总览](types.md) - 返回类型总览 -- [uint8](uint8.md) - 对应的无符号类型 diff --git a/docs/api/core/types/types.md b/docs/api/core/types/types.md deleted file mode 100644 index 1de0599c..00000000 --- a/docs/api/core/types/types.md +++ /dev/null @@ -1,62 +0,0 @@ -# Types - -**命名空间**: `XCEngine::Core` - -**类型**: `类型别名定义` - -**头文件**: `XCEngine/Core/Types.h` - -**描述**: 基础类型别名定义,提供跨平台一致的基础类型名称。 - -## 概述 - -`Types.h` 定义了一组类型别名,简化了标准库类型的使用,并提供跨平台一致性。 - -## 类型别名 - -| 别名 | 实际类型 | 描述 | -|------|----------|------| -| `int8` | `int8_t` | 8位有符号整数 | -| `int16` | `int16_t` | 16位有符号整数 | -| `int32` | `int32_t` | 32位有符号整数 | -| `int64` | `int64_t` | 64位有符号整数 | -| `uint8` | `uint8_t` | 8位无符号整数 | -| `uint16` | `uint16_t` | 16位无符号整数 | -| `uint32` | `uint32_t` | 32位无符号整数 | -| `uint64` | `uint64_t` | 64位无符号整数 | -| `byte` | `uint8_t` | 字节类型 | - -## 类型定义 - -| 类型 | 描述 | -|------|------| -| [`int8`](int8.md) | 8位有符号整数类型别名 | -| [`int16`](int16.md) | 16位有符号整数类型别名 | -| [`int32`](int32.md) | 32位有符号整数类型别名 | -| [`int64`](int64.md) | 64位有符号整数类型别名 | -| [`uint8`](uint8.md) | 8位无符号整数类型别名 | -| [`uint16`](uint16.md) | 16位无符号整数类型别名 | -| [`uint32`](uint32.md) | 32位无符号整数类型别名 | -| [`uint64`](uint64.md) | 64位无符号整数类型别名 | -| [`byte`](byte.md) | 字节类型别名 | - -## 使用示例 - -```cpp -#include - -// 使用类型别名 -Core::int32 count = 100; -Core::uint64 id = 1234567890; -Core::byte flags = 0xFF; - -// 数组定义 -Core::uint8 buffer[1024]; - -// 函数参数 -void ProcessData(Core::uint32 size, const Core::int8* data); -``` - -## 相关文档 - -- [SmartPtr](../smartptr/smartptr.md) - 智能指针 diff --git a/docs/api/core/types/uint16.md b/docs/api/core/types/uint16.md deleted file mode 100644 index 167e657b..00000000 --- a/docs/api/core/types/uint16.md +++ /dev/null @@ -1,28 +0,0 @@ -# Types::uint16 - -```cpp -using uint16 = uint16_t; -``` - -16位无符号整数类型别名,对应 C++ 标准库的 `uint16_t` 类型。 - -**描述** - -`uint16` 是 16 位(2 字节)无符号整数类型,范围为 0 到 65,535。常用于 Unicode 字符、端口号等场景。 - -**示例:** - -```cpp -#include - -Core::uint16 port = 8080; -Core::uint16 maxConnections = 65535; - -// Unicode 字符 -Core::uint16 unicodeChar = 0x4E2D; -``` - -## 相关文档 - -- [Types 总览](types.md) - 返回类型总览 -- [int16](int16.md) - 对应的有符号类型 diff --git a/docs/api/core/types/uint32.md b/docs/api/core/types/uint32.md deleted file mode 100644 index 92355349..00000000 --- a/docs/api/core/types/uint32.md +++ /dev/null @@ -1,28 +0,0 @@ -# Types::uint32 - -```cpp -using uint32 = uint32_t; -``` - -32位无符号整数类型别名,对应 C++ 标准库的 `uint32_t` 类型。 - -**描述** - -`uint32` 是 32 位(4 字节)无符号整数类型,范围为 0 到 4,294,967,295。常用于 ID、计数、大小等场景。 - -**示例:** - -```cpp -#include - -Core::uint32 entityId = 1000000; -Core::uint32 maxItems = 4294967295U; - -// 数组大小 -Core::uint32 arraySize = 1000; -``` - -## 相关文档 - -- [Types 总览](types.md) - 返回类型总览 -- [int32](int32.md) - 对应的有符号类型 diff --git a/docs/api/core/types/uint64.md b/docs/api/core/types/uint64.md deleted file mode 100644 index 185f1817..00000000 --- a/docs/api/core/types/uint64.md +++ /dev/null @@ -1,28 +0,0 @@ -# Types::uint64 - -```cpp -using uint64 = uint64_t; -``` - -64位无符号整数类型别名,对应 C++ 标准库的 `uint64_t` 类型。 - -**描述** - -`uint64` 是 64 位(8 字节)无符号整数类型,范围为 0 到 18,446,744,073,709,551,615。用于需要极大整数范围的场景,如大文件大小、精确时间等。 - -**示例:** - -```cpp -#include - -Core::uint64 largeFileSize = 1099511627776ULL; // 1TB -Core::uint64 maxValue = 18446744073709551615ULL; - -// 高精度时间戳(微秒) -Core::uint64 microseconds = 1700000000000000ULL; -``` - -## 相关文档 - -- [Types 总览](types.md) - 返回类型总览 -- [int64](int64.md) - 对应的有符号类型 diff --git a/docs/api/core/types/uint8.md b/docs/api/core/types/uint8.md deleted file mode 100644 index eb0631fd..00000000 --- a/docs/api/core/types/uint8.md +++ /dev/null @@ -1,28 +0,0 @@ -# Types::uint8 - -```cpp -using uint8 = uint8_t; -``` - -8位无符号整数类型别名,对应 C++ 标准库的 `uint8_t` 类型。 - -**描述** - -`uint8` 是 8 位(1 字节)无符号整数类型,范围为 0 到 255。常用于字节数据、颜色分量(RGB)等场景。 - -**示例:** - -```cpp -#include - -Core::uint8 flags = 0xFF; -Core::uint8 red = 255; - -// 字节数组 -Core::uint8 buffer[256]; -``` - -## 相关文档 - -- [Types 总览](types.md) - 返回类型总览 -- [int8](int8.md) - 对应的有符号类型 diff --git a/docs/api/d3d12/d3d12-buffer-get-desc.md b/docs/api/d3d12/d3d12-buffer-get-desc.md deleted file mode 100644 index 0cecf35e..00000000 --- a/docs/api/d3d12/d3d12-buffer-get-desc.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Buffer::GetDesc - -获取 D3D12 资源描述结构。 - -```cpp -D3D12_RESOURCE_DESC GetDesc() const; -``` - -**返回:** `D3D12_RESOURCE_DESC` - D3D12 资源描述结构 - -## 相关文档 - -- [D3D12Buffer 总览](d3d12-buffer.md) diff --git a/docs/api/d3d12/d3d12-buffer-get-gpu-virtual-address.md b/docs/api/d3d12/d3d12-buffer-get-gpu-virtual-address.md deleted file mode 100644 index 43e20feb..00000000 --- a/docs/api/d3d12/d3d12-buffer-get-gpu-virtual-address.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Buffer::GetGPUVirtualAddress - -获取缓冲区的 GPU 虚拟地址。 - -```cpp -D3D12_GPU_VIRTUAL_ADDRESS GetGPUVirtualAddress() const; -``` - -**返回:** `D3D12_GPU_VIRTUAL_ADDRESS` - GPU 虚拟地址 - -## 相关文档 - -- [D3D12Buffer 总览](d3d12-buffer.md) diff --git a/docs/api/d3d12/d3d12-buffer-get-resource.md b/docs/api/d3d12/d3d12-buffer-get-resource.md deleted file mode 100644 index a74e8235..00000000 --- a/docs/api/d3d12/d3d12-buffer-get-resource.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Buffer::GetResource - -获取底层 D3D12 资源指针。 - -```cpp -ID3D12Resource* GetResource() const; -``` - -**返回:** `ID3D12Resource*` - 底层 D3D12 资源指针 - -## 相关文档 - -- [D3D12Buffer 总览](d3d12-buffer.md) diff --git a/docs/api/d3d12/d3d12-buffer-get-state.md b/docs/api/d3d12/d3d12-buffer-get-state.md deleted file mode 100644 index 6a359c05..00000000 --- a/docs/api/d3d12/d3d12-buffer-get-state.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Buffer::GetState - -获取缓冲区当前资源状态。 - -```cpp -ResourceStates GetState() const; -``` - -**返回:** `ResourceStates` - 当前资源状态 - -## 相关文档 - -- [D3D12Buffer 总览](d3d12-buffer.md) diff --git a/docs/api/d3d12/d3d12-buffer-initialize-from-existing.md b/docs/api/d3d12/d3d12-buffer-initialize-from-existing.md deleted file mode 100644 index fbf24ecb..00000000 --- a/docs/api/d3d12/d3d12-buffer-initialize-from-existing.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12Buffer::InitializeFromExisting - -从现有的 D3D12 资源初始化缓冲区。 - -```cpp -bool InitializeFromExisting(ID3D12Resource* resource); -``` - -**参数:** -- `resource` - 已存在的 D3D12 资源指针 - -**返回:** `bool` - 初始化成功返回 true,失败返回 false - -## 相关文档 - -- [D3D12Buffer 总览](d3d12-buffer.md) diff --git a/docs/api/d3d12/d3d12-buffer-initialize-with-data.md b/docs/api/d3d12/d3d12-buffer-initialize-with-data.md deleted file mode 100644 index 5d6ccf70..00000000 --- a/docs/api/d3d12/d3d12-buffer-initialize-with-data.md +++ /dev/null @@ -1,20 +0,0 @@ -# D3D12Buffer::InitializeWithData - -初始化缓冲区并从现有数据上传。 - -```cpp -bool InitializeWithData(ID3D12Device* device, ID3D12GraphicsCommandList* commandList, const void* data, uint64_t size, D3D12_RESOURCE_STATES finalState); -``` - -**参数:** -- `device` - DirectX 12 设备指针 -- `commandList` - 用于上传命令的命令列表 -- `data` - 要上传的数据指针 -- `size` - 数据大小(字节) -- `finalState` - 上传完成后的目标资源状态 - -**返回:** `bool` - 初始化成功返回 true,失败返回 false - -## 相关文档 - -- [D3D12Buffer 总览](d3d12-buffer.md) diff --git a/docs/api/d3d12/d3d12-buffer-initialize.md b/docs/api/d3d12/d3d12-buffer-initialize.md deleted file mode 100644 index cabfb802..00000000 --- a/docs/api/d3d12/d3d12-buffer-initialize.md +++ /dev/null @@ -1,19 +0,0 @@ -# D3D12Buffer::Initialize - -初始化 D3D12Buffer 缓冲区资源。 - -```cpp -bool Initialize(ID3D12Device* device, uint64_t size, D3D12_RESOURCE_STATES initialState = D3D12_RESOURCE_STATE_COMMON, D3D12_HEAP_TYPE heapType = D3D12_HEAP_TYPE_DEFAULT); -``` - -**参数:** -- `device` - DirectX 12 设备指针 -- `size` - 缓冲区大小(字节) -- `initialState` - 初始资源状态,默认为 Common 状态 -- `heapType` - 堆类型,默认为默认堆(D3D12_HEAP_TYPE_DEFAULT) - -**返回:** `bool` - 初始化成功返回 true,失败返回 false - -## 相关文档 - -- [D3D12Buffer 总览](d3d12-buffer.md) diff --git a/docs/api/d3d12/d3d12-buffer-map.md b/docs/api/d3d12/d3d12-buffer-map.md deleted file mode 100644 index 144e424e..00000000 --- a/docs/api/d3d12/d3d12-buffer-map.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Buffer::Map - -映射缓冲区内存到 CPU 可访问地址。 - -```cpp -void* Map() override; -``` - -**返回:** `void*` - 映射后的内存指针 - -## 相关文档 - -- [D3D12Buffer 总览](d3d12-buffer.md) diff --git a/docs/api/d3d12/d3d12-buffer-set-data.md b/docs/api/d3d12/d3d12-buffer-set-data.md deleted file mode 100644 index badf4a76..00000000 --- a/docs/api/d3d12/d3d12-buffer-set-data.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12Buffer::SetData - -设置缓冲区数据。 - -```cpp -void SetData(const void* data, size_t size, size_t offset = 0) override; -``` - -**参数:** -- `data` - 数据指针 -- `size` - 数据大小(字节) -- `offset` - 缓冲区内的偏移量 - -## 相关文档 - -- [D3D12Buffer 总览](d3d12-buffer.md) diff --git a/docs/api/d3d12/d3d12-buffer-set-state.md b/docs/api/d3d12/d3d12-buffer-set-state.md deleted file mode 100644 index 65876bf7..00000000 --- a/docs/api/d3d12/d3d12-buffer-set-state.md +++ /dev/null @@ -1,14 +0,0 @@ -# D3D12Buffer::SetState - -设置缓冲区资源状态。 - -```cpp -void SetState(ResourceStates state); -``` - -**参数:** -- `state` - 目标资源状态 - -## 相关文档 - -- [D3D12Buffer 总览](d3d12-buffer.md) diff --git a/docs/api/d3d12/d3d12-buffer-shutdown.md b/docs/api/d3d12/d3d12-buffer-shutdown.md deleted file mode 100644 index c49cc902..00000000 --- a/docs/api/d3d12/d3d12-buffer-shutdown.md +++ /dev/null @@ -1,11 +0,0 @@ -# D3D12Buffer::Shutdown - -关闭缓冲区并释放相关资源。 - -```cpp -void Shutdown() override; -``` - -## 相关文档 - -- [D3D12Buffer 总览](d3d12-buffer.md) diff --git a/docs/api/d3d12/d3d12-buffer-unmap.md b/docs/api/d3d12/d3d12-buffer-unmap.md deleted file mode 100644 index 22bf91a0..00000000 --- a/docs/api/d3d12/d3d12-buffer-unmap.md +++ /dev/null @@ -1,11 +0,0 @@ -# D3D12Buffer::Unmap - -取消缓冲区内存映射。 - -```cpp -void Unmap() override; -``` - -## 相关文档 - -- [D3D12Buffer 总览](d3d12-buffer.md) diff --git a/docs/api/d3d12/d3d12-buffer-update-data.md b/docs/api/d3d12/d3d12-buffer-update-data.md deleted file mode 100644 index ed31d7c3..00000000 --- a/docs/api/d3d12/d3d12-buffer-update-data.md +++ /dev/null @@ -1,15 +0,0 @@ -# D3D12Buffer::UpdateData - -更新缓冲区数据。 - -```cpp -void UpdateData(const void* data, uint64_t size); -``` - -**参数:** -- `data` - 新数据指针 -- `size` - 数据大小(字节) - -## 相关文档 - -- [D3D12Buffer 总览](d3d12-buffer.md) diff --git a/docs/api/d3d12/d3d12-buffer.md b/docs/api/d3d12/d3d12-buffer.md deleted file mode 100644 index 0d65895f..00000000 --- a/docs/api/d3d12/d3d12-buffer.md +++ /dev/null @@ -1,38 +0,0 @@ -# D3D12Buffer - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` - -**头文件**: `XCEngine/RHI/D3D12/D3D12Buffer.h` - -**描述**: DirectX 12 缓冲区资源封装类,支持顶点、索引、常量等类型的缓冲区 - -## 概述 - -D3D12Buffer 是 DirectX 12 缓冲区资源的封装类,继承自 RHIBuffer 接口。支持多种缓冲区类型,包括顶点缓冲区、索引缓冲区、常量缓冲区等。提供了内存映射接口以支持 CPU 端数据更新。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `D3D12Buffer()` | 默认构造函数 | -| `~D3D12Buffer()` | 虚析构函数 | -| [Initialize](d3d12-buffer-initialize.md) | 初始化缓冲区 | -| [InitializeFromExisting](d3d12-buffer-initialize-from-existing.md) | 从现有资源初始化 | -| [InitializeWithData](d3d12-buffer-initialize-with-data.md) | 初始化并上传数据 | -| [Shutdown](d3d12-buffer-shutdown.md) | 关闭缓冲区 | -| [GetResource](d3d12-buffer-get-resource.md) | 获取底层资源指针 | -| [GetDesc](d3d12-buffer-get-desc.md) | 获取资源描述 | -| [GetGPUVirtualAddress](d3d12-buffer-get-gpu-virtual-address.md) | 获取 GPU 虚拟地址 | -| [UpdateData](d3d12-buffer-update-data.md) | 更新数据 | -| [GetState](d3d12-buffer-get-state.md) | 获取资源状态 | -| [SetState](d3d12-buffer-set-state.md) | 设置资源状态 | -| [Map](d3d12-buffer-map.md) | 映射内存 | -| [Unmap](d3d12-buffer-unmap.md) | 取消映射 | -| [SetData](d3d12-buffer-set-data.md) | 设置数据 | - -## 相关文档 - -- [D3D12 模块概览](d3d12.md) - D3D12 模块总览 -- [RHIBuffer](../rhi/buffer/buffer.md) - RHI 缓冲区基类 diff --git a/docs/api/d3d12/d3d12-command-list-clear-depth-stencil.md b/docs/api/d3d12/d3d12-command-list-clear-depth-stencil.md deleted file mode 100644 index 6191ed5c..00000000 --- a/docs/api/d3d12/d3d12-command-list-clear-depth-stencil.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12CommandList::ClearDepthStencil - -清除深度模板缓冲区。 - -```cpp -void ClearDepthStencil(void* depthStencil, float depth, uint8_t stencil) override; -``` - -**参数:** -- `depthStencil` - 深度模板目标指针 -- `depth` - 深度值 -- `stencil` - 模板值 - -## 相关文档 - -- [D3D12CommandList 总览](d3d12-command-list.md) diff --git a/docs/api/d3d12/d3d12-command-list-clear-render-target.md b/docs/api/d3d12/d3d12-command-list-clear-render-target.md deleted file mode 100644 index d6b03412..00000000 --- a/docs/api/d3d12/d3d12-command-list-clear-render-target.md +++ /dev/null @@ -1,15 +0,0 @@ -# D3D12CommandList::ClearRenderTarget - -清除渲染目标。 - -```cpp -void ClearRenderTarget(void* renderTarget, const float color[4]) override; -``` - -**参数:** -- `renderTarget` - 渲染目标指针 -- `color` - 清除颜色 RGBA - -## 相关文档 - -- [D3D12CommandList 总览](d3d12-command-list.md) diff --git a/docs/api/d3d12/d3d12-command-list-close.md b/docs/api/d3d12/d3d12-command-list-close.md deleted file mode 100644 index 2f80a86f..00000000 --- a/docs/api/d3d12/d3d12-command-list-close.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12CommandList::Close - -关闭命令列表,结束录制。 - -```cpp -void Close() override; -``` - -关闭命令列表后不能再录制命令,可以提交到命令队列执行。 - -## 相关文档 - -- [D3D12CommandList 总览](d3d12-command-list.md) diff --git a/docs/api/d3d12/d3d12-command-list-copy-resource.md b/docs/api/d3d12/d3d12-command-list-copy-resource.md deleted file mode 100644 index 6d1af959..00000000 --- a/docs/api/d3d12/d3d12-command-list-copy-resource.md +++ /dev/null @@ -1,15 +0,0 @@ -# D3D12CommandList::CopyResource - -复制资源。 - -```cpp -void CopyResource(void* dst, void* src) override; -``` - -**参数:** -- `dst` - 目标资源指针 -- `src` - 源资源指针 - -## 相关文档 - -- [D3D12CommandList 总览](d3d12-command-list.md) diff --git a/docs/api/d3d12/d3d12-command-list-dispatch.md b/docs/api/d3d12/d3d12-command-list-dispatch.md deleted file mode 100644 index 29b7fbdf..00000000 --- a/docs/api/d3d12/d3d12-command-list-dispatch.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12CommandList::Dispatch - -分发计算任务。 - -```cpp -void Dispatch(uint32_t x, uint32_t y, uint32_t z) override; -``` - -**参数:** -- `x` - X 方向线程组数量 -- `y` - Y 方向线程组数量 -- `z` - Z 方向线程组数量 - -## 相关文档 - -- [D3D12CommandList 总览](d3d12-command-list.md) diff --git a/docs/api/d3d12/d3d12-command-list-draw-indexed.md b/docs/api/d3d12/d3d12-command-list-draw-indexed.md deleted file mode 100644 index 42184ab0..00000000 --- a/docs/api/d3d12/d3d12-command-list-draw-indexed.md +++ /dev/null @@ -1,18 +0,0 @@ -# D3D12CommandList::DrawIndexed - -绘制索引图元。 - -```cpp -void DrawIndexed(uint32_t indexCount, uint32_t instanceCount = 1, uint32_t startIndex = 0, int32_t baseVertex = 0, uint32_t startInstance = 0) override; -``` - -**参数:** -- `indexCount` - 索引数量 -- `instanceCount` - 实例数量,默认为 1 -- `startIndex` - 起始索引位置 -- `baseVertex` - 基础顶点位置 -- `startInstance` - 起始实例位置 - -## 相关文档 - -- [D3D12CommandList 总览](d3d12-command-list.md) diff --git a/docs/api/d3d12/d3d12-command-list-draw.md b/docs/api/d3d12/d3d12-command-list-draw.md deleted file mode 100644 index c37096d8..00000000 --- a/docs/api/d3d12/d3d12-command-list-draw.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12CommandList::Draw - -绘制调用。 - -```cpp -void Draw(uint32_t vertexCount, uint32_t instanceCount = 1, uint32_t startVertex = 0, uint32_t startInstance = 0) override; -``` - -**参数:** -- `vertexCount` - 顶点数量 -- `instanceCount` - 实例数量,默认为 1 -- `startVertex` - 起始顶点位置 -- `startInstance` - 起始实例位置 - -## 相关文档 - -- [D3D12CommandList 总览](d3d12-command-list.md) diff --git a/docs/api/d3d12/d3d12-command-list-initialize.md b/docs/api/d3d12/d3d12-command-list-initialize.md deleted file mode 100644 index a3f97c54..00000000 --- a/docs/api/d3d12/d3d12-command-list-initialize.md +++ /dev/null @@ -1,18 +0,0 @@ -# D3D12CommandList::Initialize - -初始化命令列表。 - -```cpp -bool Initialize(ID3D12Device* device, CommandQueueType type = CommandQueueType::Direct, ID3D12CommandAllocator* allocator = nullptr); -``` - -**参数:** -- `device` - DirectX 12 设备指针 -- `type` - 命令队列类型,默认为 Direct -- `allocator` - 可选的命令分配器 - -**返回:** `bool` - 初始化成功返回 true - -## 相关文档 - -- [D3D12CommandList 总览](d3d12-command-list.md) diff --git a/docs/api/d3d12/d3d12-command-list-reset.md b/docs/api/d3d12/d3d12-command-list-reset.md deleted file mode 100644 index fa6f760f..00000000 --- a/docs/api/d3d12/d3d12-command-list-reset.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12CommandList::Reset - -重置命令列表以重新录制命令。 - -```cpp -void Reset() override; -``` - -将命令列表重置到初始状态,可重新录制命令。通常与 Close 配合使用实现命令列表重用。 - -## 相关文档 - -- [D3D12CommandList 总览](d3d12-command-list.md) diff --git a/docs/api/d3d12/d3d12-command-list-set-render-targets.md b/docs/api/d3d12/d3d12-command-list-set-render-targets.md deleted file mode 100644 index 786af366..00000000 --- a/docs/api/d3d12/d3d12-command-list-set-render-targets.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12CommandList::SetRenderTargets - -设置渲染目标。 - -```cpp -void SetRenderTargets(uint32_t count, void** renderTargets, void* depthStencil = nullptr) override; -``` - -**参数:** -- `count` - 渲染目标数量 -- `renderTargets` - 渲染目标指针数组 -- `depthStencil` - 可选的深度模板目标 - -## 相关文档 - -- [D3D12CommandList 总览](d3d12-command-list.md) diff --git a/docs/api/d3d12/d3d12-command-list-shutdown.md b/docs/api/d3d12/d3d12-command-list-shutdown.md deleted file mode 100644 index 0e0d11db..00000000 --- a/docs/api/d3d12/d3d12-command-list-shutdown.md +++ /dev/null @@ -1,11 +0,0 @@ -# D3D12CommandList::Shutdown - -关闭命令列表并释放资源。 - -```cpp -void Shutdown() override; -``` - -## 相关文档 - -- [D3D12CommandList 总览](d3d12-command-list.md) diff --git a/docs/api/d3d12/d3d12-command-list-transition-barrier.md b/docs/api/d3d12/d3d12-command-list-transition-barrier.md deleted file mode 100644 index 37c2121f..00000000 --- a/docs/api/d3d12/d3d12-command-list-transition-barrier.md +++ /dev/null @@ -1,18 +0,0 @@ -# D3D12CommandList::TransitionBarrier - -设置资源状态转换屏障。 - -```cpp -void TransitionBarrier(void* resource, ResourceStates stateBefore, ResourceStates stateAfter) override; -``` - -**参数:** -- `resource` - 目标资源指针 -- `stateBefore` - 转换前的资源状态 -- `stateAfter` - 转换后的资源状态 - -**线程安全:** ❌ 非线程安全,应在单线程中调用 - -## 相关文档 - -- [D3D12CommandList 总览](d3d12-command-list.md) diff --git a/docs/api/d3d12/d3d12-command-list.md b/docs/api/d3d12/d3d12-command-list.md deleted file mode 100644 index 3c12071f..00000000 --- a/docs/api/d3d12/d3d12-command-list.md +++ /dev/null @@ -1,85 +0,0 @@ -# D3D12CommandList - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` - -**头文件**: `XCEngine/RHI/D3D12/D3D12CommandList.h` - -**描述**: DirectX 12 命令列表封装类,负责录制图形和计算命令 - -## 概述 - -D3D12CommandList 是 DirectX 12 命令列表的封装类,继承自 RHICommandList 接口。它负责录制所有图形渲染命令,包括状态设置、绘制调用、资源状态转换、复制操作等。D3D12CommandList 支持命令列表重置和关闭以实现命令重用,内部维护资源状态跟踪以优化状态转换屏障。 - -该类是渲染管线的核心,负责将所有渲染操作命令化并提交到 GPU 执行。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `D3D12CommandList()` | 默认构造函数 | -| `~D3D12CommandList()` | 虚析构函数 | -| [Initialize](d3d12-command-list-initialize.md) | 初始化命令列表 | -| [Shutdown](d3d12-command-list-shutdown.md) | 关闭命令列表 | -| [Reset](d3d12-command-list-reset.md) | 重置命令列表 | -| [Close](d3d12-command-list-close.md) | 关闭命令列表 | -| [TransitionBarrier](d3d12-command-list-transition-barrier.md) | 设置资源转换屏障 | -| [SetRenderTargets](d3d12-command-list-set-render-targets.md) | 设置渲染目标 | -| [Draw](d3d12-command-list-draw.md) | 绘制调用 | -| [DrawIndexed](d3d12-command-list-draw-indexed.md) | 绘制索引图元 | -| [ClearRenderTarget](d3d12-command-list-clear-render-target.md) | 清除渲染目标 | -| [ClearDepthStencil](d3d12-command-list-clear-depth-stencil.md) | 清除深度模板 | -| [CopyResource](d3d12-command-list-copy-resource.md) | 复制资源 | -| [Dispatch](d3d12-command-list-dispatch.md) | 分发计算任务 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::RHI; - -// 创建命令列表 -D3D12CommandList commandList; -commandList.Initialize(device, CommandQueueType::Direct); - -// 开始录制命令 -commandList.Reset(); - -// 设置渲染目标 -commandList.SetRenderTargets(1, &renderTargetView, nullptr); -float clearColor[] = { 0.0f, 0.0f, 0.0f, 1.0f }; -commandList.ClearRenderTarget(renderTargetView, clearColor); - -// 设置视口 -Viewport viewport = { 0.0f, 0.0f, 1280.0f, 720.0f, 0.0f, 1.0f }; -commandList.SetViewport(viewport); - -// 设置图元拓扑 -commandList.SetPrimitiveTopology(PrimitiveTopology::TriangleList); - -// 绑定顶点缓冲区 -commandList.SetVertexBuffer(0, vertexBuffer, 0, sizeof(Vertex)); - -// 绑定索引缓冲区 -commandList.SetIndexBuffer(indexBuffer, 0, Format::R32_UInt); - -// 绑定管道状态 -commandList.SetPipelineState(pipelineState); - -// 绘制 -commandList.DrawIndexed(indexCount, 1, 0, 0, 0); - -// 关闭命令列表 -commandList.Close(); - -// 提交到命令队列 -commandQueue->ExecuteCommandListsInternal(1, &cmdList); -``` - -## 相关文档 - -- [D3D12 模块概览](d3d12.md) - D3D12 模块总览 -- [RHICommandList](../rhi/command-list/command-list.md) - RHI 命令列表基类 -- [D3D12CommandQueue](d3d12-command-queue.md) - 命令队列 diff --git a/docs/api/d3d12/d3d12-command-queue.md b/docs/api/d3d12/d3d12-command-queue.md deleted file mode 100644 index a815109f..00000000 --- a/docs/api/d3d12/d3d12-command-queue.md +++ /dev/null @@ -1,51 +0,0 @@ -# D3D12CommandQueue - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` - -**头文件**: `XCEngine/RHI/D3D12/D3D12CommandQueue.h` - -**描述**: DirectX 12 命令队列封装类,负责提交命令列表到 GPU 执行 - -## 概述 - -D3D12CommandQueue 是 DirectX 12 命令队列的封装类,继承自 RHICommandQueue 接口。它负责将录制好的命令列表提交到 GPU 执行,支持 GPU/CPU 同步操作,如信号、等待等。命令队列是渲染管线的核心组件,所有渲染命令都通过命令队列提交到 GPU。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `D3D12CommandQueue()` | 默认构造函数 | -| `~D3D12CommandQueue()` | 虚析构函数 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::RHI; - -// 创建命令队列 -D3D12CommandQueue commandQueue; -commandQueue.Initialize(device, CommandQueueType::Direct); - -// 执行命令列表 -ID3D12CommandList* lists[] = { commandList->GetCommandList() }; -commandQueue.ExecuteCommandListsInternal(1, lists); - -// 信号同步 -commandQueue.Signal(fence, frameIndex); -commandQueue.WaitForPreviousFrame(); - -// 等待空闲 -commandQueue.WaitForIdle(); - -// 关闭 -commandQueue.Shutdown(); -``` - -## 相关文档 - -- [D3D12 模块概览](d3d12.md) - D3D12 模块总览 -- [D3D12CommandList](d3d12-command-list.md) - 命令列表 diff --git a/docs/api/d3d12/d3d12-device-check-feature-support.md b/docs/api/d3d12/d3d12-device-check-feature-support.md deleted file mode 100644 index 227c6a52..00000000 --- a/docs/api/d3d12/d3d12-device-check-feature-support.md +++ /dev/null @@ -1,18 +0,0 @@ -# D3D12Device::CheckFeatureSupport - -检查设备是否支持特定功能特性。 - -```cpp -bool CheckFeatureSupport(D3D12_FEATURE feature, void* featureSupportData, uint32_t featureSupportDataSize); -``` - -**参数:** -- `feature` - 要检查的功能特性 -- `featureSupportData` - 存储结果的缓冲区 -- `featureSupportDataSize` - 缓冲区大小 - -**返回:** `bool` - 支持返回 true,否则返回 false - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) diff --git a/docs/api/d3d12/d3d12-device-compile-shader.md b/docs/api/d3d12/d3d12-device-compile-shader.md deleted file mode 100644 index 650e789c..00000000 --- a/docs/api/d3d12/d3d12-device-compile-shader.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12Device::CompileShader - -编译着色器。 - -```cpp -RHIShader* CompileShader(const ShaderCompileDesc& desc) override; -``` - -**参数:** -- `desc` - 着色器编译描述 - -**返回:** `RHIShader*` - 创建的着色器指针 - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) diff --git a/docs/api/d3d12/d3d12-device-create-buffer.md b/docs/api/d3d12/d3d12-device-create-buffer.md deleted file mode 100644 index 52ffab82..00000000 --- a/docs/api/d3d12/d3d12-device-create-buffer.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12Device::CreateBuffer - -创建缓冲区资源。 - -```cpp -RHIBuffer* CreateBuffer(const BufferDesc& desc) override; -``` - -**参数:** -- `desc` - 缓冲区描述结构体 - -**返回:** `RHIBuffer*` - 创建的缓冲区指针,失败返回 nullptr - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) -- [D3D12Buffer](d3d12-buffer.md) diff --git a/docs/api/d3d12/d3d12-device-create-command-list.md b/docs/api/d3d12/d3d12-device-create-command-list.md deleted file mode 100644 index 6336903c..00000000 --- a/docs/api/d3d12/d3d12-device-create-command-list.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12Device::CreateCommandList - -创建命令列表。 - -```cpp -RHICommandList* CreateCommandList(const CommandListDesc& desc) override; -``` - -**参数:** -- `desc` - 命令列表描述结构体 - -**返回:** `RHICommandList*` - 创建的命令列表指针,失败返回 nullptr - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) -- [D3D12CommandList](d3d12-command-list.md) diff --git a/docs/api/d3d12/d3d12-device-create-command-queue-impl.md b/docs/api/d3d12/d3d12-device-create-command-queue-impl.md deleted file mode 100644 index c66870e7..00000000 --- a/docs/api/d3d12/d3d12-device-create-command-queue-impl.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12Device::CreateCommandQueueImpl - -内部创建命令队列。 - -```cpp -D3D12CommandQueue* CreateCommandQueueImpl(const CommandQueueDesc& desc); -``` - -**参数:** -- `desc` - 命令队列描述 - -**返回:** `D3D12CommandQueue*` - 创建的命令队列指针 - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) -- [D3D12CommandQueue](d3d12-command-queue.md) diff --git a/docs/api/d3d12/d3d12-device-create-command-queue.md b/docs/api/d3d12/d3d12-device-create-command-queue.md deleted file mode 100644 index 1354a24f..00000000 --- a/docs/api/d3d12/d3d12-device-create-command-queue.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12Device::CreateCommandQueue - -创建命令队列。 - -```cpp -RHICommandQueue* CreateCommandQueue(const CommandQueueDesc& desc) override; -``` - -**参数:** -- `desc` - 命令队列描述 - -**返回:** `RHICommandQueue*` - 创建的命令队列指针 - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) -- [D3D12CommandQueue](d3d12-command-queue.md) diff --git a/docs/api/d3d12/d3d12-device-create-fence.md b/docs/api/d3d12/d3d12-device-create-fence.md deleted file mode 100644 index b4e85ea4..00000000 --- a/docs/api/d3d12/d3d12-device-create-fence.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12Device::CreateFence - -创建围栏。 - -```cpp -RHIFence* CreateFence(const FenceDesc& desc) override; -``` - -**参数:** -- `desc` - 围栏描述 - -**返回:** `RHIFence*` - 创建的围栏指针 - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) diff --git a/docs/api/d3d12/d3d12-device-create-pipeline-state.md b/docs/api/d3d12/d3d12-device-create-pipeline-state.md deleted file mode 100644 index e565b6c7..00000000 --- a/docs/api/d3d12/d3d12-device-create-pipeline-state.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12Device::CreatePipelineState - -创建管道状态对象。 - -```cpp -RHIPipelineState* CreatePipelineState(const PipelineStateDesc& desc) override; -``` - -**参数:** -- `desc` - 管道状态描述 - -**返回:** `RHIPipelineState*` - 创建的管道状态指针 - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) diff --git a/docs/api/d3d12/d3d12-device-create-sampler.md b/docs/api/d3d12/d3d12-device-create-sampler.md deleted file mode 100644 index 68e8862c..00000000 --- a/docs/api/d3d12/d3d12-device-create-sampler.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12Device::CreateSampler - -创建采样器。 - -```cpp -RHISampler* CreateSampler(const SamplerDesc& desc) override; -``` - -**参数:** -- `desc` - 采样器描述 - -**返回:** `RHISampler*` - 创建的采样器指针 - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) diff --git a/docs/api/d3d12/d3d12-device-create-swap-chain.md b/docs/api/d3d12/d3d12-device-create-swap-chain.md deleted file mode 100644 index a6631b1a..00000000 --- a/docs/api/d3d12/d3d12-device-create-swap-chain.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12Device::CreateSwapChain - -创建交换链。 - -```cpp -RHISwapChain* CreateSwapChain(const SwapChainDesc& desc) override; -``` - -**参数:** -- `desc` - 交换链描述结构体 - -**返回:** `RHISwapChain*` - 创建的交换链指针,失败返回 nullptr - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) -- [D3D12SwapChain](d3d12-swap-chain.md) diff --git a/docs/api/d3d12/d3d12-device-create-texture.md b/docs/api/d3d12/d3d12-device-create-texture.md deleted file mode 100644 index 7b3e32b7..00000000 --- a/docs/api/d3d12/d3d12-device-create-texture.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12Device::CreateTexture - -创建纹理资源。 - -```cpp -RHITexture* CreateTexture(const TextureDesc& desc) override; -``` - -**参数:** -- `desc` - 纹理描述结构体 - -**返回:** `RHITexture*` - 创建的纹理指针,失败返回 nullptr - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) -- [D3D12Texture](d3d12-texture.md) diff --git a/docs/api/d3d12/d3d12-device-enumerate-adapters.md b/docs/api/d3d12/d3d12-device-enumerate-adapters.md deleted file mode 100644 index fed644df..00000000 --- a/docs/api/d3d12/d3d12-device-enumerate-adapters.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Device::EnumerateAdapters - -枚举所有可用的显示适配器。 - -```cpp -std::vector EnumerateAdapters(); -``` - -**返回:** `std::vector` - 所有适配器的信息列表 - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) diff --git a/docs/api/d3d12/d3d12-device-get-adapter-info.md b/docs/api/d3d12/d3d12-device-get-adapter-info.md deleted file mode 100644 index 213b3205..00000000 --- a/docs/api/d3d12/d3d12-device-get-adapter-info.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Device::GetAdapterInfo - -获取当前适配器信息。 - -```cpp -const AdapterInfo& GetAdapterInfo() const { return m_adapterInfo; } -``` - -**返回:** `const AdapterInfo&` - 适配器信息引用 - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) diff --git a/docs/api/d3d12/d3d12-device-get-capabilities.md b/docs/api/d3d12/d3d12-device-get-capabilities.md deleted file mode 100644 index 908294f0..00000000 --- a/docs/api/d3d12/d3d12-device-get-capabilities.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Device::GetCapabilities - -获取设备能力。 - -```cpp -const RHICapabilities& GetCapabilities() const override; -``` - -**返回:** `const RHICapabilities&` - 设备能力引用 - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) diff --git a/docs/api/d3d12/d3d12-device-get-descriptor-handle-increment-size.md b/docs/api/d3d12/d3d12-device-get-descriptor-handle-increment-size.md deleted file mode 100644 index a51e3a11..00000000 --- a/docs/api/d3d12/d3d12-device-get-descriptor-handle-increment-size.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12Device::GetDescriptorHandleIncrementSize - -获取指定类型描述符堆的增量大小。 - -```cpp -UINT GetDescriptorHandleIncrementSize(DescriptorHeapType type) const; -``` - -**参数:** -- `type` - 描述符堆类型 - -**返回:** `UINT` - 描述符增量大小(字节) - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) diff --git a/docs/api/d3d12/d3d12-device-get-device-info.md b/docs/api/d3d12/d3d12-device-get-device-info.md deleted file mode 100644 index 118a8e9d..00000000 --- a/docs/api/d3d12/d3d12-device-get-device-info.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Device::GetDeviceInfo - -获取设备信息。 - -```cpp -const RHIDeviceInfo& GetDeviceInfo() const override; -``` - -**返回:** `const RHIDeviceInfo&` - 设备信息引用 - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) diff --git a/docs/api/d3d12/d3d12-device-get-device.md b/docs/api/d3d12/d3d12-device-get-device.md deleted file mode 100644 index 0d8a7301..00000000 --- a/docs/api/d3d12/d3d12-device-get-device.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Device::GetDevice - -获取底层 ID3D12Device 指针。 - -```cpp -ID3D12Device* GetDevice() const { return m_device.Get(); } -``` - -**返回:** `ID3D12Device*` - DirectX 12 设备指针 - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) diff --git a/docs/api/d3d12/d3d12-device-get-factory.md b/docs/api/d3d12/d3d12-device-get-factory.md deleted file mode 100644 index 8381b019..00000000 --- a/docs/api/d3d12/d3d12-device-get-factory.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Device::GetFactory - -获取底层 IDXGIFactory4 指针。 - -```cpp -IDXGIFactory4* GetFactory() const { return m_factory.Get(); } -``` - -**返回:** `IDXGIFactory4*` - DXGI 工厂指针 - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) diff --git a/docs/api/d3d12/d3d12-device-get-native-device.md b/docs/api/d3d12/d3d12-device-get-native-device.md deleted file mode 100644 index 6f93d49f..00000000 --- a/docs/api/d3d12/d3d12-device-get-native-device.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Device::GetNativeDevice - -获取原生设备指针。 - -```cpp -void* GetNativeDevice() override; -``` - -**返回:** `void*` - 原生设备指针 - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) diff --git a/docs/api/d3d12/d3d12-device-get-native-handle.md b/docs/api/d3d12/d3d12-device-get-native-handle.md deleted file mode 100644 index 1b2276ad..00000000 --- a/docs/api/d3d12/d3d12-device-get-native-handle.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Device::GetNativeHandle - -获取原生句柄。 - -```cpp -void* GetNativeHandle() const; -``` - -**返回:** `void*` - 原生句柄 - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) diff --git a/docs/api/d3d12/d3d12-device-initialize.md b/docs/api/d3d12/d3d12-device-initialize.md deleted file mode 100644 index d2953a8d..00000000 --- a/docs/api/d3d12/d3d12-device-initialize.md +++ /dev/null @@ -1,45 +0,0 @@ -# D3D12Device::Initialize - -初始化 DirectX 12 设备。 - -```cpp -bool Initialize(const RHIDeviceDesc& desc) override; -``` - -根据提供的设备描述配置创建设备对象、DXGI 工厂和 Direct3D 12 设备。此方法会枚举指定的适配器,获取其信息,并初始化调试层(如果启用)。 - -**参数:** -- `desc` - 设备描述结构体,包含启用调试层、GPU 验证、适配器索引、窗口句柄、分辨率等配置 - -**返回:** `bool` - 初始化成功返回 true,否则返回 false - -**线程安全:** ❌ 非线程安全,应在单线程中调用 - -**注意:** -- 如果 `desc.enableDebugLayer` 为 true,将启用 DirectX 12 调试层 -- 如果 `desc.enableGPUValidation` 为 true,将启用 GPU 验证 -- 适配器索引无效时会自动回退到默认适配器 - -**示例:** - -```cpp -RHIDeviceDesc desc; -desc.enableDebugLayer = true; -desc.enableGPUValidation = true; -desc.adapterIndex = 0; -desc.windowHandle = hwnd; -desc.width = 1920; -desc.height = 1080; -desc.appName = L"MyApp"; - -D3D12Device device; -if (!device.Initialize(desc)) { - MessageBox(L"Failed to initialize D3D12 device"); - return false; -} -``` - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) -- [D3D12Device::Shutdown](d3d12-device-shutdown.md) diff --git a/docs/api/d3d12/d3d12-device-is-device-removed.md b/docs/api/d3d12/d3d12-device-is-device-removed.md deleted file mode 100644 index 39a0b161..00000000 --- a/docs/api/d3d12/d3d12-device-is-device-removed.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Device::IsDeviceRemoved - -检查设备是否已被移除。 - -```cpp -bool IsDeviceRemoved() const { return m_isDeviceRemoved; } -``` - -**返回:** `bool` - 设备已移除返回 true - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) diff --git a/docs/api/d3d12/d3d12-device-set-device-removed.md b/docs/api/d3d12/d3d12-device-set-device-removed.md deleted file mode 100644 index 8008efcf..00000000 --- a/docs/api/d3d12/d3d12-device-set-device-removed.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Device::SetDeviceRemoved - -标记设备已被移除。 - -```cpp -void SetDeviceRemoved() { m_isDeviceRemoved = true; } -``` - -通常在设备丢失或移除时调用。 - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) diff --git a/docs/api/d3d12/d3d12-device-shutdown.md b/docs/api/d3d12/d3d12-device-shutdown.md deleted file mode 100644 index d32c1cde..00000000 --- a/docs/api/d3d12/d3d12-device-shutdown.md +++ /dev/null @@ -1,20 +0,0 @@ -# D3D12Device::Shutdown - -关闭设备并释放所有相关资源。 - -```cpp -void Shutdown() override; -``` - -关闭设备连接,释放 DXGI 工厂、设备和适配器接口。调用此方法后,设备将处于未初始化状态,可以重新调用 Initialize 重新初始化。 - -**线程安全:** ❌ 非线程安全,确保在所有相关资源释放后再调用 - -**注意:** -- 调用前应确保所有命令队列已执行完毕 -- 所有通过此设备创建的资源应在此之前已释放 - -## 相关文档 - -- [D3D12Device 总览](d3d12-device.md) -- [D3D12Device::Initialize](d3d12-device-initialize.md) diff --git a/docs/api/d3d12/d3d12-device.md b/docs/api/d3d12/d3d12-device.md deleted file mode 100644 index 48216487..00000000 --- a/docs/api/d3d12/d3d12-device.md +++ /dev/null @@ -1,122 +0,0 @@ -# D3D12Device - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` - -**头文件**: `XCEngine/RHI/D3D12/D3D12Device.h` - -**描述**: DirectX 12 图形设备封装类,负责创建和管理所有 DirectX 12 图形对象 - -## 概述 - -D3D12Device 是 DirectX 12 的核心设备类,封装了 ID3D12Device 接口。它负责枚举显示适配器、创建命令队列、缓冲区、纹理、描述符堆、管道状态对象等所有图形资源。D3D12Device 继承自 RHIDevice 接口,提供跨后端的统一设备管理抽象。 - -该类支持可选的调试层和 GPU 验证功能,便于开发阶段的问题诊断。 - -## 适配器信息结构体 - -### AdapterInfo - -存储适配器详细信息的结构体。 - -| 成员 | 类型 | 描述 | -|------|------|------| -| `description` | `std::wstring` | 适配器描述名称 | -| `dedicatedVideoMemory` | `uint64_t` | 专用视频内存大小(字节) | -| `dedicatedSystemMemory` | `uint64_t` | 专用系统内存大小(字节) | -| `sharedSystemMemory` | `uint64_t` | 共享系统内存大小(字节) | -| `vendorId` | `uint32_t` | 硬件供应商 ID | -| `deviceId` | `uint32_t` | 设备 ID | -| `isSoftware` | `bool` | 是否为软件适配器 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `D3D12Device()` | 默认构造函数 | -| `~D3D12Device()` | 虚析构函数 | -| [Initialize](d3d12-device-initialize.md) | 初始化设备 | -| [Shutdown](d3d12-device-shutdown.md) | 关闭设备并释放资源 | -| [GetDevice](d3d12-device-get-device.md) | 获取底层 ID3D12Device 指针 | -| [GetFactory](d3d12-device-get-factory.md) | 获取底层 IDXGIFactory4 指针 | -| [GetAdapterInfo](d3d12-device-get-adapter-info.md) | 获取当前适配器信息 | -| [EnumerateAdapters](d3d12-device-enumerate-adapters.md) | 枚举所有可用适配器 | -| [GetDescriptorHandleIncrementSize](d3d12-device-get-descriptor-handle-increment-size.md) | 获取描述符增量大小 | -| [CheckFeatureSupport](d3d12-device-check-feature-support.md) | 检查功能特性支持 | -| [SetDeviceRemoved](d3d12-device-set-device-removed.md) | 标记设备已移除 | -| [IsDeviceRemoved](d3d12-device-is-device-removed.md) | 检查设备是否已移除 | -| [CreateBuffer](d3d12-device-create-buffer.md) | 创建缓冲区资源 | -| [CreateTexture](d3d12-device-create-texture.md) | 创建纹理资源 | -| [CreateSwapChain](d3d12-device-create-swap-chain.md) | 创建交换链 | -| [CreateCommandList](d3d12-device-create-command-list.md) | 创建命令列表 | -| [CreateCommandQueue](d3d12-device-create-command-queue.md) | 创建命令队列 | -| [CompileShader](d3d12-device-compile-shader.md) | 编译着色器 | -| [CreatePipelineState](d3d12-device-create-pipeline-state.md) | 创建管道状态对象 | -| [CreateFence](d3d12-device-create-fence.md) | 创建围栏 | -| [CreateSampler](d3d12-device-create-sampler.md) | 创建采样器 | -| [GetCapabilities](d3d12-device-get-capabilities.md) | 获取设备能力 | -| [GetDeviceInfo](d3d12-device-get-device-info.md) | 获取设备信息 | -| [GetNativeDevice](d3d12-device-get-native-device.md) | 获取原生设备指针 | -| [GetNativeHandle](d3d12-device-get-native-handle.md) | 获取原生句柄 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::RHI; - -// 创建设备实例 -D3D12Device device; - -// 配置设备参数 -RHIDeviceDesc desc; -desc.enableDebugLayer = true; // 启用调试层 -desc.enableGPUValidation = true; // 启用 GPU 验证 -desc.adapterIndex = 0; // 使用第一个适配器 -desc.windowHandle = hwnd; // 窗口句柄 -desc.width = 1280; -desc.height = 720; -desc.appName = L"XCEngine App"; - -// 初始化设备 -if (!device.Initialize(desc)) { - // 处理初始化失败 - return false; -} - -// 获取设备信息 -const RHIDeviceInfo& info = device.GetDeviceInfo(); -printf("GPU: %ls\n", info.description.c_str()); - -// 获取设备能力 -const RHICapabilities& caps = device.GetCapabilities(); -printf("MaxTextureSize: %u\n", caps.maxTextureSize); - -// 创建命令队列 -CommandQueueDesc queueDesc; -queueDesc.queueType = static_cast(CommandQueueType::Direct); -queueDesc.priority = 0; -queueDesc.nodeMask = 0; -queueDesc.flags = 0; -D3D12CommandQueue* commandQueue = device.CreateCommandQueueImpl(queueDesc); - -// 创建缓冲区 -BufferDesc bufferDesc; -bufferDesc.size = 1024 * 1024; // 1MB -bufferDesc.stride = 0; -bufferDesc.bufferType = static_cast(BufferType::Vertex); -bufferDesc.flags = 0; -RHIBuffer* buffer = device.CreateBuffer(bufferDesc); - -// 设备关闭 -device.Shutdown(); -``` - -## 相关文档 - -- [D3D12 模块概览](d3d12.md) - D3D12 模块总览 -- [RHIDevice](../rhi/device/device.md) - RHI 设备基类 -- [D3D12CommandQueue](d3d12-command-queue.md) - 命令队列 -- [D3D12Buffer](d3d12-buffer.md) - 缓冲区资源 diff --git a/docs/api/d3d12/d3d12-swap-chain-get-current-back-buffer-index.md b/docs/api/d3d12/d3d12-swap-chain-get-current-back-buffer-index.md deleted file mode 100644 index 2af01827..00000000 --- a/docs/api/d3d12/d3d12-swap-chain-get-current-back-buffer-index.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12SwapChain::GetCurrentBackBufferIndex - -获取当前后缓冲区的索引。 - -```cpp -uint32_t GetCurrentBackBufferIndex() const override; -``` - -**返回:** `uint32_t` - 当前后缓冲区索引 - -## 相关文档 - -- [D3D12SwapChain 总览](d3d12-swap-chain.md) diff --git a/docs/api/d3d12/d3d12-swap-chain-get-current-back-buffer.md b/docs/api/d3d12/d3d12-swap-chain-get-current-back-buffer.md deleted file mode 100644 index b269f09e..00000000 --- a/docs/api/d3d12/d3d12-swap-chain-get-current-back-buffer.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12SwapChain::GetCurrentBackBuffer - -获取当前后缓冲区的纹理对象。 - -```cpp -RHITexture* GetCurrentBackBuffer() override; -``` - -**返回:** `RHITexture*` - 当前后缓冲区的纹理指针 - -## 相关文档 - -- [D3D12SwapChain 总览](d3d12-swap-chain.md) diff --git a/docs/api/d3d12/d3d12-swap-chain-initialize.md b/docs/api/d3d12/d3d12-swap-chain-initialize.md deleted file mode 100644 index 3d322759..00000000 --- a/docs/api/d3d12/d3d12-swap-chain-initialize.md +++ /dev/null @@ -1,36 +0,0 @@ -# D3D12SwapChain::Initialize - -初始化 D3D12SwapChain 交换链。 - -## 重载 1: 从头创建 - -```cpp -bool Initialize(IDXGIFactory4* factory, ID3D12CommandQueue* commandQueue, HWND windowHandle, uint32_t width, uint32_t height, uint32_t bufferCount = 2); -``` - -**参数:** -- `factory` - DXGI 工厂指针 -- `commandQueue` - 命令队列指针 -- `windowHandle` - 窗口句柄 -- `width` - 宽度 -- `height` - 高度 -- `bufferCount` - 缓冲数量,默认为 2 - -**返回:** `bool` - 初始化成功返回 true - -## 重载 2: 从现有交换链创建 - -```cpp -bool Initialize(IDXGISwapChain* swapChain, uint32_t width, uint32_t height); -``` - -**参数:** -- `swapChain` - 现有 DXGI 交换链指针 -- `width` - 宽度 -- `height` - 高度 - -**返回:** `bool` - 初始化成功返回 true - -## 相关文档 - -- [D3D12SwapChain 总览](d3d12-swap-chain.md) diff --git a/docs/api/d3d12/d3d12-swap-chain-present.md b/docs/api/d3d12/d3d12-swap-chain-present.md deleted file mode 100644 index df7d1cb7..00000000 --- a/docs/api/d3d12/d3d12-swap-chain-present.md +++ /dev/null @@ -1,15 +0,0 @@ -# D3D12SwapChain::Present - -呈现当前帧。 - -```cpp -void Present(uint32_t syncInterval = 1, uint32_t flags = 0) override; -``` - -**参数:** -- `syncInterval` - 垂直同步间隔,默认为 1 -- `flags` - 呈现标志,默认为 0 - -## 相关文档 - -- [D3D12SwapChain 总览](d3d12-swap-chain.md) diff --git a/docs/api/d3d12/d3d12-swap-chain-resize.md b/docs/api/d3d12/d3d12-swap-chain-resize.md deleted file mode 100644 index d4f1f2be..00000000 --- a/docs/api/d3d12/d3d12-swap-chain-resize.md +++ /dev/null @@ -1,15 +0,0 @@ -# D3D12SwapChain::Resize - -调整交换链大小。 - -```cpp -void Resize(uint32_t width, uint32_t height) override; -``` - -**参数:** -- `width` - 新宽度 -- `height` - 新高度 - -## 相关文档 - -- [D3D12SwapChain 总览](d3d12-swap-chain.md) diff --git a/docs/api/d3d12/d3d12-swap-chain-shutdown.md b/docs/api/d3d12/d3d12-swap-chain-shutdown.md deleted file mode 100644 index 88a388a4..00000000 --- a/docs/api/d3d12/d3d12-swap-chain-shutdown.md +++ /dev/null @@ -1,11 +0,0 @@ -# D3D12SwapChain::Shutdown - -关闭交换链并释放相关资源。 - -```cpp -void Shutdown() override; -``` - -## 相关文档 - -- [D3D12SwapChain 总览](d3d12-swap-chain.md) diff --git a/docs/api/d3d12/d3d12-swap-chain.md b/docs/api/d3d12/d3d12-swap-chain.md deleted file mode 100644 index c19649f5..00000000 --- a/docs/api/d3d12/d3d12-swap-chain.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12SwapChain - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` - -**头文件**: `XCEngine/RHI/D3D12/D3D12SwapChain.h` - -**描述**: DirectX 12 交换链封装类,管理帧缓冲和呈现操作 - -## 概述 - -D3D12SwapChain 是 DirectX 12 交换链的封装类,继承自 RHISwapChain 接口。负责管理前后缓冲交换、呈现操作和窗口事件处理。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `D3D12SwapChain()` | 默认构造函数 | -| `~D3D12SwapChain()` | 虚析构函数 | -| [Initialize](d3d12-swap-chain-initialize.md) | 初始化交换链 | -| [Shutdown](d3d12-swap-chain-shutdown.md) | 关闭交换链 | -| [GetCurrentBackBufferIndex](d3d12-swap-chain-get-current-back-buffer-index.md) | 获取当前后缓冲索引 | -| [GetCurrentBackBuffer](d3d12-swap-chain-get-current-back-buffer.md) | 获取当前后缓冲 | -| [Present](d3d12-swap-chain-present.md) | 呈现 | -| [Resize](d3d12-swap-chain-resize.md) | 调整大小 | - -## 相关文档 - -- [D3D12 模块概览](d3d12.md) - D3D12 模块总览 -- [RHISwapChain](../rhi/swap-chain/swap-chain.md) - RHI 交换链基类 diff --git a/docs/api/d3d12/d3d12-texture-get-depth.md b/docs/api/d3d12/d3d12-texture-get-depth.md deleted file mode 100644 index ff88b250..00000000 --- a/docs/api/d3d12/d3d12-texture-get-depth.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Texture::GetDepth - -获取纹理深度。 - -```cpp -uint32_t GetDepth() const override; -``` - -**返回:** `uint32_t` - 纹理深度(3D纹理)或数组大小 - -## 相关文档 - -- [D3D12Texture 总览](d3d12-texture.md) diff --git a/docs/api/d3d12/d3d12-texture-get-desc.md b/docs/api/d3d12/d3d12-texture-get-desc.md deleted file mode 100644 index 7d71c861..00000000 --- a/docs/api/d3d12/d3d12-texture-get-desc.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Texture::GetDesc - -获取 D3D12 资源描述结构。 - -```cpp -D3D12_RESOURCE_DESC GetDesc() const; -``` - -**返回:** `D3D12_RESOURCE_DESC` - D3D12 资源描述结构 - -## 相关文档 - -- [D3D12Texture 总览](d3d12-texture.md) diff --git a/docs/api/d3d12/d3d12-texture-get-height.md b/docs/api/d3d12/d3d12-texture-get-height.md deleted file mode 100644 index dcc2933f..00000000 --- a/docs/api/d3d12/d3d12-texture-get-height.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Texture::GetHeight - -获取纹理高度。 - -```cpp -uint32_t GetHeight() const override; -``` - -**返回:** `uint32_t` - 纹理高度(像素) - -## 相关文档 - -- [D3D12Texture 总览](d3d12-texture.md) diff --git a/docs/api/d3d12/d3d12-texture-get-mip-levels.md b/docs/api/d3d12/d3d12-texture-get-mip-levels.md deleted file mode 100644 index d4008a81..00000000 --- a/docs/api/d3d12/d3d12-texture-get-mip-levels.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Texture::GetMipLevels - -获取 Mip 级别数。 - -```cpp -uint32_t GetMipLevels() const override; -``` - -**返回:** `uint32_t` - Mip 级别数量 - -## 相关文档 - -- [D3D12Texture 总览](d3d12-texture.md) diff --git a/docs/api/d3d12/d3d12-texture-get-resource.md b/docs/api/d3d12/d3d12-texture-get-resource.md deleted file mode 100644 index de586444..00000000 --- a/docs/api/d3d12/d3d12-texture-get-resource.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Texture::GetResource - -获取底层 D3D12 资源指针。 - -```cpp -ID3D12Resource* GetResource() const; -``` - -**返回:** `ID3D12Resource*` - 底层 D3D12 资源指针 - -## 相关文档 - -- [D3D12Texture 总览](d3d12-texture.md) diff --git a/docs/api/d3d12/d3d12-texture-get-state.md b/docs/api/d3d12/d3d12-texture-get-state.md deleted file mode 100644 index dfd05c68..00000000 --- a/docs/api/d3d12/d3d12-texture-get-state.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Texture::GetState - -获取纹理当前资源状态。 - -```cpp -ResourceStates GetState() const override; -``` - -**返回:** `ResourceStates` - 当前资源状态 - -## 相关文档 - -- [D3D12Texture 总览](d3d12-texture.md) diff --git a/docs/api/d3d12/d3d12-texture-get-width.md b/docs/api/d3d12/d3d12-texture-get-width.md deleted file mode 100644 index 5229a95b..00000000 --- a/docs/api/d3d12/d3d12-texture-get-width.md +++ /dev/null @@ -1,13 +0,0 @@ -# D3D12Texture::GetWidth - -获取纹理宽度。 - -```cpp -uint32_t GetWidth() const override; -``` - -**返回:** `uint32_t` - 纹理宽度(像素) - -## 相关文档 - -- [D3D12Texture 总览](d3d12-texture.md) diff --git a/docs/api/d3d12/d3d12-texture-initialize-depth-stencil.md b/docs/api/d3d12/d3d12-texture-initialize-depth-stencil.md deleted file mode 100644 index b15c1ee3..00000000 --- a/docs/api/d3d12/d3d12-texture-initialize-depth-stencil.md +++ /dev/null @@ -1,19 +0,0 @@ -# D3D12Texture::InitializeDepthStencil - -初始化深度模板纹理。 - -```cpp -bool InitializeDepthStencil(ID3D12Device* device, uint32_t width, uint32_t height, DXGI_FORMAT format = DXGI_FORMAT_D24_UNORM_S8_UINT); -``` - -**参数:** -- `device` - DirectX 12 设备指针 -- `width` - 纹理宽度 -- `height` - 纹理高度 -- `format` - 深度格式,默认为 DXGI_FORMAT_D24_UNORM_S8_UINT - -**返回:** `bool` - 初始化成功返回 true,失败返回 false - -## 相关文档 - -- [D3D12Texture 总览](d3d12-texture.md) diff --git a/docs/api/d3d12/d3d12-texture-initialize-from-data.md b/docs/api/d3d12/d3d12-texture-initialize-from-data.md deleted file mode 100644 index 70922722..00000000 --- a/docs/api/d3d12/d3d12-texture-initialize-from-data.md +++ /dev/null @@ -1,23 +0,0 @@ -# D3D12Texture::InitializeFromData - -从数据初始化纹理。 - -```cpp -bool InitializeFromData(ID3D12Device* device, ID3D12GraphicsCommandList* commandList, const void* pixelData, uint32_t width, uint32_t height, DXGI_FORMAT format, uint32_t rowPitch = 0, ComPtr* uploadBuffer = nullptr); -``` - -**参数:** -- `device` - DirectX 12 设备指针 -- `commandList` - 用于上传命令的命令列表 -- `pixelData` - 像素数据指针 -- `width` - 纹理宽度 -- `height` - 纹理高度 -- `format` - 纹理格式 -- `rowPitch` - 行pitch(默认为0) -- `uploadBuffer` - 可选的上传缓冲区输出指针 - -**返回:** `bool` - 初始化成功返回 true,失败返回 false - -## 相关文档 - -- [D3D12Texture 总览](d3d12-texture.md) diff --git a/docs/api/d3d12/d3d12-texture-initialize-from-existing.md b/docs/api/d3d12/d3d12-texture-initialize-from-existing.md deleted file mode 100644 index 6223763f..00000000 --- a/docs/api/d3d12/d3d12-texture-initialize-from-existing.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12Texture::InitializeFromExisting - -从现有的 D3D12 资源初始化纹理。 - -```cpp -bool InitializeFromExisting(ID3D12Resource* resource, bool ownsResource = false); -``` - -**参数:** -- `resource` - 已存在的 D3D12 资源指针 -- `ownsResource` - 是否拥有资源所有权 - -**返回:** `bool` - 初始化成功返回 true,失败返回 false - -## 相关文档 - -- [D3D12Texture 总览](d3d12-texture.md) diff --git a/docs/api/d3d12/d3d12-texture-initialize.md b/docs/api/d3d12/d3d12-texture-initialize.md deleted file mode 100644 index f39038a7..00000000 --- a/docs/api/d3d12/d3d12-texture-initialize.md +++ /dev/null @@ -1,18 +0,0 @@ -# D3D12Texture::Initialize - -初始化 D3D12Texture 纹理资源。 - -```cpp -bool Initialize(ID3D12Device* device, const D3D12_RESOURCE_DESC& desc, D3D12_RESOURCE_STATES initialState = D3D12_RESOURCE_STATE_COMMON); -``` - -**参数:** -- `device` - DirectX 12 设备指针 -- `desc` - 纹理资源描述 -- `initialState` - 初始资源状态,默认为 Common 状态 - -**返回:** `bool` - 初始化成功返回 true,失败返回 false - -## 相关文档 - -- [D3D12Texture 总览](d3d12-texture.md) diff --git a/docs/api/d3d12/d3d12-texture-set-state.md b/docs/api/d3d12/d3d12-texture-set-state.md deleted file mode 100644 index 1b141af7..00000000 --- a/docs/api/d3d12/d3d12-texture-set-state.md +++ /dev/null @@ -1,14 +0,0 @@ -# D3D12Texture::SetState - -设置纹理资源状态。 - -```cpp -void SetState(ResourceStates state) override; -``` - -**参数:** -- `state` - 目标资源状态 - -## 相关文档 - -- [D3D12Texture 总览](d3d12-texture.md) diff --git a/docs/api/d3d12/d3d12-texture-shutdown.md b/docs/api/d3d12/d3d12-texture-shutdown.md deleted file mode 100644 index 94934c03..00000000 --- a/docs/api/d3d12/d3d12-texture-shutdown.md +++ /dev/null @@ -1,11 +0,0 @@ -# D3D12Texture::Shutdown - -关闭纹理并释放相关资源。 - -```cpp -void Shutdown() override; -``` - -## 相关文档 - -- [D3D12Texture 总览](d3d12-texture.md) diff --git a/docs/api/d3d12/d3d12-texture.md b/docs/api/d3d12/d3d12-texture.md deleted file mode 100644 index c5030687..00000000 --- a/docs/api/d3d12/d3d12-texture.md +++ /dev/null @@ -1,38 +0,0 @@ -# D3D12Texture - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` - -**头文件**: `XCEngine/RHI/D3D12/D3D12Texture.h` - -**描述**: DirectX 12 纹理资源封装类,支持 1D/2D/3D/立方体纹理 - -## 概述 - -D3D12Texture 是 DirectX 12 纹理资源的封装类,继承自 RHITexture 接口。支持多种纹理类型,包括 1D、2D、3D 纹理和立方体纹理。提供了从数据初始化和深度模板纹理初始化的功能。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `D3D12Texture()` | 默认构造函数 | -| `~D3D12Texture()` | 虚析构函数 | -| [Initialize](d3d12-texture-initialize.md) | 初始化纹理 | -| [InitializeFromExisting](d3d12-texture-initialize-from-existing.md) | 从现有资源初始化 | -| [InitializeFromData](d3d12-texture-initialize-from-data.md) | 从数据初始化 | -| [InitializeDepthStencil](d3d12-texture-initialize-depth-stencil.md) | 初始化深度模板纹理 | -| [Shutdown](d3d12-texture-shutdown.md) | 关闭纹理 | -| [GetResource](d3d12-texture-get-resource.md) | 获取底层资源指针 | -| [GetDesc](d3d12-texture-get-desc.md) | 获取资源描述 | -| [GetWidth](d3d12-texture-get-width.md) | 获取宽度 | -| [GetHeight](d3d12-texture-get-height.md) | 获取高度 | -| [GetDepth](d3d12-texture-get-depth.md) | 获取深度 | -| [GetMipLevels](d3d12-texture-get-mip-levels.md) | 获取 Mip 级别数 | -| [GetState](d3d12-texture-get-state.md) | 获取资源状态 | -| [SetState](d3d12-texture-set-state.md) | 设置资源状态 | - -## 相关文档 - -- [D3D12 模块概览](d3d12.md) - D3D12 模块总览 -- [RHITexture](../rhi/texture/texture.md) - RHI 纹理基类 diff --git a/docs/api/d3d12/d3d12.md b/docs/api/d3d12/d3d12.md deleted file mode 100644 index d73a702c..00000000 --- a/docs/api/d3d12/d3d12.md +++ /dev/null @@ -1,106 +0,0 @@ -# D3D12 模块概览 - -**命名空间**: `XCEngine::RHI` - -**类型**: `module` - -**描述**: DirectX 12 渲染硬件接口实现模块,提供与 DirectX 12 API 的完整绑定 - -## 概述 - -D3D12 模块是 XCEngine 渲染硬件接口(RHI)的 DirectX 12 后端实现。该模块封装了 DirectX 12 的核心功能,包括设备管理、命令系统、资源管理、描述符堆管理、管道状态对象等。通过 RHI 抽象层,开发者可以使用统一的 API 接口无缝切换 DirectX 12 和 OpenGL 等不同图形后端。 - -D3D12 模块遵循 DirectX 12 的设计理念,提供低开销的渲染命令提交机制,支持多线程命令录制、描述符堆、显式资源状态管理等现代图形 API 特性。 - -## 模块内容 - -### 设备与适配器 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [D3D12Device](d3d12-device.md) | `D3D12Device.h` | DirectX 12 设备封装,管理适配器、创建图形对象 | -| `AdapterInfo` | `D3D12Device.h` | 适配器信息结构体,包含显存、供应商等 | - -### 命令系统 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [D3D12CommandQueue](d3d12-command-queue.md) | `D3D12CommandQueue.h` | 命令队列封装,提交命令列表到 GPU | -| [D3D12CommandList](d3d12-command-list.md) | `D3D12CommandList.h` | 命令列表封装,录制图形和计算命令 | - -### 资源 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [D3D12Buffer](d3d12-buffer.md) | `D3D12Buffer.h` | 缓冲区资源(顶点、索引、常量等) | -| [D3D12Texture](d3d12-texture.md) | `D3D12Texture.h` | 纹理资源(1D/2D/3D/立方体) | -| [D3D12SwapChain](d3d12-swap-chain.md) | `D3D12SwapChain.h` | 交换链,管理帧缓冲 | - - - -## 类型映射 - -D3D12 模块提供从 RHI 抽象类型到 DirectX 12 类型的映射函数: - -| RHI 类型 | D3D12 类型 | -|----------|-------------| -| `Format` | `DXGI_FORMAT` | -| `ResourceStates` | `D3D12_RESOURCE_STATES` | -| `DescriptorHeapType` | `D3D12_DESCRIPTOR_HEAP_TYPE` | -| `CommandQueueType` | `D3D12_COMMAND_LIST_TYPE` | -| `PrimitiveTopology` | `D3D12_PRIMITIVE_TOPOLOGY` | -| `FilterMode` | `D3D12_FILTER` | -| `TextureAddressMode` | `D3D12_TEXTURE_ADDRESS_MODE` | -| `ComparisonFunc` | `D3D12_COMPARISON_FUNC` | -| `FillMode` | `D3D12_FILL_MODE` | -| `CullMode` | `D3D12_CULL_MODE` | - -## 使用示例 - -```cpp -#include -#include -#include -#include -#include - -using namespace XCEngine::RHI; - -// 创建设备 -D3D12Device device; -RHIDeviceDesc desc; -desc.enableDebugLayer = true; -desc.windowHandle = hwnd; -desc.width = 1280; -desc.height = 720; -device.Initialize(desc); - -// 获取命令队列和命令列表 -D3D12CommandQueue* commandQueue = device.CreateCommandQueueImpl(CommandQueueDesc{CommandQueueType::Direct, 0, 0, 0}); -D3D12CommandList* commandList = device.CreateCommandListImpl(CommandListDesc{CommandQueueType::Direct, 0}); - -// 渲染循环 -commandList->Reset(); -commandList->SetRenderTargets(1, &renderTarget, nullptr); -commandList->ClearRenderTarget(renderTarget, clearColor); -commandList->DrawIndexed(indexCount, 1, 0, 0, 0); -commandList->Close(); - -commandQueue->ExecuteCommandListsInternal(1, &cmdList); -commandQueue->Signal(fence, frameIndex); -swapChain->Present(1, 0); - -// 设备关闭 -device.Shutdown(); -``` - -## 线程安全 - -- **D3D12Device**: 单线程访问,由应用程序控制 -- **D3D12CommandQueue**: 支持多线程命令提交 -- **D3D12CommandList**: 应在单线程录制,可在多线程提交 -- **D3D12Fence**: 线程安全,内部使用事件同步 - -## 相关文档 - -- [RHI 模块总览](../rhi/rhi.md) - RHI 抽象层概述 diff --git a/docs/api/debug/consolelogsink/consolelogsink.md b/docs/api/debug/consolelogsink/consolelogsink.md deleted file mode 100644 index 7459bc34..00000000 --- a/docs/api/debug/consolelogsink/consolelogsink.md +++ /dev/null @@ -1,50 +0,0 @@ -# ConsoleLogSink - -**命名空间**: `XCEngine::Debug` - -**类型**: `class` - -**头文件**: `XCEngine/Debug/ConsoleLogSink.h` - -**描述**: 控制台日志输出目标,将日志输出到标准输出流。 - -## 概述 - -`ConsoleLogSink` 是日志系统的控制台输出实现。它将日志条目输出到标准输出流(stdout),支持彩色输出和日志级别过滤。该类继承自 `ILogSink` 接口,可通过 `Logger::AddSink` 添加到日志系统。 - -设计用于开发调试场景,默认启用彩色输出便于在终端中区分不同日志级别。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`ConsoleLogSink()`](constructor.md) | 构造函数 | -| [`~ConsoleLogSink`](destructor.md) | 析构函数 | -| [`Log`](log.md) | 输出日志到控制台 | -| [`Flush`](flush.md) | 刷新输出流 | -| [`SetColorOutput`](setcoloroutput.md) | 设置彩色输出 | -| [`SetMinimumLevel`](setminimumlevel.md) | 设置最小日志级别 | - -## 使用示例 - -```cpp -#include - -auto sink = std::make_unique(); -sink->SetColorOutput(true); -sink->SetMinimumLevel(XCEngine::Debug::LogLevel::Warning); -XCEngine::Debug::Logger::Get().AddSink(std::move(sink)); -``` - -## 构造函数详细 - -| 属性 | 值 | -|------|-----| -| 默认 `m_colorOutput` | `true` | -| 默认 `m_minimumLevel` | `LogLevel::Verbose` | - -## 相关文档 - -- [Debug 模块总览](../debug.md) - 返回模块总览 -- [Logger](../logger/logger.md) - 日志记录器 -- [ILogSink](../ilogsink/ilogsink.md) - 日志输出接口 diff --git a/docs/api/debug/consolelogsink/constructor.md b/docs/api/debug/consolelogsink/constructor.md deleted file mode 100644 index 8dcd9637..00000000 --- a/docs/api/debug/consolelogsink/constructor.md +++ /dev/null @@ -1,27 +0,0 @@ -# ConsoleLogSink::ConsoleLogSink - -```cpp -ConsoleLogSink() -``` - -默认构造函数。创建一个 `ConsoleLogSink` 实例。 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**返回值:** 无 - -**示例:** - -```cpp -using namespace XCEngine::Debug; - -auto sink = std::make_unique(); -Logger::Get().AddSink(std::move(sink)); -``` - -## 相关文档 - -- [ConsoleLogSink 总览](consolelogsink.md) - 返回类总览 -- [Debug 模块总览](../debug.md) - 返回模块总览 diff --git a/docs/api/debug/consolelogsink/destructor.md b/docs/api/debug/consolelogsink/destructor.md deleted file mode 100644 index 1defe091..00000000 --- a/docs/api/debug/consolelogsink/destructor.md +++ /dev/null @@ -1,25 +0,0 @@ -# ConsoleLogSink::~ConsoleLogSink - -```cpp -~ConsoleLogSink() override -``` - -析构函数。销毁 `ConsoleLogSink` 实例,释放相关资源。 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**返回值:** 无 - -**示例:** - -```cpp -auto sink = std::make_unique(); -// sink 自动销毁 -``` - -## 相关文档 - -- [ConsoleLogSink 总览](consolelogsink.md) - 返回类总览 -- [Debug 模块总览](../debug.md) - 返回模块总览 diff --git a/docs/api/debug/consolelogsink/flush.md b/docs/api/debug/consolelogsink/flush.md deleted file mode 100644 index aa8ea4fb..00000000 --- a/docs/api/debug/consolelogsink/flush.md +++ /dev/null @@ -1,26 +0,0 @@ -# ConsoleLogSink::Flush - -```cpp -void Flush() override -``` - -刷新标准输出流(stdout),调用 `fflush(stdout)` 确保所有待输出的日志内容立即显示在控制台上。 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**返回值:** 无 - -**示例:** - -```cpp -auto sink = std::make_unique(); -XCEngine::Debug::Logger::Get().AddSink(std::move(sink)); -// 在程序异常退出前确保日志已输出 -XCEngine::Debug::Logger::Get().Flush(); -``` - -## 相关文档 - -- [ConsoleLogSink 总览](consolelogsink.md) - 返回类总览 diff --git a/docs/api/debug/consolelogsink/log.md b/docs/api/debug/consolelogsink/log.md deleted file mode 100644 index 37361cf7..00000000 --- a/docs/api/debug/consolelogsink/log.md +++ /dev/null @@ -1,42 +0,0 @@ -# ConsoleLogSink::Log - -```cpp -void Log(const LogEntry& entry) override -``` - -将日志输出到控制台。输出格式为 `[LEVEL] [CATEGORY] message\n`。 - -根据 `m_colorOutput` 设置决定是否使用 Windows 控制台颜色 API(仅 `_WIN32` 平台)。各日志级别颜色映射: - -| 级别 | 颜色 | -|------|------| -| Verbose | 灰色(低亮度) | -| Debug | 青色(蓝+绿) | -| Info | 绿色 | -| Warning | 黄色(红+绿) | -| Error | 红色(高亮度) | -| Fatal | 洋红色(红+蓝+高亮度) | - -如果日志级别低于设置的最小级别,则不输出。 - -**参数:** -- `entry` - 日志条目(参见 [LogEntry](../logentry/logentry.md)) - -**线程安全:** ❌ - -**复杂度:** O(1) - -**返回值:** 无 - -**示例:** - -```cpp -auto sink = std::make_unique(); -// Log 方法由 Logger 在内部调用,用户无需直接调用 -XCEngine::Debug::Logger::Get().AddSink(std::move(sink)); -XCEngine::Debug::Logger::Get().Info(XCEngine::Debug::LogCategory::General, "Hello console"); -``` - -## 相关文档 - -- [ConsoleLogSink 总览](consolelogsink.md) - 返回类总览 diff --git a/docs/api/debug/consolelogsink/setcoloroutput.md b/docs/api/debug/consolelogsink/setcoloroutput.md deleted file mode 100644 index d8866ad6..00000000 --- a/docs/api/debug/consolelogsink/setcoloroutput.md +++ /dev/null @@ -1,28 +0,0 @@ -# ConsoleLogSink::SetColorOutput - -```cpp -void SetColorOutput(bool enable) -``` - -启用或禁用控制台彩色输出。启用后,不同日志级别使用 Windows 控制台颜色 API 输出(仅 `_WIN32` 平台有效,其他平台此设置无效果),便于快速区分日志类型。 - -**参数:** -- `enable` - true 启用彩色输出,false 禁用 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**返回值:** 无 - -**示例:** - -```cpp -auto sink = std::make_unique(); -sink->SetColorOutput(false); // 禁用颜色(适合日志文件或 CI 环境) -XCEngine::Debug::Logger::Get().AddSink(std::move(sink)); -``` - -## 相关文档 - -- [ConsoleLogSink 总览](consolelogsink.md) - 返回类总览 diff --git a/docs/api/debug/consolelogsink/setminimumlevel.md b/docs/api/debug/consolelogsink/setminimumlevel.md deleted file mode 100644 index bc3273e3..00000000 --- a/docs/api/debug/consolelogsink/setminimumlevel.md +++ /dev/null @@ -1,28 +0,0 @@ -# ConsoleLogSink::SetMinimumLevel - -```cpp -void SetMinimumLevel(LogLevel level) -``` - -设置该 Sink 的最小输出级别。此设置仅影响当前 Sink,不会影响 Logger 的全局级别过滤。默认值为 `LogLevel::Verbose`,即输出所有级别。 - -**参数:** -- `level` - 最小日志级别 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**返回值:** 无 - -**示例:** - -```cpp -auto sink = std::make_unique(); -sink->SetMinimumLevel(XCEngine::Debug::LogLevel::Warning); // 控制台只显示警告及以上 -XCEngine::Debug::Logger::Get().AddSink(std::move(sink)); -``` - -## 相关文档 - -- [ConsoleLogSink 总览](consolelogsink.md) - 返回类总览 diff --git a/docs/api/debug/debug.md b/docs/api/debug/debug.md deleted file mode 100644 index 749e1920..00000000 --- a/docs/api/debug/debug.md +++ /dev/null @@ -1,88 +0,0 @@ -# Debug 模块概览 - -**命名空间**: `XCEngine::Debug` - -**类型**: `module` - -**头文件**: `XCEngine/Debug/Debug.h` - -**描述**: XCEngine 的调试和日志模块,提供日志记录和性能分析功能。 - -## 概述 - -Debug 模块提供了一套完整的调试工具,包括日志系统和性能分析器。 - -## 模块内容 - -### 日志系统 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [Logger](logger/logger.md) | `Logger.h` | 日志记录器 | -| [ILogSink](ilogsink/ilogsink.md) | `ILogSink.h` | 日志输出接口 | -| [ConsoleLogSink](consolelogsink/consolelogsink.md) | `ConsoleLogSink.h` | 控制台输出 | -| [FileLogSink](filelogsink/filelogsink.md) | `FileLogSink.h` | 文件输出 | -| [LogLevel](loglevel/loglevel.md) | `LogLevel.h` | 日志级别枚举 | -| [LogCategory](logcategory/logcategory.md) | `LogCategory.h` | 日志分类枚举 | -| [LogEntry](logentry/logentry.md) | `LogEntry.h` | 日志条目结构 | - -### 性能分析 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [Profiler](profiler/profiler.md) | `Profiler.h` | 性能分析器 | - -## 日志级别 - -| 级别 | 描述 | -|------|------| -| `Verbose` | 详细调试信息 | -| `Debug` | 调试信息 | -| `Info` | 一般信息 | -| `Warning` | 警告信息 | -| `Error` | 错误信息 | -| `Fatal` | 致命错误 | - -## 日志分类 - -| 分类 | 描述 | -|------|------| -| `General` | 通用 | -| `Rendering` | 渲染 | -| `Physics` | 物理 | -| `Audio` | 音频 | -| `Scripting` | 脚本 | -| `Network` | 网络 | -| `Memory` | 内存 | -| `Threading` | 线程 | -| `FileSystem` | 文件系统 | -| `Custom` | 自定义 | - -## 使用示例 - -```cpp -#include - -// 初始化日志系统 -Logger::Get().Initialize(); -Logger::Get().AddSink(std::make_unique()); -Logger::Get().AddSink(std::make_unique("app.log")); - -// 设置日志级别 -Logger::Get().SetMinimumLevel(LogLevel::Debug); - -// 记录日志 -XE_LOG(LogCategory::Rendering, LogLevel::Info, "Render started"); - -// 使用宏记录日志 -if (condition) { - XE_LOG(LogCategory::General, LogLevel::Error, "Something went wrong"); -} - -// 使用断言(仅记录Fatal日志,不会中断程序) -XC_ASSERT(ptr != nullptr, "Pointer must not be null"); -``` - -## 相关文档 - -- [Profiler](profiler/profiler.md) - 性能分析器 diff --git a/docs/api/debug/filelogsink/constructor.md b/docs/api/debug/filelogsink/constructor.md deleted file mode 100644 index 848d1226..00000000 --- a/docs/api/debug/filelogsink/constructor.md +++ /dev/null @@ -1,26 +0,0 @@ -# FileLogSink::FileLogSink - -```cpp -FileLogSink(const Containers::String& filePath) -``` - -构造函数,打开指定路径的文件用于日志写入。如果文件已存在,则追加写入;如果不存在,则创建新文件。 - -**参数:** -- `filePath` - 日志文件路径 - -**线程安全:** ✅ 构造函数本身是线程安全的,但多线程同时创建同一文件可能会产生竞争 - -**复杂度:** O(1) - -**示例:** - -```cpp -auto fileSink = std::make_unique("logs/engine.log"); -XCEngine::Debug::Logger::Get().AddSink(std::move(fileSink)); -``` - -## 相关文档 - -- [FileLogSink 总览](filelogsink.md) - 返回类总览 -- [Debug 模块总览](../debug.md) - 返回模块总览 diff --git a/docs/api/debug/filelogsink/destructor.md b/docs/api/debug/filelogsink/destructor.md deleted file mode 100644 index 97cce9ec..00000000 --- a/docs/api/debug/filelogsink/destructor.md +++ /dev/null @@ -1,17 +0,0 @@ -# FileLogSink::~FileLogSink - -```cpp -~FileLogSink() override -``` - -析构函数。销毁 `FileLogSink` 实例,调用 `Flush()` 确保所有日志数据写入文件,然后关闭文件句柄。 - -**返回:** 无 - -**线程安全:** ✅ 析构函数是线程安全的 - -**复杂度:** O(1) - -## 相关文档 - -- [FileLogSink 总览](filelogsink.md) - 返回类总览 diff --git a/docs/api/debug/filelogsink/filelogsink.md b/docs/api/debug/filelogsink/filelogsink.md deleted file mode 100644 index b09e4a6c..00000000 --- a/docs/api/debug/filelogsink/filelogsink.md +++ /dev/null @@ -1,37 +0,0 @@ -# FileLogSink - -**命名空间**: `XCEngine::Debug` - -**类型**: `class` - -**头文件**: `XCEngine/Debug/FileLogSink.h` - -**描述**: 文件日志输出目标,将日志写入到指定文件。 - -## 概述 - -`FileLogSink` 是日志系统的文件输出实现。它将日志条目写入到指定的文件,支持追加写入模式。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`FileLogSink(const Containers::String& filePath)`](constructor.md) | 打开指定路径的文件用于日志写入 | -| [`~FileLogSink()`](destructor.md) | 销毁实例并刷新缓冲区 | -| [`Log(const LogEntry& entry)`](log.md) | 将日志条目追加写入文件 | -| [`Flush()`](flush.md) | 刷新文件缓冲区确保数据写入磁盘 | - -## 使用示例 - -```cpp -#include - -auto fileSink = std::make_unique("logs/app.log"); -XCEngine::Debug::Logger::Get().AddSink(std::move(fileSink)); -``` - -## 相关文档 - -- [Debug 模块总览](../debug.md) - 返回模块总览 -- [Logger](../logger/logger.md) - 日志记录器 -- [ILogSink](../ilogsink/ilogsink.md) - 日志输出接口 diff --git a/docs/api/debug/filelogsink/flush.md b/docs/api/debug/filelogsink/flush.md deleted file mode 100644 index ceabf3f8..00000000 --- a/docs/api/debug/filelogsink/flush.md +++ /dev/null @@ -1,27 +0,0 @@ -# FileLogSink::Flush - -```cpp -void Flush() override -``` - -刷新文件缓冲区,调用底层 `FileWriter` 的 flush 方法确保所有待写入的日志数据已实际写入磁盘。 - -**线程安全:** ✅ 线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -auto fileSink = std::make_unique("logs/app.log"); -// 关键操作后立即刷新确保写入磁盘 -fileSink->Flush(); -``` - -**注意:** `Flush()` 需要直接调用 `FileLogSink` 实例,不能通过 `Logger` 调用。 - -## 相关文档 - -- [FileLogSink 总览](filelogsink.md) - 返回类总览 diff --git a/docs/api/debug/filelogsink/log.md b/docs/api/debug/filelogsink/log.md deleted file mode 100644 index 9e69d470..00000000 --- a/docs/api/debug/filelogsink/log.md +++ /dev/null @@ -1,27 +0,0 @@ -# FileLogSink::Log - -```cpp -void Log(const LogEntry& entry) override -``` - -将日志条目追加写入文件。根据 `LogEntry` 的各字段格式化日志行,包括时间戳、级别、分类、消息,并追加到文件末尾。 - -**参数:** -- `entry` - 日志条目 - -**线程安全:** ❌ 非线程安全,多线程同时调用 Log 可能导致数据竞争 - -**复杂度:** O(m),m 为消息长度 - -**示例:** - -```cpp -auto fileSink = std::make_unique("logs/app.log"); -XCEngine::Debug::Logger::Get().AddSink(std::move(fileSink)); -// Log 方法由 Logger 在内部调用 -XCEngine::Debug::Logger::Get().Error(XCEngine::Debug::LogCategory::FileSystem, "File not found"); -``` - -## 相关文档 - -- [FileLogSink 总览](filelogsink.md) - 返回类总览 diff --git a/docs/api/debug/ilogsink/flush.md b/docs/api/debug/ilogsink/flush.md deleted file mode 100644 index df6f9402..00000000 --- a/docs/api/debug/ilogsink/flush.md +++ /dev/null @@ -1,38 +0,0 @@ -# ILogSink::Flush - -```cpp -virtual void Flush() = 0 -``` - -刷新输出缓冲区,确保所有待写入的日志数据已实际写入目标介质。对于文件类 Sink,应调用底层文件系统的 flush;对于网络类 Sink,应发送缓冲区中的数据。 - -**返回:** 无 - -**异常:** 无 - -**线程安全:** ✅ 线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -class BufferedLogSink : public XCEngine::Debug::ILogSink { -private: - std::string m_buffer; -public: - void Log(const XCEngine::Debug::LogEntry& entry) override { - m_buffer += entry.message.CStr(); - m_buffer += "\n"; - } - void Flush() override { - // 将缓冲区数据写入目标 - writeToDestination(m_buffer); - m_buffer.clear(); - } -}; -``` - -## 相关文档 - -- [ILogSink 总览](ilogsink.md) - 返回类总览 diff --git a/docs/api/debug/ilogsink/ilogsink.md b/docs/api/debug/ilogsink/ilogsink.md deleted file mode 100644 index 050d502d..00000000 --- a/docs/api/debug/ilogsink/ilogsink.md +++ /dev/null @@ -1,47 +0,0 @@ -# ILogSink - -**命名空间**: `XCEngine::Debug` - -**类型**: `class` (abstract interface) - -**头文件**: `XCEngine/Debug/ILogSink.h` - -**描述**: 日志输出槽抽象接口,定义日志输出的标准协议。 - -## 概述 - -`ILogSink` 是日志系统的输出抽象接口。用户可以实现此接口来创建自定义的日志输出方式,如网络输出、数据库存储等。`Logger` 通过多个 Sink 分发日志。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Log`](log.md) | 输出单条日志 | -| [`Flush`](flush.md) | 刷新缓冲区,确保日志写入 | - -## 使用示例 - -```cpp -class CustomLogSink : public ILogSink { -public: - void Log(const LogEntry& entry) override { - printf("[%s] %s: %s\n", - LogLevelToString(entry.level), - LogCategoryToString(entry.category), - entry.message.CStr()); - } - - void Flush() override { - fflush(stdout); - } -}; - -Logger::Get().AddSink(std::make_unique()); -``` - -## 相关文档 - -- [Debug 模块总览](../debug.md) - 返回模块总览 -- [Logger](../logger/logger.md) - 日志记录器 -- [ConsoleLogSink](../consolelogsink/consolelogsink.md) - 控制台输出 -- [FileLogSink](../filelogsink/filelogsink.md) - 文件输出 diff --git a/docs/api/debug/ilogsink/log.md b/docs/api/debug/ilogsink/log.md deleted file mode 100644 index 19e49150..00000000 --- a/docs/api/debug/ilogsink/log.md +++ /dev/null @@ -1,33 +0,0 @@ -# ILogSink::Log - -```cpp -virtual void Log(const LogEntry& entry) = 0 -``` - -输出单条日志到目标介质。`Logger` 在每次日志记录时调用此方法,将包含完整日志信息的 `LogEntry` 传入。派生类需要实现具体的输出逻辑。 - -**参数:** -- `entry` - 日志条目,包含级别、分类、消息、时间戳、线程 ID 等完整信息 - -**返回:** 无 - -**异常:** 无 - -**线程安全:** ✅ 线程安全 - -**示例:** - -```cpp -class NetworkLogSink : public XCEngine::Debug::ILogSink { -public: - void Log(const XCEngine::Debug::LogEntry& entry) override { - // 将日志发送到远程服务器 - sendToServer(entry.message.CStr()); - } - void Flush() override { } -}; -``` - -## 相关文档 - -- [ILogSink 总览](ilogsink.md) - 返回类总览 diff --git a/docs/api/debug/logcategory/logcategory.md b/docs/api/debug/logcategory/logcategory.md deleted file mode 100644 index aa5472b1..00000000 --- a/docs/api/debug/logcategory/logcategory.md +++ /dev/null @@ -1,46 +0,0 @@ -# LogCategory - -**命名空间**: `XCEngine::Debug` - -**类型**: `enum class` - -**头文件**: `XCEngine/Debug/LogCategory.h` - -**描述**: 日志分类枚举,定义日志的来源模块。 - -## 概述 - -`LogCategory` 枚举定义了日志的分类,用于区分不同引擎模块的日志输出。 - -## 枚举值 - -| 值 | 说明 | -|----|------| -| `General` | 通用 | -| `Rendering` | 渲染 | -| `Physics` | 物理 | -| `Audio` | 音频 | -| `Scripting` | 脚本 | -| `Network` | 网络 | -| `Memory` | 内存 | -| `Threading` | 线程 | -| `FileSystem` | 文件系统 | -| `Custom` | 自定义 | - -## 辅助函数 - -| 函数 | 描述 | -|------|------| -| [`LogCategoryToString`](logcategorytostring.md) | 将日志分类转换为字符串 | - -## 使用示例 - -```cpp -Logger::Get().SetCategoryEnabled(LogCategory::Network, false); -XE_LOG(LogCategory::Rendering, LogLevel::Info, "Draw call submitted"); -``` - -## 相关文档 - -- [Debug 模块总览](../debug.md) - 返回模块总览 -- [Logger](../logger/logger.md) - 日志记录器 diff --git a/docs/api/debug/logcategory/logcategorytostring.md b/docs/api/debug/logcategory/logcategorytostring.md deleted file mode 100644 index 8568987d..00000000 --- a/docs/api/debug/logcategory/logcategorytostring.md +++ /dev/null @@ -1,30 +0,0 @@ -# LogCategoryToString - -```cpp -const char* LogCategoryToString(LogCategory category) -``` - -将 `LogCategory` 枚举值转换为可读字符串。 - -**参数:** -- `category` - 日志分类 - -**返回:** 对应分类的字符串("General", "Rendering", "Physics" 等) - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -XCEngine::Debug::LogCategory cat = XCEngine::Debug::LogCategory::Rendering; -const char* str = XCEngine::Debug::LogCategoryToString(cat); -// str == "Rendering" -``` - -## 相关文档 - -- [LogCategory 总览](logcategory.md) - 返回类总览 diff --git a/docs/api/debug/logentry/logentry.md b/docs/api/debug/logentry/logentry.md deleted file mode 100644 index 6db2c721..00000000 --- a/docs/api/debug/logentry/logentry.md +++ /dev/null @@ -1,49 +0,0 @@ -# LogEntry - -**命名空间**: `XCEngine::Debug` - -**类型**: `struct` - -**头文件**: `XCEngine/Debug/LogEntry.h` - -**描述**: 日志条目结构体,包含单条日志的所有信息。 - -## 概述 - -`LogEntry` 是日志系统的核心数据结构,每次日志记录都生成一个 `LogEntry` 并分发给所有注册的 Sink。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | -|------|------|------| -| `level` | `LogLevel` | 日志级别 | -| `category` | `LogCategory` | 日志分类 | -| `message` | `Containers::String` | 日志消息内容 | -| `file` | `Containers::String` | 源代码文件路径 | -| `line` | `int32_t` | 源代码行号 | -| `function` | `Containers::String` | 函数名称 | -| `timestamp` | `uint64_t` | 时间戳(秒,Unix 时间戳) | -| `threadId` | `uint32_t` | 线程 ID | - -## 使用示例 - -```cpp -class MySink : public ILogSink { -public: - void Log(const LogEntry& entry) override { - printf("[%llu][%u] %s::%s: %s\n", - (unsigned long long)entry.timestamp, - (unsigned)entry.threadId, - LogCategoryToString(entry.category), - LogLevelToString(entry.level), - entry.message.CStr()); - } - void Flush() override { } -}; -``` - -## 相关文档 - -- [Debug 模块总览](../debug.md) - 返回模块总览 -- [ILogSink](../ilogsink/ilogsink.md) - 日志输出接口 -- [Logger](../logger/logger.md) - 日志记录器 diff --git a/docs/api/debug/logger/addsink.md b/docs/api/debug/logger/addsink.md deleted file mode 100644 index 7009e8ac..00000000 --- a/docs/api/debug/logger/addsink.md +++ /dev/null @@ -1,43 +0,0 @@ -# Logger::AddSink - -```cpp -void AddSink(std::unique_ptr sink); -``` - -添加一个日志输出槽(Sink)到 Logger。Sink 负责将日志输出到具体目标(如控制台、文件、网络等)。 - -**参数:** -- `sink` - 指向 ILogSink 接口的唯一指针 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Debug/Logger.h" -#include "XCEngine/Debug/ConsoleLogSink.h" -#include "XCEngine/Debug/FileLogSink.h" - -using namespace XCEngine::Debug; - -Logger& logger = Logger::Get(); -logger.Initialize(); - -// 添加控制台输出 -logger.AddSink(std::make_unique()); - -// 添加文件输出 -logger.AddSink(std::make_unique("app.log")); - -logger.Info(LogCategory::General, "Sinks added"); -``` - -## 相关文档 - -- [Logger](logger.md) - 返回类总览 -- [RemoveSink](removesink.md) - 移除日志输出槽 -- [ILogSink](../ilogsink/ilogsink.md) - 日志输出槽接口 diff --git a/docs/api/debug/logger/debug.md b/docs/api/debug/logger/debug.md deleted file mode 100644 index af934825..00000000 --- a/docs/api/debug/logger/debug.md +++ /dev/null @@ -1,32 +0,0 @@ -# Logger::Debug - -```cpp -void Debug(LogCategory category, const Containers::String& message); -``` - -记录 Debug 级别日志。用于记录调试目的的信息,比 Verbose 级别稍简略。 - -**参数:** -- `category` - 日志分类 -- `message` - 日志消息内容 - -**返回:** 无 - -**线程安全:** ✅ - -**示例:** - -```cpp -#include "XCEngine/Debug/Logger.h" - -using namespace XCEngine::Debug; - -Logger& logger = Logger::Get(); -logger.Debug(LogCategory::Rendering, "Frame rendered in 16ms"); -logger.Debug(LogCategory::Physics, "Collision detected"); -``` - -## 相关文档 - -- [Logger](logger.md) - 返回类总览 -- [LogLevel](../loglevel/loglevel.md) - 日志级别说明 diff --git a/docs/api/debug/logger/error.md b/docs/api/debug/logger/error.md deleted file mode 100644 index ca494a54..00000000 --- a/docs/api/debug/logger/error.md +++ /dev/null @@ -1,32 +0,0 @@ -# Logger::Error - -```cpp -void Error(LogCategory category, const Containers::String& message); -``` - -记录 Error 级别日志。用于记录错误信息,表示发生了错误但程序可以继续运行。 - -**参数:** -- `category` - 日志分类 -- `message` - 日志消息内容 - -**返回:** 无 - -**线程安全:** ✅ - -**示例:** - -```cpp -#include "XCEngine/Debug/Logger.h" - -using namespace XCEngine::Debug; - -Logger& logger = Logger::Get(); -logger.Error(LogCategory::Network, "Failed to connect to server"); -logger.Error(LogCategory::FileSystem, "Cannot open file"); -``` - -## 相关文档 - -- [Logger](logger.md) - 返回类总览 -- [LogLevel](../loglevel/loglevel.md) - 日志级别说明 diff --git a/docs/api/debug/logger/fatal.md b/docs/api/debug/logger/fatal.md deleted file mode 100644 index 89730dd2..00000000 --- a/docs/api/debug/logger/fatal.md +++ /dev/null @@ -1,31 +0,0 @@ -# Logger::Fatal - -```cpp -void Fatal(LogCategory category, const Containers::String& message); -``` - -记录 Fatal 级别日志。用于记录致命错误,表示程序无法继续运行。通常用于 `XE_ASSERT` 宏中。 - -**参数:** -- `category` - 日志分类 -- `message` - 日志消息内容 - -**返回:** 无 - -**线程安全:** ✅ - -**示例:** - -```cpp -#include "XCEngine/Debug/Logger.h" - -using namespace XCEngine::Debug; - -Logger& logger = Logger::Get(); -logger.Fatal(LogCategory::General, "Critical system failure"); -``` - -## 相关文档 - -- [Logger](logger.md) - 返回类总览 -- [LogLevel](../loglevel/loglevel.md) - 日志级别说明 diff --git a/docs/api/debug/logger/get.md b/docs/api/debug/logger/get.md deleted file mode 100644 index eb1878ea..00000000 --- a/docs/api/debug/logger/get.md +++ /dev/null @@ -1,24 +0,0 @@ -# Logger::Get - -```cpp -static Logger& Get(); -``` - -获取 Logger 单例实例。 - -**线程安全:** ✅ - -**示例:** - -```cpp -#include "XCEngine/Debug/Logger.h" - -using namespace XCEngine::Debug; - -Logger& logger = Logger::Get(); -logger.Info(LogCategory::General, "Logger initialized"); -``` - -## 相关文档 - -- [Logger](logger.md) - 返回类总览 diff --git a/docs/api/debug/logger/info.md b/docs/api/debug/logger/info.md deleted file mode 100644 index eac3875a..00000000 --- a/docs/api/debug/logger/info.md +++ /dev/null @@ -1,32 +0,0 @@ -# Logger::Info - -```cpp -void Info(LogCategory category, const Containers::String& message); -``` - -记录 Info 级别日志。用于记录一般信息性消息,表示程序正常运行状态。 - -**参数:** -- `category` - 日志分类 -- `message` - 日志消息内容 - -**返回:** 无 - -**线程安全:** ✅ - -**示例:** - -```cpp -#include "XCEngine/Debug/Logger.h" - -using namespace XCEngine::Debug; - -Logger& logger = Logger::Get(); -logger.Info(LogCategory::General, "Application started"); -logger.Info(LogCategory::Network, "Connected to server"); -``` - -## 相关文档 - -- [Logger](logger.md) - 返回类总览 -- [LogLevel](../loglevel/loglevel.md) - 日志级别说明 diff --git a/docs/api/debug/logger/initialize.md b/docs/api/debug/logger/initialize.md deleted file mode 100644 index 1af139a9..00000000 --- a/docs/api/debug/logger/initialize.md +++ /dev/null @@ -1,28 +0,0 @@ -# Logger::Initialize - -```cpp -void Initialize(); -``` - -初始化日志系统。在首次使用 Logger 前必须调用此方法进行初始化。初始化过程会设置内部状态并准备日志记录环境。 - -**线程安全:** ❌(应在单线程启动阶段调用) - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Debug/Logger.h" - -using namespace XCEngine::Debug; - -Logger& logger = Logger::Get(); -logger.Initialize(); -logger.Info(LogCategory::General, "System initialized"); -``` - -## 相关文档 - -- [Logger](logger.md) - 返回类总览 -- [Shutdown](shutdown.md) - 关闭日志系统 diff --git a/docs/api/debug/logger/log.md b/docs/api/debug/logger/log.md deleted file mode 100644 index 6b16c44d..00000000 --- a/docs/api/debug/logger/log.md +++ /dev/null @@ -1,42 +0,0 @@ -# Logger::Log - -```cpp -void Log(LogLevel level, LogCategory category, - const Containers::String& message, const char* file = nullptr, - int32_t line = 0, const char* function = nullptr); -``` - -通用日志记录方法,支持完整的日志信息包括源码位置。 - -**参数:** -- `level` - 日志级别(Verbose、Debug、Info、Warning、Error、Fatal) -- `category` - 日志分类(General、Rendering、Physics 等) -- `message` - 日志消息内容 -- `file` - 源码文件名(可选) -- `line` - 源码行号(可选) -- `function` - 函数名(可选) - -**返回:** 无 - -**线程安全:** ✅ - -**示例:** - -```cpp -#include "XCEngine/Debug/Logger.h" - -using namespace XCEngine::Debug; - -Logger& logger = Logger::Get(); - -// 完整调用(包含源码位置) -logger.Log(LogLevel::Error, LogCategory::Network, - "Connection timeout", __FILE__, __LINE__, __FUNCTION__); - -// 简化调用 -logger.Log(LogLevel::Info, LogCategory::General, "Simple message"); -``` - -## 相关文档 - -- [Logger](logger.md) - 返回类总览 diff --git a/docs/api/debug/logger/logger.md b/docs/api/debug/logger/logger.md deleted file mode 100644 index 0b61a4eb..00000000 --- a/docs/api/debug/logger/logger.md +++ /dev/null @@ -1,72 +0,0 @@ -# Logger - -**命名空间**: `XCEngine::Debug` - -**类型**: `class` (singleton) - -**头文件**: `XCEngine/Debug/Logger.h` - -**描述**: 日志系统,提供分级日志记录功能 - -## 概述 - -Logger 是 XCEngine 的核心日志系统,采用单例模式设计。它提供多级别(Verbose、Debug、Info、Warning、Error、Fatal)和多分类(General、Rendering、Physics 等)的日志记录功能,支持自定义日志输出槽(Sink)。 - -Logger 支持多个 Sink 组件,每个 Sink 可以将日志输出到不同的目的地(如文件、控制台、远程服务器等)。系统还提供宏定义 `XE_LOG` 和 `XE_ASSERT` 方便快速记录日志。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Get`](get.md) | 获取 Logger 单例实例 | -| [`Initialize`](initialize.md) | 初始化日志系统 | -| [`Shutdown`](shutdown.md) | 关闭日志系统 | -| [`AddSink`](addsink.md) | 添加日志输出槽 | -| [`RemoveSink`](removesink.md) | 移除日志输出槽 | -| [`Log`](log.md) | 通用日志记录方法 | -| [`Verbose`](verbose.md) | 记录 Verbose 级别日志 | -| [`Debug`](debug.md) | 记录 Debug 级别日志 | -| [`Info`](info.md) | 记录 Info 级别日志 | -| [`Warning`](warning.md) | 记录 Warning 级别日志 | -| [`Error`](error.md) | 记录 Error 级别日志 | -| [`Fatal`](fatal.md) | 记录 Fatal 级别日志 | -| [`SetMinimumLevel`](setminimumlevel.md) | 设置最低日志级别 | -| [`SetCategoryEnabled`](setcategoryenabled.md) | 设置分类日志开关 | - -## 使用示例 - -```cpp -#include "XCEngine/Debug/Logger.h" -#include "XCEngine/Debug/ConsoleSink.h" - -using namespace XCEngine::Debug; - -// 获取单例 -Logger& logger = Logger::Get(); - -// 初始化 -logger.Initialize(); - -// 添加控制台输出Sink -logger.AddSink(std::make_unique()); - -// 使用便捷方法记录日志 -logger.Info(LogCategory::General, "Application started"); -logger.Warning(LogCategory::Rendering, "Low memory warning"); -logger.Error(LogCategory::Network, "Connection failed"); - -// 使用宏记录日志(自动包含文件、行号、函数信息) -XE_LOG(LogCategory::General, LogLevel::Info, "User logged in"); - -// 设置最低日志级别 -logger.SetMinimumLevel(LogLevel::Warning); // 只记录 Warning 及以上 - -// 关闭 -logger.Shutdown(); -``` - -## 相关文档 - -- [LogLevel](../loglevel/loglevel.md) - 日志级别枚举 -- [LogCategory](../logcategory/logcategory.md) - 日志分类枚举 -- [ILogSink](../ilogsink/ilogsink.md) - 日志输出槽接口 diff --git a/docs/api/debug/logger/removesink.md b/docs/api/debug/logger/removesink.md deleted file mode 100644 index 1921ee89..00000000 --- a/docs/api/debug/logger/removesink.md +++ /dev/null @@ -1,37 +0,0 @@ -# Logger::RemoveSink - -```cpp -void RemoveSink(ILogSink* sink); -``` - -从 Logger 移除指定的日志输出槽。 - -**参数:** -- `sink` - 指向要移除的 ILogSink 接口的指针 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(n),n 为注册的 Sink 数量 - -**示例:** - -```cpp -#include "XCEngine/Debug/Logger.h" -#include "XCEngine/Debug/ConsoleLogSink.h" - -using namespace XCEngine::Debug; - -Logger& logger = Logger::Get(); -auto consoleSink = std::make_unique(); -logger.AddSink(consoleSink); - -// 移除 Sink(传入原始指针) -logger.RemoveSink(consoleSink.get()); -``` - -## 相关文档 - -- [Logger](logger.md) - 返回类总览 -- [AddSink](addsink.md) - 添加日志输出槽 diff --git a/docs/api/debug/logger/setcategoryenabled.md b/docs/api/debug/logger/setcategoryenabled.md deleted file mode 100644 index ce9995d0..00000000 --- a/docs/api/debug/logger/setcategoryenabled.md +++ /dev/null @@ -1,38 +0,0 @@ -# Logger::SetCategoryEnabled - -```cpp -void SetCategoryEnabled(LogCategory category, bool enabled); -``` - -设置指定日志分类的开关状态。禁用的分类将不会输出任何日志。 - -**参数:** -- `category` - 日志分类 -- `enabled` - true 启用,false 禁用 - -**返回:** 无 - -**线程安全:** ✅ - -**示例:** - -```cpp -#include "XCEngine/Debug/Logger.h" - -using namespace XCEngine::Debug; - -Logger& logger = Logger::Get(); - -// 禁用物理系统日志 -logger.SetCategoryEnabled(LogCategory::Physics, false); - -// 只启用关键分类 -logger.SetCategoryEnabled(LogCategory::General, true); -logger.SetCategoryEnabled(LogCategory::Error, true); -logger.SetCategoryEnabled(LogCategory::Warning, true); -``` - -## 相关文档 - -- [Logger](logger.md) - 返回类总览 -- [LogCategory](../logcategory/logcategory.md) - 日志分类枚举 diff --git a/docs/api/debug/logger/setminimumlevel.md b/docs/api/debug/logger/setminimumlevel.md deleted file mode 100644 index 7a47b231..00000000 --- a/docs/api/debug/logger/setminimumlevel.md +++ /dev/null @@ -1,37 +0,0 @@ -# Logger::SetMinimumLevel - -```cpp -void SetMinimumLevel(LogLevel level); -``` - -设置最低日志级别。只会记录等于或高于此级别的日志,低于该级别的日志将被忽略。 - -**参数:** -- `level` - 最低日志级别 - -**返回:** 无 - -**线程安全:** ✅ - -**示例:** - -```cpp -#include "XCEngine/Debug/Logger.h" - -using namespace XCEngine::Debug; - -Logger& logger = Logger::Get(); - -// 只记录 Warning 及以上级别 -logger.SetMinimumLevel(LogLevel::Warning); - -logger.Verbose(LogCategory::General, "This won't be logged"); -logger.Debug(LogCategory::General, "This won't be logged"); -logger.Info(LogCategory::General, "This won't be logged"); -logger.Warning(LogCategory::General, "This WILL be logged"); -``` - -## 相关文档 - -- [Logger](logger.md) - 返回类总览 -- [LogLevel](../loglevel/loglevel.md) - 日志级别枚举 diff --git a/docs/api/debug/logger/shutdown.md b/docs/api/debug/logger/shutdown.md deleted file mode 100644 index 95ae2c39..00000000 --- a/docs/api/debug/logger/shutdown.md +++ /dev/null @@ -1,28 +0,0 @@ -# Logger::Shutdown - -```cpp -void Shutdown(); -``` - -关闭日志系统并清理资源。调用此方法后会停止所有日志记录操作并释放相关资源。在程序退出前应调用此方法。 - -**线程安全:** ❌(应在单线程退出阶段调用) - -**复杂度:** O(n),n 为注册的 Sink 数量 - -**示例:** - -```cpp -#include "XCEngine/Debug/Logger.h" - -using namespace XCEngine::Debug; - -Logger& logger = Logger::Get(); -logger.Info(LogCategory::General, "Shutting down..."); -logger.Shutdown(); -``` - -## 相关文档 - -- [Logger](logger.md) - 返回类总览 -- [Initialize](initialize.md) - 初始化日志系统 diff --git a/docs/api/debug/logger/verbose.md b/docs/api/debug/logger/verbose.md deleted file mode 100644 index 5a845cc7..00000000 --- a/docs/api/debug/logger/verbose.md +++ /dev/null @@ -1,32 +0,0 @@ -# Logger::Verbose - -```cpp -void Verbose(LogCategory category, const Containers::String& message); -``` - -记录 Verbose 级别日志。Verbose 是最详细的日志级别,用于记录调试信息。 - -**参数:** -- `category` - 日志分类 -- `message` - 日志消息内容 - -**返回:** 无 - -**线程安全:** ✅ - -**示例:** - -```cpp -#include "XCEngine/Debug/Logger.h" - -using namespace XCEngine::Debug; - -Logger& logger = Logger::Get(); -logger.Verbose(LogCategory::General, "Variable value: 42"); -logger.Verbose(LogCategory::Memory, "Memory allocation detail"); -``` - -## 相关文档 - -- [Logger](logger.md) - 返回类总览 -- [LogLevel](../loglevel/loglevel.md) - 日志级别说明 diff --git a/docs/api/debug/logger/warning.md b/docs/api/debug/logger/warning.md deleted file mode 100644 index 1bc8d4f2..00000000 --- a/docs/api/debug/logger/warning.md +++ /dev/null @@ -1,32 +0,0 @@ -# Logger::Warning - -```cpp -void Warning(LogCategory category, const Containers::String& message); -``` - -记录 Warning 级别日志。用于记录警告信息,表示可能存在问题但程序仍能继续运行。 - -**参数:** -- `category` - 日志分类 -- `message` - 日志消息内容 - -**返回:** 无 - -**线程安全:** ✅ - -**示例:** - -```cpp -#include "XCEngine/Debug/Logger.h" - -using namespace XCEngine::Debug; - -Logger& logger = Logger::Get(); -logger.Warning(LogCategory::Memory, "High memory usage detected"); -logger.Warning(LogCategory::Rendering, "Low GPU memory"); -``` - -## 相关文档 - -- [Logger](logger.md) - 返回类总览 -- [LogLevel](../loglevel/loglevel.md) - 日志级别说明 diff --git a/docs/api/debug/loglevel/loglevel.md b/docs/api/debug/loglevel/loglevel.md deleted file mode 100644 index 48276be7..00000000 --- a/docs/api/debug/loglevel/loglevel.md +++ /dev/null @@ -1,94 +0,0 @@ -# LogLevel - -**命名空间**: `XCEngine::Debug` - -**类型**: `enum class` - -**头文件**: `XCEngine/Debug/LogLevel.h` - -**描述**: 日志级别枚举,用于区分不同重要程度的日志消息 - -## 概述 - -LogLevel 枚举定义了六个日志级别,从低到高依次为:Verbose、Debug、Info、Warning、Error、Fatal。数值越高表示级别越严重,便于日志系统进行过滤和分类处理。 - -## 枚举值 - -| 值 | 数值 | 描述 | -|----|------|------| -| `Verbose` | 0 | 详细日志,用于调试追踪 | -| `Debug` | 1 | 调试日志,开发时使用 | -| `Info` | 2 | 信息日志,一般信息提示 | -| `Warning` | 3 | 警告日志,潜在问题提示 | -| `Error` | 4 | 错误日志,已发生的错误 | -| `Fatal` | 5 | 致命日志,导致程序无法继续 | - -## 公共函数 - -| 函数 | 描述 | -|------|------| -| [`LogLevelToString`](logleveltostring.md) | 将 LogLevel 转换为字符串表示 | - -### LogLevelToString - -```cpp -const char* LogLevelToString(LogLevel level); -``` - -将日志级别转换为对应的字符串名称。 - -**参数:** -- `level` - 日志级别值 - -**返回:** 对应级别的字符串名称,如 "Verbose"、"Debug"、"Info" 等 - -**示例:** - -```cpp -#include -#include "XCEngine/Debug/LogLevel.h" - -int main() { - using namespace XCEngine::Debug; - - std::cout << LogLevelToString(LogLevel::Verbose) << std::endl; // Output: VERBOSE - std::cout << LogLevelToString(LogLevel::Info) << std::endl; // Output: INFO - std::cout << LogLevelToString(LogLevel::Error) << std::endl; // Output: ERROR - - for (uint8_t i = 0; i <= 5; ++i) { - LogLevel level = static_cast(i); - std::cout << static_cast(level) << ": " << LogLevelToString(level) << std::endl; - } - - return 0; -} -``` - -## 使用示例 - -```cpp -#include "XCEngine/Debug/LogLevel.h" - -using namespace XCEngine::Debug; - -void ProcessLog(LogLevel level, const char* message) { - if (level >= LogLevel::Warning) { - printf("[%s] %s\n", LogLevelToString(level), message); - } -} - -int main() { - ProcessLog(LogLevel::Verbose, "This is verbose"); // Filtered out - ProcessLog(LogLevel::Debug, "This is debug"); // Filtered out - ProcessLog(LogLevel::Info, "This is info"); // Filtered out - ProcessLog(LogLevel::Warning, "This is warning"); // Output: [WARNING] This is warning - ProcessLog(LogLevel::Error, "This is error"); // Output: [ERROR] This is error - ProcessLog(LogLevel::Fatal, "This is fatal"); // Output: [FATAL] This is fatal - - return 0; -} -``` - -## 相关文档 - -- [Debug 模块总览](../debug.md) - Debug 模块介绍 diff --git a/docs/api/debug/loglevel/logleveltostring.md b/docs/api/debug/loglevel/logleveltostring.md deleted file mode 100644 index b07e98dd..00000000 --- a/docs/api/debug/loglevel/logleveltostring.md +++ /dev/null @@ -1,28 +0,0 @@ -# LogLevelToString - -```cpp -const char* LogLevelToString(LogLevel level) -``` - -将 `LogLevel` 枚举值转换为可读字符串。 - -**参数:** -- `level` - 日志级别 - -**返回:** 对应级别的字符串("VERBOSE", "DEBUG", "INFO", "WARNING", "ERROR", "FATAL") - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -XCEngine::Debug::LogLevel level = XCEngine::Debug::LogLevel::Error; -const char* str = XCEngine::Debug::LogLevelToString(level); -// str == "ERROR" -``` - -## 相关文档 - -- [LogLevel 总览](loglevel.md) - 返回类总览 diff --git a/docs/api/debug/profiler/beginframe.md b/docs/api/debug/profiler/beginframe.md deleted file mode 100644 index 6572da78..00000000 --- a/docs/api/debug/profiler/beginframe.md +++ /dev/null @@ -1,30 +0,0 @@ -# Profiler::BeginFrame - -```cpp -void BeginFrame() -``` - -开始一帧的性能分析。记录当前帧的起始时间戳,用于计算帧级别的性能指标。应在每帧渲染开始时调用。 - -**返回:** `void` - -**线程安全:** ✅ 线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -void GameLoop() { - XCEngine::Debug::Profiler::Get().BeginFrame(); - Update(); - Render(); - XCEngine::Debug::Profiler::Get().EndFrame(); -} -``` - -## 相关文档 - -- [Profiler 总览](profiler.md) - 返回类总览 diff --git a/docs/api/debug/profiler/beginprofile.md b/docs/api/debug/profiler/beginprofile.md deleted file mode 100644 index 7dd9a596..00000000 --- a/docs/api/debug/profiler/beginprofile.md +++ /dev/null @@ -1,40 +0,0 @@ -# Profiler::BeginProfile - -```cpp -void BeginProfile(const char* name) -``` - -开始一个性能分析块。将分析节点压入栈中并记录开始时间。每次调用 `BeginProfile` 应与一次 `EndProfile` 配对使用。 - -**参数:** -- `name` - 分析块的名称,用于在导出结果中标识 - -**返回:** `void` - -**线程安全:** ✅ 线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -void ProcessMesh() { - XCEngine::Debug::Profiler::Get().BeginProfile("ProcessMesh"); - - XCEngine::Debug::Profiler::Get().BeginProfile("ComputeVertices"); - ComputeVertices(); - XCEngine::Debug::Profiler::Get().EndProfile(); - - XCEngine::Debug::Profiler::Get().BeginProfile("ComputeIndices"); - ComputeIndices(); - XCEngine::Debug::Profiler::Get().EndProfile(); - - XCEngine::Debug::Profiler::Get().EndProfile(); -} -``` - -## 相关文档 - -- [Profiler 总览](profiler.md) - 返回类总览 diff --git a/docs/api/debug/profiler/endframe.md b/docs/api/debug/profiler/endframe.md deleted file mode 100644 index 766c5066..00000000 --- a/docs/api/debug/profiler/endframe.md +++ /dev/null @@ -1,32 +0,0 @@ -# Profiler::EndFrame - -```cpp -void EndFrame() -``` - -结束一帧的性能分析。清空当前帧采集的所有样本数据,准备记录下一帧的性能数据。应在每帧渲染结束时调用。 - -**注意:** 此方法仅清空样本数据,不会计算或导出帧耗时信息。 - -**返回:** `void` - -**线程安全:** ✅ 线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -void GameLoop() { - XCEngine::Debug::Profiler::Get().BeginFrame(); - Update(); - Render(); - XCEngine::Debug::Profiler::Get().EndFrame(); -} -``` - -## 相关文档 - -- [Profiler 总览](profiler.md) - 返回类总览 diff --git a/docs/api/debug/profiler/endprofile.md b/docs/api/debug/profiler/endprofile.md deleted file mode 100644 index 37cdaefd..00000000 --- a/docs/api/debug/profiler/endprofile.md +++ /dev/null @@ -1,29 +0,0 @@ -# Profiler::EndProfile - -```cpp -void EndProfile() -``` - -结束当前性能分析块。从栈顶弹出分析节点并计算持续时间(endTime - startTime),将结果保存到样本列表中。 - -**返回:** `void` - -**线程安全:** ✅ 线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -void RenderPipeline() { - XCEngine::Debug::Profiler::Get().BeginProfile("RenderPipeline"); - // ... 渲染逻辑 ... - XCEngine::Debug::Profiler::Get().EndProfile(); -} -``` - -## 相关文档 - -- [Profiler 总览](profiler.md) - 返回类总览 diff --git a/docs/api/debug/profiler/exportchrometracing.md b/docs/api/debug/profiler/exportchrometracing.md deleted file mode 100644 index dc6843c3..00000000 --- a/docs/api/debug/profiler/exportchrometracing.md +++ /dev/null @@ -1,49 +0,0 @@ -# Profiler::ExportChromeTracing - -```cpp -void ExportChromeTracing(const Containers::String& filePath) -``` - -**状态:** 此方法目前为空实现,暂未功能。 - -将收集的性能数据导出为 Chrome Tracing JSON 格式。导出的文件可通过 Chrome 浏览器打开(地址栏输入 `chrome://tracing` 并加载文件)进行可视化分析。 - -**参数:** -- `filePath` - 输出文件路径 - -**返回:** `void` - -**线程安全:** ✅ 线程安全 - -**复杂度:** O(n),n 为记录的样本数量 - -**示例:** - -```cpp -#include - -XCEngine::Debug::Profiler::Get().Initialize(); - -void RenderFrame() { - XCEngine::Debug::Profiler::Get().BeginFrame(); - XE_PROFILE_FUNCTION(); - - XE_PROFILE_BEGIN("UpdateScene"); - UpdateScene(); - XE_PROFILE_END(); - - XE_PROFILE_BEGIN("DrawScene"); - DrawScene(); - XE_PROFILE_END(); - - XCEngine::Debug::Profiler::Get().EndFrame(); -} - -// 运行一段时间后导出(需在 Shutdown 前调用) -XCEngine::Debug::Profiler::Get().ExportChromeTracing("trace.json"); -XCEngine::Debug::Profiler::Get().Shutdown(); -``` - -## 相关文档 - -- [Profiler 总览](profiler.md) - 返回类总览 diff --git a/docs/api/debug/profiler/get.md b/docs/api/debug/profiler/get.md deleted file mode 100644 index 0a68c70f..00000000 --- a/docs/api/debug/profiler/get.md +++ /dev/null @@ -1,24 +0,0 @@ -# Profiler::Get - -```cpp -static Profiler& Get() -``` - -获取 `Profiler` 单例实例。Profiler 使用局部静态变量实现 Meyers' Singleton,确保线程安全且只初始化一次。 - -**返回:** `Profiler&` - 全局性能分析器实例的引用 - -**线程安全:** ✅ 线程安全(Meyers' Singleton) - -**复杂度:** O(1) - -**示例:** - -```cpp -XCEngine::Debug::Profiler& profiler = XCEngine::Debug::Profiler::Get(); -profiler.Initialize(); -``` - -## 相关文档 - -- [Profiler 总览](profiler.md) - 返回类总览 diff --git a/docs/api/debug/profiler/initialize.md b/docs/api/debug/profiler/initialize.md deleted file mode 100644 index b1cc9925..00000000 --- a/docs/api/debug/profiler/initialize.md +++ /dev/null @@ -1,34 +0,0 @@ -# Profiler::Initialize - -```cpp -void Initialize() -``` - -初始化性能分析器。在首次使用性能分析功能前必须调用。初始化内部状态标志,确保分析器已准备好工作。 - -**注意:** 帧计时器等数据结构在首次 BeginFrame 时自动初始化。 - -**返回:** `void` - -**线程安全:** ✅ 线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -int main() { - XCEngine::Debug::Profiler::Get().Initialize(); - XCEngine::Debug::Profiler::Get().BeginFrame(); - // ... 性能测量 ... - XCEngine::Debug::Profiler::Get().EndFrame(); - XCEngine::Debug::Profiler::Get().Shutdown(); - return 0; -} -``` - -## 相关文档 - -- [Profiler 总览](profiler.md) - 返回类总览 diff --git a/docs/api/debug/profiler/markevent.md b/docs/api/debug/profiler/markevent.md deleted file mode 100644 index 1675e441..00000000 --- a/docs/api/debug/profiler/markevent.md +++ /dev/null @@ -1,40 +0,0 @@ -# Profiler::MarkEvent - -```cpp -void MarkEvent(const char* name, uint64_t timestamp, uint32_t threadId) -``` - -**状态:** 此方法目前为空实现,暂未功能。 - -在指定时间点标记一个事件。用于记录离散的瞬时事件,如 GPU 命令提交、状态切换等,通常用于多线程性能分析。 - -**参数:** -- `name` - 事件名称 -- `timestamp` - 事件发生的时间戳(微秒) -- `threadId` - 事件所属的线程 ID - -**返回:** `void` - -**线程安全:** ✅ 线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -// 在多线程场景中标记事件 -void WorkerThread() { - uint32_t tid = GetCurrentThreadId(); - uint64_t ts = GetTickCount(); - - XCEngine::Debug::Profiler::Get().MarkEvent("TaskStarted", ts, tid); - DoWork(); - XCEngine::Debug::Profiler::Get().MarkEvent("TaskCompleted", GetTickCount(), tid); -} -``` - -## 相关文档 - -- [Profiler 总览](profiler.md) - 返回类总览 diff --git a/docs/api/debug/profiler/profiler.md b/docs/api/debug/profiler/profiler.md deleted file mode 100644 index 1111a20d..00000000 --- a/docs/api/debug/profiler/profiler.md +++ /dev/null @@ -1,133 +0,0 @@ -# Profiler - -**命名空间**: `XCEngine::Debug` - -**类型**: `class` (singleton) - -**头文件**: `XCEngine/Debug/Profiler.h` - -**描述**: 性能分析器单例,用于测量代码块执行时间并支持 Chrome Tracing 格式导出。 - -## 概述 - -`Profiler` 是 XCEngine 的性能分析工具。它通过栈式记录和采样方式跟踪函数执行时间,支持导出为 Chrome Tracing 格式(可通过 Chrome 的 `chrome://tracing` 查看)。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Get`](get.md) | 获取单例实例 | -| [`Initialize`](initialize.md) | 初始化性能分析器 | -| [`Shutdown`](shutdown.md) | 关闭性能分析器 | -| [`BeginProfile`](beginprofile.md) | 开始一个性能分析块 | -| [`EndProfile`](endprofile.md) | 结束当前性能分析块 | -| [`BeginFrame`](beginframe.md) | 开始一帧的分析 | -| [`EndFrame`](endframe.md) | 结束一帧的分析 | -| [`MarkEvent`](markevent.md) | 标记一个事件点 | -| [`SetMarker`](setmarker.md) | 设置帧标记 | -| [`ExportChromeTracing`](exportchrometracing.md) | 导出为 Chrome Tracing JSON 格式 | - -## 宏定义 - -### XE_PROFILE_BEGIN - -```cpp -#define XE_PROFILE_BEGIN(name) XCEngine::Debug::Profiler::Get().BeginProfile(name) -``` - -开始分析指定名称的代码块。 - -### XE_PROFILE_END - -```cpp -#define XE_PROFILE_END() XCEngine::Debug::Profiler::Get().EndProfile() -``` - -结束当前分析块。 - -### XE_PROFILE_FUNCTION - -```cpp -#define XE_PROFILE_FUNCTION() XE_PROFILE_BEGIN(__FUNCTION__) -``` - -自动使用当前函数名进行分析。 - -## 私有成员 - -### ProfileNode - -```cpp -struct ProfileNode { - const char* name; - uint64_t startTime; - uint64_t endTime; - uint32_t threadId; -}; -``` - -内部使用的性能分析节点结构,用于在栈上跟踪嵌套的分析块。 - -### ProfileSample - -```cpp -struct ProfileSample { - const char* name; - uint64_t duration; - uint32_t threadId; -}; -``` - -记录单个性能样本的结构,包含名称、持续时间和线程 ID。 - -## 成员变量 - -| 成员 | 类型 | 描述 | -|------|------|------| -| `m_profileStack` | `std::vector` | 分析块栈,用于跟踪嵌套调用 | -| `m_samples` | `std::vector` | 样本列表,记录完成的性能数据 | -| `m_frameStartTime` | `uint64_t` | 当前帧开始时间戳(微秒) | -| `m_initialized` | `bool` | 初始化标志 | - -## 实现状态 - -以下方法目前为存根(stub)实现,尚未完成功能: - -| 方法 | 状态 | -|------|------| -| `void MarkEvent(const char* name, uint64_t timestamp, uint32_t threadId)` | 存根 | -| `void SetMarker(const char* name, uint32_t color)` | 存根 | -| `void ExportChromeTracing(const Containers::String& filePath)` | 存根 | - -## 使用示例 - -```cpp -Profiler::Get().Initialize(); - -void RenderFrame() { - XE_PROFILE_FUNCTION(); - - { - XE_PROFILE_BEGIN("UpdateGeometry"); - UpdateGeometry(); - XE_PROFILE_END(); - } - - { - XE_PROFILE_BEGIN("DrawCalls"); - DrawCalls(); - XE_PROFILE_END(); - } -} - -Profiler::Get().BeginFrame(); -// ... 渲染帧 ... -Profiler::Get().EndFrame(); -Profiler::Get().ExportChromeTracing("profile.json"); -Profiler::Get().Shutdown(); -``` - -## 相关文档 - -- [Debug 模块总览](../debug.md) - 返回模块总览 -- [Logger](../logger/logger.md) - 日志记录器 diff --git a/docs/api/debug/profiler/setmarker.md b/docs/api/debug/profiler/setmarker.md deleted file mode 100644 index 4b28a58a..00000000 --- a/docs/api/debug/profiler/setmarker.md +++ /dev/null @@ -1,37 +0,0 @@ -# Profiler::SetMarker - -```cpp -void SetMarker(const char* name, uint32_t color) -``` - -**状态:** 此方法目前为空实现,暂未功能。 - -在 Chrome Tracing 时间线上设置一个标记点,用于标记特定位置或状态。标记会显示为一条垂直线,便于在性能图中定位关键事件。 - -**参数:** -- `name` - 标记名称 -- `color` - 标记颜色(ABGR 格式) - -**返回:** `void` - -**线程安全:** ✅ 线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -void OnVBlank() { - XCEngine::Debug::Profiler::Get().SetMarker("VBlank", 0xFF00FF00); // 绿色 -} - -void OnRenderComplete() { - XCEngine::Debug::Profiler::Get().SetMarker("FrameRendered", 0xFFFF0000); // 红色 -} -``` - -## 相关文档 - -- [Profiler 总览](profiler.md) - 返回类总览 diff --git a/docs/api/debug/profiler/shutdown.md b/docs/api/debug/profiler/shutdown.md deleted file mode 100644 index 866115a9..00000000 --- a/docs/api/debug/profiler/shutdown.md +++ /dev/null @@ -1,26 +0,0 @@ -# Profiler::Shutdown - -```cpp -void Shutdown() -``` - -关闭性能分析器。清理内部数据结构,停止所有活动分析块,重置状态。在程序退出前调用。 - -**返回:** `void` - -**线程安全:** ✅ 线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -XCEngine::Debug::Profiler::Get().Initialize(); -// ... 使用 Profiler ... -XCEngine::Debug::Profiler::Get().ExportChromeTracing("profile.json"); -XCEngine::Debug::Profiler::Get().Shutdown(); -``` - -## 相关文档 - -- [Profiler 总览](profiler.md) - 返回类总览 diff --git a/docs/api/debug/renderdoc-capture/renderdoc-capture.md b/docs/api/debug/renderdoc-capture/renderdoc-capture.md deleted file mode 100644 index e84762a7..00000000 --- a/docs/api/debug/renderdoc-capture/renderdoc-capture.md +++ /dev/null @@ -1,86 +0,0 @@ -# RenderDocCapture - -**命名空间**: `XCEngine::Debug` - -**类型**: `class (singleton)` - -**头文件**: `XCEngine/Debug/RenderDocCapture.h` - -**描述**: RenderDoc 帧捕获工具集成,用于图形调试和帧分析。 - -## 概述 - -RenderDocCapture 是 RenderDoc 图形调试器的集成类,提供程序化帧捕获功能。通过 LoadRenderDoc API,可以触发帧捕获、获取捕获信息、设置捕获选项等。 - -该类为单例模式,通过 `Get()` 获取实例。支持设置捕获文件路径、捕获注释、捕获选项等。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `Get` | 获取单例实例 | -| `Initialize` | 初始化 RenderDoc 集成,可选指定设备和窗口句柄 | -| `Shutdown` | 关闭 RenderDoc 集成 | -| `SetDevice` | 设置图形设备指针(GPU 相关) | -| `SetWindow` | 设置窗口句柄 | -| `IsLoaded` | 检查 RenderDoc API 是否已加载 | -| `IsCapturing` | 检查是否正在捕获 | -| `GetNumCaptures` | 获取已捕获的帧数量 | -| `GetCapture` | 获取指定捕获的信息 | -| `BeginCapture` | 开始帧捕获 | -| `EndCapture` | 结束帧捕获 | -| `TriggerCapture` | 触发单帧捕获(等同于按 F12) | -| `SetCaptureFilePath` | 设置捕获文件保存路径 | -| `SetCaptureComments` | 设置捕获文件注释 | -| `SetCaptureOptionU32` | 设置32位捕获选项 | -| `LaunchReplayUI` | 启动 RenderDoc 回放界面 | - -## 结构体 - -### RenderDocCaptureInfo - -| 成员 | 类型 | 描述 | -|------|------|------| -| `filename` | `char[256]` | 捕获文件名 | -| `length` | `uint32_t` | 文件大小(字节) | -| `timestamp` | `uint64_t` | 捕获时间戳 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Debug; - -// 获取单例实例 -RenderDocCapture& renderDoc = RenderDocCapture::Get(); - -// 初始化(传入设备和窗口) -renderDoc.Initialize(devicePtr, windowHandle); - -// 设置捕获文件路径 -renderDoc.SetCaptureFilePath("captures/frame_%04i.cap"); -renderDoc.SetCaptureComments("Test capture - stress scene"); - -// 开始捕获 -renderDoc.BeginCapture("Main Window"); - -// ... 渲染代码 ... - -// 结束捕获 -renderDoc.EndCapture(); - -// 或触发单帧捕获 -renderDoc.TriggerCapture(); - -// 检查捕获数量 -uint32_t numCaptures = renderDoc.GetNumCaptures(); - -// 启动回放界面 -renderDoc.LaunchReplayUI(); -``` - -## 相关文档 - -- [Debug 模块总览](../debug.md) - Debug 模块总览 -- [Profiler](../profiler/profiler.md) - 性能分析器 diff --git a/docs/api/main.md b/docs/api/main.md index 72ddbca3..849f6444 100644 --- a/docs/api/main.md +++ b/docs/api/main.md @@ -1,102 +1,53 @@ -# XCEngine API 文档总索引 +# XCEngine API Documentation -**描述**: XCEngine 图形引擎的完整 API 文档索引。 +**命名空间**: `XCEngine` ---- +**类型**: `index` + +**描述**: 指向 `docs/api/XCEngine` 平行目录树的唯一 canonical API 文档入口。 + +## 概览 + +`docs/api/XCEngine/**` 是唯一正式 API 文档树,其层级与 `engine/include/XCEngine/**` 保持平行。 +模块总览页、子模块总览页、类型总览页和方法页都应从这棵目录树进入,不再保留第二套正式入口。 + +## Canonical 入口 + +- [XCEngine/XCEngine.md](XCEngine/XCEngine.md) - 与 `engine/include/XCEngine` 平行的文档根目录 +- [_meta/rebuild-status.md](_meta/rebuild-status.md) - 当前覆盖率与审计状态 ## 模块导航 -| 模块 | 文档目录 | 描述 | -|------|----------|------| -| **RHI** | [rhi/](rhi/rhi.md) | 渲染硬件接口抽象层 | -| **D3D12** | [rhi/d3d12/](rhi/d3d12/d3d12.md) | DirectX 12 后端实现 | -| **OpenGL** | [rhi/opengl/](rhi/opengl/opengl.md) | OpenGL 后端实现 | -| **Containers** | [containers/](containers/containers.md) | 容器数据结构 | -| **Memory** | [memory/](memory/memory.md) | 内存管理 | -| **Threading** | [threading/](threading/threading.md) | 多线程和任务系统 | -| **Core** | [core/](core/core.md) | 核心基础类型 | -| **Debug** | [debug/](debug/debug.md) | 调试和日志 | -| **Math** | [math/](math/math.md) | 数学库 | -| **Resources** | [resources/](resources/resources.md) | 资源管理系统 | -| **Audio** | [audio/](audio/audio.md) | 音频系统 | -| **Components** | [components/](components/components.md) | ECS 组件系统 | -| **Scene** | [scene/](scene/scene.md) | 场景管理系统 | +| 模块 | Canonical 文档 | 对应源码目录 | +|------|----------------|--------------| +| `Audio` | [XCEngine/Audio/Audio.md](XCEngine/Audio/Audio.md) | `XCEngine/Audio/` | +| `Components` | [XCEngine/Components/Components.md](XCEngine/Components/Components.md) | `XCEngine/Components/` | +| `Core` | [XCEngine/Core/Core.md](XCEngine/Core/Core.md) | `XCEngine/Core/` | +| `Debug` | [XCEngine/Debug/Debug.md](XCEngine/Debug/Debug.md) | `XCEngine/Debug/` | +| `Input` | [XCEngine/Input/Input.md](XCEngine/Input/Input.md) | `XCEngine/Input/` | +| `Memory` | [XCEngine/Memory/Memory.md](XCEngine/Memory/Memory.md) | `XCEngine/Memory/` | +| `Platform` | [XCEngine/Platform/Platform.md](XCEngine/Platform/Platform.md) | `XCEngine/Platform/` | +| `Resources` | [XCEngine/Resources/Resources.md](XCEngine/Resources/Resources.md) | `XCEngine/Resources/` | +| `RHI` | [XCEngine/RHI/RHI.md](XCEngine/RHI/RHI.md) | `XCEngine/RHI/` | +| `Scene` | [XCEngine/Scene/Scene.md](XCEngine/Scene/Scene.md) | `XCEngine/Scene/` | +| `Threading` | [XCEngine/Threading/Threading.md](XCEngine/Threading/Threading.md) | `XCEngine/Threading/` | ---- +## 关键子模块 -## 快速开始 - -### 创建渲染设备 - -```cpp -#include -#include - -// 创建 D3D12 设备 -RHI::RHIDevice* device = RHI::RHIFactory::CreateRHIDevice(RHI::RHIType::D3D12); - -// 初始化 -RHI::RHIDeviceDesc desc; -desc.windowHandle = hwnd; -device->Initialize(desc); -``` - -### 使用资源管理器 - -```cpp -#include - -// 加载纹理 -auto texture = XCEngine::Resources::ResourceManager::Get().Load("textures/player.png"); - -// 加载网格 -auto mesh = XCEngine::Resources::ResourceManager::Get().Load("models/player.fbx"); -``` - -### 日志记录 - -```cpp -#include - -// 记录日志 -XE_LOG(Debug::LogCategory::Rendering, Debug::LogLevel::Info, "Render started"); -``` - -### 数学运算 - -```cpp -#include - -// 创建变换矩阵 -Math::Matrix4x4 transform = Math::Matrix4x4::TRS(position, rotation, scale); -``` - ---- - -## 文档统计 - -> ⚠️ 注意:以下统计数据为近似值,部分 RHI 伪造文档待删除后需重新统计。 - -| 模块 | 文档数量 | -|------|----------| -| RHI 抽象层 | ~15 (含待删除伪造文档) | -| D3D12 后端 | ~20 | -| OpenGL 后端 | ~25 (含待删除伪造文档) | -| Math | ~15 | -| Resources | ~20 | -| Threading | ~15 | -| Memory | ~12 | -| Debug | ~10 | -| Core | ~5 | -| Containers | ~4 | -| Audio | ~20 | -| Components | ~50 | -| Scene | ~10 | -| **总计** | **~220 (待精确统计)** | - ---- +| 子模块 | Canonical 文档 | 对应源码目录 | +|--------|----------------|--------------| +| `Core/Asset` | [XCEngine/Core/Asset/Asset.md](XCEngine/Core/Asset/Asset.md) | `XCEngine/Core/Asset/` | +| `Core/Containers` | [XCEngine/Core/Containers/Containers.md](XCEngine/Core/Containers/Containers.md) | `XCEngine/Core/Containers/` | +| `Core/IO` | [XCEngine/Core/IO/IO.md](XCEngine/Core/IO/IO.md) | `XCEngine/Core/IO/` | +| `Core/Math` | [XCEngine/Core/Math/Math.md](XCEngine/Core/Math/Math.md) | `XCEngine/Core/Math/` | +| `Platform/Windows` | [XCEngine/Platform/Windows/Windows.md](XCEngine/Platform/Windows/Windows.md) | `XCEngine/Platform/Windows/` | +| `Resources/Mesh` | [XCEngine/Resources/Mesh/Mesh.md](XCEngine/Resources/Mesh/Mesh.md) | `XCEngine/Resources/Mesh/` | +| `Resources/Texture` | [XCEngine/Resources/Texture/Texture.md](XCEngine/Resources/Texture/Texture.md) | `XCEngine/Resources/Texture/` | +| `RHI/D3D12` | [XCEngine/RHI/D3D12/D3D12.md](XCEngine/RHI/D3D12/D3D12.md) | `XCEngine/RHI/D3D12/` | +| `RHI/OpenGL` | [XCEngine/RHI/OpenGL/OpenGL.md](XCEngine/RHI/OpenGL/OpenGL.md) | `XCEngine/RHI/OpenGL/` | ## 相关文档 -- [XCEngine 架构设计](../../docs/plan/XCEngine渲染引擎架构设计.md) -- [RHI 抽象层设计](../../docs/plan/RHI抽象层设计与实现.md) +- [XCEngine 平行目录根](XCEngine/XCEngine.md) +- [API 文档重构状态](_meta/rebuild-status.md) +- [XCEngine 架构设计](../plan/XCEngine渲染引擎架构设计.md) diff --git a/docs/api/math/aabb/aabb.md b/docs/api/math/aabb/aabb.md deleted file mode 100644 index b4743555..00000000 --- a/docs/api/math/aabb/aabb.md +++ /dev/null @@ -1,62 +0,0 @@ -# OBB - -**命名空间**: `XCEngine::Math` - -**类型**: `struct` - -**头文件**: `XCEngine/Core/Math/AABB.h` - -**描述**: 有向包围盒(Oriented Bounding Box),支持任意方向旋转的盒状包围体 - -## 概述 - -OBB(Oriented Bounding Box)是一种包围盒类型,与轴对齐包围盒(AABB)不同,OBB 可以任意旋转,因此能够更紧凑地包围复杂形状的对象。OBB 由一个中心点、半长向量(extents)和一个变换矩阵组成,变换矩阵定义了盒子的朝向。 - -OBB 常用于碰撞检测、剔除运算和物理模拟等场景。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | -|------|------|------| -| `center` | `Vector3` | OBB 中心点 | -| `extents` | `Vector3` | 从中心到每个面的距离(半长) | -| `transform` | `Matrix4x4` | 变换矩阵,定义盒子朝向 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `GetAxis(int index)` | 获取指定索引处的局部轴方向 | -| `GetMin()` | 获取局部空间最小顶点 | -| `GetMax()` | 获取局部空间最大顶点 | -| `Contains(const Vector3& point)` | 检测点是否在 OBB 内 | -| `Intersects(const OBB& other)` | 检测与另一个 OBB 是否相交 | -| `Intersects(const Sphere& sphere)` | 检测与球体是否相交 | - -## 使用示例 - -```cpp -#include -#include -#include - -using namespace XCEngine::Math; - -OBB obb(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 0.5f, 1.0f)); - -Vector3 point(0.5f, 0.25f, 0.5f); -if (obb.Contains(point)) { - // 点在 OBB 内 -} - -Vector3 axis = obb.GetAxis(0); -Vector3 min = obb.GetMin(); -Vector3 max = obb.GetMax(); -``` - -## 相关文档 - -- [Bounds](../bounds/bounds.md) - 轴对齐包围盒 -- [Vector3](../vector3/vector3.md) - 三维向量 -- [Matrix4](../matrix4/matrix4.md) - 4x4 变换矩阵 -- [Sphere](../sphere/sphere.md) - 球体 diff --git a/docs/api/math/aabb/intersects-obb.md b/docs/api/math/aabb/intersects-obb.md deleted file mode 100644 index 03e87ca5..00000000 --- a/docs/api/math/aabb/intersects-obb.md +++ /dev/null @@ -1,30 +0,0 @@ -# OBB::Intersects (OBB) - -```cpp -bool Intersects(const OBB& other) const -``` - -检测两个 OBB 是否相交(使用 SAT 分离轴定理)。 - -**参数:** -- `other` - 另一个 OBB - -**返回:** `bool` - true 表示相交 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -OBB obbA = ...; -OBB obbB = ...; -if (obbA.Intersects(obbB)) { - // 两个有向包围盒相交 -} -``` - -## 相关文档 - -- [AABB 总览](aabb.md) - 返回 AABB/OBB 总览 \ No newline at end of file diff --git a/docs/api/math/aabb/intersects-sphere.md b/docs/api/math/aabb/intersects-sphere.md deleted file mode 100644 index 2e97ad79..00000000 --- a/docs/api/math/aabb/intersects-sphere.md +++ /dev/null @@ -1,30 +0,0 @@ -# OBB::Intersects (Sphere) - -```cpp -bool Intersects(const Sphere& sphere) const -``` - -检测 OBB 是否与球体相交。 - -**参数:** -- `sphere` - 要检测的球体 - -**返回:** `bool` - true 表示相交 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -OBB obb = ...; -Sphere sphere = ...; -if (obb.Intersects(sphere)) { - // OBB 与球体相交 -} -``` - -## 相关文档 - -- [AABB 总览](aabb.md) - 返回 AABB/OBB 总览 \ No newline at end of file diff --git a/docs/api/math/aabb/obb-contains.md b/docs/api/math/aabb/obb-contains.md deleted file mode 100644 index 49b74a41..00000000 --- a/docs/api/math/aabb/obb-contains.md +++ /dev/null @@ -1,26 +0,0 @@ -# OBB::Contains - -```cpp -bool Contains(const Vector3& point) const -``` - -检测点是否在 OBB 内。 - -**参数:** -- `point` - 要检测的点 - -**返回:** `bool` - true 表示点在 OBB 内 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -if (obb.Contains(point)) { /* inside */ } -``` - -## 相关文档 - -- [AABB 总览](aabb.md) - 返回 AABB/OBB 总览 \ No newline at end of file diff --git a/docs/api/math/aabb/obb-getaxis.md b/docs/api/math/aabb/obb-getaxis.md deleted file mode 100644 index a9123c1b..00000000 --- a/docs/api/math/aabb/obb-getaxis.md +++ /dev/null @@ -1,26 +0,0 @@ -# OBB::GetAxis - -```cpp -Vector3 GetAxis(int index) const -``` - -获取 OBB 的局部轴。 - -**参数:** -- `index` - 轴索引 (0=X, 1=Y, 2=Z) - -**返回:** `Vector3` - 对应的局部轴 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 xAxis = obb.GetAxis(0); -``` - -## 相关文档 - -- [AABB 总览](aabb.md) - 返回 AABB/OBB 总览 \ No newline at end of file diff --git a/docs/api/math/aabb/obb-getmax.md b/docs/api/math/aabb/obb-getmax.md deleted file mode 100644 index 4bce2572..00000000 --- a/docs/api/math/aabb/obb-getmax.md +++ /dev/null @@ -1,23 +0,0 @@ -# OBB::GetMax - -```cpp -Vector3 GetMax() const -``` - -获取局部空间最大点。 - -**返回:** `Vector3` - center + extents - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 max = obb.GetMax(); -``` - -## 相关文档 - -- [AABB 总览](aabb.md) - 返回 AABB/OBB 总览 \ No newline at end of file diff --git a/docs/api/math/aabb/obb-getmin.md b/docs/api/math/aabb/obb-getmin.md deleted file mode 100644 index d99b5f59..00000000 --- a/docs/api/math/aabb/obb-getmin.md +++ /dev/null @@ -1,23 +0,0 @@ -# OBB::GetMin - -```cpp -Vector3 GetMin() const -``` - -获取局部空间最小点。 - -**返回:** `Vector3` - center - extents - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 min = obb.GetMin(); -``` - -## 相关文档 - -- [AABB 总览](aabb.md) - 返回 AABB/OBB 总览 \ No newline at end of file diff --git a/docs/api/math/bounds/bounds.constructors.md b/docs/api/math/bounds/bounds.constructors.md deleted file mode 100644 index 2da03594..00000000 --- a/docs/api/math/bounds/bounds.constructors.md +++ /dev/null @@ -1,38 +0,0 @@ -# Bounds::Bounds - -```cpp -Bounds() -Bounds(const Vector3& center, const Vector3& size) -``` - -构造一个 Bounds 对象。默认构造函数创建中心为原点、范围为零的包围盒。 - -**参数:** -- `center` - 包围盒的中心点 -- `size` - 包围盒的完整尺寸(非 extents,构造时会自动除以 2) - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -// 默认构造 -Bounds empty; -Bounds bounds(Vector3(0.0f, 0.0f, 0.0f), Vector3(2.0f, 2.0f, 2.0f)); -// center = (0,0,0), extents = (1,1,1), 实际尺寸为 2x2x2 -``` - -## 相关文档 - -- [Bounds](bounds.md) - 返回类总览 -- [GetMin](getmin.md) - 获取最小点 -- [GetMax](getmax.md) - 获取最大点 diff --git a/docs/api/math/bounds/bounds.md b/docs/api/math/bounds/bounds.md deleted file mode 100644 index 50641898..00000000 --- a/docs/api/math/bounds/bounds.md +++ /dev/null @@ -1,64 +0,0 @@ -# Bounds - -**命名空间**: `XCEngine::Math` - -**类型**: `struct` - -**头文件**: `XCEngine/Core/Math/Bounds.h` - -**描述**: 轴对齐包围盒,用于场景管理中的快速剔除 - -## 概述 - -Bounds 表示一个轴对齐包围盒(AABB),使用中心点 `center` 和范围 `extents` 定义。`extents` 是从中心到包围盒每个面的距离,因此实际尺寸为 `extents * 2`。常用于视锥剔除、碰撞检测和场景管理中的快速排除不可见物体。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | -|------|------|------| -| `center` | `Vector3` | 包围盒中心点 | -| `extents` | `Vector3` | 从中心到每个面的距离(实际尺寸 = extents * 2) | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Bounds`](bounds.constructors.md) | 构造函数 | -| [`GetMin`](getmin.md) | 获取包围盒最小点 | -| [`GetMax`](getmax.md) | 获取包围盒最大点 | -| [`SetMinMax`](setminmax.md) | 从最小/最大点设置包围盒 | -| [`Intersects`](intersects.md) | 检测与另一个 Bounds 是否相交 | -| [`Contains`](contains.md) | 检测点是否在盒内 | -| [`Encapsulate`](encapsulate.md) | 扩展包围盒以包含点或另一个 Bounds | -| [`Expand`](expand.md) | 扩展包围盒 | -| [`GetClosestPoint`](getclosestpoint.md) | 获取盒上最接近给定点的点 | -| [`GetVolume`](getvolume.md) | 计算包围盒体积 | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Bounds bounds(Vector3(0.0f, 0.0f, 0.0f), Vector3(2.0f, 2.0f, 2.0f)); - -Vector3 min = bounds.GetMin(); -Vector3 max = bounds.GetMax(); - -bounds.Expand(1.0f); - -if (bounds.Contains(Vector3(0.0f, 0.0f, 0.0f))) { - // point is inside -} - -Bounds other(Vector3(5.0f, 0.0f, 0.0f), Vector3(1.0f, 1.0f, 1.0f)); -if (bounds.Intersects(other)) { - // bounds intersect -} -``` - -## 相关文档 - -- [Math 模块总览](../math.md) - 返回 Math 模块总览 diff --git a/docs/api/math/bounds/contains.md b/docs/api/math/bounds/contains.md deleted file mode 100644 index 5083fae9..00000000 --- a/docs/api/math/bounds/contains.md +++ /dev/null @@ -1,38 +0,0 @@ -# Bounds::Contains - -```cpp -bool Contains(const Vector3& point) const -``` - -检测给定点是否在包围盒内部。边界上的点被视为在盒内。 - -**参数:** -- `point` - 要检测的点 - -**返回:** `bool` - true 表示点在盒内(包括边界) - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Bounds bounds(Vector3(0.0f, 0.0f, 0.0f), Vector3(2.0f, 2.0f, 2.0f)); -if (bounds.Contains(Vector3(0.0f, 0.0f, 0.0f))) { - // center is inside -} -if (!bounds.Contains(Vector3(10.0f, 0.0f, 0.0f))) { - // far away point is outside -} -``` - -## 相关文档 - -- [Bounds](bounds.md) - 返回类总览 -- [Intersects](intersects.md) - 检测与另一个 Bounds 是否相交 diff --git a/docs/api/math/bounds/encapsulate.md b/docs/api/math/bounds/encapsulate.md deleted file mode 100644 index 4fe87ec4..00000000 --- a/docs/api/math/bounds/encapsulate.md +++ /dev/null @@ -1,40 +0,0 @@ -# Bounds::Encapsulate - -```cpp -void Encapsulate(const Vector3& point) -void Encapsulate(const Bounds& bounds) -``` - -扩展包围盒以包含指定的点或另一个 Bounds。调用后,包围盒的 min/max 将被更新以确保目标被完全包含。 - -**参数:** -- `point` - 要包含的点 -- `bounds` - 要包含的 Bounds - -**返回:** `void` - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Bounds bounds(Vector3(0.0f, 0.0f, 0.0f), Vector3(2.0f, 2.0f, 2.0f)); -bounds.Encapsulate(Vector3(10.0f, 0.0f, 0.0f)); -// bounds now spans from (-1,-1,-1) to (10,1,1) - -Bounds other(Vector3(5.0f, 5.0f, 5.0f), Vector3(1.0f, 1.0f, 1.0f)); -bounds.Encapsulate(other); -// bounds now contains both original bounds and 'other' -``` - -## 相关文档 - -- [Bounds](bounds.md) - 返回类总览 -- [Expand](expand.md) - 均匀扩展包围盒 diff --git a/docs/api/math/bounds/expand.md b/docs/api/math/bounds/expand.md deleted file mode 100644 index 32966f42..00000000 --- a/docs/api/math/bounds/expand.md +++ /dev/null @@ -1,38 +0,0 @@ -# Bounds::Expand - -```cpp -void Expand(float amount) -void Expand(const Vector3& amount) -``` - -扩展包围盒。输入值会被除以 2 后添加到 extents 上(标量扩展时,每个轴的 extents 增加 `amount * 0.5f`,即实际尺寸增加 `amount`;向量扩展时,各分量分别处理)。 - -**参数:** -- `amount` - 扩展量(标量时各方向均匀扩展,向量时各分量分别扩展) - -**返回:** `void` - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Bounds bounds(Vector3(0.0f, 0.0f, 0.0f), Vector3(2.0f, 2.0f, 2.0f)); -bounds.Expand(1.0f); -// extents becomes (2.0, 2.0, 2.0), size increased by 1 in each direction - -bounds.Expand(Vector3(1.0f, 0.0f, 0.0f)); -// extents becomes (2.5, 2.0, 2.0), only x extended -``` - -## 相关文档 - -- [Bounds](bounds.md) - 返回类总览 -- [Encapsulate](encapsulate.md) - 扩展以包含点或 Bounds diff --git a/docs/api/math/bounds/getclosestpoint.md b/docs/api/math/bounds/getclosestpoint.md deleted file mode 100644 index e8af9917..00000000 --- a/docs/api/math/bounds/getclosestpoint.md +++ /dev/null @@ -1,38 +0,0 @@ -# Bounds::GetClosestPoint - -```cpp -Vector3 GetClosestPoint(const Vector3& point) const -``` - -获取包围盒上最接近给定点的点。如果点在盒内,则返回该点本身;如果在盒外,则返回该点在盒面上的投影点。 - -**参数:** -- `point` - 参考点 - -**返回:** `Vector3` - 盒上最接近的点 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Bounds bounds(Vector3(0.0f, 0.0f, 0.0f), Vector3(2.0f, 2.0f, 2.0f)); - -Vector3 inside = bounds.GetClosestPoint(Vector3(0.0f, 0.0f, 0.0f)); -// returns (0, 0, 0) since point is inside - -Vector3 outside = bounds.GetClosestPoint(Vector3(10.0f, 0.0f, 0.0f)); -// returns (1, 0, 0) - closest point on box surface -``` - -## 相关文档 - -- [Bounds](bounds.md) - 返回类总览 -- [Contains](contains.md) - 检测点是否在盒内 diff --git a/docs/api/math/bounds/getmax.md b/docs/api/math/bounds/getmax.md deleted file mode 100644 index 1dd8225d..00000000 --- a/docs/api/math/bounds/getmax.md +++ /dev/null @@ -1,31 +0,0 @@ -# Bounds::GetMax - -```cpp -Vector3 GetMax() const -``` - -获取包围盒的最大点(最大 corner)。 - -**返回:** `Vector3` - 包围盒最大点,等于 `center + extents` - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Bounds bounds(Vector3(0.0f, 0.0f, 0.0f), Vector3(2.0f, 2.0f, 2.0f)); -Vector3 max = bounds.GetMax(); -// max = (1.0f, 1.0f, 1.0f) -``` - -## 相关文档 - -- [Bounds](bounds.md) - 返回类总览 -- [GetMin](getmin.md) - 获取最小点 diff --git a/docs/api/math/bounds/getmin.md b/docs/api/math/bounds/getmin.md deleted file mode 100644 index 78eecf0a..00000000 --- a/docs/api/math/bounds/getmin.md +++ /dev/null @@ -1,31 +0,0 @@ -# Bounds::GetMin - -```cpp -Vector3 GetMin() const -``` - -获取包围盒的最小点(最小 corner)。 - -**返回:** `Vector3` - 包围盒最小点,等于 `center - extents` - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Bounds bounds(Vector3(0.0f, 0.0f, 0.0f), Vector3(2.0f, 2.0f, 2.0f)); -Vector3 min = bounds.GetMin(); -// min = (-1.0f, -1.0f, -1.0f) -``` - -## 相关文档 - -- [Bounds](bounds.md) - 返回类总览 -- [GetMax](getmax.md) - 获取最大点 diff --git a/docs/api/math/bounds/getvolume.md b/docs/api/math/bounds/getvolume.md deleted file mode 100644 index db2386f8..00000000 --- a/docs/api/math/bounds/getvolume.md +++ /dev/null @@ -1,30 +0,0 @@ -# Bounds::GetVolume - -```cpp -float GetVolume() const -``` - -计算包围盒的体积。返回 `extents.x * 2.0f * extents.y * 2.0f * extents.z * 2.0f`。 - -**返回:** `float` - 包围盒体积 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Bounds bounds(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 2.0f, 3.0f)); -float vol = bounds.GetVolume(); -// vol = 2 * 4 * 6 = 48 -``` - -## 相关文档 - -- [Bounds](bounds.md) - 返回类总览 diff --git a/docs/api/math/bounds/intersects.md b/docs/api/math/bounds/intersects.md deleted file mode 100644 index 2499d3d6..00000000 --- a/docs/api/math/bounds/intersects.md +++ /dev/null @@ -1,36 +0,0 @@ -# Bounds::Intersects - -```cpp -bool Intersects(const Bounds& other) const -``` - -检测该包围盒与另一个 Bounds 是否相交(重叠)。使用简化的 AABB 重叠检测算法,通过比较两个包围盒中心距离与它们 extents 之和来判断是否相交。 - -**参数:** -- `other` - 另一个 Bounds - -**返回:** `bool` - true 表示两个 Bounds 相交 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Bounds a(Vector3(0.0f, 0.0f, 0.0f), Vector3(2.0f, 2.0f, 2.0f)); -Bounds b(Vector3(1.0f, 0.0f, 0.0f), Vector3(2.0f, 2.0f, 2.0f)); -if (a.Intersects(b)) { - // a and b overlap -} -``` - -## 相关文档 - -- [Bounds](bounds.md) - 返回类总览 -- [Contains](contains.md) - 检测点是否在盒内 diff --git a/docs/api/math/bounds/setminmax.md b/docs/api/math/bounds/setminmax.md deleted file mode 100644 index e7d4b79c..00000000 --- a/docs/api/math/bounds/setminmax.md +++ /dev/null @@ -1,36 +0,0 @@ -# Bounds::SetMinMax - -```cpp -void SetMinMax(const Vector3& min, const Vector3& max) -``` - -从最小点和最大点设置包围盒。中心点和范围由输入的 min/max 计算得出。 - -**参数:** -- `min` - 包围盒的最小点 -- `max` - 包围盒的最大点 - -**返回:** `void` - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Bounds bounds; -bounds.SetMinMax(Vector3(-1.0f, -1.0f, -1.0f), Vector3(1.0f, 1.0f, 1.0f)); -// center = (0, 0, 0), extents = (1, 1, 1) -``` - -## 相关文档 - -- [Bounds](bounds.md) - 返回类总览 -- [GetMin](getmin.md) - 获取最小点 -- [GetMax](getmax.md) - 获取最大点 diff --git a/docs/api/math/box/box.md b/docs/api/math/box/box.md deleted file mode 100644 index 1992c792..00000000 --- a/docs/api/math/box/box.md +++ /dev/null @@ -1,65 +0,0 @@ -# Box - -**命名空间**: `XCEngine::Math` - -**类型**: `struct` - -**头文件**: `XCEngine/Core/Math/Box.h` - -**描述**: 轴对齐盒体,用于碰撞检测和视锥体裁剪 - -## 概述 - -`Box` 是一个轴对齐包围盒(AABB)结构体,支持可选的变换矩阵以实现定向包围盒(OBB)语义。盒体由中心点 `center` 和半长 `extents` 定义,`transform` 矩阵可用于 `Contains` 和 `Intersects(Sphere)` 方法以执行真正的 OBB 检测。 - -**注意:** -- `Contains` 和 `Intersects(Sphere)` 方法会将点/球心变换到盒体局部空间(使用 `transform` 的逆矩阵)进行检测 -- `GetMin` / `GetMax` 返回的是未应用 `transform` 的局部空间角点(即 `center ± extents`) -- `Intersects(Box)` 目前使用 AABB 简化算法,未考虑旋转 - -## 结构体成员 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| `center` | `Vector3` | 盒体中心点 | `Vector3::Zero()` | -| `extents` | `Vector3` | 从中心到每个面的距离(实际尺寸 = extents * 2) | `Vector3::Zero()` | -| `transform` | `Matrix4` | 变换矩阵,用于 OBB 检测 | 单位矩阵 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Box()`](constructor.md) | 默认构造(各量为零) | -| [`Box(center, extents)`](constructor.md) | 从中心和半长构造 | -| [`GetMin`](getmin.md) | 获取局部空间最小点 | -| [`GetMax`](getmax.md) | 获取局部空间最大点 | -| [`Contains`](contains.md) | 点是否在盒内(使用 transform) | -| [`Intersects(Sphere)`](intersects.md) | 与球体相交 | -| [`Intersects(Box)`](intersects-box.md) | 与另一个盒相交(AABB 检测) | -| [`Intersects(Ray, t)`](intersects-ray.md) | 与射线相交 | - -## 使用示例 - -```cpp -#include -#include -#include - -using namespace XCEngine::Math; - -Box box(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 1.0f, 1.0f)); - -Vector3 min = box.GetMin(); -Vector3 max = box.GetMax(); - -if (box.Contains(Vector3(0.5f, 0.5f, 0.5f))) { -} - -Sphere sphere(Vector3(2.0f, 0.0f, 0.0f), 1.0f); -if (box.Intersects(sphere)) { -} -``` - -## 相关文档 - -- [Math 模块总览](../math.md) - 返回 Math 模块总览 diff --git a/docs/api/math/box/constructor.md b/docs/api/math/box/constructor.md deleted file mode 100644 index e4625fa1..00000000 --- a/docs/api/math/box/constructor.md +++ /dev/null @@ -1,42 +0,0 @@ -# Box::Box - -## 默认构造函数 - -```cpp -Box() = default; -``` - -构造一个盒体,`center` 为原点,`extents` 为零向量,`transform` 为单位矩阵。 - -## 带参构造函数 - -```cpp -Box(const Vector3& center, const Vector3& extents) -``` - -从指定的中心和半长构造一个盒体。 - -**参数:** -- `center` - 盒体的中心点 -- `extents` - 盒体在各轴向上的半长(从中心到面的距离) - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Box box(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 2.0f, 1.5f)); -``` - -## 相关文档 - -- [Box 类总览](box.md) - 返回类总览 diff --git a/docs/api/math/box/contains.md b/docs/api/math/box/contains.md deleted file mode 100644 index db1bca5e..00000000 --- a/docs/api/math/box/contains.md +++ /dev/null @@ -1,33 +0,0 @@ -# Box::Contains - -```cpp -bool Contains(const Vector3& point) const -``` - -检测点是否在盒体内。该方法使用 `transform` 矩阵将点转换到盒体局部空间进行检测,支持 OBB 语义。 - -**参数:** -- `point` - 要检测的点(世界坐标) - -**返回:** `bool` - 点在盒体内返回 true,否则返回 false - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Box box(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 1.0f, 1.0f)); -if (box.Contains(Vector3(0.5f, 0.5f, 0.5f))) { -} -``` - -## 相关文档 - -- [Box 类总览](box.md) - 返回类总览 diff --git a/docs/api/math/box/getmax.md b/docs/api/math/box/getmax.md deleted file mode 100644 index 6ad292ed..00000000 --- a/docs/api/math/box/getmax.md +++ /dev/null @@ -1,32 +0,0 @@ -# Box::GetMax - -```cpp -Vector3 GetMax() const -``` - -获取盒体在局部空间中的最大点(角点)。 - -**参数:** 无 - -**返回:** `Vector3` - 盒体最大点,即 `center + extents` - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Box box(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 2.0f, 1.0f)); -Vector3 max = box.GetMax(); -``` - -## 相关文档 - -- [Box 类总览](box.md) - 返回类总览 -- [GetMin](getmin.md) - 获取最小点 diff --git a/docs/api/math/box/getmin.md b/docs/api/math/box/getmin.md deleted file mode 100644 index bf110cf1..00000000 --- a/docs/api/math/box/getmin.md +++ /dev/null @@ -1,32 +0,0 @@ -# Box::GetMin - -```cpp -Vector3 GetMin() const -``` - -获取盒体在局部空间中的最小点(角点)。 - -**参数:** 无 - -**返回:** `Vector3` - 盒体最小点,即 `center - extents` - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Box box(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 2.0f, 1.0f)); -Vector3 min = box.GetMin(); -``` - -## 相关文档 - -- [Box 类总览](box.md) - 返回类总览 -- [GetMax](getmax.md) - 获取最大点 diff --git a/docs/api/math/box/intersects-box.md b/docs/api/math/box/intersects-box.md deleted file mode 100644 index 521a85e4..00000000 --- a/docs/api/math/box/intersects-box.md +++ /dev/null @@ -1,35 +0,0 @@ -# Box::Intersects (Box) - -```cpp -bool Intersects(const Box& other) const -``` - -检测两个盒体是否相交。该方法使用 AABB 简化算法,通过比较两个盒体的最小点和最大点进行相交检测。 - -**注意:** 当前实现为 AABB 检测,未使用 `transform` 进行真正的 OBB-SAT 检测。 - -**参数:** -- `other` - 另一个盒体 - -**返回:** `bool` - 相交返回 true,否则返回 false - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Math; - -Box box1(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 1.0f, 1.0f)); -Box box2(Vector3(1.5f, 0.0f, 0.0f), Vector3(1.0f, 1.0f, 1.0f)); -if (box1.Intersects(box2)) { -} -``` - -## 相关文档 - -- [Box 类总览](box.md) - 返回类总览 diff --git a/docs/api/math/box/intersects-ray.md b/docs/api/math/box/intersects-ray.md deleted file mode 100644 index 427dfe00..00000000 --- a/docs/api/math/box/intersects-ray.md +++ /dev/null @@ -1,38 +0,0 @@ -# Box::Intersects (Ray) - -```cpp -bool Intersects(const Ray& ray, float& t) const -``` - -检测盒体是否与射线相交。如果相交,通过 `t` 输出射线原点到交点的距离。 - -**参数:** -- `ray` - 要检测的射线 -- `t` - 输出交点距离(如果返回 true) - -**返回:** `bool` - 相交返回 true,否则返回 false - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Box box(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 1.0f, 1.0f)); -Ray ray(Vector3(0.0f, 0.0f, -5.0f), Vector3(0.0f, 0.0f, 1.0f)); -float t; -if (box.Intersects(ray, t)) { - Vector3 hitPoint = ray.GetPoint(t); -} -``` - -## 相关文档 - -- [Box 类总览](box.md) - 返回类总览 -- [Ray::Intersects](../ray/ray.md) - 射线相交检测 diff --git a/docs/api/math/box/intersects.md b/docs/api/math/box/intersects.md deleted file mode 100644 index c088933a..00000000 --- a/docs/api/math/box/intersects.md +++ /dev/null @@ -1,35 +0,0 @@ -# Box::Intersects (Sphere) - -```cpp -bool Intersects(const Sphere& sphere) const -``` - -检测盒体是否与球体相交。该方法使用 `transform` 矩阵将球体中心转换到盒体局部空间进行检测,支持 OBB 语义。 - -**参数:** -- `sphere` - 要检测的球体 - -**返回:** `bool` - 相交返回 true,否则返回 false - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Box box(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 1.0f, 1.0f)); -Sphere sphere(Vector3(2.0f, 0.0f, 0.0f), 1.0f); -if (box.Intersects(sphere)) { - // 盒体与球体相交 -} -``` - -## 相关文档 - -- [Box 类总览](box.md) - 返回类总览 diff --git a/docs/api/math/color/black.md b/docs/api/math/color/black.md deleted file mode 100644 index 89a9080e..00000000 --- a/docs/api/math/color/black.md +++ /dev/null @@ -1,24 +0,0 @@ -# Color::Black - -```cpp -static Color Black() -``` - -返回黑色 (0, 0, 0, 1)。 - -**返回:** `Color` - 黑色 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Color c = Color::Black(); -``` - -## 相关文档 - -- [Color](color.md) - 返回类总览 -- [`White`](white.md) - 返回白色 diff --git a/docs/api/math/color/blue.md b/docs/api/math/color/blue.md deleted file mode 100644 index acb1167d..00000000 --- a/docs/api/math/color/blue.md +++ /dev/null @@ -1,24 +0,0 @@ -# Color::Blue - -```cpp -static Color Blue() -``` - -返回蓝色 (0, 0, 1, 1)。 - -**返回:** `Color` - 蓝色 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Color c = Color::Blue(); -``` - -## 相关文档 - -- [Color](color.md) - 返回类总览 -- [`Yellow`](yellow.md) - 返回黄色 diff --git a/docs/api/math/color/clear.md b/docs/api/math/color/clear.md deleted file mode 100644 index f86a0d5c..00000000 --- a/docs/api/math/color/clear.md +++ /dev/null @@ -1,24 +0,0 @@ -# Color::Clear - -```cpp -static Color Clear() -``` - -返回透明黑色 (0, 0, 0, 0)。 - -**返回:** `Color` - 透明黑色 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Color c = Color::Clear(); -``` - -## 相关文档 - -- [Color](color.md) - 返回类总览 -- [`Black`](black.md) - 返回不透明黑色 diff --git a/docs/api/math/color/color.md b/docs/api/math/color/color.md deleted file mode 100644 index f28481d4..00000000 --- a/docs/api/math/color/color.md +++ /dev/null @@ -1,94 +0,0 @@ -# Color - -**命名空间**: `XCEngine::Math` - -**类型**: `struct` - -**头文件**: `XCEngine/Core/Math/Color.h` - -**描述**: 颜色结构体,支持 RGBA 浮点分量,用于图形渲染 - -## 概述 - -`Color` 是一个简单的 RGBA 颜色结构体,每个分量使用 32 位浮点数,范围 [0, 1]。默认构造创建白色 (1, 1, 1, 1)。该结构体提供静态工厂方法创建常用颜色,以及颜色插值和格式转换功能。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| `r` | `float` | 红色分量,范围 [0, 1] | `1.0f` | -| `g` | `float` | 绿色分量,范围 [0, 1] | `1.0f` | -| `b` | `float` | 蓝色分量,范围 [0, 1] | `1.0f` | -| `a` | `float` | Alpha 分量,范围 [0, 1] | `1.0f` | - -## 构造函数 - -### 默认构造函数 - -```cpp -Color() = default; -``` - -创建白色 (1, 1, 1, 1)。 - -### 带参构造函数 - -```cpp -constexpr Color(float r, float g, float b, float a = 1.0f) -``` - -构造指定 RGBA 值的颜色。 - -**参数:** -- `r` - 红色分量,范围 [0, 1] -- `g` - 绿色分量,范围 [0, 1] -- `b` - 蓝色分量,范围 [0, 1] -- `a` - Alpha 分量,范围 [0, 1],默认值为 1.0f(完全不透明) - -**返回:** `Color` - 构造的颜色 - -**示例:** - -```cpp -Color red(1.0f, 0.0f, 0.0f, 1.0f); -Color halfAlpha(0.5f, 0.5f, 0.5f); // a = 1.0f -``` - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`White`](white.md) | 返回白色 (1, 1, 1, 1) | -| [`Black`](black.md) | 返回黑色 (0, 0, 0, 1) | -| [`Red`](red.md) | 返回红色 (1, 0, 0, 1) | -| [`Green`](green.md) | 返回绿色 (0, 1, 0, 1) | -| [`Blue`](blue.md) | 返回蓝色 (0, 0, 1, 1) | -| [`Yellow`](yellow.md) | 返回黄色 (1, 1, 0, 1) | -| [`Cyan`](cyan.md) | 返回青色 (0, 1, 1, 1) | -| [`Magenta`](magenta.md) | 返回品红色 (1, 0, 1, 1) | -| [`Clear`](clear.md) | 返回透明黑色 (0, 0, 0, 0) | -| [`Lerp`](lerp.md) | 颜色线性插值 | -| [`ToRGBA`](torgba.md) | 转换为 32-bit RGBA 整数 | -| [`ToVector3`](tovector3.md) | 转换为 Vector3(丢弃 alpha) | -| [`ToVector4`](tovector4.md) | 转换为 Vector4 | -| [`operator+`](operator-add.md) | 颜色相加 | -| [`operator-`](operator-sub.md) | 颜色相减 | -| [`operator*`](operator-mul.md) | 颜色乘以标量 | -| [`operator/`](operator-div.md) | 颜色除以标量 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Math; - -Color c1 = Color::Red(); -Color c2 = Color(0, 1, 0, 1); -Color blended = Color::Lerp(c1, c2, 0.5f); -uint32_t rgba = blended.ToRGBA(); -``` - -## 相关文档 - -- [Math 模块总览](../math.md) - 返回 Math 模块总览 diff --git a/docs/api/math/color/cyan.md b/docs/api/math/color/cyan.md deleted file mode 100644 index b68bef6c..00000000 --- a/docs/api/math/color/cyan.md +++ /dev/null @@ -1,24 +0,0 @@ -# Color::Cyan - -```cpp -static Color Cyan() -``` - -返回青色 (0, 1, 1, 1)。 - -**返回:** `Color` - 青色 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Color c = Color::Cyan(); -``` - -## 相关文档 - -- [Color](color.md) - 返回类总览 -- [`Magenta`](magenta.md) - 返回品红色 diff --git a/docs/api/math/color/green.md b/docs/api/math/color/green.md deleted file mode 100644 index bdc499fd..00000000 --- a/docs/api/math/color/green.md +++ /dev/null @@ -1,24 +0,0 @@ -# Color::Green - -```cpp -static Color Green() -``` - -返回绿色 (0, 1, 0, 1)。 - -**返回:** `Color` - 绿色 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Color c = Color::Green(); -``` - -## 相关文档 - -- [Color](color.md) - 返回类总览 -- [`Red`](red.md) - 返回红色 diff --git a/docs/api/math/color/lerp.md b/docs/api/math/color/lerp.md deleted file mode 100644 index 4c209741..00000000 --- a/docs/api/math/color/lerp.md +++ /dev/null @@ -1,28 +0,0 @@ -# Color::Lerp - -```cpp -static Color Lerp(const Color& a, const Color& b, float t) -``` - -在两个颜色之间进行线性插值。 - -**参数:** -- `a` - 起始颜色 -- `b` - 结束颜色 -- `t` - 插值因子,范围 [0, 1]。超出范围的值会被 clamp 到 [0, 1] - -**返回:** `Color` - 插值结果,当 t=0 时返回 a,t=1 时返回 b - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Color lerped = Color::Lerp(Color::Red(), Color::Blue(), 0.5f); -``` - -## 相关文档 - -- [Color](color.md) - 返回类总览 diff --git a/docs/api/math/color/magenta.md b/docs/api/math/color/magenta.md deleted file mode 100644 index a697c7e3..00000000 --- a/docs/api/math/color/magenta.md +++ /dev/null @@ -1,24 +0,0 @@ -# Color::Magenta - -```cpp -static Color Magenta() -``` - -返回品红色 (1, 0, 1, 1)。 - -**返回:** `Color` - 品红色 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Color c = Color::Magenta(); -``` - -## 相关文档 - -- [Color](color.md) - 返回类总览 -- [`Cyan`](cyan.md) - 返回青色 diff --git a/docs/api/math/color/operator-add.md b/docs/api/math/color/operator-add.md deleted file mode 100644 index d60c4a56..00000000 --- a/docs/api/math/color/operator-add.md +++ /dev/null @@ -1,29 +0,0 @@ -# Color::operator+ - -```cpp -Color operator+(const Color& other) const -``` - -将两个颜色对应分量相加,返回新的颜色。 - -**参数:** -- `other` - 要加的另一个颜色 - -**返回:** `Color` - 分量相加后的新颜色 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Color red = Color::Red(); -Color blue = Color::Blue(); -Color purple = red + blue; -``` - -## 相关文档 - -- [Color](color.md) - 返回类总览 -- [`operator-`](operator-sub.md) - 颜色相减 diff --git a/docs/api/math/color/operator-div.md b/docs/api/math/color/operator-div.md deleted file mode 100644 index 2dda0718..00000000 --- a/docs/api/math/color/operator-div.md +++ /dev/null @@ -1,28 +0,0 @@ -# Color::operator/ - -```cpp -Color operator/(float scalar) const -``` - -将颜色每个分量除以一个标量值,返回新的颜色。 - -**参数:** -- `scalar` - 非零标量除数 - -**返回:** `Color` - 缩放后的新颜色 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Color red = Color::Red(); -Color dimRed = red / 2.0f; -``` - -## 相关文档 - -- [Color](color.md) - 返回类总览 -- [`operator*`](operator-mul.md) - 颜色乘以标量 diff --git a/docs/api/math/color/operator-mul.md b/docs/api/math/color/operator-mul.md deleted file mode 100644 index fd5966f9..00000000 --- a/docs/api/math/color/operator-mul.md +++ /dev/null @@ -1,28 +0,0 @@ -# Color::operator* - -```cpp -Color operator*(float scalar) const -``` - -将颜色每个分量乘以一个标量值,返回新的颜色。 - -**参数:** -- `scalar` - 标量乘数 - -**返回:** `Color` - 缩放后的新颜色 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Color red = Color::Red(); -Color fadedRed = red * 0.5f; -``` - -## 相关文档 - -- [Color](color.md) - 返回类总览 -- [`operator/`](operator-div.md) - 颜色除以标量 diff --git a/docs/api/math/color/operator-sub.md b/docs/api/math/color/operator-sub.md deleted file mode 100644 index 7bc5e848..00000000 --- a/docs/api/math/color/operator-sub.md +++ /dev/null @@ -1,29 +0,0 @@ -# Color::operator- - -```cpp -Color operator-(const Color& other) const -``` - -将两个颜色对应分量相减,返回新的颜色。 - -**参数:** -- `other` - 要减去的另一个颜色 - -**返回:** `Color` - 分量相减后的新颜色 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Color red = Color::Red(); -Color purple = Color(1, 0, 1, 1); -Color blue = purple - red; -``` - -## 相关文档 - -- [Color](color.md) - 返回类总览 -- [`operator+`](operator-add.md) - 颜色相加 diff --git a/docs/api/math/color/red.md b/docs/api/math/color/red.md deleted file mode 100644 index 344db771..00000000 --- a/docs/api/math/color/red.md +++ /dev/null @@ -1,24 +0,0 @@ -# Color::Red - -```cpp -static Color Red() -``` - -返回红色 (1, 0, 0, 1)。 - -**返回:** `Color` - 红色 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Color c = Color::Red(); -``` - -## 相关文档 - -- [Color](color.md) - 返回类总览 -- [`Green`](green.md) - 返回绿色 diff --git a/docs/api/math/color/torgba.md b/docs/api/math/color/torgba.md deleted file mode 100644 index e97f6aa5..00000000 --- a/docs/api/math/color/torgba.md +++ /dev/null @@ -1,26 +0,0 @@ -# Color::ToRGBA - -```cpp -uint32_t ToRGBA() const -``` - -将颜色转换为 32-bit RGBA 整数格式。 - -**返回:** `uint32_t` - RGBA 值,格式为 `0xRRGGBBAA`(R在最高字节,A在最低字节) - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Color c(1.0f, 0.0f, 0.0f, 1.0f); -uint32_t rgba = c.ToRGBA(); -``` - -## 相关文档 - -- [Color](color.md) - 返回类总览 -- [`ToVector3`](tovector3.md) - 转换为 Vector3 -- [`ToVector4`](tovector4.md) - 转换为 Vector4 diff --git a/docs/api/math/color/tovector3.md b/docs/api/math/color/tovector3.md deleted file mode 100644 index efaa56c0..00000000 --- a/docs/api/math/color/tovector3.md +++ /dev/null @@ -1,25 +0,0 @@ -# Color::ToVector3 - -```cpp -Vector3 ToVector3() const -``` - -将颜色转换为 Vector3(丢弃 alpha)。 - -**返回:** `Vector3` - RGB 值 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 rgb = Color::Red().ToVector3(); -``` - -## 相关文档 - -- [Color](color.md) - 返回类总览 -- [`ToVector4`](tovector4.md) - 转换为 Vector4 -- [`ToRGBA`](torgba.md) - 转换为 RGBA 整数 diff --git a/docs/api/math/color/tovector4.md b/docs/api/math/color/tovector4.md deleted file mode 100644 index bf4a5e69..00000000 --- a/docs/api/math/color/tovector4.md +++ /dev/null @@ -1,25 +0,0 @@ -# Color::ToVector4 - -```cpp -Vector4 ToVector4() const -``` - -将颜色转换为 Vector4。 - -**返回:** `Vector4` - RGBA 值 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector4 rgba = Color::Red().ToVector4(); -``` - -## 相关文档 - -- [Color](color.md) - 返回类总览 -- [`ToVector3`](tovector3.md) - 转换为 Vector3(丢弃 alpha) -- [`ToRGBA`](torgba.md) - 转换为 RGBA 整数 diff --git a/docs/api/math/color/white.md b/docs/api/math/color/white.md deleted file mode 100644 index a70485c7..00000000 --- a/docs/api/math/color/white.md +++ /dev/null @@ -1,24 +0,0 @@ -# Color::White - -```cpp -static Color White() -``` - -返回白色 (1, 1, 1, 1)。 - -**返回:** `Color` - 白色 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Color c = Color::White(); -``` - -## 相关文档 - -- [Color](color.md) - 返回类总览 -- [`Black`](black.md) - 返回黑色 diff --git a/docs/api/math/color/yellow.md b/docs/api/math/color/yellow.md deleted file mode 100644 index a54f0a51..00000000 --- a/docs/api/math/color/yellow.md +++ /dev/null @@ -1,24 +0,0 @@ -# Color::Yellow - -```cpp -static Color Yellow() -``` - -返回黄色 (1, 1, 0, 1)。 - -**返回:** `Color` - 黄色 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Color c = Color::Yellow(); -``` - -## 相关文档 - -- [Color](color.md) - 返回类总览 -- [`Blue`](blue.md) - 返回蓝色 diff --git a/docs/api/math/frustum/contains-bounds.md b/docs/api/math/frustum/contains-bounds.md deleted file mode 100644 index f2f7f227..00000000 --- a/docs/api/math/frustum/contains-bounds.md +++ /dev/null @@ -1,35 +0,0 @@ -# Frustum::Contains - -```cpp -bool Contains(const Bounds& bounds) const -``` - -检测轴对齐包围盒(Axis-Aligned Bounding Box,AABB)是否完全位于视锥体内。判断方式为:先取出 Bounds 的 8 个顶点坐标,然后对每个裁剪平面,检查所有 8 个顶点是否都在该平面外侧(距离小于 0)。若存在某个平面使得全部 8 个顶点都在其外侧,则包围盒完全在视锥外;否则认为包围盒至少部分在视锥内。 - -**参数:** -- `bounds` - 要检测的轴对齐包围盒 - -**返回:** `bool` - Bounds 完全在视锥内返回 `true`,否则返回 `false` - -**线程安全:** ✅(只读操作,不修改状态) - -**复杂度:** O(48),即遍历 6 个平面 × 8 个顶点 - -**示例:** - -```cpp -#include -#include - -void CheckBoundsInFrustum(const Frustum& frustum, const Bounds& bounds) { - if (frustum.Contains(bounds)) { - // 包围盒完全在视锥内,必须渲染 - Render(); - } -} -``` - -## 相关文档 - -- [Frustum 总览](frustum.md) - 返回类总览 -- [Intersects](intersects-bounds.md) - 包围盒与视锥相交检测 diff --git a/docs/api/math/frustum/contains-point.md b/docs/api/math/frustum/contains-point.md deleted file mode 100644 index ecebfcca..00000000 --- a/docs/api/math/frustum/contains-point.md +++ /dev/null @@ -1,34 +0,0 @@ -# Frustum::Contains - -```cpp -bool Contains(const Vector3& point) const -``` - -检测世界空间中的点是否完全位于视锥体内。判断方式为:依次计算该点到 6 个裁剪平面的有符号距离,若任意一个距离小于 0,则点位于该平面外侧,视锥体不包含该点。 - -**参数:** -- `point` - 要检测的世界空间三维点 - -**返回:** `bool` - 点完全在视锥内返回 `true`,否则返回 `false` - -**线程安全:** ✅(只读操作,不修改状态) - -**复杂度:** O(6),即遍历 6 个裁剪平面 - -**示例:** - -```cpp -#include -#include - -void CheckPointInFrustum(const Frustum& frustum, const Vector3& point) { - if (frustum.Contains(point)) { - // 点完全在视锥内 - } -} -``` - -## 相关文档 - -- [Frustum 总览](frustum.md) - 返回类总览 -- [Intersects](intersects-bounds.md) - 视锥体相交检测 diff --git a/docs/api/math/frustum/contains-sphere.md b/docs/api/math/frustum/contains-sphere.md deleted file mode 100644 index ca033164..00000000 --- a/docs/api/math/frustum/contains-sphere.md +++ /dev/null @@ -1,34 +0,0 @@ -# Frustum::Contains - -```cpp -bool Contains(const Sphere& sphere) const -``` - -检测球体是否完全位于视锥体内。判断方式为:依次计算球心到 6 个裁剪平面的有符号距离,若任意一个距离小于 `-radius`(即球心到平面的距离小于球半径的负数,说明球体完全在平面外侧),则视锥体不包含该球体。 - -**参数:** -- `sphere` - 要检测的球体,包含圆心 `center` 和半径 `radius` - -**返回:** `bool` - 球体完全在视锥内返回 `true`,否则返回 `false` - -**线程安全:** ✅(只读操作,不修改状态) - -**复杂度:** O(6),即遍历 6 个裁剪平面 - -**示例:** - -```cpp -#include -#include - -void CheckSphereInFrustum(const Frustum& frustum, const Sphere& sphere) { - if (frustum.Contains(sphere)) { - // 球体完全在视锥内 - } -} -``` - -## 相关文档 - -- [Frustum 总览](frustum.md) - 返回类总览 -- [Intersects](intersects-sphere.md) - 球体与视锥相交检测 diff --git a/docs/api/math/frustum/frustum.md b/docs/api/math/frustum/frustum.md deleted file mode 100644 index caf9a971..00000000 --- a/docs/api/math/frustum/frustum.md +++ /dev/null @@ -1,51 +0,0 @@ -# Frustum - -**命名空间**: `XCEngine::Math` - -**类型**: `class` - -**头文件**: `XCEngine/Core/Math/Frustum.h` - -**描述**: 视锥体,用于 3D 裁剪和可见性判断 - -## 概述 - -Frustum 表示一个视锥体,由 6 个裁剪平面组成(左、右、底、顶、近、远)。主要用于视锥剔除(Frustum Culling),在渲染前判断场景物体是否与相机视锥相交或完全在内,从而决定是否需要渲染该物体,提升渲染性能。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Contains(Point)`](contains-point.md) | 点是否完全在视锥内 | -| [`Contains(Sphere)`](contains-sphere.md) | 球体是否完全在视锥内 | -| [`Contains(Bounds)`](contains-bounds.md) | Bounds 是否完全在视锥内 | -| [`Intersects(Bounds)`](intersects-bounds.md) | Bounds 是否与视锥相交 | -| [`Intersects(Sphere)`](intersects-sphere.md) | 球体是否与视锥相交 | - -## 嵌套类型 - -| 类型 | 描述 | -|------|------| -| `PlaneIndex` | 平面索引枚举(Left, Right, Bottom, Top, Near, Far) | - -## 使用示例 - -```cpp -Frustum frustum = camera.CalculateFrustum(); -Bounds objectBounds = object.GetWorldBounds(); - -if (frustum.Contains(objectBounds)) { - // 物体完全在视锥内,必须渲染 - Render(object); -} else if (frustum.Intersects(objectBounds)) { - // 物体与视锥相交,可能需要渲染 - Render(object); -} -``` - -## 相关文档 - -- [Math 模块总览](../math.md) - Math 模块总览 -- [Plane](../plane/plane.md) - 平面类型 -- [Bounds](../bounds/bounds.md) - 包围盒类型 -- [Sphere](../sphere/sphere.md) - 球体类型 diff --git a/docs/api/math/frustum/intersects-bounds.md b/docs/api/math/frustum/intersects-bounds.md deleted file mode 100644 index eaa35637..00000000 --- a/docs/api/math/frustum/intersects-bounds.md +++ /dev/null @@ -1,39 +0,0 @@ -# Frustum::Intersects - -```cpp -bool Intersects(const Bounds& bounds) const -``` - -检测轴对齐包围盒(Axis-Aligned Bounding Box,AABB)是否与视锥体相交。判断方式为:对每个裁剪平面,检查 8 个顶点是否全部在该平面外侧(allNegative)或全部在内侧(allPositive)。若存在某个平面使得全部 8 个顶点都在其外侧,则视锥与包围盒不相交;否则认为两者相交。 - -注意:此方法与 `Contains(Bounds)` 的区别在于——`Contains` 要求包围盒完全在视锥内,而 `Intersects` 只要有任意重叠就返回 `true`。 - -**参数:** -- `bounds` - 要检测的轴对齐包围盒 - -**返回:** `bool` - 视锥与 Bounds 相交返回 `true`,否则返回 `false` - -**线程安全:** ✅(只读操作,不修改状态) - -**复杂度:** O(48),即遍历 6 个平面 × 8 个顶点 - -**示例:** - -```cpp -#include -#include - -void FrustumCullingExample(const Frustum& frustum, const std::vector& objectBounds) { - for (const auto& bounds : objectBounds) { - if (frustum.Intersects(bounds)) { - // 物体与视锥相交,需要渲染 - Render(bounds); - } - } -} -``` - -## 相关文档 - -- [Frustum 总览](frustum.md) - 返回类总览 -- [Contains](contains-bounds.md) - 包围盒完全包含检测 diff --git a/docs/api/math/frustum/intersects-sphere.md b/docs/api/math/frustum/intersects-sphere.md deleted file mode 100644 index a7a18965..00000000 --- a/docs/api/math/frustum/intersects-sphere.md +++ /dev/null @@ -1,37 +0,0 @@ -# Frustum::Intersects - -```cpp -bool Intersects(const Sphere& sphere) const -``` - -检测球体是否与视锥体相交。判断方式为:依次计算球心到 6 个裁剪平面的有符号距离,若任意一个距离小于 `-radius`(即球体完全在平面外侧),则两者不相交;否则认为相交。 - -注意:此方法与 `Contains(Sphere)` 的区别在于——`Contains` 要求球体完全在视锥内,而 `Intersects` 只要有任意重叠就返回 `true`。 - -**参数:** -- `sphere` - 要检测的球体,包含圆心 `center` 和半径 `radius` - -**返回:** `bool` - 视锥与球体相交返回 `true`,否则返回 `false` - -**线程安全:** ✅(只读操作,不修改状态) - -**复杂度:** O(6),即遍历 6 个裁剪平面 - -**示例:** - -```cpp -#include -#include - -void CheckSphereIntersection(const Frustum& frustum, const Sphere& sphere) { - if (frustum.Intersects(sphere)) { - // 球体与视锥相交 - Render(); - } -} -``` - -## 相关文档 - -- [Frustum 总览](frustum.md) - 返回类总览 -- [Contains](contains-sphere.md) - 球体完全包含检测 diff --git a/docs/api/math/h/deg-to-rad.md b/docs/api/math/h/deg-to-rad.md deleted file mode 100644 index 790d65ea..00000000 --- a/docs/api/math/h/deg-to-rad.md +++ /dev/null @@ -1,20 +0,0 @@ -# Math::DEG_TO_RAD - -```cpp -constexpr float DEG_TO_RAD = PI / 180.0f; -``` - -`DEG_TO_RAD` 是角度转弧度的转换系数。1 度等于 `PI / 180` 弧度,约等于 0.01745329251994329577。使用该常量将角度值乘以 `DEG_TO_RAD` 即可得到对应的弧度值。 - -**示例:** - -```cpp -#include - -float angleDegrees = 90.0f; -float angleRadians = angleDegrees * Math::DEG_TO_RAD; -``` - -## 相关文档 - -- [Math 总览](h.md) - 返回 Math 概览 diff --git a/docs/api/math/h/degrees.md b/docs/api/math/h/degrees.md deleted file mode 100644 index bbdd2e0d..00000000 --- a/docs/api/math/h/degrees.md +++ /dev/null @@ -1,20 +0,0 @@ -# Math::Degrees - -```cpp -float Degrees(float radians); -``` - -`Degrees` 函数将弧度值转换为角度值。转换公式为:`角度 = 弧度 * (180 / PI)`。该函数是 `Radians` 函数的逆函数,常用于将三角函数的返回值或物理引擎中的弧度值转换为人机界面友好的角度值。 - -**示例:** - -```cpp -#include - -float radians = Math::HALF_PI; -float degrees = Math::Degrees(radians); -``` - -## 相关文档 - -- [Math 总览](h.md) - 返回 Math 概览 diff --git a/docs/api/math/h/epsilon.md b/docs/api/math/h/epsilon.md deleted file mode 100644 index 137d49b6..00000000 --- a/docs/api/math/h/epsilon.md +++ /dev/null @@ -1,23 +0,0 @@ -# Math::EPSILON - -```cpp -constexpr float EPSILON = 1e-6f; -``` - -`EPSILON` 是一个非常小的浮点数常量,值为 0.000001。该常量主要用于浮点数比较,由于浮点数精度问题,直接使用 `==` 比较浮点数可能产生错误结果,此时应使用 `EPSILON` 进行容差比较。例如判断两个浮点数是否相等,可以检查它们的差的绝对值是否小于 `EPSILON`。 - -**示例:** - -```cpp -#include - -float a = 0.1f + 0.2f; -float b = 0.3f; -if (fabsf(a - b) < Math::EPSILON) { - // a 和 b 可以视为相等 -} -``` - -## 相关文档 - -- [Math 总览](h.md) - 返回 Math 概览 diff --git a/docs/api/math/h/float-max.md b/docs/api/math/h/float-max.md deleted file mode 100644 index 09316409..00000000 --- a/docs/api/math/h/float-max.md +++ /dev/null @@ -1,19 +0,0 @@ -# Math::FLOAT_MAX - -```cpp -constexpr float FLOAT_MAX = 3.402823466e+38f; -``` - -`FLOAT_MAX` 是 IEEE 754 单精度浮点数能表示的最大正有限值,约为 3.402823466e+38。该常量常用于初始化变量为最大值、在搜索算法中作为上界、或在需要表示"无穷大"但又不想引入 `INFINITY` 的场景中使用。 - -**示例:** - -```cpp -#include - -float maxDistance = FLOAT_MAX; -``` - -## 相关文档 - -- [Math 总览](h.md) - 返回 Math 概览 diff --git a/docs/api/math/h/h.md b/docs/api/math/h/h.md deleted file mode 100644 index 883ca810..00000000 --- a/docs/api/math/h/h.md +++ /dev/null @@ -1,56 +0,0 @@ -# Math - -**命名空间**: `XCEngine::Math` - -**类型**: `header` - -**头文件**: `XCEngine/Core/Math/Math.h` - -**描述**: 数学库常量和辅助函数头文件。 - -## 概述 - -`Math.h` 提供了图形引擎常用的数学常量和辅助函数,包括圆周率、角度转换、浮点精度等基础常量,以及角度弧度转换等常用函数。 - -## 常量 - -| 常量 | 值 | 描述 | -|------|-----|------| -| [PI](pi.md) | 3.14159265358979323846f | 圆周率 | -| [TWO_PI](two-pi.md) | 6.28318530717958647692f | 2π | -| [HALF_PI](half-pi.md) | 1.57079632679489661923f | π/2 | -| [DEG_TO_RAD](deg-to-rad.md) | PI / 180.0f | 度到弧度 | -| [RAD_TO_DEG](rad-to-deg.md) | 180.0f / PI | 弧度到度 | -| [EPSILON](epsilon.md) | 1e-6f | 浮点精度 | -| [FLOAT_MAX](float-max.md) | 3.402823466e+38f | 浮点最大值 | - -## 辅助函数 - -| 函数 | 描述 | -|------|------| -| [Radians](radians.md) | 度转弧度 | -| [Degrees](degrees.md) | 弧度转度 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Math; - -// 使用常量 -float angle = 90.0f * DEG_TO_RAD; // 90度转弧度 - -// 使用函数 -float rad = Radians(180.0f); // 180度 -> π 弧度 -float deg = Degrees(PI); // π 弧度 -> 180度 - -// 比较浮点数 -if (fabsf(a - b) < EPSILON) { - // 认为 a 和 b 相等 -} -``` - -## 相关文档 - -- [Math 模块总览](../math.md) - 返回 Math 模块总览 diff --git a/docs/api/math/h/half-pi.md b/docs/api/math/h/half-pi.md deleted file mode 100644 index 8366a5da..00000000 --- a/docs/api/math/h/half-pi.md +++ /dev/null @@ -1,19 +0,0 @@ -# Math::HALF_PI - -```cpp -constexpr float HALF_PI = 1.57079632679489661923f; -``` - -`HALF_PI` 是圆周率除以 2,即 90 度对应的弧度值,约为 1.57079632679489661923。该常量常用于角度与弧度的转换、四分之一圆周计算等场景。 - -**示例:** - -```cpp -#include - -float ninetyDegreesRadians = HALF_PI; -``` - -## 相关文档 - -- [Math 总览](h.md) - 返回 Math 概览 diff --git a/docs/api/math/h/pi.md b/docs/api/math/h/pi.md deleted file mode 100644 index 8a63d766..00000000 --- a/docs/api/math/h/pi.md +++ /dev/null @@ -1,22 +0,0 @@ -# Math::PI - -```cpp -constexpr float PI = 3.14159265358979323846f; -``` - -圆周率常量,精确到 float 能表示的最高精度。 - -**用途:** 用于三角函数计算、弧度角度转换、圆形/弧度相关计算。 - -**示例:** - -```cpp -#include - -float circumference = 2.0f * PI * radius; -float area = PI * radius * radius; -``` - -## 相关文档 - -- [Math 总览](h.md) - 返回 Math 概览 diff --git a/docs/api/math/h/rad-to-deg.md b/docs/api/math/h/rad-to-deg.md deleted file mode 100644 index 388310c8..00000000 --- a/docs/api/math/h/rad-to-deg.md +++ /dev/null @@ -1,20 +0,0 @@ -# Math::RAD_TO_DEG - -```cpp -constexpr float RAD_TO_DEG = 180.0f / PI; -``` - -`RAD_TO_DEG` 是弧度转角度的转换系数。1 弧度等于 `180 / PI` 度,约等于 57.29577951308232087685。使用该常量将弧度值乘以 `RAD_TO_DEG` 即可得到对应的角度值。 - -**示例:** - -```cpp -#include - -float radians = Math::HALF_PI; -float degrees = radians * Math::RAD_TO_DEG; -``` - -## 相关文档 - -- [Math 总览](h.md) - 返回 Math 概览 diff --git a/docs/api/math/h/radians.md b/docs/api/math/h/radians.md deleted file mode 100644 index cfb2cf79..00000000 --- a/docs/api/math/h/radians.md +++ /dev/null @@ -1,20 +0,0 @@ -# Math::Radians - -```cpp -float Radians(float degrees); -``` - -`Radians` 函数将角度值转换为弧度值。转换公式为:`弧度 = 角度 * (PI / 180)`。该函数是 `Degrees` 函数的逆函数,常用于将 UI 输入的角度值或游戏中的角度值转换为三角函数所需的弧度值。 - -**示例:** - -```cpp -#include - -float degrees = 90.0f; -float radians = Math::Radians(degrees); -``` - -## 相关文档 - -- [Math 总览](h.md) - 返回 Math 概览 diff --git a/docs/api/math/h/two-pi.md b/docs/api/math/h/two-pi.md deleted file mode 100644 index 1fc0947e..00000000 --- a/docs/api/math/h/two-pi.md +++ /dev/null @@ -1,19 +0,0 @@ -# Math::TWO_PI - -```cpp -constexpr float TWO_PI = 6.28318530717958647692f; -``` - -`TWO_PI` 是圆周率的两倍,即完整的圆周长对应的弧度值,约为 6.28318530717958647692。该常量常用于需要完整圆周旋转的场景,例如角度归一化、三角函数周期计算、圆形运动等。 - -**示例:** - -```cpp -#include - -float fullCircleRadians = TWO_PI; -``` - -## 相关文档 - -- [Math 总览](h.md) - 返回 Math 概览 diff --git a/docs/api/math/math.md b/docs/api/math/math.md deleted file mode 100644 index 599234b9..00000000 --- a/docs/api/math/math.md +++ /dev/null @@ -1,106 +0,0 @@ -# Math 模块概览 - -**命名空间**: `XCEngine::Math` - -**类型**: `module` - -**描述**: XCEngine 的数学库模块,提供图形引擎常用的数学类型和函数。 - -## 概述 - -Math 模块提供了一套完整的图形数学库,包括向量、矩阵、四元数、变换和几何类型等。 - -## 模块内容 - -### 向量类型 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [Vector2](vector2/vector2.md) | `Vector2.h` | 二维向量 | -| [Vector3](vector3/vector3.md) | `Vector3.h` | 三维向量 | -| [Vector4](vector4/vector4.md) | `Vector4.h` | 四维向量 | - -### 矩阵类型 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [Matrix3](matrix3/matrix3.md) | `Matrix3.h` | 3x3 矩阵 | -| [Matrix4](matrix4/matrix4.md) | `Matrix4.h` | 4x4 矩阵 | - -### 旋转/变换 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [Quaternion](quaternion/quaternion.md) | `Quaternion.h` | 四元数 | -| [Transform](transform/transform.md) | `Transform.h` | 变换组件 | - -### 几何类型 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [Color](color/color.md) | `Color.h` | 颜色 | -| [Ray](ray/ray.md) | `Ray.h` | 射线 | -| [Plane](plane/plane.md) | `Plane.h` | 平面 | -| [Sphere](sphere/sphere.md) | `Sphere.h` | 球体 | -| [Box](box/box.md) | `Box.h` | 盒子 | -| [Bounds](bounds/bounds.md) | `Bounds.h` | 轴对齐包围盒 | -| [OBB](obb/obb.md) | `AABB.h` | 有向包围盒 | -| [Frustum](frustum/frustum.md) | `Frustum.h` | 视锥体 | -| [Rect](rect/rect.md) | `Rect.h` | 二维矩形 | -| [RectInt](rectint/rectint.md) | `Rect.h` | 整数矩形 | - -## 常量定义 - -| 常量 | 值 | 描述 | -|------|-----|------| -| `PI` | 3.14159265358979323846f | 圆周率 | -| `TWO_PI` | 6.28318530717958647692f | 2π | -| `HALF_PI` | 1.57079632679489661923f | π/2 | -| `DEG_TO_RAD` | PI / 180.0f | 度到弧度 | -| `RAD_TO_DEG` | 180.0f / PI | 弧度到度 | -| `EPSILON` | 1e-6f | 浮点精度 | -| `FLOAT_MAX` | 3.402823466e+38f | 浮点最大值 | - -详细文档: [Math.h - 常量和辅助函数](h/h.md) - -## 辅助函数 - -| 函数 | 描述 | -|------|------| -| `Radians(float degrees)` | 度转弧度 | -| `Degrees(float radians)` | 弧度转度 | - -## 使用示例 - -```cpp -#include -#include -#include -#include - -using namespace XCEngine::Math; - -// 向量运算 -Vector3 a(1.0f, 0.0f, 0.0f); -Vector3 b(0.0f, 1.0f, 0.0f); -float dot = Vector3::Dot(a, b); -Vector3 cross = Vector3::Cross(a, b); -Vector3 normalized = Vector3::Normalize(a); - -// 矩阵运算 -Matrix4 model = Matrix4::TRS(position, rotation, scale); -Matrix4 view = Matrix4::LookAt(eye, target, up); -Matrix4 projection = Matrix4::Perspective(fov, aspect, near, far); -Matrix4 mvp = projection * view * model; - -// 四元数运算 -Quaternion q1 = Quaternion::FromEulerAngles(0, 90 * DEG_TO_RAD, 0); -Quaternion q2 = Quaternion::FromAxisAngle(Vector3::Up(), Math::Radians(45.0f)); -Quaternion combined = q1 * q2; -Vector3 rotated = q2 * Vector3::Forward(); -``` - -## 相关文档 - -- [Core 模块](../core/core.md) - 核心基础模块 -- [RHI 模块](../rhi/rhi.md) - 渲染硬件接口 diff --git a/docs/api/math/matrix3/determinant.md b/docs/api/math/matrix3/determinant.md deleted file mode 100644 index 6d237fa2..00000000 --- a/docs/api/math/matrix3/determinant.md +++ /dev/null @@ -1,18 +0,0 @@ -# Matrix3::Determinant - -```cpp -float Determinant() const -``` - -计算矩阵的行列式。 - -**返回:** `float` - 行列式值 - -**复杂度:** O(1) - -**示例:** - -```cpp -Matrix3 mat = ...; -float det = mat.Determinant(); -``` diff --git a/docs/api/math/matrix3/identity.md b/docs/api/math/matrix3/identity.md deleted file mode 100644 index e32fcfdb..00000000 --- a/docs/api/math/matrix3/identity.md +++ /dev/null @@ -1,17 +0,0 @@ -# Matrix3::Identity - -```cpp -static Matrix3 Identity() -``` - -返回 3x3 单位矩阵。 - -**返回:** `Matrix3` - 单位矩阵 - -**复杂度:** O(1) - -**示例:** - -```cpp -Matrix3 identity = Matrix3::Identity(); -``` diff --git a/docs/api/math/matrix3/inverse.md b/docs/api/math/matrix3/inverse.md deleted file mode 100644 index 9f4779cd..00000000 --- a/docs/api/math/matrix3/inverse.md +++ /dev/null @@ -1,24 +0,0 @@ -# Matrix3::Inverse - -```cpp -Matrix3 Inverse() const -``` - -返回矩阵的逆矩阵。 - -**返回:** `Matrix3` - 逆矩阵。如果行列式接近零(< EPSILON),则返回单位矩阵。 - -**异常:** 当矩阵奇异(行列式为零)时,返回单位矩阵而非抛出异常。 - -**复杂度:** O(1) - -**示例:** - -```cpp -Matrix3 mat = Matrix3::RotationY(0.5f); -Matrix3 inv = mat.Inverse(); - -// 验证:M * M⁻¹ ≈ I -Matrix3 identity = mat * inv; -// identity 应接近单位矩阵 -``` \ No newline at end of file diff --git a/docs/api/math/matrix3/matrix3.md b/docs/api/math/matrix3/matrix3.md deleted file mode 100644 index 206320be..00000000 --- a/docs/api/math/matrix3/matrix3.md +++ /dev/null @@ -1,85 +0,0 @@ -# Matrix3 / Matrix3x3 - -**命名空间**: `XCEngine::Math` - -**类型**: `struct` - -**头文件**: `XCEngine/Core/Math/Matrix3.h` - -**描述**: 3x3 矩阵,用于旋转变换和线性代数运算。 - -## 概述 - -Matrix3(别名 Matrix3x3)是一个 3x3 浮点矩阵结构体,主要用于图形引擎中的旋转变换和线性代数运算。 - -**设计目的:** -- 旋转变换(绕 X/Y/Z 轴) -- 缩放变换 -- 矩阵运算(乘法、转置、求逆、行列式计算) - -**存储方式:** 行优先存储 (row-major) -``` -m[row][col] -m[0][0] m[0][1] m[0][2] -m[1][0] m[1][1] m[1][2] -m[2][0] m[2][1] m[2][2] -``` - -**类型别名:** -```cpp -using Matrix3 = Matrix3x3; -``` - -## 结构体成员 - -| 成员 | 类型 | 描述 | -|------|------|------| -| `m[3][3]` | `float` | 矩阵元素数组,行优先存储 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Identity()`](identity.md) | 获取单位矩阵 | -| [`Zero()`](zero.md) | 获取零矩阵 | -| [`RotationX()`](rotation-x.md) | 创建绕 X 轴旋转矩阵 | -| [`RotationY()`](rotation-y.md) | 创建绕 Y 轴旋转矩阵 | -| [`RotationZ()`](rotation-z.md) | 创建绕 Z 轴旋转矩阵 | -| [`Scale()`](scale.md) | 创建缩放矩阵 | -| [`operator*(Matrix3)`](operator-mul-matrix3.md) | 矩阵乘法 | -| [`operator*(Vector3)`](operator-mul-vector3.md) | 矩阵-向量乘法 | -| [`Transpose()`](transpose.md) | 转置矩阵 | -| [`Inverse()`](inverse.md) | 逆矩阵 | -| [`Determinant()`](determinant.md) | 行列式 | -| [`operator[]`](./operator-subscript.md) | 访问矩阵元素 | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Math; - -// 创建绕 Y 轴旋转 45 度的矩阵 -Matrix3 rotation = Matrix3::RotationY(0.785f); // PI/4 - -// 对向量进行变换 -Vector3 v(1.0f, 0.0f, 0.0f); -Vector3 rotated = rotation * v; - -// 矩阵运算 -Matrix3 m1 = Matrix3::RotationX(0.5f); -Matrix3 m2 = Matrix3::RotationY(0.3f); -Matrix3 combined = m1 * m2; - -// 求逆矩阵 -Matrix3 inv = combined.Inverse(); -float det = combined.Determinant(); -``` - -## 相关文档 - -- [Matrix4](../matrix4/matrix4.md) - 4x4 矩阵 -- [Vector3](../vector3/vector3.md) - 三维向量 -- [Math 模块总览](../math.md) - 返回模块总览 \ No newline at end of file diff --git a/docs/api/math/matrix3/operator-mul-matrix3.md b/docs/api/math/matrix3/operator-mul-matrix3.md deleted file mode 100644 index 8609d9bd..00000000 --- a/docs/api/math/matrix3/operator-mul-matrix3.md +++ /dev/null @@ -1,24 +0,0 @@ -# Matrix3::operator* (Matrix3) - -```cpp -Matrix3 operator*(const Matrix3& other) const -``` - -矩阵乘法运算,将当前矩阵与另一个矩阵相乘。 - -**参数:** -- `other` - 另一个矩阵 - -**返回:** `Matrix3` - 乘积矩阵 - -**复杂度:** O(1) - -**示例:** - -```cpp -Matrix3 rot = Matrix3::RotationZ(Math::Radians(45.0f)); -Matrix3 scale = Matrix3::Scale(Vector3(2.0f, 2.0f, 1.0f)); - -// 先缩放后旋转 -Matrix3 transform = rot * scale; -``` diff --git a/docs/api/math/matrix3/operator-mul-vector3.md b/docs/api/math/matrix3/operator-mul-vector3.md deleted file mode 100644 index d7aa8f16..00000000 --- a/docs/api/math/matrix3/operator-mul-vector3.md +++ /dev/null @@ -1,24 +0,0 @@ -# Matrix3::operator* (Vector3) - -```cpp -Vector3 operator*(const Vector3& v) const -``` - -矩阵-向量乘法运算,将矩阵应用于向量。 - -**参数:** -- `v` - 三维向量 - -**返回:** `Vector3` - 变换后的向量 - -**复杂度:** O(1) - -**示例:** - -```cpp -Matrix3 rotation = Matrix3::RotationZ(Math::Radians(90.0f)); -Vector3 v(1.0f, 0.0f, 0.0f); - -Vector3 rotated = rotation * v; -// 结果: approximately (0, 1, 0) -``` diff --git a/docs/api/math/matrix3/operator-subscript.md b/docs/api/math/matrix3/operator-subscript.md deleted file mode 100644 index 6460d66b..00000000 --- a/docs/api/math/matrix3/operator-subscript.md +++ /dev/null @@ -1,27 +0,0 @@ -# Matrix3::operator[] - -```cpp -float* operator[](int row) -const float* operator[](int row) const -``` - -访问矩阵指定行的元素。 - -**参数:** -- `row` - 行索引(0-2) - -**返回:** `float*` / `const float*` - 指向该行首元素的指针 - -**复杂度:** O(1) - -**示例:** - -```cpp -Matrix3 m; -m[0][0] = 1; m[0][1] = 2; m[0][2] = 3; -m[1][0] = 4; m[1][1] = 5; m[1][2] = 6; -m[2][0] = 7; m[2][1] = 8; m[2][2] = 9; - -// 访问元素 -float val = m[1][2]; // 6 -``` diff --git a/docs/api/math/matrix3/rotation-x.md b/docs/api/math/matrix3/rotation-x.md deleted file mode 100644 index ea8a51f3..00000000 --- a/docs/api/math/matrix3/rotation-x.md +++ /dev/null @@ -1,24 +0,0 @@ -# Matrix3::RotationX - -```cpp -static Matrix3 RotationX(float radians) -``` - -返回绕 X 轴旋转的 3x3 旋转矩阵。 - -**参数:** -- `radians` - 旋转角度(弧度) - -**返回:** `Matrix3` - 绕 X 轴旋转的矩阵 - -**复杂度:** O(1) - -**示例:** - -```cpp -Matrix3 rotX = Matrix3::RotationX(Math::Radians(90.0f)); -// 结果(绕 X 轴旋转 90 度): -// [1 0 0] -// [0 0 -1] -// [0 1 0] -``` diff --git a/docs/api/math/matrix3/rotation-y.md b/docs/api/math/matrix3/rotation-y.md deleted file mode 100644 index 73bc81cf..00000000 --- a/docs/api/math/matrix3/rotation-y.md +++ /dev/null @@ -1,24 +0,0 @@ -# Matrix3::RotationY - -```cpp -static Matrix3 RotationY(float radians) -``` - -返回绕 Y 轴旋转的 3x3 旋转矩阵。 - -**参数:** -- `radians` - 旋转角度(弧度) - -**返回:** `Matrix3` - 绕 Y 轴旋转的矩阵 - -**复杂度:** O(1) - -**示例:** - -```cpp -Matrix3 rotY = Matrix3::RotationY(Math::Radians(90.0f)); -// 结果(绕 Y 轴旋转 90 度): -// [0 0 1] -// [0 1 0] -// [-1 0 0] -``` diff --git a/docs/api/math/matrix3/rotation-z.md b/docs/api/math/matrix3/rotation-z.md deleted file mode 100644 index f94009a2..00000000 --- a/docs/api/math/matrix3/rotation-z.md +++ /dev/null @@ -1,24 +0,0 @@ -# Matrix3::RotationZ - -```cpp -static Matrix3 RotationZ(float radians) -``` - -返回绕 Z 轴旋转的 3x3 旋转矩阵。 - -**参数:** -- `radians` - 旋转角度(弧度) - -**返回:** `Matrix3` - 绕 Z 轴旋转的矩阵 - -**复杂度:** O(1) - -**示例:** - -```cpp -Matrix3 rotZ = Matrix3::RotationZ(Math::Radians(45.0f)); -// 结果(绕 Z 轴旋转 45 度): -// [ 0.707 -0.707 0] -// [ 0.707 0.707 0] -// [ 0 0 1] -``` diff --git a/docs/api/math/matrix3/scale.md b/docs/api/math/matrix3/scale.md deleted file mode 100644 index bcb6e7a8..00000000 --- a/docs/api/math/matrix3/scale.md +++ /dev/null @@ -1,20 +0,0 @@ -# Matrix3::Scale - -```cpp -static Matrix3 Scale(const Vector3& scale) -``` - -创建缩放矩阵。 - -**参数:** -- `scale` - 各轴缩放因子 - -**返回:** `Matrix3` - 缩放矩阵 - -**复杂度:** O(1) - -**示例:** - -```cpp -Matrix3 scale = Matrix3::Scale(Vector3(2.0f, 2.0f, 2.0f)); -``` diff --git a/docs/api/math/matrix3/transpose.md b/docs/api/math/matrix3/transpose.md deleted file mode 100644 index 5c29068c..00000000 --- a/docs/api/math/matrix3/transpose.md +++ /dev/null @@ -1,18 +0,0 @@ -# Matrix3::Transpose - -```cpp -Matrix3 Transpose() const -``` - -返回矩阵的转置。 - -**返回:** `Matrix3` - 转置矩阵 - -**复杂度:** O(1) - -**示例:** - -```cpp -Matrix3 mat = ...; -Matrix3 transposed = mat.Transpose(); -``` diff --git a/docs/api/math/matrix3/zero.md b/docs/api/math/matrix3/zero.md deleted file mode 100644 index 45709046..00000000 --- a/docs/api/math/matrix3/zero.md +++ /dev/null @@ -1,17 +0,0 @@ -# Matrix3::Zero - -```cpp -static Matrix3 Zero() -``` - -返回零矩阵。 - -**返回:** `Matrix3` - 零矩阵 - -**复杂度:** O(1) - -**示例:** - -```cpp -Matrix3 zero = Matrix3::Zero(); -``` diff --git a/docs/api/math/matrix4/decompose.md b/docs/api/math/matrix4/decompose.md deleted file mode 100644 index 31a030b4..00000000 --- a/docs/api/math/matrix4/decompose.md +++ /dev/null @@ -1,50 +0,0 @@ -# Matrix4x4::Decompose - -```cpp -void Decompose(Vector3& translation, Quaternion& rotation, Vector3& scale) const -``` - -将变换矩阵分解为平移、旋转和缩放三个独立分量。 - -**参数:** -- `translation` - 输出参数,接收平移向量 -- `rotation` - 输出参数,接收旋转四元数 -- `scale` - 输出参数,接收缩放向量 - -**返回:** (无) - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" -#include "XCEngine/Core/Math/Vector3.h" -#include "XCEngine/Core/Math/Quaternion.h" - -using namespace XCEngine::Math; - -Matrix4 transform = Matrix4::TRS( - Vector3(1.0f, 2.0f, 3.0f), - Quaternion::FromEuler(45.0f, 0.0f, 0.0f), - Vector3(2.0f, 2.0f, 2.0f) -); - -Vector3 translation; -Quaternion rotation; -Vector3 scale; -transform.Decompose(translation, rotation, scale); -// translation = (1.0f, 2.0f, 3.0f) -// rotation 表示 45 度 X 轴旋转 -// scale = (2.0f, 2.0f, 2.0f) -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [TRS](trs.md) - 组合变换矩阵 -- [GetTranslation](get-translation.md) - 获取平移分量 -- [GetRotation](get-rotation.md) - 获取旋转分量 -- [GetScale](get-scale.md) - 获取缩放分量 \ No newline at end of file diff --git a/docs/api/math/matrix4/determinant.md b/docs/api/math/matrix4/determinant.md deleted file mode 100644 index 029f5efe..00000000 --- a/docs/api/math/matrix4/determinant.md +++ /dev/null @@ -1,36 +0,0 @@ -# Matrix4x4::Determinant - -```cpp -float Determinant() const -``` - -计算矩阵的行列式。行列式为零的矩阵不可逆。 - -**参数:** (无) - -**返回:** 矩阵的行列式值 - -**线程安全:** ✅ - -**复杂度:** O(n³) - O(64) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" - -using namespace XCEngine::Math; - -Matrix4 m = Matrix4::Identity(); -float det = m.Determinant(); -// det = 1.0f - -Matrix4 singular; -float det2 = singular.Determinant(); -// det2 = 0.0f -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [Inverse](inverse.md) - 矩阵求逆 \ No newline at end of file diff --git a/docs/api/math/matrix4/get-rotation.md b/docs/api/math/matrix4/get-rotation.md deleted file mode 100644 index bbf9523e..00000000 --- a/docs/api/math/matrix4/get-rotation.md +++ /dev/null @@ -1,42 +0,0 @@ -# Matrix4x4::GetRotation - -```cpp -Quaternion GetRotation() const -``` - -从变换矩阵中提取旋转分量。将矩阵转换为对应的四元数表示。 - -**参数:** (无) - -**返回:** 旋转四元数 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" -#include "XCEngine/Core/Math/Quaternion.h" - -using namespace XCEngine::Math; - -Quaternion expected = Quaternion::FromEuler(0.0f, 90.0f, 0.0f); -Matrix4 transform = Matrix4::TRS( - Vector3(0.0f, 0.0f, 0.0f), - expected, - Vector3(1.0f, 1.0f, 1.0f) -); - -Quaternion rotation = transform.GetRotation(); -// rotation 表示相同的旋转 -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [Quaternion](../quaternion/quaternion.md) - 四元数类 -- [GetTranslation](get-translation.md) - 获取平移分量 -- [GetScale](get-scale.md) - 获取缩放分量 -- [Decompose](decompose.md) - 分解矩阵 \ No newline at end of file diff --git a/docs/api/math/matrix4/get-scale.md b/docs/api/math/matrix4/get-scale.md deleted file mode 100644 index 42a1220a..00000000 --- a/docs/api/math/matrix4/get-scale.md +++ /dev/null @@ -1,40 +0,0 @@ -# Matrix4x4::GetScale - -```cpp -Vector3 GetScale() const -``` - -从变换矩阵中提取缩放分量。计算各列向量的长度作为缩放因子。 - -**参数:** (无) - -**返回:** 缩放向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" -#include "XCEngine/Core/Math/Vector3.h" - -using namespace XCEngine::Math; - -Matrix4 transform = Matrix4::TRS( - Vector3(0.0f, 0.0f, 0.0f), - Quaternion::Identity(), - Vector3(2.0f, 3.0f, 4.0f) -); - -Vector3 scale = transform.GetScale(); -// scale = (2.0f, 3.0f, 4.0f) -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [GetTranslation](get-translation.md) - 获取平移分量 -- [GetRotation](get-rotation.md) - 获取旋转分量 -- [Decompose](decompose.md) - 分解矩阵 \ No newline at end of file diff --git a/docs/api/math/matrix4/get-translation.md b/docs/api/math/matrix4/get-translation.md deleted file mode 100644 index b83a4075..00000000 --- a/docs/api/math/matrix4/get-translation.md +++ /dev/null @@ -1,40 +0,0 @@ -# Matrix4x4::GetTranslation - -```cpp -Vector3 GetTranslation() const -``` - -从变换矩阵中提取平移分量。读取矩阵的最后一列前三个元素。 - -**参数:** (无) - -**返回:** 平移向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" -#include "XCEngine/Core/Math/Vector3.h" - -using namespace XCEngine::Math; - -Matrix4 transform = Matrix4::TRS( - Vector3(5.0f, 3.0f, 2.0f), - Quaternion::Identity(), - Vector3(1.0f, 1.0f, 1.0f) -); - -Vector3 translation = transform.GetTranslation(); -// translation = (5.0f, 3.0f, 2.0f) -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [GetRotation](get-rotation.md) - 获取旋转分量 -- [GetScale](get-scale.md) - 获取缩放分量 -- [Decompose](decompose.md) - 分解矩阵 \ No newline at end of file diff --git a/docs/api/math/matrix4/identity.md b/docs/api/math/matrix4/identity.md deleted file mode 100644 index e4d36c54..00000000 --- a/docs/api/math/matrix4/identity.md +++ /dev/null @@ -1,31 +0,0 @@ -# Matrix4x4::Identity - -```cpp -static Matrix4x4 Identity() -``` - -返回单位矩阵。单位矩阵是对角线元素为 1,其他元素为 0 的特殊矩阵。 - -**参数:** (无) - -**返回:** 单位矩阵 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" - -using namespace XCEngine::Math; - -Matrix4 identity = Matrix4::Identity(); -// identity.m[0][0] = 1, identity.m[1][1] = 1, identity.m[2][2] = 1, identity.m[3][3] = 1 -// 所有其他元素为 0 -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/math/matrix4/inverse.md b/docs/api/math/matrix4/inverse.md deleted file mode 100644 index 98b3de00..00000000 --- a/docs/api/math/matrix4/inverse.md +++ /dev/null @@ -1,39 +0,0 @@ -# Matrix4x4::Inverse - -```cpp -Matrix4x4 Inverse() const -``` - -返回矩阵的逆矩阵。如果矩阵的行列式接近零(不可逆),则返回单位矩阵。 - -**参数:** (无) - -**返回:** 逆矩阵;如果矩阵不可逆则返回单位矩阵 - -**线程安全:** ✅ - -**复杂度:** O(n³),对于 4x4 矩阵固定为 64 次基本运算 - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" - -using namespace XCEngine::Math; - -Matrix4 transform = Matrix4::TRS( - Vector3(1.0f, 2.0f, 3.0f), - Quaternion::FromEuler(0.0f, 45.0f, 0.0f), - Vector3(2.0f, 2.0f, 2.0f) -); - -Matrix4 inv = transform.Inverse(); -Matrix4 identity = transform * inv; -// identity 接近单位矩阵 -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [Determinant](determinant.md) - 计算行列式 -- [Transpose](transpose.md) - 矩阵转置 \ No newline at end of file diff --git a/docs/api/math/matrix4/lookat.md b/docs/api/math/matrix4/lookat.md deleted file mode 100644 index 7cadda44..00000000 --- a/docs/api/math/matrix4/lookat.md +++ /dev/null @@ -1,39 +0,0 @@ -# Matrix4x4::LookAt - -```cpp -static Matrix4x4 LookAt(const Vector3& eye, const Vector3& target, const Vector3& up) -``` - -创建视图矩阵(观察矩阵)。用于将世界空间中的点转换到摄像机视角。 - -**参数:** -- `eye` - 摄像机位置 -- `target` - 观察目标点 -- `up` - 摄像机上方向向量 - -**返回:** 视图矩阵 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" -#include "XCEngine/Core/Math/Vector3.h" - -using namespace XCEngine::Math; - -Matrix4 view = Matrix4::LookAt( - Vector3(0.0f, 1.0f, 5.0f), - Vector3(0.0f, 0.0f, 0.0f), - Vector3(0.0f, 1.0f, 0.0f) -); -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [Perspective](perspective.md) - 透视投影 -- [Orthographic](orthographic.md) - 正交投影 \ No newline at end of file diff --git a/docs/api/math/matrix4/matrix4.md b/docs/api/math/matrix4/matrix4.md deleted file mode 100644 index ca035a25..00000000 --- a/docs/api/math/matrix4/matrix4.md +++ /dev/null @@ -1,77 +0,0 @@ -# Matrix4 - -**命名空间**: `XCEngine::Math` - -**类型**: `struct` - -**头文件**: `XCEngine/Core/Math/Matrix4.h` - -**描述**: 4x4 矩阵,用于 3D 变换(平移、旋转、缩放)、视图和投影计算 - -## 概述 - -`Matrix4` (别名 `Matrix4x4`) 是 XCEngine 中用于表示 4x4 变换矩阵的结构体。它支持标准的 3D 图形变换操作,包括平移、旋转、缩放,以及视图矩阵和投影矩阵的构建。该结构体采用列主序存储方式,适用于 GPU 渲染和物理计算场景。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | -|------|------|------| -| `m[4][4]` | `float` | 矩阵元素数组 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Identity`](identity.md) | 返回单位矩阵 | -| [`Zero`](zero.md) | 返回零矩阵 | -| [`Translation`](translation.md) | 创建平移矩阵 | -| [`Rotation`](rotation.md) | 从四元数创建旋转矩阵 | -| [`Scale`](scale.md) | 创建缩放矩阵 | -| [`TRS`](trs.md) | 创建组合变换矩阵 | -| [`LookAt`](lookat.md) | 创建视图矩阵 | -| [`Perspective`](perspective.md) | 创建透视投影矩阵 | -| [`Orthographic`](orthographic.md) | 创建正交投影矩阵 | -| [`RotationX`](rotationx.md) | 创建绕 X 轴旋转矩阵 | -| [`RotationY`](rotationy.md) | 创建绕 Y 轴旋转矩阵 | -| [`RotationZ`](rotationz.md) | 创建绕 Z 轴旋转矩阵 | -| [`operator*`](operator_mul.md) | 矩阵乘法 | -| [`MultiplyPoint`](multiplypoint.md) | 变换点(w=1) | -| [`MultiplyVector`](multiplyvector.md) | 变换向量(w=0) | -| [`Transpose`](transpose.md) | 转置矩阵 | -| [`Inverse`](inverse.md) | 求逆矩阵 | -| [`Determinant`](determinant.md) | 计算行列式 | -| [`GetTranslation`](get-translation.md) | 获取平移分量 | -| [`GetRotation`](get-rotation.md) | 获取旋转分量 | -| [`GetScale`](get-scale.md) | 获取缩放分量 | -| [`Decompose`](decompose.md) | 分解矩阵为变换分量 | -| [`operator[]`](operator_index.md) | 访问矩阵行数据 | - -## 使用示例 - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" -#include "XCEngine/Core/Math/Vector3.h" -#include "XCEngine/Core/Math/Quaternion.h" - -using namespace XCEngine::Math; - -void MatrixExample() { - Matrix4 mat = Matrix4::TRS( - Vector3(1.0f, 2.0f, 3.0f), - Quaternion::FromEulerAngles(0.0f, 90.0f, 0.0f), - Vector3(1.5f, 1.5f, 1.5f) - ); - - Vector3 point(1.0f, 0.0f, 0.0f); - Vector3 transformed = mat.MultiplyPoint(point); - - Matrix4 inv = mat.Inverse(); - Matrix4 result = mat * inv; -} -``` - -## 相关文档 - -- [Vector3](../vector3/vector3.md) - 三维向量 -- [Quaternion](../quaternion/quaternion.md) - 四元数 -- [Matrix3](../matrix3/matrix3.md) - 3x3 矩阵 \ No newline at end of file diff --git a/docs/api/math/matrix4/multiplypoint.md b/docs/api/math/matrix4/multiplypoint.md deleted file mode 100644 index 8cea9d15..00000000 --- a/docs/api/math/matrix4/multiplypoint.md +++ /dev/null @@ -1,41 +0,0 @@ -# Matrix4x4::MultiplyPoint - -```cpp -Vector3 MultiplyPoint(const Vector3& v) const -``` - -使用矩阵变换一个点。会自动处理 w=1 的齐次坐标变换,适用于位置变换。 - -**参数:** -- `v` - 待变换的三维点 - -**返回:** 变换后的三维点 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" -#include "XCEngine/Core/Math/Vector3.h" - -using namespace XCEngine::Math; - -Matrix4 transform = Matrix4::TRS( - Vector3(1.0f, 2.0f, 3.0f), - Quaternion::Identity(), - Vector3(1.0f, 1.0f, 1.0f) -); - -Vector3 point(1.0f, 0.0f, 0.0f); -Vector3 transformed = transform.MultiplyPoint(point); -// transformed = (2.0f, 2.0f, 3.0f) -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [MultiplyVector](multiplyvector.md) - 向量变换 -- [operator*](operator_mul.md) - 矩阵乘法 \ No newline at end of file diff --git a/docs/api/math/matrix4/multiplyvector.md b/docs/api/math/matrix4/multiplyvector.md deleted file mode 100644 index 26c93662..00000000 --- a/docs/api/math/matrix4/multiplyvector.md +++ /dev/null @@ -1,36 +0,0 @@ -# Matrix4x4::MultiplyVector - -```cpp -Vector3 MultiplyVector(const Vector3& v) const -``` - -使用矩阵变换一个方向向量。会自动处理 w=0 的齐次坐标变换,适用于方向变换,不受平移影响。 - -**参数:** -- `v` - 待变换的三维方向向量 - -**返回:** 变换后的三维方向向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" -#include "XCEngine/Core/Math/Vector3.h" - -using namespace XCEngine::Math; - -Matrix4 rotation = Matrix4::RotationY(3.14159265f / 2.0f); -Vector3 direction(1.0f, 0.0f, 0.0f); -Vector3 rotated = rotation.MultiplyVector(direction); -// rotated = (0.0f, 0.0f, -1.0f) -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [MultiplyPoint](multiplypoint.md) - 点变换 -- [operator*](operator_mul.md) - 矩阵乘法 \ No newline at end of file diff --git a/docs/api/math/matrix4/operator_index.md b/docs/api/math/matrix4/operator_index.md deleted file mode 100644 index afc03e4a..00000000 --- a/docs/api/math/matrix4/operator_index.md +++ /dev/null @@ -1,35 +0,0 @@ -# Matrix4x4::operator[] - -```cpp -float* operator[](int row) -const float* operator[](int row) const -``` - -通过行索引访问矩阵元素。返回指向该行第一列元素的指针。 - -**参数:** -- `row` - 行索引(0-3) - -**返回:** 指向该行数据的指针 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" - -using namespace XCEngine::Math; - -Matrix4 m = Matrix4::Identity(); -m[0][0] = 5.0f; // 设置第一行第一列 -m[1][2] = 3.0f; // 设置第二行第三列 - -float val = m[0][1]; // 读取第一行第二列 -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/math/matrix4/operator_mul.md b/docs/api/math/matrix4/operator_mul.md deleted file mode 100644 index 86b1ea2e..00000000 --- a/docs/api/math/matrix4/operator_mul.md +++ /dev/null @@ -1,44 +0,0 @@ -# Matrix4x4::operator* - -```cpp -Matrix4x4 operator*(const Matrix4x4& other) const -Vector4 operator*(const Vector4& v) const -``` - -两个重载分别用于矩阵与矩阵乘法,以及矩阵与四维向量的乘法。 - -**参数(矩阵乘法):** -- `other` - 右侧矩阵 - -**参数(向量乘法):** -- `v` - 四维向量 - -**返回:** -- 矩阵乘法:结果矩阵 -- 向量乘法:变换后的四维向量 - -**线程安全:** ✅ - -**复杂度:** O(n²) - 矩阵乘法为 O(4³),向量乘法为 O(4) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" -#include "XCEngine/Core/Math/Vector4.h" - -using namespace XCEngine::Math; - -Matrix4 m1 = Matrix4::RotationY(1.0f); -Matrix4 m2 = Matrix4::Translation(Vector3(1.0f, 0.0f, 0.0f)); -Matrix4 combined = m1 * m2; - -Vector4 v(1.0f, 0.0f, 0.0f, 1.0f); -Vector4 transformed = m1 * v; -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [MultiplyPoint](multiplypoint.md) - 点变换 -- [MultiplyVector](multiplyvector.md) - 向量变换 \ No newline at end of file diff --git a/docs/api/math/matrix4/orthographic.md b/docs/api/math/matrix4/orthographic.md deleted file mode 100644 index 633566b9..00000000 --- a/docs/api/math/matrix4/orthographic.md +++ /dev/null @@ -1,36 +0,0 @@ -# Matrix4x4::Orthographic - -```cpp -static Matrix4x4 Orthographic(float left, float right, float bottom, float top, float near, float far) -``` - -创建正交投影矩阵。用于 2D UI 或建筑制图等需要保持物体实际大小的场景。 - -**参数:** -- `left` - 左裁切面 x 坐标 -- `right` - 右裁切面 x 坐标 -- `bottom` - 下裁切面 y 坐标 -- `top` - 上裁切面 y 坐标 -- `near` - 近裁切面 z 坐标 -- `far` - 远裁切面 z 坐标 - -**返回:** 正交投影矩阵 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" - -using namespace XCEngine::Math; - -Matrix4 ortho = Matrix4::Orthographic(-10.0f, 10.0f, -5.0f, 5.0f, 0.1f, 100.0f); -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [Perspective](perspective.md) - 透视投影 \ No newline at end of file diff --git a/docs/api/math/matrix4/perspective.md b/docs/api/math/matrix4/perspective.md deleted file mode 100644 index fccf8d19..00000000 --- a/docs/api/math/matrix4/perspective.md +++ /dev/null @@ -1,37 +0,0 @@ -# Matrix4x4::Perspective - -```cpp -static Matrix4x4 Perspective(float fov, float aspect, float near, float far) -``` - -创建透视投影矩阵。用于将 3D 场景投影到 2D 视口,产生近大远小的效果。 - -**参数:** -- `fov` - 垂直视野角度(弧度) -- `aspect` - 宽高比(width / height) -- `near` - 近裁切面距离 -- `far` - 远裁切面距离 - -**返回:** 透视投影矩阵 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" - -using namespace XCEngine::Math; - -float fov = 60.0f * 3.14159265f / 180.0f; -float aspect = 16.0f / 9.0f; -Matrix4 proj = Matrix4::Perspective(fov, aspect, 0.1f, 100.0f); -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [Orthographic](orthographic.md) - 正交投影 -- [LookAt](lookat.md) - 视图矩阵 \ No newline at end of file diff --git a/docs/api/math/matrix4/rotation.md b/docs/api/math/matrix4/rotation.md deleted file mode 100644 index d4534271..00000000 --- a/docs/api/math/matrix4/rotation.md +++ /dev/null @@ -1,39 +0,0 @@ -# Matrix4x4::Rotation - -```cpp -static Matrix4x4 Rotation(const Quaternion& q) -``` - -从四元数创建旋转矩阵。用于将旋转变换应用到点或向量。 - -**参数:** -- `q` - 表示旋转的四元数 - -**返回:** 旋转矩阵 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" -#include "XCEngine/Core/Math/Quaternion.h" -#include "XCEngine/Core/Math/Vector3.h" - -using namespace XCEngine::Math; - -Quaternion q = Quaternion::FromEuler(0.0f, 90.0f, 0.0f); -Matrix4 rotate = Matrix4::Rotation(q); - -Vector3 point(1.0f, 0.0f, 0.0f); -Vector3 rotated = rotate.MultiplyVector(point); -// point 绕 Y 轴旋转 90 度 -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [Quaternion](../quaternion/quaternion.md) - 四元数类 -- [TRS](trs.md) - 组合变换矩阵 \ No newline at end of file diff --git a/docs/api/math/matrix4/rotationx.md b/docs/api/math/matrix4/rotationx.md deleted file mode 100644 index 4e95e976..00000000 --- a/docs/api/math/matrix4/rotationx.md +++ /dev/null @@ -1,36 +0,0 @@ -# Matrix4x4::RotationX - -```cpp -static Matrix4x4 RotationX(float radians) -``` - -创建绕 X 轴旋转的矩阵。角度为正时,按右手定则逆时针旋转。 - -**参数:** -- `radians` - 旋转角度(弧度) - -**返回:** 绕 X 轴旋转的矩阵 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" -#include "XCEngine/Core/Math/Vector3.h" - -using namespace XCEngine::Math; - -Matrix4 rotX = Matrix4::RotationX(3.14159265f / 2.0f); // 90 度 -Vector3 point(1.0f, 0.0f, 0.0f); -Vector3 rotated = rotX.MultiplyVector(point); -// point 绕 X 轴旋转 90 度 -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [RotationY](rotationy.md) - 绕 Y 轴旋转 -- [RotationZ](rotationz.md) - 绕 Z 轴旋转 \ No newline at end of file diff --git a/docs/api/math/matrix4/rotationy.md b/docs/api/math/matrix4/rotationy.md deleted file mode 100644 index 2053c1c3..00000000 --- a/docs/api/math/matrix4/rotationy.md +++ /dev/null @@ -1,36 +0,0 @@ -# Matrix4x4::RotationY - -```cpp -static Matrix4x4 RotationY(float radians) -``` - -创建绕 Y 轴旋转的矩阵。角度为正时,按右手定则逆时针旋转。 - -**参数:** -- `radians` - 旋转角度(弧度) - -**返回:** 绕 Y 轴旋转的矩阵 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" -#include "XCEngine/Core/Math/Vector3.h" - -using namespace XCEngine::Math; - -Matrix4 rotY = Matrix4::RotationY(3.14159265f / 2.0f); // 90 度 -Vector3 point(1.0f, 0.0f, 0.0f); -Vector3 rotated = rotY.MultiplyVector(point); -// point 绕 Y 轴旋转 90 度 -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [RotationX](rotationx.md) - 绕 X 轴旋转 -- [RotationZ](rotationz.md) - 绕 Z 轴旋转 \ No newline at end of file diff --git a/docs/api/math/matrix4/rotationz.md b/docs/api/math/matrix4/rotationz.md deleted file mode 100644 index 0343c09a..00000000 --- a/docs/api/math/matrix4/rotationz.md +++ /dev/null @@ -1,36 +0,0 @@ -# Matrix4x4::RotationZ - -```cpp -static Matrix4x4 RotationZ(float radians) -``` - -创建绕 Z 轴旋转的矩阵。角度为正时,按右手定则逆时针旋转。 - -**参数:** -- `radians` - 旋转角度(弧度) - -**返回:** 绕 Z 轴旋转的矩阵 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" -#include "XCEngine/Core/Math/Vector3.h" - -using namespace XCEngine::Math; - -Matrix4 rotZ = Matrix4::RotationZ(3.14159265f / 2.0f); // 90 度 -Vector3 point(1.0f, 0.0f, 0.0f); -Vector3 rotated = rotZ.MultiplyVector(point); -// point 绕 Z 轴旋转 90 度 -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [RotationX](rotationx.md) - 绕 X 轴旋转 -- [RotationY](rotationy.md) - 绕 Y 轴旋转 \ No newline at end of file diff --git a/docs/api/math/matrix4/scale.md b/docs/api/math/matrix4/scale.md deleted file mode 100644 index bab7092c..00000000 --- a/docs/api/math/matrix4/scale.md +++ /dev/null @@ -1,35 +0,0 @@ -# Matrix4x4::Scale - -```cpp -static Matrix4x4 Scale(const Vector3& v) -``` - -创建缩放矩阵。用于沿各轴方向对点或向量进行缩放变换。 - -**参数:** -- `v` - 缩放向量,指定 x、y、z 方向上的缩放因子 - -**返回:** 缩放矩阵 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" -#include "XCEngine/Core/Math/Vector3.h" - -using namespace XCEngine::Math; - -Matrix4 scale = Matrix4::Scale(Vector3(2.0f, 0.5f, 1.0f)); -Vector3 point(2.0f, 4.0f, 2.0f); -Vector3 scaled = scale.MultiplyVector(point); -// scaled = (4.0f, 2.0f, 2.0f) -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [TRS](trs.md) - 组合变换矩阵 \ No newline at end of file diff --git a/docs/api/math/matrix4/translation.md b/docs/api/math/matrix4/translation.md deleted file mode 100644 index 68d877e9..00000000 --- a/docs/api/math/matrix4/translation.md +++ /dev/null @@ -1,35 +0,0 @@ -# Matrix4x4::Translation - -```cpp -static Matrix4x4 Translation(const Vector3& v) -``` - -创建平移矩阵。生成的矩阵用于沿指定方向移动点或向量。 - -**参数:** -- `v` - 平移向量 (x, y, z 方向上的平移量) - -**返回:** 平移矩阵 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" -#include "XCEngine/Core/Math/Vector3.h" - -using namespace XCEngine::Math; - -Matrix4 translate = Matrix4::Translation(Vector3(5.0f, 3.0f, 2.0f)); -Vector3 point(1.0f, 1.0f, 1.0f); -Vector3 moved = translate.MultiplyPoint(point); -// moved = (6.0f, 4.0f, 3.0f) -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [TRS](trs.md) - 组合变换矩阵 \ No newline at end of file diff --git a/docs/api/math/matrix4/transpose.md b/docs/api/math/matrix4/transpose.md deleted file mode 100644 index 2b3f8171..00000000 --- a/docs/api/math/matrix4/transpose.md +++ /dev/null @@ -1,32 +0,0 @@ -# Matrix4x4::Transpose - -```cpp -Matrix4x4 Transpose() const -``` - -返回矩阵的转置。转置操作将矩阵的行和列互换。 - -**参数:** (无) - -**返回:** 转置后的矩阵 - -**线程安全:** ✅ - -**复杂度:** O(n²) - O(16) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" - -using namespace XCEngine::Math; - -Matrix4 m = Matrix4::Identity(); -Matrix4 t = m.Transpose(); -// 转置后仍为单位矩阵 -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [Inverse](inverse.md) - 矩阵求逆 \ No newline at end of file diff --git a/docs/api/math/matrix4/trs.md b/docs/api/math/matrix4/trs.md deleted file mode 100644 index f1627b1a..00000000 --- a/docs/api/math/matrix4/trs.md +++ /dev/null @@ -1,45 +0,0 @@ -# Matrix4x4::TRS - -```cpp -static Matrix4x4 TRS(const Vector3& translation, const Quaternion& rotation, const Vector3& scale) -``` - -创建组合变换矩阵。等价于先缩放、再旋转、最后平移的组合效果。 - -**参数:** -- `translation` - 平移向量 -- `rotation` - 旋转四元数 -- `scale` - 缩放向量 - -**返回:** 组合变换矩阵 T * R * S - -**线程安全:** ✅ - -**复杂度:** O(n²) - 涉及多次 4x4 矩阵运算 - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" -#include "XCEngine/Core/Math/Vector3.h" -#include "XCEngine/Core/Math/Quaternion.h" - -using namespace XCEngine::Math; - -Matrix4 transform = Matrix4::TRS( - Vector3(1.0f, 2.0f, 3.0f), - Quaternion::FromEuler(0.0f, 90.0f, 0.0f), - Vector3(2.0f, 2.0f, 2.0f) -); - -Vector3 point(1.0f, 0.0f, 0.0f); -Vector3 transformed = transform.MultiplyPoint(point); -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 -- [Translation](translation.md) - 平移矩阵 -- [Rotation](rotation.md) - 旋转矩阵 -- [Scale](scale.md) - 缩放矩阵 -- [Decompose](decompose.md) - 分解矩阵 \ No newline at end of file diff --git a/docs/api/math/matrix4/zero.md b/docs/api/math/matrix4/zero.md deleted file mode 100644 index a8b33932..00000000 --- a/docs/api/math/matrix4/zero.md +++ /dev/null @@ -1,30 +0,0 @@ -# Matrix4x4::Zero - -```cpp -static Matrix4x4 Zero() -``` - -返回零矩阵。所有元素初始化为 0 的矩阵。 - -**参数:** (无) - -**返回:** 零矩阵 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Matrix4.h" - -using namespace XCEngine::Math; - -Matrix4 zero = Matrix4::Zero(); -// 所有元素均为 0 -``` - -## 相关文档 - -- [Matrix4](matrix4.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/math/obb/contains.md b/docs/api/math/obb/contains.md deleted file mode 100644 index 77610193..00000000 --- a/docs/api/math/obb/contains.md +++ /dev/null @@ -1,35 +0,0 @@ -# OBB::Contains - -```cpp -bool Contains(const Vector3& point) const; -``` - -检测给定点是否位于 OBB 包围盒内部。通过将点变换到局部坐标系,然后检查其坐标分量是否在半长向量范围内。 - -**参数:** -- `point` - 待检测的三维点 - -**返回:** 点在包围盒内返回 `true`,否则返回 `false` - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "AABB.h" -#include "Vector3.h" - -using namespace XCEngine::Math; - -OBB obb(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 0.5f, 1.0f)); - -Vector3 insidePoint(0.0f, 0.0f, 0.0f); -Vector3 outsidePoint(2.0f, 0.0f, 0.0f); - -bool isInside = obb.Contains(insidePoint); -bool isOutside = obb.Contains(outsidePoint); -``` diff --git a/docs/api/math/obb/get-axis.md b/docs/api/math/obb/get-axis.md deleted file mode 100644 index aac57d84..00000000 --- a/docs/api/math/obb/get-axis.md +++ /dev/null @@ -1,33 +0,0 @@ -# OBB::GetAxis - -```cpp -Vector3 GetAxis(int index) const; -``` - -获取 OBB 在指定索引处的局部轴方向。index 取值为 0、1、2,分别对应局部坐标系的 X、Y、Z 轴。 - -**参数:** -- `index` - 轴索引(0=X轴,1=Y轴,2=Z轴) - -**返回:** 对应索引处的轴方向向量(已归一化) - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "AABB.h" -#include "Vector3.h" - -using namespace XCEngine::Math; - -OBB obb(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 0.5f, 1.0f)); - -Vector3 axisX = obb.GetAxis(0); -Vector3 axisY = obb.GetAxis(1); -Vector3 axisZ = obb.GetAxis(2); -``` diff --git a/docs/api/math/obb/get-max.md b/docs/api/math/obb/get-max.md deleted file mode 100644 index 6b7aacdf..00000000 --- a/docs/api/math/obb/get-max.md +++ /dev/null @@ -1,30 +0,0 @@ -# OBB::GetMax - -```cpp -Vector3 GetMax() const; -``` - -获取 OBB 包围盒在局部坐标系下的最大顶点。该点是中心点加上半长向量计算得出。 - -**参数:** 无 - -**返回:** 包围盒的最大顶点 - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "AABB.h" -#include "Vector3.h" - -using namespace XCEngine::Math; - -OBB obb(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 0.5f, 1.0f)); - -Vector3 maxPoint = obb.GetMax(); -``` diff --git a/docs/api/math/obb/get-min.md b/docs/api/math/obb/get-min.md deleted file mode 100644 index 7d65afc3..00000000 --- a/docs/api/math/obb/get-min.md +++ /dev/null @@ -1,30 +0,0 @@ -# OBB::GetMin - -```cpp -Vector3 GetMin() const; -``` - -获取 OBB 包围盒在局部坐标系下的最小顶点。该点是中心点减去半长向量计算得出。 - -**参数:** 无 - -**返回:** 包围盒的最小顶点 - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "AABB.h" -#include "Vector3.h" - -using namespace XCEngine::Math; - -OBB obb(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 0.5f, 1.0f)); - -Vector3 minPoint = obb.GetMin(); -``` diff --git a/docs/api/math/obb/intersects-obb.md b/docs/api/math/obb/intersects-obb.md deleted file mode 100644 index 933fe8cd..00000000 --- a/docs/api/math/obb/intersects-obb.md +++ /dev/null @@ -1,34 +0,0 @@ -# OBB::Intersects (OBB) - -```cpp -bool Intersects(const OBB& other) const; -``` - -检测该 OBB 与另一个 OBB 是否相交。采用分离轴定理(SAT)进行检测,通过测试 15 条可能的分离轴来判断两个盒子是否重叠。 - -**参数:** -- `other` - 另一个 OBB 包围盒 - -**返回:** 两 OBB 相交返回 `true`,否则返回 `false` - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "AABB.h" -#include "Vector3.h" -#include "Matrix4.h" - -using namespace XCEngine::Math; - -OBB obb1(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 0.5f, 1.0f)); -OBB obb2(Vector3(1.5f, 0.0f, 0.0f), Vector3(1.0f, 0.5f, 1.0f)); - -if (obb1.Intersects(obb2)) { -} -``` diff --git a/docs/api/math/obb/intersects-sphere.md b/docs/api/math/obb/intersects-sphere.md deleted file mode 100644 index ecbc0be9..00000000 --- a/docs/api/math/obb/intersects-sphere.md +++ /dev/null @@ -1,34 +0,0 @@ -# OBB::Intersects (Sphere) - -```cpp -bool Intersects(const Sphere& sphere) const; -``` - -检测该 OBB 与球体是否相交。将球心变换到 OBB 的局部坐标系,然后在局部空间中计算球心到盒子的最近点,最后判断距离是否小于球体半径。 - -**参数:** -- `sphere` - 待检测的球体 - -**返回:** OBB 与球体相交返回 `true`,否则返回 `false` - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "AABB.h" -#include "Vector3.h" -#include "Sphere.h" - -using namespace XCEngine::Math; - -OBB obb(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 0.5f, 1.0f)); -Sphere sphere(Vector3(0.5f, 0.0f, 0.0f), 0.5f); - -if (obb.Intersects(sphere)) { -} -``` diff --git a/docs/api/math/obb/obb.md b/docs/api/math/obb/obb.md deleted file mode 100644 index 9c876ca2..00000000 --- a/docs/api/math/obb/obb.md +++ /dev/null @@ -1,52 +0,0 @@ -# OBB - -**命名空间**: `XCEngine::Math` - -**类型**: `struct` - -**头文件**: `XCEngine/Core/Math/AABB.h` - -**描述**: 定向包围盒,支持任意方向旋转的盒状包围体 - -## 概述 - -OBB(Oriented Bounding Box)是一种包围盒类型,与轴对齐包围盒(AABB)不同,OBB 可以任意旋转,因此能够更紧凑地包围复杂形状的对象。OBB 由一个中心点、半长向量(extents)和一个变换矩阵组成,变换矩阵定义了盒子的朝向。 - -OBB 常用于碰撞检测、剔除运算和物理模拟等场景。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`GetAxis`](get-axis.md) | 获取指定索引处的局部轴方向 | -| [`GetMin`](get-min.md) | 获取包围盒最小顶点 | -| [`GetMax`](get-max.md) | 获取包围盒最大顶点 | -| [`Contains`](contains.md) | 检测点是否在包围盒内 | -| [`Intersects`](intersects-obb.md) | 检测与另一个 OBB 是否相交 | -| [`Intersects`](intersects-sphere.md) | 检测与球体是否相交 | - -## 使用示例 - -```cpp -#include -#include -#include - -using namespace XCEngine::Math; - -OBB obb(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 0.5f, 1.0f)); - -Vector3 point(0.5f, 0.25f, 0.5f); -if (obb.Contains(point)) { -} - -Vector3 axis = obb.GetAxis(0); -Vector3 min = obb.GetMin(); -Vector3 max = obb.GetMax(); -``` - -## 相关文档 - -- [Vector3](../vector3/vector3.md) - 三维向量 -- [Matrix4](../matrix4/matrix4.md) - 4x4 变换矩阵 -- [Sphere](../sphere/sphere.md) - 球体 diff --git a/docs/api/math/plane/constructor-default.md b/docs/api/math/plane/constructor-default.md deleted file mode 100644 index 92e4e6f1..00000000 --- a/docs/api/math/plane/constructor-default.md +++ /dev/null @@ -1,29 +0,0 @@ -# Plane::Plane - -```cpp -Plane() -``` - -默认构造函数,创建一个朝上(Y 轴正方向)的单位平面,等价于 `Plane(Vector3::Up(), 0.0f)`。 - -**参数:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Math; - -void DefaultConstructorExample() { - Plane plane; -} -``` - -## 相关文档 - -- [Plane 类总览](plane.md) - 返回类总览 diff --git a/docs/api/math/plane/constructor.md b/docs/api/math/plane/constructor.md deleted file mode 100644 index d62bdd8b..00000000 --- a/docs/api/math/plane/constructor.md +++ /dev/null @@ -1,35 +0,0 @@ -# Plane::Plane - -```cpp -Plane(const Vector3& normal, float distance) -``` - -从法线向量和距离值构造平面。输入的法线会自动归一化。 - -**参数:** -- `normal` - 平面法线向量(会被归一化) -- `distance` - 原点到平面的有符号距离 - -**返回:** 无(构造函数) - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -void ConstructorExample() { - Plane plane(Vector3::Up(), 0.0f); - Plane tiltedPlane(Vector3(1.0f, 1.0f, 0.0f), 5.0f); -} -``` - -## 相关文档 - -- [Plane 类总览](plane.md) - 返回类总览 diff --git a/docs/api/math/plane/frompoints.md b/docs/api/math/plane/frompoints.md deleted file mode 100644 index 0153fd8f..00000000 --- a/docs/api/math/plane/frompoints.md +++ /dev/null @@ -1,41 +0,0 @@ -# Plane::FromPoints - -```cpp -static Plane FromPoints(const Vector3& a, const Vector3& b, const Vector3& c) -``` - -从三个不共线点创建平面。平面法线通过叉积计算并归一化,距离为原点到平面的有符号距离。 - -**参数:** -- `a` - 第一个点 -- `b` - 第二个点 -- `c` - 第三个点 - -**返回:** `Plane` - 由三点定义的平面 - -**异常:** 如果三点共线,叉积结果为零向量,行为未定义。 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -void FromPointsExample() { - Vector3 p0(0.0f, 0.0f, 0.0f); - Vector3 p1(1.0f, 0.0f, 0.0f); - Vector3 p2(0.0f, 1.0f, 0.0f); - - Plane plane = Plane::FromPoints(p0, p1, p2); -} -``` - -## 相关文档 - -- [Plane 类总览](plane.md) - 返回类总览 diff --git a/docs/api/math/plane/getclosestpoint.md b/docs/api/math/plane/getclosestpoint.md deleted file mode 100644 index fb2cdd8c..00000000 --- a/docs/api/math/plane/getclosestpoint.md +++ /dev/null @@ -1,37 +0,0 @@ -# Plane::GetClosestPoint - -```cpp -Vector3 GetClosestPoint(const Vector3& point) const -``` - -计算平面上最接近给定点的点。通过将点沿平面法线方向投影到平面上得到。 - -**参数:** -- `point` - 参考点 - -**返回:** `Vector3` - 平面上最接近给定点的点 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -void GetClosestPointExample() { - Plane plane(Vector3::Up(), 0.0f); - - Vector3 point(5.0f, 10.0f, 0.0f); - Vector3 closest = plane.GetClosestPoint(point); -} -``` - -## 相关文档 - -- [Plane 类总览](plane.md) - 返回类总览 -- [GetDistanceToPoint](getdistancetopoint.md) - 计算有符号距离 diff --git a/docs/api/math/plane/getdistancetopoint.md b/docs/api/math/plane/getdistancetopoint.md deleted file mode 100644 index 5e5c9e5f..00000000 --- a/docs/api/math/plane/getdistancetopoint.md +++ /dev/null @@ -1,42 +0,0 @@ -# Plane::GetDistanceToPoint - -```cpp -float GetDistanceToPoint(const Vector3& point) const -``` - -计算点到平面的有符号距离。正值表示点在法线方向一侧,负值表示点在法线相反方向一侧,零值表示点在平面上。 - -**参数:** -- `point` - 要计算的点 - -**返回:** `float` - 点到平面的有符号距离 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include -#include - -using namespace XCEngine::Math; - -void GetDistanceToPointExample() { - Plane plane(Vector3::Up(), 0.0f); - - Vector3 point1(0.0f, 2.0f, 0.0f); - float dist1 = plane.GetDistanceToPoint(point1); - - Vector3 point2(0.0f, -3.0f, 0.0f); - float dist2 = plane.GetDistanceToPoint(point2); -} -``` - -## 相关文档 - -- [Plane 类总览](plane.md) - 返回类总览 -- [GetClosestPoint](getclosestpoint.md) - 计算平面上最接近点 -- [GetSide](getside.md) - 判断点在哪一侧 diff --git a/docs/api/math/plane/getside.md b/docs/api/math/plane/getside.md deleted file mode 100644 index cdcfd2de..00000000 --- a/docs/api/math/plane/getside.md +++ /dev/null @@ -1,42 +0,0 @@ -# Plane::GetSide - -```cpp -bool GetSide(const Vector3& point) const -``` - -判断点在平面的哪一侧。返回值 `true` 表示点在法线方向一侧,`false` 表示点在法线相反方向或平面上。 - -**参数:** -- `point` - 要测试的点 - -**返回:** `bool` - `true` 表示点在法线方向一侧,`false` 表示另一侧或平面上 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -void GetSideExample() { - Plane plane(Vector3::Up(), 0.0f); - - Vector3 pointOnNormalSide(0.0f, 1.0f, 0.0f); - if (plane.GetSide(pointOnNormalSide)) { - } - - Vector3 pointOnOppositeSide(0.0f, -1.0f, 0.0f); - if (!plane.GetSide(pointOnOppositeSide)) { - } -} -``` - -## 相关文档 - -- [Plane 类总览](plane.md) - 返回类总览 -- [GetDistanceToPoint](getdistancetopoint.md) - 计算有符号距离 diff --git a/docs/api/math/plane/intersects.md b/docs/api/math/plane/intersects.md deleted file mode 100644 index dfbf187b..00000000 --- a/docs/api/math/plane/intersects.md +++ /dev/null @@ -1,41 +0,0 @@ -# Plane::Intersects - -```cpp -bool Intersects(const Sphere& sphere) const -``` - -检测平面是否与球体相交。球体与平面相交的条件是:球心到平面的有符号距离的绝对值小于等于球体半径。 - -**参数:** -- `sphere` - 要检测的球体 - -**返回:** `bool` - `true` 表示相交,`false` 表示不相交 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include -#include - -using namespace XCEngine::Math; - -void IntersectsExample() { - Plane plane(Vector3::Up(), 0.0f); - - Sphere sphere1(Vector3(0.0f, 0.5f, 0.0f), 1.0f); - bool intersects1 = plane.Intersects(sphere1); - - Sphere sphere2(Vector3(0.0f, 5.0f, 0.0f), 1.0f); - bool intersects2 = plane.Intersects(sphere2); -} -``` - -## 相关文档 - -- [Plane 类总览](plane.md) - 返回类总览 -- [Sphere](../sphere/sphere.md) - 球体类 diff --git a/docs/api/math/plane/plane.md b/docs/api/math/plane/plane.md deleted file mode 100644 index decabc3a..00000000 --- a/docs/api/math/plane/plane.md +++ /dev/null @@ -1,64 +0,0 @@ -# Plane - -**命名空间**: `XCEngine::Math` - -**类型**: `struct` - -**头文件**: `XCEngine/Core/Math/Plane.h` - -**描述**: 平面,用于 3D 空间中的平面表示和相交测试 - -## 概述 - -`Plane` 结构体用于表示 3D 空间中的平面,通过法线向量(normal)和距离值(distance)定义。平面方程为 `dot(normal, point) + distance = 0`。常用于碰撞检测、视锥体裁剪、射线投射等图形学基础运算。 - -默认构造创建一个朝上(y 轴正方向)的单位平面。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| `normal` | `Vector3` | 平面法线向量 | `Vector3::Up()` | -| `distance` | `float` | 原点到平面的有符号距离 | `0.0f` | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Plane()`](constructor-default.md) | 默认构造函数,创建 y=0 平面 | -| [`Plane(normal, distance)`](constructor.md) | 从法线和距离构造平面 | -| [`FromPoints`](frompoints.md) | 从三个不共线点创建平面 | -| [`GetDistanceToPoint`](getdistancetopoint.md) | 计算点到平面的有符号距离 | -| [`GetClosestPoint`](getclosestpoint.md) | 计算平面上最接近给定点的点 | -| [`GetSide`](getside.md) | 判断点在平面的哪一侧 | -| [`Intersects`](intersects.md) | 检测与球体是否相交 | - -## 使用示例 - -```cpp -#include -#include -#include - -using namespace XCEngine::Math; - -void PlaneExample() { - Plane plane(Vector3::Up(), 0.0f); - - Vector3 point(1.0f, 2.0f, 0.0f); - float dist = plane.GetDistanceToPoint(point); - - Vector3 closest = plane.GetClosestPoint(point); - - bool onNormalSide = plane.GetSide(point); - - Sphere sphere(Vector3(1.0f, 0.5f, 0.0f), 1.0f); - bool intersects = plane.Intersects(sphere); -} -``` - -## 相关文档 - -- [Math 模块总览](../math.md) - Math 模块总览 -- [Sphere](../sphere/sphere.md) - 球体 -- [Vector3](../vector3/vector3.md) - 三维向量 diff --git a/docs/api/math/quaternion/dot.md b/docs/api/math/quaternion/dot.md deleted file mode 100644 index 984f6f21..00000000 --- a/docs/api/math/quaternion/dot.md +++ /dev/null @@ -1,34 +0,0 @@ -# Quaternion::Dot - -```cpp -float Dot(const Quaternion& other) const; -``` - -计算两个四元数的点积(各分量相乘后求和)。 - -**参数:** -- `other` - 另一个四元数 - -**返回:** 点积结果 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Math; - -Quaternion q1 = Quaternion::Identity(); -Quaternion q2 = Quaternion::FromAxisAngle(Vector3::Up(), Math::Radians(90.0f)); - -float dot = q1.Dot(q2); -``` - -## 相关文档 - -- [Quaternion](quaternion.md) - 返回类总览 -- [Magnitude](magnitude.md) - 求模长 diff --git a/docs/api/math/quaternion/from-axis-angle.md b/docs/api/math/quaternion/from-axis-angle.md deleted file mode 100644 index 73859b4b..00000000 --- a/docs/api/math/quaternion/from-axis-angle.md +++ /dev/null @@ -1,35 +0,0 @@ -# Quaternion::FromAxisAngle - -```cpp -static Quaternion FromAxisAngle(const Vector3& axis, float radians); -``` - -从轴角表示创建四元数。使用半角公式进行转换。 - -**参数:** -- `axis` - 旋转轴(会被归一化) -- `radians` - 旋转角度(弧度) - -**返回:** 表示该旋转的四元数 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include -#include - -using namespace XCEngine::Math; - -Quaternion q = Quaternion::FromAxisAngle(Vector3::Up(), Math::Radians(90.0f)); -``` - -## 相关文档 - -- [Quaternion](quaternion.md) - 返回类总览 -- [FromEulerAngles](from-euler-angles.md) - 从欧拉角创建 -- [LookRotation](look-rotation.md) - 创建看向目标的旋转 diff --git a/docs/api/math/quaternion/from-euler-angles.md b/docs/api/math/quaternion/from-euler-angles.md deleted file mode 100644 index 4e7293ab..00000000 --- a/docs/api/math/quaternion/from-euler-angles.md +++ /dev/null @@ -1,44 +0,0 @@ -# Quaternion::FromEulerAngles - -```cpp -static Quaternion FromEulerAngles(float pitch, float yaw, float roll); -static Quaternion FromEulerAngles(const Vector3& euler); -``` - -从欧拉角创建四元数。使用 YXZ 顺序(先绕 Y 轴 yaw,再绕 X 轴 pitch,最后绕 Z 轴 roll)。 - -**参数:** -- `pitch` - 绕 X 轴旋转角度(弧度) -- `yaw` - 绕 Y 轴旋转角度(弧度) -- `roll` - 绕 Z 轴旋转角度(弧度) -- `euler` - 欧拉角向量 (pitch, yaw, roll) - -**返回:** 表示该旋转的四元数 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include -#include - -using namespace XCEngine::Math; - -Quaternion q1 = Quaternion::FromEulerAngles( - Math::Radians(45.0f), - Math::Radians(30.0f), - Math::Radians(60.0f) -); - -Quaternion q2 = Quaternion::FromEulerAngles(Vector3(45, 30, 60) * DEG_TO_RAD); -``` - -## 相关文档 - -- [Quaternion](quaternion.md) - 返回类总览 -- [FromAxisAngle](from-axis-angle.md) - 从轴角创建 -- [ToEulerAngles](to-euler-angles.md) - 转换为欧拉角 diff --git a/docs/api/math/quaternion/from-rotation-matrix.md b/docs/api/math/quaternion/from-rotation-matrix.md deleted file mode 100644 index e2a0c063..00000000 --- a/docs/api/math/quaternion/from-rotation-matrix.md +++ /dev/null @@ -1,37 +0,0 @@ -# Quaternion::FromRotationMatrix - -```cpp -static Quaternion FromRotationMatrix(const Matrix4x4& matrix); -``` - -从 4x4 旋转矩阵创建四元数。矩阵必须是正交矩阵且行列式为 1。 - -**参数:** -- `matrix` - 旋转矩阵 - -**返回:** 对应的四元数 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Matrix4 rotMatrix; -rotMatrix.m[0][0] = 1; rotMatrix.m[0][1] = 0; rotMatrix.m[0][2] = 0; -rotMatrix.m[1][0] = 0; rotMatrix.m[1][1] = 0; rotMatrix.m[1][2] = -1; -rotMatrix.m[2][0] = 0; rotMatrix.m[2][1] = 1; rotMatrix.m[2][2] = 0; - -Quaternion q = Quaternion::FromRotationMatrix(rotMatrix); -``` - -## 相关文档 - -- [Quaternion](quaternion.md) - 返回类总览 -- [ToMatrix4x4](to-matrix4x4.md) - 转换为矩阵 diff --git a/docs/api/math/quaternion/identity.md b/docs/api/math/quaternion/identity.md deleted file mode 100644 index 13c17041..00000000 --- a/docs/api/math/quaternion/identity.md +++ /dev/null @@ -1,28 +0,0 @@ -# Quaternion::Identity - -```cpp -static Quaternion Identity(); -``` - -返回单位四元数 (0, 0, 0, 1),表示无旋转。 - -**返回:** 单位四元数 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Math; - -Quaternion identity = Quaternion::Identity(); -// identity = (0, 0, 0, 1) -``` - -## 相关文档 - -- [Quaternion](quaternion.md) - 返回类总览 diff --git a/docs/api/math/quaternion/inverse.md b/docs/api/math/quaternion/inverse.md deleted file mode 100644 index 882f47fe..00000000 --- a/docs/api/math/quaternion/inverse.md +++ /dev/null @@ -1,31 +0,0 @@ -# Quaternion::Inverse - -```cpp -Quaternion Inverse() const; -``` - -求四元数的逆。如果四元数已归一化,逆等于共轭。 - -**返回:** 四元数的逆 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Math; - -Quaternion q = Quaternion::FromAxisAngle(Vector3::Up(), Math::Radians(90.0f)); -Quaternion inv = q.Inverse(); - -Quaternion identity = q * inv; -``` - -## 相关文档 - -- [Quaternion](quaternion.md) - 返回类总览 -- [Normalized](normalized.md) - 归一化四元数 diff --git a/docs/api/math/quaternion/look-rotation.md b/docs/api/math/quaternion/look-rotation.md deleted file mode 100644 index 422e8f57..00000000 --- a/docs/api/math/quaternion/look-rotation.md +++ /dev/null @@ -1,33 +0,0 @@ -# Quaternion::LookRotation - -```cpp -static Quaternion LookRotation(const Vector3& forward, const Vector3& up = Vector3::Up()); -``` - -创建使 forward 方向朝向目标的旋转四元数。 - -**参数:** -- `forward` - 前向方向(会被归一化) -- `up` - 向上方向,默认为 Y 轴正方向 - -**返回:** 使 forward 朝向目标的旋转四元数 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Quaternion q = Quaternion::LookRotation(Vector3(1, 0, 0)); -``` - -## 相关文档 - -- [Quaternion](quaternion.md) - 返回类总览 -- [FromAxisAngle](from-axis-angle.md) - 从轴角创建 diff --git a/docs/api/math/quaternion/magnitude.md b/docs/api/math/quaternion/magnitude.md deleted file mode 100644 index 4aa6f030..00000000 --- a/docs/api/math/quaternion/magnitude.md +++ /dev/null @@ -1,30 +0,0 @@ -# Quaternion::Magnitude - -```cpp -float Magnitude() const; -``` - -计算四元数的模长(欧几里得范数)。 - -**返回:** 四元数的模长 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Math; - -Quaternion q = Quaternion::FromAxisAngle(Vector3::Up(), Math::Radians(90.0f)); -float mag = q.Magnitude(); -``` - -## 相关文档 - -- [Quaternion](quaternion.md) - 返回类总览 -- [Normalized](normalized.md) - 返回归一化四元数 -- [Dot](dot.md) - 点积 diff --git a/docs/api/math/quaternion/normalize.md b/docs/api/math/quaternion/normalize.md deleted file mode 100644 index de246118..00000000 --- a/docs/api/math/quaternion/normalize.md +++ /dev/null @@ -1,32 +0,0 @@ -# Quaternion::Normalize - -```cpp -static Quaternion Normalize(const Quaternion& q); -``` - -静态归一化方法,返回给定四元数的归一化副本。如果模长接近 0,返回单位四元数。 - -**参数:** -- `q` - 要归一化的四元数 - -**返回:** 归一化后的四元数 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Math; - -Quaternion q = Quaternion::FromAxisAngle(Vector3::Up(), Math::Radians(90.0f)); -Quaternion normalized = Quaternion::Normalize(q); -``` - -## 相关文档 - -- [Quaternion](quaternion.md) - 返回类总览 -- [Normalized](normalized.md) - 实例归一化方法 diff --git a/docs/api/math/quaternion/normalized.md b/docs/api/math/quaternion/normalized.md deleted file mode 100644 index 752e856e..00000000 --- a/docs/api/math/quaternion/normalized.md +++ /dev/null @@ -1,30 +0,0 @@ -# Quaternion::Normalized - -```cpp -Quaternion Normalized() const; -``` - -返回归一化(单位化)后的四元数。如果模长接近 0,返回单位四元数。 - -**返回:** 归一化后的四元数 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Math; - -Quaternion q = Quaternion::FromAxisAngle(Vector3::Up(), Math::Radians(90.0f)); -Quaternion normalized = q.Normalized(); -``` - -## 相关文档 - -- [Quaternion](quaternion.md) - 返回类总览 -- [Normalize](normalize.md) - 静态归一化方法 -- [Magnitude](magnitude.md) - 求模长 diff --git a/docs/api/math/quaternion/operator-mul.md b/docs/api/math/quaternion/operator-mul.md deleted file mode 100644 index 4f5629bd..00000000 --- a/docs/api/math/quaternion/operator-mul.md +++ /dev/null @@ -1,40 +0,0 @@ -# Quaternion::operator* - -```cpp -Quaternion operator*(const Quaternion& other) const; -Vector3 operator*(const Quaternion& q, const Vector3& v); -``` - -四元数乘法运算符。 - -**成员函数版本(四元数 * 四元数):** -- `other` - 另一个四元数 -- **返回:** 组合旋转后的四元数 - -**全局函数版本(四元数 * 向量):** -- `q` - 四元数 -- `v` - 要旋转的三维向量 -- **返回:** 旋转后的向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Quaternion q1 = Quaternion::FromAxisAngle(Vector3::Up(), Math::Radians(90.0f)); -Quaternion q2 = Quaternion::FromAxisAngle(Vector3::Right(), Math::Radians(90.0f)); - -Quaternion combined = q1 * q2; -Vector3 rotated = q1 * Vector3::Forward(); -``` - -## 相关文档 - -- [Quaternion](quaternion.md) - 返回类总览 diff --git a/docs/api/math/quaternion/quaternion.md b/docs/api/math/quaternion/quaternion.md deleted file mode 100644 index 001b1e1c..00000000 --- a/docs/api/math/quaternion/quaternion.md +++ /dev/null @@ -1,72 +0,0 @@ -# Quaternion - -**命名空间**: `XCEngine::Math` - -**类型**: `struct` - -**头文件**: `XCEngine/Core/Math/Quaternion.h` - -**描述**: 四元数,用于表示三维旋转 - -## 概述 - -Quaternion 提供了一套完整的三维旋转表示和操作方法。四元数可以避免欧拉角的万向节锁问题,并提供平滑的旋转插值(Slerp)。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| `x` | `float` | X 分量 | `0.0f` | -| `y` | `float` | Y 分量 | `0.0f` | -| `z` | `float` | Z 分量 | `0.0f` | -| `w` | `float` | W 分量(标量部分) | `1.0f` | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Identity`](identity.md) | 返回单位四元数 | -| [`FromAxisAngle`](from-axis-angle.md) | 从轴角创建四元数 | -| [`FromEulerAngles`](from-euler-angles.md) | 从欧拉角创建四元数 | -| [`FromRotationMatrix`](from-rotation-matrix.md) | 从旋转矩阵创建四元数 | -| [`Slerp`](slerp.md) | 球面线性插值 | -| [`LookRotation`](look-rotation.md) | 创建看向目标的旋转 | -| [`ToEulerAngles`](to-euler-angles.md) | 转换为欧拉角 | -| [`ToMatrix4x4`](to-matrix4x4.md) | 转换为 4x4 矩阵 | -| [`operator*`](operator-mul.md) | 四元数乘法 | -| [`Inverse`](inverse.md) | 求四元数逆 | -| [`Dot`](dot.md) | 点积 | -| [`Magnitude`](magnitude.md) | 求模长 | -| [`Normalized`](normalized.md) | 返回归一化四元数 | -| [`Normalize`](normalize.md) | 归一化四元数(静态) | - -## 使用示例 - -```cpp -#include -#include -#include - -using namespace XCEngine::Math; - -// 从欧拉角创建 -Quaternion q1 = Quaternion::FromEulerAngles(0, Math::Radians(90.0f), 0); - -// 从轴角创建 -Quaternion q2 = Quaternion::FromAxisAngle(Vector3::Up(), Math::Radians(45.0f)); - -// 组合旋转 -Quaternion combined = q1 * q2; - -// 旋转向量 -Vector3 rotated = q2 * Vector3::Forward(); - -// 球面插值 -Quaternion result = Quaternion::Slerp(q1, q2, 0.5f); -``` - -## 相关文档 - -- [Math 模块总览](../math.md) - Math 模块概览 -- [Vector3](../vector3/vector3.md) - 三维向量 -- [Matrix4](../matrix4/matrix4.md) - 4x4 矩阵 diff --git a/docs/api/math/quaternion/slerp.md b/docs/api/math/quaternion/slerp.md deleted file mode 100644 index de582d03..00000000 --- a/docs/api/math/quaternion/slerp.md +++ /dev/null @@ -1,38 +0,0 @@ -# Quaternion::Slerp - -```cpp -static Quaternion Slerp(const Quaternion& a, const Quaternion& b, float t); -``` - -球面线性插值,在两个四元数之间进行平滑旋转插值。参数 t 会被 clamp 到 [0, 1] 范围。 - -**参数:** -- `a` - 起始四元数 -- `b` - 目标四元数 -- `t` - 插值参数 [0, 1],0 返回 a,1 返回 b - -**返回:** 插值结果四元数 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include -#include - -using namespace XCEngine::Math; - -Quaternion q1 = Quaternion::FromAxisAngle(Vector3::Up(), 0); -Quaternion q2 = Quaternion::FromAxisAngle(Vector3::Up(), Math::Radians(180.0f)); - -Quaternion result = Quaternion::Slerp(q1, q2, 0.5f); -``` - -## 相关文档 - -- [Quaternion](quaternion.md) - 返回类总览 -- [Normalized](normalized.md) - 归一化四元数 diff --git a/docs/api/math/quaternion/to-euler-angles.md b/docs/api/math/quaternion/to-euler-angles.md deleted file mode 100644 index fc40a543..00000000 --- a/docs/api/math/quaternion/to-euler-angles.md +++ /dev/null @@ -1,37 +0,0 @@ -# Quaternion::ToEulerAngles - -```cpp -Vector3 ToEulerAngles() const; -``` - -将四元数转换为欧拉角。返回顺序为 (pitch, yaw, roll),单位为弧度。 - -**返回:** 欧拉角向量 (pitch, yaw, roll),单位为弧度 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include -#include - -using namespace XCEngine::Math; - -Quaternion q = Quaternion::FromEulerAngles( - Math::Radians(45.0f), - Math::Radians(30.0f), - Math::Radians(60.0f) -); - -Vector3 euler = q.ToEulerAngles(); -// euler.x ≈ 45°, euler.y ≈ 30°, euler.z ≈ 60° -``` - -## 相关文档 - -- [Quaternion](quaternion.md) - 返回类总览 -- [FromEulerAngles](from-euler-angles.md) - 从欧拉角创建 diff --git a/docs/api/math/quaternion/to-matrix4x4.md b/docs/api/math/quaternion/to-matrix4x4.md deleted file mode 100644 index c1bb51c8..00000000 --- a/docs/api/math/quaternion/to-matrix4x4.md +++ /dev/null @@ -1,30 +0,0 @@ -# Quaternion::ToMatrix4x4 - -```cpp -Matrix4x4 ToMatrix4x4() const; -``` - -将四元数转换为 4x4 旋转矩阵。 - -**返回:** 4x4 旋转矩阵 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Quaternion q = Quaternion::FromAxisAngle(Vector3::Up(), Math::Radians(90.0f)); -Matrix4 m = q.ToMatrix4x4(); -``` - -## 相关文档 - -- [Quaternion](quaternion.md) - 返回类总览 -- [FromRotationMatrix](from-rotation-matrix.md) - 从矩阵创建 diff --git a/docs/api/math/ray/getpoint.md b/docs/api/math/ray/getpoint.md deleted file mode 100644 index 9cdb5de7..00000000 --- a/docs/api/math/ray/getpoint.md +++ /dev/null @@ -1,32 +0,0 @@ -# Ray::GetPoint - -```cpp -Vector3 GetPoint(float t) const -``` - -获取射线上指定参数距离处的点。计算公式:`origin + direction * t` - -**参数:** -- `t` - 沿射线方向的参数距离 - -**返回:** `Vector3` - 射线上的点 `origin + direction * t` - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Ray ray(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 0.0f, 0.0f)); -Vector3 point = ray.GetPoint(100.0f); // point = (100, 0, 0) -``` - -## 相关文档 - -- [Ray 类总览](ray.md) - 返回类总览 diff --git a/docs/api/math/ray/intersects-box.md b/docs/api/math/ray/intersects-box.md deleted file mode 100644 index d2448ba6..00000000 --- a/docs/api/math/ray/intersects-box.md +++ /dev/null @@ -1,41 +0,0 @@ -# Ray::Intersects (box) - -```cpp -bool Intersects(const Box& box, float& t) const -``` - -检测射线是否与有向包围盒(OBB)相交。使用 slabs 方法计算交点。 - -**参数:** -- `box` - 要检测的有向包围盒(OBB) -- `t` - 输出交点的参数距离(仅在返回 true 时有效) - -**返回:** `bool` - 相交返回 true,否则返回 false - -**线程安全:** ✅ - -**复杂度:** O(1) - -**异常:** 无 - -**示例:** - -```cpp -#include -#include -#include - -using namespace XCEngine::Math; - -Ray ray(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 0.0f, 0.0f)); -Box box(Vector3(10.0f, 0.0f, 0.0f), Vector3(1.0f, 1.0f, 1.0f)); -float t; -if (ray.Intersects(box, t)) { - Vector3 hitPoint = ray.GetPoint(t); -} -``` - -## 相关文档 - -- [Ray 类总览](ray.md) - 返回类总览 -- [Box](../box/box.md) - 包围盒类型 diff --git a/docs/api/math/ray/intersects-plane.md b/docs/api/math/ray/intersects-plane.md deleted file mode 100644 index 55c22e26..00000000 --- a/docs/api/math/ray/intersects-plane.md +++ /dev/null @@ -1,41 +0,0 @@ -# Ray::Intersects (plane) - -```cpp -bool Intersects(const Plane& plane, float& t) const -``` - -检测射线是否与平面相交。通过计算射线与平面法线的点积判断平行,通过求交公式计算交点。 - -**参数:** -- `plane` - 要检测的平面 -- `t` - 输出交点的参数距离(仅在返回 true 时有效) - -**返回:** `bool` - 相交返回 true(t >= 0),否则返回 false - -**线程安全:** ✅ - -**复杂度:** O(1) - -**异常:** 无 - -**示例:** - -```cpp -#include -#include -#include - -using namespace XCEngine::Math; - -Ray ray(Vector3(0.0f, 1.0f, 0.0f), Vector3(0.0f, -1.0f, 0.0f)); -Plane groundPlane(Vector3(0.0f, 1.0f, 0.0f), 0.0f); -float t; -if (ray.Intersects(groundPlane, t)) { - Vector3 hitPoint = ray.GetPoint(t); -} -``` - -## 相关文档 - -- [Ray 类总览](ray.md) - 返回类总览 -- [Plane](../plane/plane.md) - 平面类型 diff --git a/docs/api/math/ray/intersects-sphere.md b/docs/api/math/ray/intersects-sphere.md deleted file mode 100644 index e0a69d7a..00000000 --- a/docs/api/math/ray/intersects-sphere.md +++ /dev/null @@ -1,41 +0,0 @@ -# Ray::Intersects (sphere) - -```cpp -bool Intersects(const Sphere& sphere, float& t) const -``` - -检测射线是否与球体相交。使用二次方程求根法计算交点。 - -**参数:** -- `sphere` - 要检测的球体 -- `t` - 输出最近交点的参数距离(仅在返回 true 时有效,若射线在球体内部则输出最近的出口点) - -**返回:** `bool` - 相交返回 true,否则返回 false - -**线程安全:** ✅ - -**复杂度:** O(1) - -**异常:** 无 - -**示例:** - -```cpp -#include -#include -#include - -using namespace XCEngine::Math; - -Ray ray(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 0.0f, 0.0f)); -Sphere sphere(Vector3(10.0f, 0.0f, 0.0f), 1.0f); -float t; -if (ray.Intersects(sphere, t)) { - Vector3 hitPoint = ray.GetPoint(t); -} -``` - -## 相关文档 - -- [Ray 类总览](ray.md) - 返回类总览 -- [Sphere](../sphere/sphere.md) - 球体类型 diff --git a/docs/api/math/ray/ray-constructor-default.md b/docs/api/math/ray/ray-constructor-default.md deleted file mode 100644 index fd5b4e42..00000000 --- a/docs/api/math/ray/ray-constructor-default.md +++ /dev/null @@ -1,27 +0,0 @@ -# Ray::Ray (默认构造函数) - -```cpp -Ray() = default -``` - -默认构造函数,使用默认方式构造射线。 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Math; - -Ray ray; // 未初始化状态 -``` - -## 相关文档 - -- [Ray 类总览](ray.md) - 返回类总览 diff --git a/docs/api/math/ray/ray-constructor.md b/docs/api/math/ray/ray-constructor.md deleted file mode 100644 index 25bc56b6..00000000 --- a/docs/api/math/ray/ray-constructor.md +++ /dev/null @@ -1,33 +0,0 @@ -# Ray::Ray (构造函数) - -```cpp -Ray(const Vector3& origin, const Vector3& direction) -``` - -从起点和方向构造射线。 - -**参数:** -- `origin` - 射线起点 -- `direction` - 射线方向(构造时会被归一化) - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Ray ray(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 0.0f, 0.0f)); -// direction 已被归一化 -``` - -## 相关文档 - -- [Ray 类总览](ray.md) - 返回类总览 diff --git a/docs/api/math/ray/ray.md b/docs/api/math/ray/ray.md deleted file mode 100644 index 6ca78386..00000000 --- a/docs/api/math/ray/ray.md +++ /dev/null @@ -1,60 +0,0 @@ -# Ray - -**命名空间**: `XCEngine::Math` - -**类型**: `struct` - -**头文件**: `XCEngine/Core/Math/Ray.h` - -**描述**: 射线,用于 3D 拾取和光线追踪 - -## 概述 - -`Ray` 表示从原点出发沿特定方向延伸的无限射线。通过 `direction` 方向的归一化,确保射线方向向量为单位长度,支持精确的交点计算。广泛应用于光线追踪、碰撞拾取和视锥体裁剪等图形学场景。 - -**注意**:构造时 `direction` 会被自动归一化。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | -|------|------|------| -| `origin` | `Vector3` | 射线起点 | -| `direction` | `Vector3` | 射线方向(归一化) | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Ray()`](ray-constructor-default.md) | 默认构造函数 | -| [`Ray(origin, direction)`](ray-constructor.md) | 从起点和方向构造(direction 会被自动归一化) | -| [`GetPoint`](getpoint.md) | 获取射线上 t 距离处的点 | -| [`Intersects`](intersects-sphere.md) | 与球体相交检测 | -| [`Intersects`](intersects-box.md) | 与有向包围盒相交检测 | -| [`Intersects`](intersects-plane.md) | 与平面相交检测 | - -## 使用示例 - -```cpp -#include -#include -#include - -using namespace XCEngine::Math; - -Ray ray(Vector3(0.0f, 0.0f, 0.0f), Vector3(1.0f, 0.0f, 0.0f)); -Vector3 point = ray.GetPoint(5.0f); // point = (5, 0, 0) - -Sphere sphere(Vector3(10.0f, 0.0f, 0.0f), 1.0f); -float t; -if (ray.Intersects(sphere, t)) { - Vector3 hitPoint = ray.GetPoint(t); -} -``` - -## 相关文档 - -- [Math 模块总览](../math.md) - Math 模块总览 -- [Vector3](../vector3/vector3.md) - 方向和点类型 -- [Sphere](../sphere/sphere.md) - 球体类型 -- [Box](../box/box.md) - 包围盒类型 -- [Plane](../plane/plane.md) - 平面类型 diff --git a/docs/api/math/rect/contains-float.md b/docs/api/math/rect/contains-float.md deleted file mode 100644 index 74a5f3c8..00000000 --- a/docs/api/math/rect/contains-float.md +++ /dev/null @@ -1,24 +0,0 @@ -# Rect::Contains (float) - -```cpp -bool Contains(float px, float py) const -``` - -检测浮点坐标点是否在矩形内。 - -**参数:** -- `px` - 点的 x 坐标 -- `py` - 点的 y 坐标 - -**返回:** `bool` - 点在矩形内(左上边界包含,右下边界不含)返回 true - -**复杂度:** O(1) - -**示例:** - -```cpp -Rect screenRect(0.0f, 0.0f, 1920.0f, 1080.0f); -if (screenRect.Contains(mouseX, mouseY)) { - // 鼠标在屏幕矩形内 -} -``` diff --git a/docs/api/math/rect/contains-vector2.md b/docs/api/math/rect/contains-vector2.md deleted file mode 100644 index cb17ba19..00000000 --- a/docs/api/math/rect/contains-vector2.md +++ /dev/null @@ -1,24 +0,0 @@ -# Rect::Contains (Vector2) - -```cpp -bool Contains(const Vector2& point) const -``` - -检测 Vector2 点是否在矩形内。 - -**参数:** -- `point` - 要检测的二维点 - -**返回:** `bool` - 点在矩形内(左上边界包含,右下边界不含)返回 true - -**复杂度:** O(1) - -**示例:** - -```cpp -Rect rect(0.0f, 0.0f, 100.0f, 100.0f); -Vector2 point(50.0f, 50.0f); -if (rect.Contains(point)) { - // 点在矩形内 -} -``` diff --git a/docs/api/math/rect/contains.md b/docs/api/math/rect/contains.md deleted file mode 100644 index 468c31a1..00000000 --- a/docs/api/math/rect/contains.md +++ /dev/null @@ -1,50 +0,0 @@ -# Rect::Contains - -判断点是否在矩形内部。 - -```cpp -bool Contains(float px, float py) const; -bool Contains(const Vector2& point) const; -``` - -矩形使用左上位坐标系,内部定义为:x >= left && x < right && y >= top && y < bottom。即左边界和上边界在内部,右边界和下边界在外部。 - -**参数:** -- `px` - 点的 x 坐标 -- `py` - 点的 y 坐标 -- `point` - 要判断的点(Vector2 类型) - -**返回:** 点在矩形内部返回 true,否则返回 false - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Rect.h" -#include - -using namespace XCEngine::Math; - -int main() { - Rect rect(10.0f, 20.0f, 100.0f, 50.0f); - - if (rect.Contains(50.0f, 30.0f)) { - std::cout << "Point (50, 30) is inside\n"; - } - - Vector2 point(150.0f, 100.0f); - if (!rect.Contains(point)) { - std::cout << "Point (150, 100) is outside\n"; - } - - return 0; -} -``` - -## 相关文档 - -- [`Rect::Intersects`](intersects.md) - 判断是否相交 -- [Rect 总览](rect.md) \ No newline at end of file diff --git a/docs/api/math/rect/getbottom.md b/docs/api/math/rect/getbottom.md deleted file mode 100644 index 090fe948..00000000 --- a/docs/api/math/rect/getbottom.md +++ /dev/null @@ -1,18 +0,0 @@ -# Rect::GetBottom - -```cpp -float GetBottom() const -``` - -获取矩形下边界。 - -**返回:** `float` - 下边界坐标 (y + height) - -**复杂度:** O(1) - -**示例:** - -```cpp -Rect rect(10.0f, 20.0f, 100.0f, 50.0f); -float bottom = rect.GetBottom(); // 70.0f -``` diff --git a/docs/api/math/rect/getcenter.md b/docs/api/math/rect/getcenter.md deleted file mode 100644 index 7c31bb50..00000000 --- a/docs/api/math/rect/getcenter.md +++ /dev/null @@ -1,18 +0,0 @@ -# Rect::GetCenter - -```cpp -Vector2 GetCenter() const -``` - -获取矩形中心点。 - -**返回:** `Vector2` - 中心点坐标 - -**复杂度:** O(1) - -**示例:** - -```cpp -Rect rect(10.0f, 20.0f, 100.0f, 50.0f); -Vector2 center = rect.GetCenter(); // (60.0f, 45.0f) -``` diff --git a/docs/api/math/rect/getleft.md b/docs/api/math/rect/getleft.md deleted file mode 100644 index 0c7ec2e5..00000000 --- a/docs/api/math/rect/getleft.md +++ /dev/null @@ -1,18 +0,0 @@ -# Rect::GetLeft - -```cpp -float GetLeft() const -``` - -获取矩形左边界。 - -**返回:** `float` - 左边界坐标 (x) - -**复杂度:** O(1) - -**示例:** - -```cpp -Rect rect(10.0f, 20.0f, 100.0f, 50.0f); -float left = rect.GetLeft(); // 10.0f -``` diff --git a/docs/api/math/rect/getposition.md b/docs/api/math/rect/getposition.md deleted file mode 100644 index 09fa66b5..00000000 --- a/docs/api/math/rect/getposition.md +++ /dev/null @@ -1,18 +0,0 @@ -# Rect::GetPosition - -```cpp -Vector2 GetPosition() const -``` - -获取矩形左上角位置。 - -**返回:** `Vector2` - 位置向量 (x, y) - -**复杂度:** O(1) - -**示例:** - -```cpp -Rect rect(10.0f, 20.0f, 100.0f, 50.0f); -Vector2 pos = rect.GetPosition(); // (10.0f, 20.0f) -``` diff --git a/docs/api/math/rect/getright.md b/docs/api/math/rect/getright.md deleted file mode 100644 index f856094b..00000000 --- a/docs/api/math/rect/getright.md +++ /dev/null @@ -1,18 +0,0 @@ -# Rect::GetRight - -```cpp -float GetRight() const -``` - -获取矩形右边界。 - -**返回:** `float` - 右边界坐标 (x + width) - -**复杂度:** O(1) - -**示例:** - -```cpp -Rect rect(10.0f, 20.0f, 100.0f, 50.0f); -float right = rect.GetRight(); // 110.0f -``` diff --git a/docs/api/math/rect/getsize.md b/docs/api/math/rect/getsize.md deleted file mode 100644 index 76ff5223..00000000 --- a/docs/api/math/rect/getsize.md +++ /dev/null @@ -1,18 +0,0 @@ -# Rect::GetSize - -```cpp -Vector2 GetSize() const -``` - -获取矩形尺寸。 - -**返回:** `Vector2` - 尺寸向量 (width, height) - -**复杂度:** O(1) - -**示例:** - -```cpp -Rect rect(10.0f, 20.0f, 100.0f, 50.0f); -Vector2 size = rect.GetSize(); // (100.0f, 50.0f) -``` diff --git a/docs/api/math/rect/gettop.md b/docs/api/math/rect/gettop.md deleted file mode 100644 index 93a370f9..00000000 --- a/docs/api/math/rect/gettop.md +++ /dev/null @@ -1,18 +0,0 @@ -# Rect::GetTop - -```cpp -float GetTop() const -``` - -获取矩形上边界。 - -**返回:** `float` - 上边界坐标 (y) - -**复杂度:** O(1) - -**示例:** - -```cpp -Rect rect(10.0f, 20.0f, 100.0f, 50.0f); -float top = rect.GetTop(); // 20.0f -``` diff --git a/docs/api/math/rect/intersect.md b/docs/api/math/rect/intersect.md deleted file mode 100644 index f3574fe1..00000000 --- a/docs/api/math/rect/intersect.md +++ /dev/null @@ -1,23 +0,0 @@ -# Rect::Intersect - -```cpp -static Rect Intersect(const Rect& a, const Rect& b) -``` - -计算两矩形的交集区域。 - -**参数:** -- `a` - 第一个矩形 -- `b` - 第二个矩形 - -**返回:** `Rect` - 两矩形的交集,若无交集则返回零尺寸矩形 - -**复杂度:** O(1) - -**示例:** - -```cpp -Rect rectA(0.0f, 0.0f, 100.0f, 100.0f); -Rect rectB(50.0f, 50.0f, 100.0f, 100.0f); -Rect overlap = Rect::Intersect(rectA, rectB); // (50, 50, 50, 50) -``` diff --git a/docs/api/math/rect/intersects.md b/docs/api/math/rect/intersects.md deleted file mode 100644 index ffa50098..00000000 --- a/docs/api/math/rect/intersects.md +++ /dev/null @@ -1,24 +0,0 @@ -# Rect::Intersects - -```cpp -bool Intersects(const Rect& other) const -``` - -检测两矩形是否相交。 - -**参数:** -- `other` - 另一个矩形 - -**返回:** `bool` - 两矩形相交返回 true - -**复杂度:** O(1) - -**示例:** - -```cpp -Rect rectA(0.0f, 0.0f, 100.0f, 100.0f); -Rect rectB(50.0f, 50.0f, 100.0f, 100.0f); -if (rectA.Intersects(rectB)) { - // 两矩形相交 -} -``` diff --git a/docs/api/math/rect/rect-overview.md b/docs/api/math/rect/rect-overview.md deleted file mode 100644 index 7969038a..00000000 --- a/docs/api/math/rect/rect-overview.md +++ /dev/null @@ -1,69 +0,0 @@ -# Rect - -浮点矩形结构体,用于 2D 区域表示。 - -**头文件:** `#include ` - -**命名空间:** `XCEngine::Math` - -## 结构体定义 - -```cpp -struct Rect { - float x = 0.0f; // 左边界 - float y = 0.0f; // 上边界 - float width = 0.0f; - float height = 0.0f; - - Rect() = default; - Rect(float x, float y, float w, float h) : x(x), y(y), width(w), height(h) {} -}; -``` - -## 构造函数 - -| 方法 | 描述 | -|------|------| -| `Rect()` | 默认构造,初始化为零 | -| `Rect(x, y, w, h)` | 从坐标和尺寸构造 | - -## 边界访问 - -| 方法 | 返回值 | 描述 | -|------|--------|------| -| [GetLeft()](getleft.md) | `float` | 左边界 (x) | -| [GetRight()](getright.md) | `float` | 右边界 (x + width) | -| [GetTop()](gettop.md) | `float` | 上边界 (y) | -| [GetBottom()](getbottom.md) | `float` | 下边界 (y + height) | -| [GetPosition()](getposition.md) | `Vector2` | 左上角位置 (x, y) | -| [GetSize()](getsize.md) | `Vector2` | 尺寸 (width, height) | -| [GetCenter()](getcenter.md) | `Vector2` | 中心点 | - -## 检测方法 - -| 方法 | 返回值 | 描述 | -|------|--------|------| -| [Contains(px, py)](contains-float.md) | `bool` | 浮点坐标点检测 | -| [Contains(point)](contains-vector2.md) | `bool` | Vector2 点检测 | -| [Intersects(other)](intersects.md) | `bool` | 与另一矩形相交 | - -## 静态方法 - -| 方法 | 返回值 | 描述 | -|------|--------|------| -| [Intersect(a, b)](intersect.md) | `Rect` | 两矩形交集 | -| [Union(a, b)](union.md) | `Rect` | 两矩形并集 | - -## 设置方法 - -| 方法 | 返回值 | 描述 | -|------|--------|------| -| [Set(x, y, w, h)](set.md) | `void` | 设置所有值 | -| [SetPosition(x, y)](setposition-float.md) | `void` | 设置位置 | -| [SetPosition(position)](setposition-vector2.md) | `void` | 设置位置 | - -## 相关文档 - -- [Math 模块总览](../math.md) - 返回 Rect 模块总览 -- [RectInt](../rectint/rectint.md) - 整数矩形版本 -- [Viewport](../viewport/viewport.md) - 渲染视口 diff --git a/docs/api/math/rect/rect.md b/docs/api/math/rect/rect.md deleted file mode 100644 index 7814c0b5..00000000 --- a/docs/api/math/rect/rect.md +++ /dev/null @@ -1,81 +0,0 @@ -# Rect - -**命名空间**: `XCEngine::Math` - -**类型**: `struct` - -**头文件**: `XCEngine/Core/Math/Rect.h` - -**描述**: 二维矩形,用于表示平面上的矩形区域 - -## 概述 - -Rect 结构体表示一个二维矩形,由位置 `(x, y)` 和尺寸 `(width, height)` 组成。矩形使用左上位坐标系,x 向右增加,y 向下增加。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| `x` | `float` | 矩形左上角 X 坐标 | `0.0f` | -| `y` | `float` | 矩形左上角 Y 坐标 | `0.0f` | -| `width` | `float` | 矩形宽度 | `0.0f` | -| `height` | `float` | 矩形高度 | `0.0f` | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`GetLeft`](getleft.md) | 获取矩形左边界 | -| [`GetRight`](getright.md) | 获取矩形右边界 | -| [`GetTop`](gettop.md) | 获取矩形上边界 | -| [`GetBottom`](getbottom.md) | 获取矩形下边界 | -| [`GetPosition`](getposition.md) | 获取矩形位置 | -| [`GetSize`](getsize.md) | 获取矩形尺寸 | -| [`GetCenter`](getcenter.md) | 获取矩形中心点 | -| [`Contains`](contains.md) | 判断点是否在矩形内 | -| [`Intersects`](intersects.md) | 判断是否与另一矩形相交 | -| [`Intersect`](intersect.md) | 计算两矩形交集(静态方法) | -| [`Union`](union.md) | 计算两矩形并集(静态方法) | -| [`Set`](set.md) | 设置矩形所有属性 | -| [`SetPosition`](setposition.md) | 设置矩形位置 | - -## 使用示例 - -```cpp -#include "XCEngine/Core/Math/Rect.h" -#include "XCEngine/Core/Math/Vector2.h" -#include - -using namespace XCEngine::Math; - -int main() { - Rect rect(10.0f, 20.0f, 100.0f, 50.0f); - - std::cout << "Position: (" << rect.x << ", " << rect.y << ")\n"; - std::cout << "Size: " << rect.width << " x " << rect.height << "\n"; - std::cout << "Left: " << rect.GetLeft() << ", Right: " << rect.GetRight() << "\n"; - std::cout << "Top: " << rect.GetTop() << ", Bottom: " << rect.GetBottom() << "\n"; - std::cout << "Center: (" << rect.GetCenter().x << ", " << rect.GetCenter().y << ")\n"; - - Vector2 point(50.0f, 30.0f); - if (rect.Contains(point)) { - std::cout << "Point is inside rect\n"; - } - - Rect other(60.0f, 40.0f, 100.0f, 50.0f); - if (rect.Intersects(other)) { - std::cout << "Rects intersect\n"; - } - - Rect intersection = Rect::Intersect(rect, other); - std::cout << "Intersection: " << intersection.width << " x " << intersection.height << "\n"; - - return 0; -} -``` - -## 相关文档 - -- [`RectInt`](../rectint/rectint.md) - 整数矩形 -- [`Viewport`](../viewport/viewport.md) - 视口 -- [`Vector2`](../vector2/vector2.md) - 二维向量 \ No newline at end of file diff --git a/docs/api/math/rect/set.md b/docs/api/math/rect/set.md deleted file mode 100644 index 641000c7..00000000 --- a/docs/api/math/rect/set.md +++ /dev/null @@ -1,24 +0,0 @@ -# Rect::Set - -```cpp -void Set(float newX, float newY, float newWidth, float newHeight) -``` - -设置矩形所有属性。 - -**参数:** -- `newX` - 新的左边界 -- `newY` - 新的上边界 -- `newWidth` - 新的宽度 -- `newHeight` - 新的高度 - -**返回:** `void` - -**复杂度:** O(1) - -**示例:** - -```cpp -Rect rect; -rect.Set(10.0f, 20.0f, 100.0f, 50.0f); -``` diff --git a/docs/api/math/rect/setposition-float.md b/docs/api/math/rect/setposition-float.md deleted file mode 100644 index 51f9695c..00000000 --- a/docs/api/math/rect/setposition-float.md +++ /dev/null @@ -1,22 +0,0 @@ -# Rect::SetPosition (float) - -```cpp -void SetPosition(float newX, float newY) -``` - -设置矩形位置(保持尺寸不变)。 - -**参数:** -- `newX` - 新的左边界 -- `newY` - 新的上边界 - -**返回:** `void` - -**复杂度:** O(1) - -**示例:** - -```cpp -Rect rect(0.0f, 0.0f, 100.0f, 50.0f); -rect.SetPosition(50.0f, 30.0f); // rect 现在为 (50, 30, 100, 50) -``` diff --git a/docs/api/math/rect/setposition-vector2.md b/docs/api/math/rect/setposition-vector2.md deleted file mode 100644 index 89f4020b..00000000 --- a/docs/api/math/rect/setposition-vector2.md +++ /dev/null @@ -1,21 +0,0 @@ -# Rect::SetPosition (Vector2) - -```cpp -void SetPosition(const Vector2& position) -``` - -用 Vector2 设置矩形位置(保持尺寸不变)。 - -**参数:** -- `position` - 新的位置向量 - -**返回:** `void` - -**复杂度:** O(1) - -**示例:** - -```cpp -Rect rect(0.0f, 0.0f, 100.0f, 50.0f); -rect.SetPosition(Vector2(50.0f, 30.0f)); // rect 现在为 (50, 30, 100, 50) -``` diff --git a/docs/api/math/rect/setposition.md b/docs/api/math/rect/setposition.md deleted file mode 100644 index 2eca0f83..00000000 --- a/docs/api/math/rect/setposition.md +++ /dev/null @@ -1,47 +0,0 @@ -# Rect::SetPosition - -设置矩形位置。 - -```cpp -void SetPosition(float newX, float newY); -void SetPosition(const Vector2& position); -``` - -**参数:** -- `newX` - 新的 x 坐标 -- `newY` - 新的 y 坐标 -- `position` - 新的位置(Vector2 类型) - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Rect.h" -#include "XCEngine/Core/Math/Vector2.h" -#include - -using namespace XCEngine::Math; - -int main() { - Rect rect(0.0f, 0.0f, 100.0f, 50.0f); - - rect.SetPosition(10.0f, 20.0f); - std::cout << "Position: (" << rect.x << ", " << rect.y << ")\n"; - - rect.SetPosition(Vector2(50.0f, 60.0f)); - std::cout << "Position: (" << rect.x << ", " << rect.y << ")\n"; - - return 0; -} -``` - -## 相关文档 - -- [`Rect::Set`](set.md) - 设置所有属性 -- [`Rect::GetPosition`](getposition.md) - 获取位置 -- [Rect 总览](rect.md) \ No newline at end of file diff --git a/docs/api/math/rect/union.md b/docs/api/math/rect/union.md deleted file mode 100644 index acaca229..00000000 --- a/docs/api/math/rect/union.md +++ /dev/null @@ -1,23 +0,0 @@ -# Rect::Union - -```cpp -static Rect Union(const Rect& a, const Rect& b) -``` - -计算包含两矩形的最小矩形。 - -**参数:** -- `a` - 第一个矩形 -- `b` - 第二个矩形 - -**返回:** `Rect` - 包含两矩形的最小外接矩形 - -**复杂度:** O(1) - -**示例:** - -```cpp -Rect rectA(0.0f, 0.0f, 50.0f, 50.0f); -Rect rectB(100.0f, 100.0f, 50.0f, 50.0f); -Rect combined = Rect::Union(rectA, rectB); // (0, 0, 150, 150) -``` diff --git a/docs/api/math/rectint/contains.md b/docs/api/math/rectint/contains.md deleted file mode 100644 index 1c013828..00000000 --- a/docs/api/math/rectint/contains.md +++ /dev/null @@ -1,24 +0,0 @@ -# RectInt::Contains - -```cpp -bool Contains(int32_t px, int32_t py) const -``` - -检测整数坐标点是否在矩形内。 - -**参数:** -- `px` - 点的 x 坐标 -- `py` - 点的 y 坐标 - -**返回:** `bool` - 点在矩形内(包含边界)返回 true - -**复杂度:** O(1) - -**示例:** - -```cpp -RectInt rect(0, 0, 1920, 1080); -if (rect.Contains(pixelX, pixelY)) { - // 像素在矩形内 -} -``` diff --git a/docs/api/math/rectint/getbottom.md b/docs/api/math/rectint/getbottom.md deleted file mode 100644 index a9d9c9b8..00000000 --- a/docs/api/math/rectint/getbottom.md +++ /dev/null @@ -1,18 +0,0 @@ -# RectInt::GetBottom - -```cpp -int32_t GetBottom() const -``` - -获取矩形下边界。 - -**返回:** `int32_t` - 下边界坐标 (y + height) - -**复杂度:** O(1) - -**示例:** - -```cpp -RectInt rect(10, 20, 100, 50); -int32_t bottom = rect.GetBottom(); // 70 -``` diff --git a/docs/api/math/rectint/getcenter.md b/docs/api/math/rectint/getcenter.md deleted file mode 100644 index 1cf06d54..00000000 --- a/docs/api/math/rectint/getcenter.md +++ /dev/null @@ -1,18 +0,0 @@ -# RectInt::GetCenter - -```cpp -Vector2 GetCenter() const -``` - -获取矩形中心点(转换为浮点)。 - -**返回:** `Vector2` - 中心点坐标 - -**复杂度:** O(1) - -**示例:** - -```cpp -RectInt rect(10, 20, 100, 50); -Vector2 center = rect.GetCenter(); // (60.0f, 45.0f) -``` diff --git a/docs/api/math/rectint/getleft.md b/docs/api/math/rectint/getleft.md deleted file mode 100644 index b83ec9fb..00000000 --- a/docs/api/math/rectint/getleft.md +++ /dev/null @@ -1,18 +0,0 @@ -# RectInt::GetLeft - -```cpp -int32_t GetLeft() const -``` - -获取矩形左边界。 - -**返回:** `int32_t` - 左边界坐标 (x) - -**复杂度:** O(1) - -**示例:** - -```cpp -RectInt rect(10, 20, 100, 50); -int32_t left = rect.GetLeft(); // 10 -``` diff --git a/docs/api/math/rectint/getposition.md b/docs/api/math/rectint/getposition.md deleted file mode 100644 index a4094970..00000000 --- a/docs/api/math/rectint/getposition.md +++ /dev/null @@ -1,18 +0,0 @@ -# RectInt::GetPosition - -```cpp -Vector2 GetPosition() const -``` - -获取矩形左上角位置(转换为浮点)。 - -**返回:** `Vector2` - 位置向量 - -**复杂度:** O(1) - -**示例:** - -```cpp -RectInt rect(10, 20, 100, 50); -Vector2 pos = rect.GetPosition(); // (10.0f, 20.0f) -``` diff --git a/docs/api/math/rectint/getright.md b/docs/api/math/rectint/getright.md deleted file mode 100644 index 390ea845..00000000 --- a/docs/api/math/rectint/getright.md +++ /dev/null @@ -1,18 +0,0 @@ -# RectInt::GetRight - -```cpp -int32_t GetRight() const -``` - -获取矩形右边界。 - -**返回:** `int32_t` - 右边界坐标 (x + width) - -**复杂度:** O(1) - -**示例:** - -```cpp -RectInt rect(10, 20, 100, 50); -int32_t right = rect.GetRight(); // 110 -``` diff --git a/docs/api/math/rectint/getsize.md b/docs/api/math/rectint/getsize.md deleted file mode 100644 index f372cb7e..00000000 --- a/docs/api/math/rectint/getsize.md +++ /dev/null @@ -1,18 +0,0 @@ -# RectInt::GetSize - -```cpp -Vector2 GetSize() const -``` - -获取矩形尺寸(转换为浮点)。 - -**返回:** `Vector2` - 尺寸向量 - -**复杂度:** O(1) - -**示例:** - -```cpp -RectInt rect(10, 20, 100, 50); -Vector2 size = rect.GetSize(); // (100.0f, 50.0f) -``` diff --git a/docs/api/math/rectint/gettop.md b/docs/api/math/rectint/gettop.md deleted file mode 100644 index f25dec8c..00000000 --- a/docs/api/math/rectint/gettop.md +++ /dev/null @@ -1,18 +0,0 @@ -# RectInt::GetTop - -```cpp -int32_t GetTop() const -``` - -获取矩形上边界。 - -**返回:** `int32_t` - 上边界坐标 (y) - -**复杂度:** O(1) - -**示例:** - -```cpp -RectInt rect(10, 20, 100, 50); -int32_t top = rect.GetTop(); // 20 -``` diff --git a/docs/api/math/rectint/intersects.md b/docs/api/math/rectint/intersects.md deleted file mode 100644 index dc57b5cf..00000000 --- a/docs/api/math/rectint/intersects.md +++ /dev/null @@ -1,24 +0,0 @@ -# RectInt::Intersects - -```cpp -bool Intersects(const RectInt& other) const -``` - -检测两整数矩形是否相交。 - -**参数:** -- `other` - 另一个整数矩形 - -**返回:** `bool` - 两矩形相交返回 true - -**复杂度:** O(1) - -**示例:** - -```cpp -RectInt rectA(0, 0, 100, 100); -RectInt rectB(50, 50, 100, 100); -if (rectA.Intersects(rectB)) { - // 两矩形相交 -} -``` diff --git a/docs/api/math/rectint/rectint.md b/docs/api/math/rectint/rectint.md deleted file mode 100644 index 9bc802e5..00000000 --- a/docs/api/math/rectint/rectint.md +++ /dev/null @@ -1,53 +0,0 @@ -# RectInt - -整数矩形结构体,用于像素级 2D 区域表示。 - -**头文件:** `#include ` - -**命名空间:** `XCEngine::Math` - -## 结构体定义 - -```cpp -struct RectInt { - int32_t x = 0; - int32_t y = 0; - int32_t width = 0; - int32_t height = 0; - - RectInt() = default; - RectInt(int32_t x, int32_t y, int32_t w, int32_t h); -}; -``` - -## 构造函数 - -| 方法 | 描述 | -|------|------| -| `RectInt()` | 默认构造 | -| `RectInt(x, y, w, h)` | 从整数坐标和尺寸构造 | - -## 边界访问 - -| 方法 | 返回值 | 描述 | -|------|--------|------| -| [GetLeft()](getleft.md) | `int32_t` | 左边界 | -| [GetRight()](getright.md) | `int32_t` | 右边界 | -| [GetTop()](gettop.md) | `int32_t` | 上边界 | -| [GetBottom()](getbottom.md) | `int32_t` | 下边界 | -| [GetPosition()](getposition.md) | `Vector2` | 位置(转换为浮点) | -| [GetSize()](getsize.md) | `Vector2` | 尺寸(转换为浮点) | -| [GetCenter()](getcenter.md) | `Vector2` | 中心点 | - -## 检测方法 - -| 方法 | 返回值 | 描述 | -|------|--------|------| -| [Contains(px, py)](contains.md) | `bool` | 整数坐标点检测 | -| [Intersects(other)](intersects.md) | `bool` | 与另一矩形相交 | - -## 相关文档 - -- [Math 模块总览](../math.md) - 返回 Rect 模块总览 -- [Rect](../rect/rect-overview.md) - 浮点矩形版本 -- [Viewport](../viewport/viewport.md) - 渲染视口 diff --git a/docs/api/math/sphere/contains.md b/docs/api/math/sphere/contains.md deleted file mode 100644 index 5e360f7c..00000000 --- a/docs/api/math/sphere/contains.md +++ /dev/null @@ -1,40 +0,0 @@ -# Sphere::Contains - -```cpp -bool Contains(const Vector3& point) const -``` - -检测点是否在球体内(包括球体表面)。使用平方距离比较避免开平方运算。 - -**参数:** -- `point` - 要检测的点 - -**返回:** `bool` - true 表示点在球体内(包括表面) - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Sphere sphere(Vector3(0.0f, 0.0f, 0.0f), 1.0f); - -Vector3 inside(0.5f, 0.0f, 0.0f); -if (sphere.Contains(inside)) { -} - -Vector3 outside(2.0f, 0.0f, 0.0f); -if (!sphere.Contains(outside)) { -} -``` - -## 相关文档 - -- [Sphere](sphere.md) - 返回类总览 -- [Intersects](intersects.md) - 球体相交检测 diff --git a/docs/api/math/sphere/intersects.md b/docs/api/math/sphere/intersects.md deleted file mode 100644 index 3a9edb7d..00000000 --- a/docs/api/math/sphere/intersects.md +++ /dev/null @@ -1,36 +0,0 @@ -# Sphere::Intersects - -```cpp -bool Intersects(const Sphere& other) const -``` - -检测两个球体是否相交。相切(外切或内切)也视为相交。使用平方距离比较避免开平方运算。 - -**参数:** -- `other` - 另一个球体 - -**返回:** `bool` - true 表示相交(包括相切) - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Sphere sphere1(Vector3(0.0f, 0.0f, 0.0f), 1.0f); -Sphere sphere2(Vector3(1.5f, 0.0f, 0.0f), 1.0f); - -if (sphere1.Intersects(sphere2)) { -} -``` - -## 相关文档 - -- [Sphere](sphere.md) - 返回类总览 -- [Contains](contains.md) - 点包含检测 diff --git a/docs/api/math/sphere/sphere-constructor.md b/docs/api/math/sphere/sphere-constructor.md deleted file mode 100644 index a85a9e2b..00000000 --- a/docs/api/math/sphere/sphere-constructor.md +++ /dev/null @@ -1,32 +0,0 @@ -# Sphere::Sphere - -```cpp -Sphere(const Vector3& center, float radius) -``` - -构造一个指定中心和半径的球体。 - -**参数:** -- `center` - 球体中心点 -- `radius` - 球体半径 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Sphere sphere(Vector3(1.0f, 2.0f, 3.0f), 5.0f); -``` - -## 相关文档 - -- [Sphere](sphere.md) - 返回类总览 diff --git a/docs/api/math/sphere/sphere-default-constructor.md b/docs/api/math/sphere/sphere-default-constructor.md deleted file mode 100644 index 896826ba..00000000 --- a/docs/api/math/sphere/sphere-default-constructor.md +++ /dev/null @@ -1,28 +0,0 @@ -# Sphere::Sphere - -```cpp -Sphere() -``` - -默认构造函数,使用零初始化 center 为原点,radius 为 0。 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Sphere sphere; -``` - -## 相关文档 - -- [Sphere](sphere.md) - 返回类总览 diff --git a/docs/api/math/sphere/sphere.md b/docs/api/math/sphere/sphere.md deleted file mode 100644 index 144b7470..00000000 --- a/docs/api/math/sphere/sphere.md +++ /dev/null @@ -1,54 +0,0 @@ -# Sphere - -**命名空间**: `XCEngine::Math` - -**类型**: `struct` - -**头文件**: `XCEngine/Core/Math/Sphere.h` - -**描述**: 球体,用于碰撞检测和范围查询 - -## 概述 - -`Sphere` 是三维空间中的球体结构体,包含一个中心点 `center` 和半径 `radius`。主要用于碰撞检测和范围查询等几何计算场景。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| `center` | `Vector3` | 球体中心点 | `Vector3::Zero()` | -| `radius` | `float` | 球体半径 | `0.0f` | - -## 公共方法 - -| 方法 | 描述 | 线程安全 | 复杂度 | -|------|------|----------|--------| -| [`Sphere()`](sphere-default-constructor.md) | 默认构造,零初始化 | ✅ | O(1) | -| [`Sphere(const Vector3&, float)`](sphere-constructor.md) | 从中心和半径构造球体 | ✅ | O(1) | -| [`Contains`](contains.md) | 检测点是否在球体内 | ✅ | O(1) | -| [`Intersects`](intersects.md) | 检测两个球体是否相交 | ✅ | O(1) | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Math; - -Sphere sphere(Vector3(0.0f, 0.0f, 0.0f), 1.0f); - -Vector3 point(0.5f, 0.5f, 0.0f); -if (sphere.Contains(point)) { - // point is inside the sphere -} - -Sphere other(Vector3(1.5f, 0.0f, 0.0f), 1.0f); -if (sphere.Intersects(other)) { - // spheres intersect -} -``` - -## 相关文档 - -- [Math 模块总览](../math.md) - Math 模块总览 diff --git a/docs/api/math/transform/inverse-transform-direction.md b/docs/api/math/transform/inverse-transform-direction.md deleted file mode 100644 index 0cf7492d..00000000 --- a/docs/api/math/transform/inverse-transform-direction.md +++ /dev/null @@ -1,42 +0,0 @@ -# Transform::InverseTransformDirection - -```cpp -Vector3 InverseTransformDirection(const Vector3& direction) const; -``` - -将一个方向向量从世界空间逆变换到本地空间。计算结果为 `rotation.Inverse() * direction / scale`。 - -此方法是 `TransformDirection` 的逆操作。 - -**参数:** -- `direction` - 世界空间中的方向向量 - -**返回:** `Vector3` - 本地空间中的逆变换后方向 - -**线程安全:** ❌(无锁,非线程安全) - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Transform.h" -#include "XCEngine/Core/Math/Vector3.h" - -using namespace XCEngine::Math; - -void InverseTransformDirectionExample() { - Transform transform; - transform.position = Vector3(10.0f, 0.0f, 0.0f); - transform.rotation = Quaternion::Identity(); - transform.scale = Vector3(2.0f, 2.0f, 2.0f); - - Vector3 worldDir(0.0f, 2.0f, 0.0f); - Vector3 localDir = transform.InverseTransformDirection(worldDir); -} -``` - -## 相关文档 - -- [Transform](transform.md) - 返回类总览 -- [TransformDirection](transform-direction.md) - 正向变换方向 diff --git a/docs/api/math/transform/inverse-transform-point.md b/docs/api/math/transform/inverse-transform-point.md deleted file mode 100644 index adde5bec..00000000 --- a/docs/api/math/transform/inverse-transform-point.md +++ /dev/null @@ -1,42 +0,0 @@ -# Transform::InverseTransformPoint - -```cpp -Vector3 InverseTransformPoint(const Vector3& point) const; -``` - -将一个点从世界空间逆变换到本地空间。计算结果为 `(rotation.Inverse() * (point - position)) / scale`。 - -此方法是 `TransformPoint` 的逆操作。 - -**参数:** -- `point` - 世界空间中的点 - -**返回:** `Vector3` - 本地空间中的逆变换后点 - -**线程安全:** ❌(无锁,非线程安全) - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Transform.h" -#include "XCEngine/Core/Math/Vector3.h" - -using namespace XCEngine::Math; - -void InverseTransformPointExample() { - Transform transform; - transform.position = Vector3(10.0f, 0.0f, 0.0f); - transform.rotation = Quaternion::Identity(); - transform.scale = Vector3(2.0f, 2.0f, 2.0f); - - Vector3 worldPoint(12.0f, 4.0f, 6.0f); - Vector3 localPoint = transform.InverseTransformPoint(worldPoint); -} -``` - -## 相关文档 - -- [Transform](transform.md) - 返回类总览 -- [TransformPoint](transform-point.md) - 正向变换点 diff --git a/docs/api/math/transform/inverse.md b/docs/api/math/transform/inverse.md deleted file mode 100644 index 70add7a1..00000000 --- a/docs/api/math/transform/inverse.md +++ /dev/null @@ -1,44 +0,0 @@ -# Transform::Inverse - -```cpp -Transform Inverse() const; -``` - -返回当前变换的逆变换。逆变换满足 `transform * transform.Inverse() == Identity()`。 - -计算方式: -- 旋转取反:先计算旋转的逆(四元数共轭) -- 缩放送原:取倒数 -- 位置:将原点相对于当前点的偏移,经逆旋转和逆缩放后取反 - -**参数:** 无 - -**返回:** `Transform` - 当前变换的逆变换 - -**线程安全:** ❌(无锁,非线程安全) - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Transform.h" -#include "XCEngine/Core/Math/Vector3.h" - -using namespace XCEngine::Math; - -void InverseExample() { - Transform transform; - transform.position = Vector3(10.0f, 0.0f, 0.0f); - transform.rotation = Quaternion::Identity(); - transform.scale = Vector3(2.0f, 2.0f, 2.0f); - - Transform inverse = transform.Inverse(); - - Transform identity = transform * inverse; -} -``` - -## 相关文档 - -- [Transform](transform.md) - 返回类总览 diff --git a/docs/api/math/transform/operator-star.md b/docs/api/math/transform/operator-star.md deleted file mode 100644 index a4e1e5b8..00000000 --- a/docs/api/math/transform/operator-star.md +++ /dev/null @@ -1,47 +0,0 @@ -# Transform::operator* - -```cpp -Transform operator*(const Transform& other) const; -``` - -组合两个变换。当 `A * B` 时,表示先应用 `B`,再应用 `A`。结果变换先对点进行 `B` 变换,再进行 `A` 变换。 - -组合计算: -- `position = position + rotation * (scale * other.position)` -- `rotation = rotation * other.rotation` -- `scale = scale * other.scale` - -**参数:** -- `other` - 要组合的另一个变换 - -**返回:** `Transform` - 组合后的变换 - -**线程安全:** ❌(无锁,非线程安全) - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Transform.h" -#include "XCEngine/Core/Math/Vector3.h" - -using namespace XCEngine::Math; - -void OperatorMultiplyExample() { - Transform parent; - parent.position = Vector3(10.0f, 0.0f, 0.0f); - parent.scale = Vector3(2.0f, 2.0f, 2.0f); - - Transform child; - child.position = Vector3(5.0f, 0.0f, 0.0f); - - Transform combined = parent * child; - - Vector3 worldPos = combined.TransformPoint(child.position); -} -``` - -## 相关文档 - -- [Transform](transform.md) - 返回类总览 diff --git a/docs/api/math/transform/space.md b/docs/api/math/transform/space.md deleted file mode 100644 index 55ffb71e..00000000 --- a/docs/api/math/transform/space.md +++ /dev/null @@ -1,40 +0,0 @@ -# Transform::Space - -**命名空间**: `XCEngine::Math` - -**类型**: `enum class` - -**头文件**: `XCEngine/Core/Math/Transform.h` - -## 概述 - -`Space` 枚举用于指定变换操作的参考空间。 - -## 枚举值 - -| 枚举值 | 数值 | 描述 | -|--------|------|------| -| `Self` | `0` | 相对于自身空间进行变换 | -| `World` | `1` | 相对于世界空间进行变换 | - -## 使用示例 - -```cpp -#include "XCEngine/Core/Math/Transform.h" -#include "XCEngine/Core/Math/Vector3.h" - -using namespace XCEngine::Math; - -Transform transform; -transform.position = Vector3(10.0f, 0.0f, 0.0f); - -// 在自身空间旋转 -// transform.Rotate(Vector3::Up(), 45.0f * DEG_TO_RAD, Space::Self); - -// 在世界空间旋转 -// transform.Rotate(Vector3::Up(), 45.0f * DEG_TO_RAD, Space::World); -``` - -## 相关文档 - -- [Transform 总览](transform.md) - Transform 类总览 diff --git a/docs/api/math/transform/to-matrix.md b/docs/api/math/transform/to-matrix.md deleted file mode 100644 index bc41895b..00000000 --- a/docs/api/math/transform/to-matrix.md +++ /dev/null @@ -1,38 +0,0 @@ -# Transform::ToMatrix - -```cpp -Matrix4 ToMatrix() const; -``` - -将当前变换转换为 4x4 变换矩阵。该矩阵通过 `Matrix4x4::TRS` 函数,使用 position、rotation 和 scale 构造,包含平移、旋转和缩放的组合变换。 - -**参数:** 无 - -**返回:** `Matrix4` - 表示当前变换的 4x4 矩阵 - -**线程安全:** ❌(无锁,非线程安全) - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Transform.h" -#include "XCEngine/Core/Math/Vector3.h" -#include "XCEngine/Core/Math/Quaternion.h" - -using namespace XCEngine::Math; - -void ToMatrixExample() { - Transform transform; - transform.position = Vector3(1.0f, 2.0f, 3.0f); - transform.rotation = Quaternion::Identity(); - transform.scale = Vector3(2.0f, 2.0f, 2.0f); - - Matrix4 matrix = transform.ToMatrix(); -} -``` - -## 相关文档 - -- [Transform](transform.md) - 返回类总览 diff --git a/docs/api/math/transform/transform-direction.md b/docs/api/math/transform/transform-direction.md deleted file mode 100644 index 20de499b..00000000 --- a/docs/api/math/transform/transform-direction.md +++ /dev/null @@ -1,42 +0,0 @@ -# Transform::TransformDirection - -```cpp -Vector3 TransformDirection(const Vector3& direction) const; -``` - -将一个方向向量从本地空间变换到世界空间。计算结果为 `rotation * (scale * direction)`,即先缩放、再旋转,不包含平移。 - -此方法适用于变换方向向量、法线等不应当受平移影响的量。 - -**参数:** -- `direction` - 本地空间中的方向向量 - -**返回:** `Vector3` - 世界空间中的变换后方向 - -**线程安全:** ❌(无锁,非线程安全) - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Transform.h" -#include "XCEngine/Core/Math/Vector3.h" - -using namespace XCEngine::Math; - -void TransformDirectionExample() { - Transform transform; - transform.position = Vector3(10.0f, 0.0f, 0.0f); - transform.rotation = Quaternion::Identity(); - transform.scale = Vector3(2.0f, 2.0f, 2.0f); - - Vector3 localDir(0.0f, 1.0f, 0.0f); - Vector3 worldDir = transform.TransformDirection(localDir); -} -``` - -## 相关文档 - -- [Transform](transform.md) - 返回类总览 -- [TransformPoint](transform-point.md) - 变换点 diff --git a/docs/api/math/transform/transform-point.md b/docs/api/math/transform/transform-point.md deleted file mode 100644 index e44df38a..00000000 --- a/docs/api/math/transform/transform-point.md +++ /dev/null @@ -1,42 +0,0 @@ -# Transform::TransformPoint - -```cpp -Vector3 TransformPoint(const Vector3& point) const; -``` - -将一个点从本地空间变换到世界空间。计算结果为 `position + rotation * (scale * point)`,即先缩放、再旋转、最后平移。 - -此方法适用于变换顶点位置等考虑平移的点。 - -**参数:** -- `point` - 本地空间中的点 - -**返回:** `Vector3` - 世界空间中的变换后点 - -**线程安全:** ❌(无锁,非线程安全) - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Transform.h" -#include "XCEngine/Core/Math/Vector3.h" - -using namespace XCEngine::Math; - -void TransformPointExample() { - Transform transform; - transform.position = Vector3(10.0f, 0.0f, 0.0f); - transform.rotation = Quaternion::Identity(); - transform.scale = Vector3(2.0f, 2.0f, 2.0f); - - Vector3 localPoint(1.0f, 2.0f, 3.0f); - Vector3 worldPoint = transform.TransformPoint(localPoint); -} -``` - -## 相关文档 - -- [Transform](transform.md) - 返回类总览 -- [TransformDirection](transform-direction.md) - 变换方向 diff --git a/docs/api/math/transform/transform.md b/docs/api/math/transform/transform.md deleted file mode 100644 index 750e416d..00000000 --- a/docs/api/math/transform/transform.md +++ /dev/null @@ -1,77 +0,0 @@ -# Transform - -**命名空间**: `XCEngine::Math` - -**类型**: `struct` - -**头文件**: `XCEngine/Core/Math/Transform.h` - -**描述**: 变换组件,包含位置、旋转和缩放,用于层级变换计算 - -## 概述 - -`Transform` 是 XCEngine 中的核心变换组件,封装了 3D 空间中的位置(position)、旋转(rotation)和缩放(scale)信息。它支持层级变换计算,可以将点或方向从本地空间变换到世界空间,或进行逆变换。 - -该结构体设计用于游戏引擎的层级关系系统中,每个 `Transform` 可以通过 `operator*` 与父级 `Transform` 组合,实现累积变换。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| `position` | `Vector3` | 位置 | `Vector3::Zero()` | -| `rotation` | `Quaternion` | 旋转(四元数) | `Quaternion::Identity()` | -| `scale` | `Vector3` | 缩放 | `Vector3::One()` | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`ToMatrix`](to-matrix.md) | 将变换转换为 4x4 矩阵 | -| [`Inverse`](inverse.md) | 返回变换的逆变换 | -| [`operator*`](operator-star.md) | 组合两个变换 | -| [`TransformPoint`](transform-point.md) | 变换一个点(考虑位置、旋转和缩放) | -| [`TransformDirection`](transform-direction.md) | 变换一个方向(仅考虑旋转和缩放) | -| [`InverseTransformPoint`](inverse-transform-point.md) | 逆变换一个点 | -| [`InverseTransformDirection`](inverse-transform-direction.md) | 逆变换一个方向 | - -## 枚举 - -| 枚举 | 描述 | -|------|------| -| [`Space`](space.md) | 变换参考空间(Self 或 World) | - -## 使用示例 - -```cpp -#include "XCEngine/Core/Math/Transform.h" -#include "XCEngine/Core/Math/Vector3.h" -#include "XCEngine/Core/Math/Quaternion.h" - -using namespace XCEngine::Math; - -void TransformExample() { - Transform parent; - parent.position = Vector3(10.0f, 0.0f, 0.0f); - parent.rotation = Quaternion::Identity(); - parent.scale = Vector3(2.0f, 2.0f, 2.0f); - - Transform child; - child.position = Vector3(5.0f, 0.0f, 0.0f); - child.rotation = Quaternion::Identity(); - child.scale = Vector3(1.0f, 1.0f, 1.0f); - - Transform combined = parent * child; - - Vector3 localPoint(1.0f, 0.0f, 0.0f); - Vector3 worldPoint = combined.TransformPoint(localPoint); - - Vector3 worldDir(0.0f, 1.0f, 0.0f); - Vector3 transformedDir = combined.TransformDirection(worldDir); - - Matrix4 mat = combined.ToMatrix(); -} -``` - -## 相关文档 - -- [Matrix4](../matrix4/matrix4.md) - 4x4 矩阵 diff --git a/docs/api/math/vector2/cross.md b/docs/api/math/vector2/cross.md deleted file mode 100644 index f1e8aa9d..00000000 --- a/docs/api/math/vector2/cross.md +++ /dev/null @@ -1,32 +0,0 @@ -# Vector2::Cross - -```cpp -static float Cross(const Vector2& a, const Vector2& b) -``` - -计算两个 2D 向量的叉积(返回标量)。结果为正值表示 b 在 a 的逆时针方向,负值表示 b 在 a 的顺时针方向。 - -**参数:** -- `a` - 第一个向量 -- `b` - 第二个向量 - -**返回:** `float` - 叉积结果 a.x * b.y - a.y * b.x - -**线程安全:** ✅ - -**异常:** (无) - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 a(1.0f, 0.0f); -Vector2 b(0.0f, 1.0f); -float cross = Vector2::Cross(a, b); // 1.0f (逆时针) -``` - -## 相关文档 - -- [Vector2](vector2.md) - 返回类总览 -- [Dot](Dot.md) - 点积运算 diff --git a/docs/api/math/vector2/dot.md b/docs/api/math/vector2/dot.md deleted file mode 100644 index b128ddc2..00000000 --- a/docs/api/math/vector2/dot.md +++ /dev/null @@ -1,32 +0,0 @@ -# Vector2::Dot - -```cpp -static float Dot(const Vector2& a, const Vector2& b) -``` - -计算两个 2D 向量的点积。点积结果可用于判断两个向量的方向关系:正值表示夹角小于 90°,零表示垂直,负值表示夹角大于 90°。 - -**参数:** -- `a` - 第一个向量 -- `b` - 第二个向量 - -**返回:** `float` - 点积结果 a.x * b.x + a.y * b.y - -**线程安全:** ✅ - -**异常:** (无) - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 a(1.0f, 0.0f); -Vector2 b(0.0f, 1.0f); -float dot = Vector2::Dot(a, b); // 0.0f -``` - -## 相关文档 - -- [Vector2](vector2.md) - 返回类总览 -- [Cross](Cross.md) - 叉积运算 diff --git a/docs/api/math/vector2/down.md b/docs/api/math/vector2/down.md deleted file mode 100644 index 517874cb..00000000 --- a/docs/api/math/vector2/down.md +++ /dev/null @@ -1,25 +0,0 @@ -# Vector2::Down - -```cpp -static Vector2 Down() -``` - -返回下方向向量 (0, -1)。 - -**返回:** `Vector2` - 值为 (0, -1) 的向量 - -**线程安全:** ✅ - -**异常:** (无) - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 down = Vector2::Down(); -``` - -## 相关文档 - -- [Vector2](vector2.md) - 返回类总览 diff --git a/docs/api/math/vector2/left.md b/docs/api/math/vector2/left.md deleted file mode 100644 index 13c3cd53..00000000 --- a/docs/api/math/vector2/left.md +++ /dev/null @@ -1,25 +0,0 @@ -# Vector2::Left - -```cpp -static Vector2 Left() -``` - -返回左方向向量 (-1, 0)。 - -**返回:** `Vector2` - 值为 (-1, 0) 的向量 - -**线程安全:** ✅ - -**异常:** (无) - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 left = Vector2::Left(); -``` - -## 相关文档 - -- [Vector2](vector2.md) - 返回类总览 diff --git a/docs/api/math/vector2/lerp.md b/docs/api/math/vector2/lerp.md deleted file mode 100644 index 752df0e0..00000000 --- a/docs/api/math/vector2/lerp.md +++ /dev/null @@ -1,33 +0,0 @@ -# Vector2::Lerp - -```cpp -static Vector2 Lerp(const Vector2& a, const Vector2& b, float t) -``` - -在两个向量之间进行线性插值。参数 t 会在 [0, 1] 范围内被限制,确保插值结果在两端向量之间。 - -**参数:** -- `a` - 起始向量 -- `b` - 结束向量 -- `t` - 插值因子,0 返回 a,1 返回 b - -**返回:** `Vector2` - 插值结果 - -**线程安全:** ✅ - -**异常:** (无) - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 start(0.0f, 0.0f); -Vector2 end(10.0f, 10.0f); -Vector2 mid = Vector2::Lerp(start, end, 0.5f); // (5.0f, 5.0f) -``` - -## 相关文档 - -- [Vector2](vector2.md) - 返回类总览 -- [MoveTowards](movetowards.md) - 朝目标移动 diff --git a/docs/api/math/vector2/magnitude.md b/docs/api/math/vector2/magnitude.md deleted file mode 100644 index bed3de63..00000000 --- a/docs/api/math/vector2/magnitude.md +++ /dev/null @@ -1,35 +0,0 @@ -# Vector2::Magnitude - -```cpp -static float Magnitude(const Vector2& v) -float Magnitude() const -``` - -计算向量的长度(欧几里得范数)。 - -**静态版本参数:** -- `v` - 要计算长度的向量 - -**实例版本:** 计算当前向量的长度。 - -**返回:** `float` - 向量长度 sqrt(x * x + y * y) - -**线程安全:** ✅ - -**异常:** (无) - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 v(3.0f, 4.0f); -float len = v.Magnitude(); // 5.0f -float len2 = Vector2::Magnitude(v); // 5.0f -``` - -## 相关文档 - -- [Vector2](vector2.md) - 返回类总览 -- [SqrMagnitude](sqrmagnitude.md) - 长度平方(更快) -- [Normalize](normalize.md) - 归一化向量 diff --git a/docs/api/math/vector2/movetowards.md b/docs/api/math/vector2/movetowards.md deleted file mode 100644 index f126b139..00000000 --- a/docs/api/math/vector2/movetowards.md +++ /dev/null @@ -1,33 +0,0 @@ -# Vector2::MoveTowards - -```cpp -static Vector2 MoveTowards(const Vector2& current, const Vector2& target, float maxDistance) -``` - -将当前向量朝目标向量移动指定距离。如果当前向量与目标向量的距离已小于 maxDistance,则直接返回目标向量。 - -**参数:** -- `current` - 当前向量 -- `target` - 目标向量 -- `maxDistance` - 最大移动距离 - -**返回:** `Vector2` - 移动后的位置 - -**线程安全:** ✅ - -**异常:** (无) - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 current(0.0f, 0.0f); -Vector2 target(10.0f, 0.0f); -Vector2 moved = Vector2::MoveTowards(current, target, 3.0f); // (3.0f, 0.0f) -``` - -## 相关文档 - -- [Vector2](vector2.md) - 返回类总览 -- [Lerp](lerp.md) - 线性插值 diff --git a/docs/api/math/vector2/normalize.md b/docs/api/math/vector2/normalize.md deleted file mode 100644 index 6c6d6fd6..00000000 --- a/docs/api/math/vector2/normalize.md +++ /dev/null @@ -1,30 +0,0 @@ -# Vector2::Normalize - -```cpp -static Vector2 Normalize(const Vector2& v) -``` - -将向量归一化为单位长度。如果向量长度接近零(小于 EPSILON),返回零向量以避免除零错误。 - -**参数:** -- `v` - 要归一化的向量 - -**返回:** `Vector2` - 归一化后的单位向量 - -**线程安全:** ✅ - -**异常:** (无) - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 dir = Vector2::Normalize(Vector2(3.0f, 4.0f)); // (0.6f, 0.8f) -``` - -## 相关文档 - -- [Vector2](vector2.md) - 返回类总览 -- [Magnitude](Magnitude.md) - 计算向量长度 -- [Normalized](normalized.md) - 实例方法归一化 diff --git a/docs/api/math/vector2/normalized.md b/docs/api/math/vector2/normalized.md deleted file mode 100644 index e46c96a5..00000000 --- a/docs/api/math/vector2/normalized.md +++ /dev/null @@ -1,28 +0,0 @@ -# Vector2::Normalized - -```cpp -Vector2 Normalized() const -``` - -返回当前向量的归一化副本(单位长度)。不修改原向量。如果向量长度接近零(小于 EPSILON),返回零向量。 - -**返回:** `Vector2` - 归一化后的向量副本 - -**线程安全:** ✅ - -**异常:** (无) - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 v(3.0f, 4.0f); -Vector2 unit = v.Normalized(); // (0.6f, 0.8f), v 保持不变 -``` - -## 相关文档 - -- [Vector2](vector2.md) - 返回类总览 -- [Normalize](normalize.md) - 静态方法归一化 -- [Magnitude](magnitude.md) - 计算向量长度 diff --git a/docs/api/math/vector2/one.md b/docs/api/math/vector2/one.md deleted file mode 100644 index 54044069..00000000 --- a/docs/api/math/vector2/one.md +++ /dev/null @@ -1,25 +0,0 @@ -# Vector2::One - -```cpp -static Vector2 One() -``` - -返回单位向量 (1, 1)。 - -**返回:** `Vector2` - 值为 (1, 1) 的向量 - -**线程安全:** ✅ - -**异常:** (无) - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 unit = Vector2::One(); -``` - -## 相关文档 - -- [Vector2](vector2.md) - 返回类总览 diff --git a/docs/api/math/vector2/operator-add-assign.md b/docs/api/math/vector2/operator-add-assign.md deleted file mode 100644 index 5ab787d8..00000000 --- a/docs/api/math/vector2/operator-add-assign.md +++ /dev/null @@ -1,29 +0,0 @@ -# Vector2::operator+= - -```cpp -Vector2& operator+=(const Vector2& other) -``` - -向量加法赋值,将 `other` 的分量加到当前向量。 - -**参数:** -- `other` - 要加的向量 - -**返回:** `Vector2&` - 引用到修改后的当前向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 v(1.0f, 2.0f); -v += Vector2(3.0f, 4.0f); // v = (4.0f, 6.0f) -``` - -## 相关文档 - -- [Vector2 总览](vector2.md) -- [`operator+`](operator-add.md) - 加法 -- [`operator-=`](operator-sub-assign.md) - 减法赋值 diff --git a/docs/api/math/vector2/operator-add.md b/docs/api/math/vector2/operator-add.md deleted file mode 100644 index df390e62..00000000 --- a/docs/api/math/vector2/operator-add.md +++ /dev/null @@ -1,30 +0,0 @@ -# Vector2::operator+ - -```cpp -Vector2 operator+(const Vector2& other) const -``` - -向量加法,将当前向量与另一个向量相加。 - -**参数:** -- `other` - 要相加的向量 - -**返回:** `Vector2` - 相加结果向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 a(1.0f, 2.0f); -Vector2 b(3.0f, 4.0f); -Vector2 c = a + b; // (4.0f, 6.0f) -``` - -## 相关文档 - -- [Vector2 总览](vector2.md) -- [`operator-`](operator-sub.md) - 减法 -- [`operator+=`](operator-add-assign.md) - 加法赋值 diff --git a/docs/api/math/vector2/operator-div-assign.md b/docs/api/math/vector2/operator-div-assign.md deleted file mode 100644 index 7d9c1860..00000000 --- a/docs/api/math/vector2/operator-div-assign.md +++ /dev/null @@ -1,29 +0,0 @@ -# Vector2::operator/= - -```cpp -Vector2& operator/=(float scalar) -``` - -向量除法赋值,将当前向量除以标量。 - -**参数:** -- `scalar` - 标量值(不能为零) - -**返回:** `Vector2&` - 引用到修改后的当前向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 v(4.0f, 6.0f); -v /= 2.0f; // v = (2.0f, 3.0f) -``` - -## 相关文档 - -- [Vector2 总览](vector2.md) -- [`operator/`](operator-div.md) - 除法 -- [`operator*=`](operator-mul-assign.md) - 乘法赋值 diff --git a/docs/api/math/vector2/operator-div.md b/docs/api/math/vector2/operator-div.md deleted file mode 100644 index 438d842b..00000000 --- a/docs/api/math/vector2/operator-div.md +++ /dev/null @@ -1,29 +0,0 @@ -# Vector2::operator/ - -```cpp -Vector2 operator/(float scalar) const -``` - -向量数除,将向量除以标量。 - -**参数:** -- `scalar` - 标量值(不能为零) - -**返回:** `Vector2` - 缩放后的向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 v(4.0f, 6.0f); -Vector2 result = v / 2.0f; // (2.0f, 3.0f) -``` - -## 相关文档 - -- [Vector2 总览](vector2.md) -- [`operator*`](operator-mul.md) - 乘法 -- [`operator/=`](operator-div-assign.md) - 除法赋值 diff --git a/docs/api/math/vector2/operator-eq.md b/docs/api/math/vector2/operator-eq.md deleted file mode 100644 index 50379d7e..00000000 --- a/docs/api/math/vector2/operator-eq.md +++ /dev/null @@ -1,29 +0,0 @@ -# Vector2::operator== - -```cpp -bool operator==(const Vector2& other) const -``` - -判断两个向量是否相等。使用 EPSILON 进行浮点比较。 - -**参数:** -- `other` - 要比较的向量 - -**返回:** `bool` - 如果所有分量差的绝对值都小于 EPSILON 则返回 true - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 a(1.0f, 2.0f); -Vector2 b(1.0f, 2.0f); -bool equal = (a == b); // true -``` - -## 相关文档 - -- [Vector2 总览](vector2.md) -- [`operator!=`](operator-neq.md) - 不等比较 diff --git a/docs/api/math/vector2/operator-mul-assign.md b/docs/api/math/vector2/operator-mul-assign.md deleted file mode 100644 index 3f094da8..00000000 --- a/docs/api/math/vector2/operator-mul-assign.md +++ /dev/null @@ -1,29 +0,0 @@ -# Vector2::operator*= - -```cpp -Vector2& operator*=(float scalar) -``` - -向量乘法赋值,将当前向量乘以标量。 - -**参数:** -- `scalar` - 标量值 - -**返回:** `Vector2&` - 引用到修改后的当前向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 v(2.0f, 3.0f); -v *= 2.0f; // v = (4.0f, 6.0f) -``` - -## 相关文档 - -- [Vector2 总览](vector2.md) -- [`operator*`](operator-mul.md) - 乘法 -- [`operator/=`](operator-div-assign.md) - 除法赋值 diff --git a/docs/api/math/vector2/operator-mul.md b/docs/api/math/vector2/operator-mul.md deleted file mode 100644 index 30c190a0..00000000 --- a/docs/api/math/vector2/operator-mul.md +++ /dev/null @@ -1,29 +0,0 @@ -# Vector2::operator* - -```cpp -Vector2 operator*(float scalar) const -``` - -向量数乘,将向量与标量相乘。 - -**参数:** -- `scalar` - 标量值 - -**返回:** `Vector2` - 缩放后的向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 v(2.0f, 3.0f); -Vector2 scaled = v * 2.0f; // (4.0f, 6.0f) -``` - -## 相关文档 - -- [Vector2 总览](vector2.md) -- [`operator/`](operator-div.md) - 除法 -- [`operator*=`](operator-mul-assign.md) - 乘法赋值 diff --git a/docs/api/math/vector2/operator-neq.md b/docs/api/math/vector2/operator-neq.md deleted file mode 100644 index 7e0432bc..00000000 --- a/docs/api/math/vector2/operator-neq.md +++ /dev/null @@ -1,29 +0,0 @@ -# Vector2::operator!= - -```cpp -bool operator!=(const Vector2& other) const -``` - -判断两个向量是否不相等。 - -**参数:** -- `other` - 要比较的向量 - -**返回:** `bool` - 如果任何分量差的绝对值大于等于 EPSILON 则返回 true - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 a(1.0f, 2.0f); -Vector2 b(3.0f, 4.0f); -bool notEqual = (a != b); // true -``` - -## 相关文档 - -- [Vector2 总览](vector2.md) -- [`operator==`](operator-eq.md) - 相等比较 diff --git a/docs/api/math/vector2/operator-sub-assign.md b/docs/api/math/vector2/operator-sub-assign.md deleted file mode 100644 index 8d3b41b1..00000000 --- a/docs/api/math/vector2/operator-sub-assign.md +++ /dev/null @@ -1,29 +0,0 @@ -# Vector2::operator-= - -```cpp -Vector2& operator-=(const Vector2& other) -``` - -向量减法赋值,将 `other` 的分量从当前向量减去。 - -**参数:** -- `other` - 要减的向量 - -**返回:** `Vector2&` - 引用到修改后的当前向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 v(5.0f, 8.0f); -v -= Vector2(2.0f, 3.0f); // v = (3.0f, 5.0f) -``` - -## 相关文档 - -- [Vector2 总览](vector2.md) -- [`operator-`](operator-sub.md) - 减法 -- [`operator+=`](operator-add-assign.md) - 加法赋值 diff --git a/docs/api/math/vector2/operator-sub.md b/docs/api/math/vector2/operator-sub.md deleted file mode 100644 index 227e21f5..00000000 --- a/docs/api/math/vector2/operator-sub.md +++ /dev/null @@ -1,30 +0,0 @@ -# Vector2::operator- - -```cpp -Vector2 operator-(const Vector2& other) const -``` - -向量减法,将当前向量减去另一个向量。 - -**参数:** -- `other` - 要减去的向量 - -**返回:** `Vector2` - 相减结果向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 a(5.0f, 8.0f); -Vector2 b(2.0f, 3.0f); -Vector2 c = a - b; // (3.0f, 5.0f) -``` - -## 相关文档 - -- [Vector2 总览](vector2.md) -- [`operator+`](operator-add.md) - 加法 -- [`operator-=`](operator-sub-assign.md) - 减法赋值 diff --git a/docs/api/math/vector2/right.md b/docs/api/math/vector2/right.md deleted file mode 100644 index d967a637..00000000 --- a/docs/api/math/vector2/right.md +++ /dev/null @@ -1,25 +0,0 @@ -# Vector2::Right - -```cpp -static Vector2 Right() -``` - -返回右方向向量 (1, 0)。 - -**返回:** `Vector2` - 值为 (1, 0) 的向量 - -**线程安全:** ✅ - -**异常:** (无) - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 right = Vector2::Right(); -``` - -## 相关文档 - -- [Vector2](vector2.md) - 返回类总览 diff --git a/docs/api/math/vector2/sqrmagnitude.md b/docs/api/math/vector2/sqrmagnitude.md deleted file mode 100644 index b2b860b6..00000000 --- a/docs/api/math/vector2/sqrmagnitude.md +++ /dev/null @@ -1,34 +0,0 @@ -# Vector2::SqrMagnitude - -```cpp -static float SqrMagnitude(const Vector2& v) -float SqrMagnitude() const -``` - -计算向量长度的平方。比 Magnitude 更快,避免了开方运算。在比较相对长度或进行性能敏感的计算时优先使用。 - -**静态版本参数:** -- `v` - 要计算长度的向量 - -**实例版本:** 计算当前向量的长度平方。 - -**返回:** `float` - 向量长度平方 x * x + y * y - -**线程安全:** ✅ - -**异常:** (无) - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 v(3.0f, 4.0f); -float sqlen = v.SqrMagnitude(); // 25.0f -float sqlen2 = Vector2::SqrMagnitude(v); // 25.0f -``` - -## 相关文档 - -- [Vector2](vector2.md) - 返回类总览 -- [Magnitude](magnitude.md) - 向量长度 diff --git a/docs/api/math/vector2/up.md b/docs/api/math/vector2/up.md deleted file mode 100644 index 9bbbd5df..00000000 --- a/docs/api/math/vector2/up.md +++ /dev/null @@ -1,25 +0,0 @@ -# Vector2::Up - -```cpp -static Vector2 Up() -``` - -返回上方向向量 (0, 1)。 - -**返回:** `Vector2` - 值为 (0, 1) 的向量 - -**线程安全:** ✅ - -**异常:** (无) - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 up = Vector2::Up(); -``` - -## 相关文档 - -- [Vector2](vector2.md) - 返回类总览 diff --git a/docs/api/math/vector2/vector2.md b/docs/api/math/vector2/vector2.md deleted file mode 100644 index 20efb3a1..00000000 --- a/docs/api/math/vector2/vector2.md +++ /dev/null @@ -1,73 +0,0 @@ -# Vector2 - -**命名空间**: `XCEngine::Math` - -**类型**: `struct` - -**头文件**: `XCEngine/Core/Math/Vector2.h` - -**描述**: 二维向量,支持 2D 游戏开发和图形计算 - -## 概述 - -Vector2 是 XCEngine 中的二维向量结构体,用于表示 2D 空间中的点、方向或颜色。提供完整的向量运算支持,包括加、减、乘、除等算术运算,以及点积、叉积、归一化、插值等数学运算。广泛应用于游戏开发中的位置表示、方向控制、碰撞检测和颜色计算等场景。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| `x` | `float` | X 分量 | `0.0f` | -| `y` | `float` | Y 分量 | `0.0f` | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Zero`](zero.md) | 返回 (0, 0) 零向量 | -| [`One`](one.md) | 返回 (1, 1) 单位向量 | -| [`Up`](up.md) | 返回 (0, 1) 上方向 | -| [`Down`](down.md) | 返回 (0, -1) 下方向 | -| [`Right`](right.md) | 返回 (1, 0) 右方向 | -| [`Left`](left.md) | 返回 (-1, 0) 左方向 | -| [`Dot`](dot.md) | 计算两个向量的点积 | -| [`Cross`](cross.md) | 计算两个向量的叉积(返回标量) | -| [`Normalize`](normalize.md) | 归一化向量为单位长度(静态方法) | -| [`Magnitude`](magnitude.md) | 计算向量长度 | -| [`SqrMagnitude`](sqrmagnitude.md) | 计算向量长度平方 | -| [`Lerp`](lerp.md) | 线性插值 | -| [`MoveTowards`](movetowards.md) | 朝目标移动 | -| [`Normalized`](normalized.md) | 实例方法,返回归一化副本 | - -## 运算符 - -| 运算符 | 描述 | -|--------|------| -| [`+`](operator-add.md), [`-`](operator-sub.md) | 向量加减运算 | -| [`*`](operator-mul.md), [`/`](operator-div.md) | 向量与标量乘除运算 | -| [`*=`](operator-mul-assign.md), [`/=`](operator-div-assign.md) | 复合赋值运算 | -| [`+=`](operator-add-assign.md), [`-=`](operator-sub-assign.md) | 复合赋值运算 | -| [`==`](operator-eq.md), [`!=`](operator-neq.md) | 相等性比较(基于 EPSILON 浮点比较) | - -## 使用示例 - -```cpp -#include "XCEngine/Core/Math/Vector2.h" - -using namespace XCEngine::Math; - -Vector2 position(5.0f, 3.0f); -Vector2 velocity(1.0f, 0.5f); - -float speed = velocity.Magnitude(); -Vector2 normalizedVel = velocity.Normalized(); - -Vector2 newPos = position + velocity * speed; - -float dotProduct = Vector2::Dot(position, normalizedVel); - -Vector2 interpolated = Vector2::Lerp(position, Vector2(10.0f, 10.0f), 0.5f); -``` - -## 相关文档 - -- [Math 模块总览](../math.md) - 返回 Math 模块总览 diff --git a/docs/api/math/vector2/zero.md b/docs/api/math/vector2/zero.md deleted file mode 100644 index f0b7a72d..00000000 --- a/docs/api/math/vector2/zero.md +++ /dev/null @@ -1,25 +0,0 @@ -# Vector2::Zero - -```cpp -static Vector2 Zero() -``` - -返回零向量 (0, 0)。 - -**返回:** `Vector2` - 值为 (0, 0) 的向量 - -**线程安全:** ✅ - -**异常:** (无) - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector2 origin = Vector2::Zero(); -``` - -## 相关文档 - -- [Vector2](vector2.md) - 返回类总览 diff --git a/docs/api/math/vector3/angle.md b/docs/api/math/vector3/angle.md deleted file mode 100644 index 07c89a97..00000000 --- a/docs/api/math/vector3/angle.md +++ /dev/null @@ -1,29 +0,0 @@ -# Vector3::Angle - -```cpp -static float Angle(const Vector3& from, const Vector3& to) -``` - -计算两个向量之间的夹角(以度为单位)。 - -**参数:** -- `from` - 起始向量 -- `to` - 目标向量 - -**返回:** `float` - 两向量之间的夹角(0-180度) - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 a(1.0f, 0.0f, 0.0f); -Vector3 b(0.0f, 1.0f, 0.0f); -float angle = Vector3::Angle(a, b); // 90.0f -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 diff --git a/docs/api/math/vector3/back.md b/docs/api/math/vector3/back.md deleted file mode 100644 index e0ed8228..00000000 --- a/docs/api/math/vector3/back.md +++ /dev/null @@ -1,26 +0,0 @@ -# Vector3::Back - -```cpp -static Vector3 Back() -``` - -返回后方向向量 (0, 0, -1)。 - -**参数:** 无 - -**返回:** `Vector3` - 值为 (0, 0, -1) 的向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 back = Vector3::Back(); -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`Forward`](forward.md) - 前向向量 diff --git a/docs/api/math/vector3/cross.md b/docs/api/math/vector3/cross.md deleted file mode 100644 index d764c080..00000000 --- a/docs/api/math/vector3/cross.md +++ /dev/null @@ -1,29 +0,0 @@ -# Vector3::Cross - -```cpp -static Vector3 Cross(const Vector3& a, const Vector3& b) -``` - -计算两个 3D 向量的叉积。结果向量同时垂直于 a 和 b。 - -**参数:** -- `a` - 第一个向量 -- `b` - 第二个向量 - -**返回:** `Vector3` - 叉积结果,垂直于 a 和 b 的向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 right(1.0f, 0.0f, 0.0f); -Vector3 up(0.0f, 1.0f, 0.0f); -Vector3 forward = Vector3::Cross(right, up); // (0, 0, 1) -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 diff --git a/docs/api/math/vector3/dot.md b/docs/api/math/vector3/dot.md deleted file mode 100644 index 8e26e68b..00000000 --- a/docs/api/math/vector3/dot.md +++ /dev/null @@ -1,29 +0,0 @@ -# Vector3::Dot - -```cpp -static float Dot(const Vector3& a, const Vector3& b) -``` - -计算两个 3D 向量的点积。 - -**参数:** -- `a` - 第一个向量 -- `b` - 第二个向量 - -**返回:** `float` - 点积结果 a.x * b.x + a.y * b.y + a.z * b.z - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 a(1.0f, 0.0f, 0.0f); -Vector3 b(0.0f, 1.0f, 0.0f); -float dot = Vector3::Dot(a, b); // 0.0f -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 diff --git a/docs/api/math/vector3/down.md b/docs/api/math/vector3/down.md deleted file mode 100644 index adb63ba4..00000000 --- a/docs/api/math/vector3/down.md +++ /dev/null @@ -1,26 +0,0 @@ -# Vector3::Down - -```cpp -static Vector3 Down() -``` - -返回下方向向量 (0, -1, 0)。 - -**参数:** 无 - -**返回:** `Vector3` - 值为 (0, -1, 0) 的向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 down = Vector3::Down(); -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`Up`](up.md) - 上向量 diff --git a/docs/api/math/vector3/forward.md b/docs/api/math/vector3/forward.md deleted file mode 100644 index 030e6017..00000000 --- a/docs/api/math/vector3/forward.md +++ /dev/null @@ -1,27 +0,0 @@ -# Vector3::Forward - -```cpp -static Vector3 Forward() -``` - -返回前方向向量 (0, 0, 1)。 - -**参数:** 无 - -**返回:** `Vector3` - 值为 (0, 0, 1) 的向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 forward = Vector3::Forward(); -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`Back`](back.md) - 后向向量 -- [`Up`](up.md) - 上向量 diff --git a/docs/api/math/vector3/left.md b/docs/api/math/vector3/left.md deleted file mode 100644 index 923e8d68..00000000 --- a/docs/api/math/vector3/left.md +++ /dev/null @@ -1,26 +0,0 @@ -# Vector3::Left - -```cpp -static Vector3 Left() -``` - -返回左方向向量 (-1, 0, 0)。 - -**参数:** 无 - -**返回:** `Vector3` - 值为 (-1, 0, 0) 的向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 left = Vector3::Left(); -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`Right`](right.md) - 右向量 diff --git a/docs/api/math/vector3/lerp.md b/docs/api/math/vector3/lerp.md deleted file mode 100644 index 8e1217ac..00000000 --- a/docs/api/math/vector3/lerp.md +++ /dev/null @@ -1,30 +0,0 @@ -# Vector3::Lerp - -```cpp -static Vector3 Lerp(const Vector3& a, const Vector3& b, float t) -``` - -在线性插值两个向量之间。参数 t 会在 [0, 1] 范围内被限制。 - -**参数:** -- `a` - 起始向量 -- `b` - 结束向量 -- `t` - 插值因子,0 返回 a,1 返回 b - -**返回:** `Vector3` - 插值结果 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 start(0.0f, 0.0f, 0.0f); -Vector3 end(10.0f, 10.0f, 10.0f); -Vector3 mid = Vector3::Lerp(start, end, 0.5f); // (5.0f, 5.0f, 5.0f) -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 diff --git a/docs/api/math/vector3/magnitude-instance.md b/docs/api/math/vector3/magnitude-instance.md deleted file mode 100644 index 1136d9e1..00000000 --- a/docs/api/math/vector3/magnitude-instance.md +++ /dev/null @@ -1,27 +0,0 @@ -# Vector3::Magnitude - -```cpp -float Magnitude() const -``` - -计算向量的长度(模)。 - -**返回:** `float` - 向量的长度 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 v(3.0f, 4.0f, 0.0f); -float mag = v.Magnitude(); // 5.0f -``` - -## 相关文档 - -- [Vector3 总览](vector3.md) -- [`SqrMagnitude`](sqrmagnitude.md) - 长度的平方 -- [`Normalized`](normalized.md) - 归一化副本 -- [`static Magnitude`](magnitude.md) - 静态版本 diff --git a/docs/api/math/vector3/magnitude.md b/docs/api/math/vector3/magnitude.md deleted file mode 100644 index e74347ef..00000000 --- a/docs/api/math/vector3/magnitude.md +++ /dev/null @@ -1,32 +0,0 @@ -# Vector3::Magnitude - -```cpp -static float Magnitude(const Vector3& v) -float Magnitude() const -``` - -计算向量的长度(欧几里得范数)。 - -**静态版本参数:** -- `v` - 要计算长度的向量 - -**实例版本:** 计算当前向量的长度。 - -**返回:** `float` - 向量长度 sqrt(x * x + y * y + z * z) - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 v(1.0f, 2.0f, 2.0f); -float len = v.Magnitude(); // 3.0f -float len2 = Vector3::Magnitude(v); // 3.0f -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`SqrMagnitude`](sqrmagnitude.md) - 计算长度的平方 diff --git a/docs/api/math/vector3/movetowards.md b/docs/api/math/vector3/movetowards.md deleted file mode 100644 index ee900cf5..00000000 --- a/docs/api/math/vector3/movetowards.md +++ /dev/null @@ -1,30 +0,0 @@ -# Vector3::MoveTowards - -```cpp -static Vector3 MoveTowards(const Vector3& current, const Vector3& target, float maxDistance) -``` - -将当前向量朝目标向量移动指定距离。如果距离已小于 maxDistance,则直接返回目标。 - -**参数:** -- `current` - 当前向量 -- `target` - 目标向量 -- `maxDistance` - 最大移动距离 - -**返回:** `Vector3` - 移动后的位置 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 current(0.0f, 0.0f, 0.0f); -Vector3 target(10.0f, 0.0f, 0.0f); -Vector3 moved = Vector3::MoveTowards(current, target, 3.0f); // (3.0f, 0, 0) -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 diff --git a/docs/api/math/vector3/normalize.md b/docs/api/math/vector3/normalize.md deleted file mode 100644 index 00a2bc9f..00000000 --- a/docs/api/math/vector3/normalize.md +++ /dev/null @@ -1,27 +0,0 @@ -# Vector3::Normalize - -```cpp -static Vector3 Normalize(const Vector3& v) -``` - -将向量归一化为单位长度。如果向量长度接近零,返回零向量。 - -**参数:** -- `v` - 要归一化的向量 - -**返回:** `Vector3` - 归一化后的单位向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 dir = Vector3::Normalize(Vector3(3.0f, 4.0f, 0.0f)); // (0.6f, 0.8f, 0) -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`Normalized`](normalized.md) - 实例方法版本 diff --git a/docs/api/math/vector3/normalized-instance.md b/docs/api/math/vector3/normalized-instance.md deleted file mode 100644 index 3c6fcad4..00000000 --- a/docs/api/math/vector3/normalized-instance.md +++ /dev/null @@ -1,27 +0,0 @@ -# Vector3::Normalized - -```cpp -Vector3 Normalized() const -``` - -返回向量的归一化副本(单位长度为 1 的向量)。不会修改原向量。 - -**返回:** `Vector3` - 归一化后的向量副本;如果向量长度接近零,则返回零向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 v(3.0f, 4.0f, 0.0f); -Vector3 normalized = v.Normalized(); // (0.6f, 0.8f, 0.0f) -// v 仍然是 (3.0f, 4.0f, 0.0f) -``` - -## 相关文档 - -- [Vector3 总览](vector3.md) -- [`static Normalize`](normalize.md) - 静态版本(会修改原向量) -- [`Magnitude`](magnitude-instance.md) - 向量长度 diff --git a/docs/api/math/vector3/normalized.md b/docs/api/math/vector3/normalized.md deleted file mode 100644 index 55995d55..00000000 --- a/docs/api/math/vector3/normalized.md +++ /dev/null @@ -1,25 +0,0 @@ -# Vector3::Normalized - -```cpp -Vector3 Normalized() const -``` - -返回当前向量的归一化副本(单位长度)。不修改原向量。 - -**返回:** `Vector3` - 归一化后的向量副本 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 v(3.0f, 4.0f, 0.0f); -Vector3 unit = v.Normalized(); // (0.6f, 0.8f, 0), v 保持不变 -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`Normalize`](normalize.md) - 静态方法版本 diff --git a/docs/api/math/vector3/one.md b/docs/api/math/vector3/one.md deleted file mode 100644 index c41c053e..00000000 --- a/docs/api/math/vector3/one.md +++ /dev/null @@ -1,25 +0,0 @@ -# Vector3::One - -```cpp -static Vector3 One() -``` - -返回分量为 (1, 1, 1) 的向量。 - -**参数:** 无 - -**返回:** `Vector3` - 值为 (1, 1, 1) 的向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 unit = Vector3::One(); -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 diff --git a/docs/api/math/vector3/operator-add-assign.md b/docs/api/math/vector3/operator-add-assign.md deleted file mode 100644 index ab084caa..00000000 --- a/docs/api/math/vector3/operator-add-assign.md +++ /dev/null @@ -1,29 +0,0 @@ -# Vector3::operator+= - -```cpp -Vector3& operator+=(const Vector3& other) -``` - -向量加法赋值,将 `other` 的分量加到当前向量。 - -**参数:** -- `other` - 要加的向量 - -**返回:** `Vector3&` - 引用到修改后的当前向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 v(1.0f, 2.0f, 3.0f); -v += Vector3(4.0f, 5.0f, 6.0f); // v = (5.0f, 7.0f, 9.0f) -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`operator+`](operator-add.md) - 加法运算 -- [`operator-=`](operator-sub-assign.md) - 减法赋值 diff --git a/docs/api/math/vector3/operator-add.md b/docs/api/math/vector3/operator-add.md deleted file mode 100644 index 00a147d3..00000000 --- a/docs/api/math/vector3/operator-add.md +++ /dev/null @@ -1,30 +0,0 @@ -# Vector3::operator+ - -```cpp -Vector3 operator+(const Vector3& other) const -``` - -向量加法,将两个向量的对应分量相加。 - -**参数:** -- `other` - 要加的向量 - -**返回:** `Vector3` - 相加结果 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 a(1.0f, 2.0f, 3.0f); -Vector3 b(4.0f, 5.0f, 6.0f); -Vector3 c = a + b; // (5.0f, 7.0f, 9.0f) -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`operator-`](operator-sub.md) - 减法运算 -- [`operator+=`](operator-add-assign.md) - 加法赋值 diff --git a/docs/api/math/vector3/operator-div-assign.md b/docs/api/math/vector3/operator-div-assign.md deleted file mode 100644 index 24f044a8..00000000 --- a/docs/api/math/vector3/operator-div-assign.md +++ /dev/null @@ -1,31 +0,0 @@ -# Vector3::operator/= - -```cpp -Vector3& operator/=(float scalar) -``` - -向量标量除法赋值,将当前向量的每个分量除以标量值。 - -**参数:** -- `scalar` - 标量值(不能为零) - -**返回:** `Vector3&` - 引用到修改后的当前向量 - -**异常:** 如果 `scalar` 为零,结果为无穷大 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 v(6.0f, 8.0f, 10.0f); -v /= 2.0f; // v = (3.0f, 4.0f, 5.0f) -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`operator/`](operator-div.md) - 除法运算 -- [`operator*=`](operator-mul-assign.md) - 乘法赋值 diff --git a/docs/api/math/vector3/operator-div.md b/docs/api/math/vector3/operator-div.md deleted file mode 100644 index ea91dffa..00000000 --- a/docs/api/math/vector3/operator-div.md +++ /dev/null @@ -1,40 +0,0 @@ -# Vector3::operator/ - -```cpp -Vector3 operator/(float scalar) const -Vector3 operator/(const Vector3& other) const -``` - -向量除法。支持向量与标量相除,以及向量分量对应相除。 - -**参数:** -- `scalar` - 标量值(用于第一个重载) -- `other` - 向量(用于第二个重载,分量相除) - -**返回:** `Vector3` - 除法结果 - -**异常:** 第二个重载中,如果 `other` 的任一分量为零,结果为无穷大 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 v(6.0f, 8.0f, 10.0f); - -// 标量除法 -Vector3 scaled = v / 2.0f; // (3.0f, 4.0f, 5.0f) - -// 分量相除 -Vector3 a(6.0f, 8.0f, 10.0f); -Vector3 b(2.0f, 2.0f, 2.0f); -Vector3 componentwise = a / b; // (3.0f, 4.0f, 5.0f) -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`operator*`](operator-mul.md) - 乘法运算 -- [`operator/=`](operator-div-assign.md) - 除法赋值 diff --git a/docs/api/math/vector3/operator-eq.md b/docs/api/math/vector3/operator-eq.md deleted file mode 100644 index 1a07049a..00000000 --- a/docs/api/math/vector3/operator-eq.md +++ /dev/null @@ -1,32 +0,0 @@ -# Vector3::operator== - -```cpp -bool operator==(const Vector3& other) const -``` - -判断两个向量是否相等。使用 EPSILON 进行浮点数比较。 - -**参数:** -- `other` - 要比较的向量 - -**返回:** `bool` - 如果两个向量相等返回 true,否则返回 false - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 a(1.0f, 2.0f, 3.0f); -Vector3 b(1.0f, 2.0f, 3.0f); -Vector3 c(1.0f, 2.0f, 3.00001f); - -bool equal1 = (a == b); // true -bool equal2 = (a == c); // true(因为差异在 EPSILON 内) -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`operator==`](operator-eq.md) - 相等比较 diff --git a/docs/api/math/vector3/operator-index.md b/docs/api/math/vector3/operator-index.md deleted file mode 100644 index 62a72c03..00000000 --- a/docs/api/math/vector3/operator-index.md +++ /dev/null @@ -1,35 +0,0 @@ -# Vector3::operator[] - -```cpp -float operator[](int index) const -float& operator[](int index) -``` - -通过索引访问向量的分量。0 = x, 1 = y, 2 = z。 - -**参数:** -- `index` - 分量索引(0、1 或 2) - -**返回:** `float` 或 `float&` - 对应分量的值(const 版本返回值,non-const 版本返回引用) - -**异常:** 如果 index 超出范围(< 0 或 > 2),行为未定义 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 v(1.0f, 2.0f, 3.0f); - -float x = v[0]; // 1.0f -float y = v[1]; // 2.0f -float z = v[2]; // 3.0f - -v[0] = 10.0f; // v = (10.0f, 2.0f, 3.0f) -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 diff --git a/docs/api/math/vector3/operator-mul-assign.md b/docs/api/math/vector3/operator-mul-assign.md deleted file mode 100644 index eabdf050..00000000 --- a/docs/api/math/vector3/operator-mul-assign.md +++ /dev/null @@ -1,29 +0,0 @@ -# Vector3::operator*= - -```cpp -Vector3& operator*=(float scalar) -``` - -向量标量乘法赋值,将当前向量的每个分量乘以标量值。 - -**参数:** -- `scalar` - 标量值 - -**返回:** `Vector3&` - 引用到修改后的当前向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 v(1.0f, 2.0f, 3.0f); -v *= 2.0f; // v = (2.0f, 4.0f, 6.0f) -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`operator*`](operator-mul.md) - 乘法运算 -- [`operator/=`](operator-div-assign.md) - 除法赋值 diff --git a/docs/api/math/vector3/operator-mul.md b/docs/api/math/vector3/operator-mul.md deleted file mode 100644 index 51b4c670..00000000 --- a/docs/api/math/vector3/operator-mul.md +++ /dev/null @@ -1,39 +0,0 @@ -# Vector3::operator* - -```cpp -Vector3 operator*(float scalar) const -Vector3 operator*(const Vector3& other) const -``` - -向量乘法。支持向量与标量相乘,以及向量分量对应相乘。 - -**参数:** -- `scalar` - 标量值(用于第一个重载) -- `other` - 向量(用于第二个重载,分量相乘) - -**返回:** `Vector3` - 乘法结果 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 v(1.0f, 2.0f, 3.0f); - -// 标量乘法 -Vector3 scaled = v * 2.0f; // (2.0f, 4.0f, 6.0f) - -// 分量相乘 -Vector3 a(1.0f, 2.0f, 3.0f); -Vector3 b(2.0f, 3.0f, 4.0f); -Vector3 componentwise = a * b; // (2.0f, 6.0f, 12.0f) -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`operator/`](operator-div.md) - 除法运算 -- [`operator*=`](operator-mul-assign.md) - 乘法赋值 -- [Quaternion * Vector3](quaternion-multiply.md) - 四元数旋转向量 diff --git a/docs/api/math/vector3/operator-neq.md b/docs/api/math/vector3/operator-neq.md deleted file mode 100644 index 37c8e534..00000000 --- a/docs/api/math/vector3/operator-neq.md +++ /dev/null @@ -1,30 +0,0 @@ -# Vector3::operator!= - -```cpp -bool operator!=(const Vector3& other) const -``` - -判断两个向量是否不相等。使用 EPSILON 进行浮点数比较。 - -**参数:** -- `other` - 要比较的向量 - -**返回:** `bool` - 如果两个向量不相等返回 true,否则返回 false - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 a(1.0f, 2.0f, 3.0f); -Vector3 b(4.0f, 5.0f, 6.0f); - -bool notEqual = (a != b); // true -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`operator!=`](operator-neq.md) - 不等比较 diff --git a/docs/api/math/vector3/operator-sub-assign.md b/docs/api/math/vector3/operator-sub-assign.md deleted file mode 100644 index 6beec52d..00000000 --- a/docs/api/math/vector3/operator-sub-assign.md +++ /dev/null @@ -1,29 +0,0 @@ -# Vector3::operator-= - -```cpp -Vector3& operator-=(const Vector3& other) -``` - -向量减法赋值,从当前向量减去 `other` 的分量。 - -**参数:** -- `other` - 要减的向量 - -**返回:** `Vector3&` - 引用到修改后的当前向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 v(5.0f, 7.0f, 9.0f); -v -= Vector3(1.0f, 2.0f, 3.0f); // v = (4.0f, 5.0f, 6.0f) -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`operator-`](operator-sub.md) - 减法运算 -- [`operator+=`](operator-add-assign.md) - 加法赋值 diff --git a/docs/api/math/vector3/operator-sub.md b/docs/api/math/vector3/operator-sub.md deleted file mode 100644 index 05a2d408..00000000 --- a/docs/api/math/vector3/operator-sub.md +++ /dev/null @@ -1,30 +0,0 @@ -# Vector3::operator- - -```cpp -Vector3 operator-(const Vector3& other) const -``` - -向量减法,将两个向量的对应分量相减。 - -**参数:** -- `other` - 要减的向量 - -**返回:** `Vector3` - 相减结果 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 a(5.0f, 7.0f, 9.0f); -Vector3 b(1.0f, 2.0f, 3.0f); -Vector3 c = a - b; // (4.0f, 5.0f, 6.0f) -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`operator+`](operator-add.md) - 加法运算 -- [`operator-=`](operator-sub-assign.md) - 减法赋值 diff --git a/docs/api/math/vector3/project-on-plane.md b/docs/api/math/vector3/project-on-plane.md deleted file mode 100644 index bc30190f..00000000 --- a/docs/api/math/vector3/project-on-plane.md +++ /dev/null @@ -1,30 +0,0 @@ -# Vector3::ProjectOnPlane - -```cpp -static Vector3 ProjectOnPlane(const Vector3& vector, const Vector3& planeNormal) -``` - -将向量投影到平面上(减去沿平面法线的分量)。 - -**参数:** -- `vector` - 要投影的向量 -- `planeNormal` - 平面法线 - -**返回:** `Vector3` - 平面上的投影向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 v(1.0f, 1.0f, 1.0f); -Vector3 normal(0.0f, 1.0f, 0.0f); // XZ 平面 -Vector3 projected = Vector3::ProjectOnPlane(v, normal); // (1, 0, 1) -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`Project`](project.md) - 投影到法线上 diff --git a/docs/api/math/vector3/project.md b/docs/api/math/vector3/project.md deleted file mode 100644 index 5c88eb69..00000000 --- a/docs/api/math/vector3/project.md +++ /dev/null @@ -1,30 +0,0 @@ -# Vector3::Project - -```cpp -static Vector3 Project(const Vector3& vector, const Vector3& onNormal) -``` - -将向量投影到法线向量上。 - -**参数:** -- `vector` - 要投影的向量 -- `onNormal` - 投影到的法线向量 - -**返回:** `Vector3` - 投影结果。如果法线长度为 0,返回零向量。 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 v(1.0f, 1.0f, 0.0f); -Vector3 normal(1.0f, 0.0f, 0.0f); -Vector3 projected = Vector3::Project(v, normal); // (1, 0, 0) -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`ProjectOnPlane`](project-on-plane.md) - 投影到平面上 diff --git a/docs/api/math/vector3/quaternion-multiply.md b/docs/api/math/vector3/quaternion-multiply.md deleted file mode 100644 index eb39b923..00000000 --- a/docs/api/math/vector3/quaternion-multiply.md +++ /dev/null @@ -1,29 +0,0 @@ -# Vector3 * Quaternion - -```cpp -Vector3 operator*(const Quaternion& q, const Vector3& v) -``` - -用四元数旋转向量。 - -**参数:** -- `q` - 旋转四元数 -- `v` - 要旋转的向量 - -**返回:** `Vector3` - 旋转后的向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Quaternion rot = Quaternion::FromEulerAngles(0.0f, 90.0f * DEG_TO_RAD, 0.0f); -Vector3 forward = Vector3::Forward(); -Vector3 rotated = rot * forward; // 绕 Y 轴旋转 90 度 -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 diff --git a/docs/api/math/vector3/reflect.md b/docs/api/math/vector3/reflect.md deleted file mode 100644 index 5b238c25..00000000 --- a/docs/api/math/vector3/reflect.md +++ /dev/null @@ -1,29 +0,0 @@ -# Vector3::Reflect - -```cpp -static Vector3 Reflect(const Vector3& inDirection, const Vector3& inNormal) -``` - -计算向量关于法线的反射方向。 - -**参数:** -- `inDirection` - 入射方向向量 -- `inNormal` - 反射表面的法线(应为单位向量) - -**返回:** `Vector3` - 反射方向 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 incoming(1.0f, -1.0f, 0.0f); -Vector3 normal(0.0f, 1.0f, 0.0f); -Vector3 reflected = Vector3::Reflect(incoming, normal); // (1, 1, 0) -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 diff --git a/docs/api/math/vector3/right.md b/docs/api/math/vector3/right.md deleted file mode 100644 index 39391084..00000000 --- a/docs/api/math/vector3/right.md +++ /dev/null @@ -1,26 +0,0 @@ -# Vector3::Right - -```cpp -static Vector3 Right() -``` - -返回右方向向量 (1, 0, 0)。 - -**参数:** 无 - -**返回:** `Vector3` - 值为 (1, 0, 0) 的向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 right = Vector3::Right(); -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`Left`](left.md) - 左向量 diff --git a/docs/api/math/vector3/sqrmagnitude-instance.md b/docs/api/math/vector3/sqrmagnitude-instance.md deleted file mode 100644 index ea87c419..00000000 --- a/docs/api/math/vector3/sqrmagnitude-instance.md +++ /dev/null @@ -1,27 +0,0 @@ -# Vector3::SqrMagnitude - -```cpp -float SqrMagnitude() const -``` - -计算向量长度的平方。用于在不计算平方根的情况下比较长度,性能更优。 - -**返回:** `float` - 向量长度的平方 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 v(3.0f, 4.0f, 0.0f); -float sqrMag = v.SqrMagnitude(); // 25.0f -``` - -## 相关文档 - -- [Vector3 总览](vector3.md) -- [`Magnitude`](magnitude-instance.md) - 向量长度 -- [`Normalized`](normalized.md) - 归一化副本 -- [`static SqrMagnitude`](sqrmagnitude.md) - 静态版本 diff --git a/docs/api/math/vector3/sqrmagnitude.md b/docs/api/math/vector3/sqrmagnitude.md deleted file mode 100644 index 7c8ef29f..00000000 --- a/docs/api/math/vector3/sqrmagnitude.md +++ /dev/null @@ -1,32 +0,0 @@ -# Vector3::SqrMagnitude - -```cpp -static float SqrMagnitude(const Vector3& v) -float SqrMagnitude() const -``` - -计算向量长度的平方。比 Magnitude 更快,避免了开方运算。 - -**静态版本参数:** -- `v` - 要计算长度的向量 - -**实例版本:** 计算当前向量的长度平方。 - -**返回:** `float` - 向量长度平方 x * x + y * y + z * z - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 v(1.0f, 2.0f, 2.0f); -float sqlen = v.SqrMagnitude(); // 9.0f -float sqlen2 = Vector3::SqrMagnitude(v); // 9.0f -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`Magnitude`](magnitude.md) - 计算向量长度 diff --git a/docs/api/math/vector3/up.md b/docs/api/math/vector3/up.md deleted file mode 100644 index b5fef878..00000000 --- a/docs/api/math/vector3/up.md +++ /dev/null @@ -1,26 +0,0 @@ -# Vector3::Up - -```cpp -static Vector3 Up() -``` - -返回上方向向量 (0, 1, 0)。 - -**参数:** 无 - -**返回:** `Vector3` - 值为 (0, 1, 0) 的向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 up = Vector3::Up(); -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 -- [`Down`](down.md) - 下向量 diff --git a/docs/api/math/vector3/vector3-constructor.md b/docs/api/math/vector3/vector3-constructor.md deleted file mode 100644 index 966acc8e..00000000 --- a/docs/api/math/vector3/vector3-constructor.md +++ /dev/null @@ -1,39 +0,0 @@ -# Vector3::Vector3 - -```cpp -Vector3() = default; -constexpr Vector3(float x, float y, float z); -``` - -构造一个三维向量。 - -**参数:** -- `x` - X 分量,默认为 0.0f -- `y` - Y 分量,默认为 0.0f -- `z` - Z 分量,默认为 0.0f - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Core/Math/Vector3.h" - -using namespace XCEngine::Math; - -int main() { - Vector3 a; - Vector3 b(1.0f, 2.0f, 3.0f); - Vector3 c(4.5f, 5.5f, 6.5f); - - return 0; -} -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 diff --git a/docs/api/math/vector3/vector3.md b/docs/api/math/vector3/vector3.md deleted file mode 100644 index 1bfad8cf..00000000 --- a/docs/api/math/vector3/vector3.md +++ /dev/null @@ -1,96 +0,0 @@ -# Vector3 - -**命名空间**: `XCEngine::Math` - -**类型**: `struct` - -**头文件**: `XCEngine/Core/Math/Vector3.h` - -**描述**: 三维向量,用于 3D 图形和游戏开发中的位置、方向和缩放计算 - -## 概述 - -Vector3 是 XCEngine 中用于表示三维向量的核心类型,支持常见的向量运算。它广泛用于 3D 图形编程中的位置、方向、速度、缩放等计算场景。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| `x` | `float` | X 分量 | `0.0f` | -| `y` | `float` | Y 分量 | `0.0f` | -| `z` | `float` | Z 分量 | `0.0f` | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Zero`](zero.md) | 返回零向量 (0, 0, 0) | -| [`One`](one.md) | 返回单位向量 (1, 1, 1) | -| [`Forward`](forward.md) | 返回前向向量 (0, 0, 1) | -| [`Back`](back.md) | 返回后向向量 (0, 0, -1) | -| [`Up`](up.md) | 返回上向量 (0, 1, 0) | -| [`Down`](down.md) | 返回下向量 (0, -1, 0) | -| [`Right`](right.md) | 返回右向量 (1, 0, 0) | -| [`Left`](left.md) | 返回左向量 (-1, 0, 0) | -| [`Dot`](dot.md) | 计算点积 | -| [`Cross`](cross.md) | 计算叉积 | -| [`Normalize`](normalize.md) | 返回归一化向量 | -| [`Magnitude`](magnitude.md) | 计算向量长度 | -| [`SqrMagnitude`](sqrmagnitude.md) | 计算向量长度的平方 | -| [`Lerp`](lerp.md) | 线性插值 | -| [`MoveTowards`](movetowards.md) | 移向目标点 | -| [`Project`](project.md) | 投影到法向量上 | -| [`ProjectOnPlane`](project-on-plane.md) | 投影到平面上 | -| [`Angle`](angle.md) | 计算两个向量之间的夹角 | -| [`Reflect`](reflect.md) | 反射向量 | -| [`Normalized`](normalized.md) | 返回归一化副本(实例方法) | - -## 运算符 - -| 运算符 | 描述 | -|--------|------| -| [`+`](operator-add.md), [`-`](operator-sub.md) | 向量加减 | -| [`*`](operator-mul.md), [`/`](operator-div.md) | 向量与标量或分量相乘/相除 | -| [`+=`](operator-add-assign.md), [`-=`](operator-sub-assign.md) | 复合赋值运算符 | -| [`*=`](operator-mul-assign.md), [`/=`](operator-div-assign.md) | 复合赋值运算符 | -| [`[]`](./operator-index.md) | 下标访问 x, y, z 分量 | -| [`==`](operator-eq.md), [`!=`](operator-neq.md) | 相等性比较 | -| [`* (Quaternion)`](quaternion-multiply.md) | 用四元数旋转向量 | - -## 实例方法 - -| 方法 | 描述 | -|------|------| -| [`Magnitude()`](magnitude-instance.md) | 计算向量长度 | -| [`SqrMagnitude()`](sqrmagnitude-instance.md) | 计算向量长度的平方 | -| [`Normalized()`](normalized-instance.md) | 返回归一化副本 | - -## 使用示例 - -```cpp -#include "XCEngine/Core/Math/Vector3.h" -#include - -using namespace XCEngine::Math; - -int main() { - Vector3 position(1.0f, 2.0f, 3.0f); - Vector3 direction = Vector3::Forward(); - - float dot = Vector3::Dot(position, direction); - Vector3 cross = Vector3::Cross(position, direction); - Vector3 normalized = position.Normalized(); - - std::cout << "Position: (" << position.x << ", " << position.y << ", " << position.z << ")\n"; - std::cout << "Dot product: " << dot << "\n"; - std::cout << "Normalized: (" << normalized.x << ", " << normalized.y << ", " << normalized.z << ")\n"; - - return 0; -} -``` - -## 相关文档 - -- [Math 模块总览](../math.md) - Math 模块总览 -- [Vector2](../vector2/vector2.md) - 二维向量 -- [Vector4](../vector4/vector4.md) - 四维向量 diff --git a/docs/api/math/vector3/zero.md b/docs/api/math/vector3/zero.md deleted file mode 100644 index ee86b54e..00000000 --- a/docs/api/math/vector3/zero.md +++ /dev/null @@ -1,25 +0,0 @@ -# Vector3::Zero - -```cpp -static Vector3 Zero() -``` - -返回零向量 (0, 0, 0)。 - -**参数:** 无 - -**返回:** `Vector3` - 值为 (0, 0, 0) 的向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector3 origin = Vector3::Zero(); -``` - -## 相关文档 - -- [Vector3 类总览](vector3.md) - 返回类总览 diff --git a/docs/api/math/vector4/constructor-vector3.md b/docs/api/math/vector4/constructor-vector3.md deleted file mode 100644 index 37cd34d4..00000000 --- a/docs/api/math/vector4/constructor-vector3.md +++ /dev/null @@ -1,25 +0,0 @@ -# Vector4::Vector4 (from Vector3) - -```cpp -explicit Vector4(const Vector3& v, float w = 0.0f) -``` - -从 Vector3 构造四维向量,w 分量默认为 0.0f。 - -**参数:** -- `v` - 源 Vector3 向量 -- `w` - W 分量(默认值为 `0.0f`) - -**返回:** 新创建的 Vector4 实例 - -**示例:** - -```cpp -Vector3 v3(1.0f, 2.0f, 3.0f); -Vector4 v4a(v3); -Vector4 v4b(v3, 1.0f); -``` - -## 相关文档 - -- [Vector4 总览](vector4.md) - 返回类总览 diff --git a/docs/api/math/vector4/constructor.md b/docs/api/math/vector4/constructor.md deleted file mode 100644 index 45d4fbe0..00000000 --- a/docs/api/math/vector4/constructor.md +++ /dev/null @@ -1,25 +0,0 @@ -# Vector4::Vector4 - -使用四个分量构造四维向量。 - -```cpp -constexpr Vector4(float x, float y, float z, float w) -``` - -**参数:** -- `x` - X 分量 -- `y` - Y 分量 -- `z` - Z 分量 -- `w` - W 分量(通常用于齐次坐标) - -**返回:** 新创建的 Vector4 实例 - -**示例:** - -```cpp -Vector4 v(1.0f, 2.0f, 3.0f, 4.0f); -``` - -## 相关文档 - -- [Vector4 总览](vector4.md) - 返回类总览 diff --git a/docs/api/math/vector4/constructor_default.md b/docs/api/math/vector4/constructor_default.md deleted file mode 100644 index 0ab7b73b..00000000 --- a/docs/api/math/vector4/constructor_default.md +++ /dev/null @@ -1,20 +0,0 @@ -# Vector4::Vector4 - -```cpp -Vector4() = default; -``` - -默认构造函数,创建零向量 (0, 0, 0, 0)。 - -**返回:** 新创建的 Vector4 实例 - -**示例:** - -```cpp -Vector4 v; // (0, 0, 0, 0) -``` - -## 相关文档 - -- [Vector4 总览](vector4.md) - 返回类总览 -- [Zero](zero.md) - 返回零向量 diff --git a/docs/api/math/vector4/dot.md b/docs/api/math/vector4/dot.md deleted file mode 100644 index d5e41d41..00000000 --- a/docs/api/math/vector4/dot.md +++ /dev/null @@ -1,27 +0,0 @@ -# Vector4::Dot - -计算两个 4D 向量的点积。 - -```cpp -static float Dot(const Vector4& a, const Vector4& b) -``` - -**参数:** -- `a` - 第一个向量 -- `b` - 第二个向量 - -**返回:** `float` - 点积结果 - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector4 a(1.0f, 2.0f, 3.0f, 4.0f); -Vector4 b(4.0f, 3.0f, 2.0f, 1.0f); -float dot = Vector4::Dot(a, b); // 20.0f -``` - -## 相关文档 - -- [Vector4 总览](vector4.md) diff --git a/docs/api/math/vector4/one.md b/docs/api/math/vector4/one.md deleted file mode 100644 index 4217b000..00000000 --- a/docs/api/math/vector4/one.md +++ /dev/null @@ -1,21 +0,0 @@ -# Vector4::One - -返回单位向量 (1, 1, 1, 1)。 - -```cpp -static Vector4 One() -``` - -**返回:** `Vector4` - 值为 (1, 1, 1, 1) 的向量 - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector4 unit = Vector4::One(); -``` - -## 相关文档 - -- [Vector4 总览](vector4.md) diff --git a/docs/api/math/vector4/operator-add.md b/docs/api/math/vector4/operator-add.md deleted file mode 100644 index cef75b8d..00000000 --- a/docs/api/math/vector4/operator-add.md +++ /dev/null @@ -1,24 +0,0 @@ -# Vector4::operator+ - -```cpp -Vector4 operator+(const Vector4& other) const -``` - -向量加法。 - -**参数:** -- `other` - 要相加的向量 - -**返回:** `Vector4` - 相加结果向量 - -**示例:** - -```cpp -Vector4 a(1.0f, 2.0f, 3.0f, 4.0f); -Vector4 b(5.0f, 6.0f, 7.0f, 8.0f); -Vector4 c = a + b; // (6, 8, 10, 12) -``` - -## 相关文档 - -- [Vector4 总览](vector4.md) - 返回类总览 diff --git a/docs/api/math/vector4/operator-brackets.md b/docs/api/math/vector4/operator-brackets.md deleted file mode 100644 index 0db6df94..00000000 --- a/docs/api/math/vector4/operator-brackets.md +++ /dev/null @@ -1,28 +0,0 @@ -# Vector4::operator[] - -```cpp -float operator[](int index) const -float& operator[](int index) -``` - -通过下标访问向量分量。 - -**参数:** -- `index` - 分量索引 (0=x, 1=y, 2=z, 3=w) - -**返回:** `float` 或 `float&` - 对应分量的值(常量版本返回值,左值版本返回引用) - -**注意事项:** 未进行边界检查。index 应在 [0, 3] 范围内。 - -**示例:** - -```cpp -Vector4 v(1.0f, 2.0f, 3.0f, 4.0f); -float x = v[0]; // 1.0f -float w = v[3]; // 4.0f -v[1] = 5.0f; // v 变为 (1, 5, 3, 4) -``` - -## 相关文档 - -- [Vector4 总览](vector4.md) - 返回类总览 diff --git a/docs/api/math/vector4/operator-eq.md b/docs/api/math/vector4/operator-eq.md deleted file mode 100644 index 67b7ea71..00000000 --- a/docs/api/math/vector4/operator-eq.md +++ /dev/null @@ -1,25 +0,0 @@ -# Vector4::operator== - -```cpp -bool operator==(const Vector4& other) const -``` - -判断两个向量是否相等。 - -**参数:** -- `other` - 要比较的向量 - -**返回:** `bool` - 如果所有分量差的绝对值都小于 EPSILON 则返回 true,否则返回 false - -**示例:** - -```cpp -Vector4 a(1.0f, 2.0f, 3.0f, 4.0f); -Vector4 b(1.0f, 2.0f, 3.0f, 4.0f); -bool eq = (a == b); // true -``` - -## 相关文档 - -- [Vector4 总览](vector4.md) - 返回类总览 -- [operator!=](operator-ne.md) - 不等比较 diff --git a/docs/api/math/vector4/operator-mul.md b/docs/api/math/vector4/operator-mul.md deleted file mode 100644 index f5ea0a72..00000000 --- a/docs/api/math/vector4/operator-mul.md +++ /dev/null @@ -1,23 +0,0 @@ -# Vector4::operator* - -```cpp -Vector4 operator*(float scalar) const -``` - -向量与标量乘法。 - -**参数:** -- `scalar` - 标量值 - -**返回:** `Vector4` - 缩放后的向量 - -**示例:** - -```cpp -Vector4 v(1.0f, 2.0f, 3.0f, 4.0f); -Vector4 scaled = v * 2.0f; // (2, 4, 6, 8) -``` - -## 相关文档 - -- [Vector4 总览](vector4.md) - 返回类总览 diff --git a/docs/api/math/vector4/operator-ne.md b/docs/api/math/vector4/operator-ne.md deleted file mode 100644 index 6ccbef21..00000000 --- a/docs/api/math/vector4/operator-ne.md +++ /dev/null @@ -1,24 +0,0 @@ -# Vector4::operator!= - -```cpp -bool operator!=(const Vector4& other) const -``` - -判断两个向量是否不相等。 - -**参数:** -- `other` - 要比较的向量 - -**返回:** `bool` - 如果任何分量差的绝对值大于等于 EPSILON 则返回 true,否则返回 false - -**示例:** - -```cpp -Vector4 a(1.0f, 2.0f, 3.0f, 4.0f); -Vector4 b(5.0f, 6.0f, 7.0f, 8.0f); -bool ne = (a != b); // true -``` - -## 相关文档 - -- [Vector4 总览](vector4.md) - 返回类总览 diff --git a/docs/api/math/vector4/operator-neg.md b/docs/api/math/vector4/operator-neg.md deleted file mode 100644 index 0d335fe8..00000000 --- a/docs/api/math/vector4/operator-neg.md +++ /dev/null @@ -1,26 +0,0 @@ -# Vector4::operator- - -```cpp -Vector4 operator-() const -``` - -一元负号运算符,返回当前向量的负向量。 - -**返回:** `Vector4` - 每个分量取负的新向量 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector4 v(1.0f, 2.0f, 3.0f, 4.0f); -Vector4 neg = -v; // (-1.0f, -2.0f, -3.0f, -4.0f) -``` - -## 相关文档 - -- [Vector4 总览](vector4.md) -- [`operator+`](operator-add.md) - 加法 -- [`operator-`](operator-sub.md) - 二元减法 diff --git a/docs/api/math/vector4/operator-sub.md b/docs/api/math/vector4/operator-sub.md deleted file mode 100644 index cb1b9c5e..00000000 --- a/docs/api/math/vector4/operator-sub.md +++ /dev/null @@ -1,24 +0,0 @@ -# Vector4::operator- - -```cpp -Vector4 operator-(const Vector4& other) const -``` - -向量减法。 - -**参数:** -- `other` - 要相减的向量 - -**返回:** `Vector4` - 相减结果向量 - -**示例:** - -```cpp -Vector4 a(5.0f, 6.0f, 7.0f, 8.0f); -Vector4 b(1.0f, 2.0f, 3.0f, 4.0f); -Vector4 c = a - b; // (4, 4, 4, 4) -``` - -## 相关文档 - -- [Vector4 总览](vector4.md) - 返回类总览 diff --git a/docs/api/math/vector4/project.md b/docs/api/math/vector4/project.md deleted file mode 100644 index 8bae0932..00000000 --- a/docs/api/math/vector4/project.md +++ /dev/null @@ -1,27 +0,0 @@ -# Vector4::Project - -将向量投影到法线向量上。 - -```cpp -static Vector4 Project(const Vector4& vector, const Vector4& onNormal) -``` - -**参数:** -- `vector` - 要投影的向量 -- `onNormal` - 投影到的法线向量 - -**返回:** `Vector4` - 投影结果 - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector4 v(1.0f, 1.0f, 1.0f, 1.0f); -Vector4 normal(1.0f, 0.0f, 0.0f, 0.0f); -Vector4 projected = Vector4::Project(v, normal); // (1, 0, 0, 0) -``` - -## 相关文档 - -- [Vector4 总览](vector4.md) diff --git a/docs/api/math/vector4/to-vector3.md b/docs/api/math/vector4/to-vector3.md deleted file mode 100644 index 753ab049..00000000 --- a/docs/api/math/vector4/to-vector3.md +++ /dev/null @@ -1,23 +0,0 @@ -# Vector4::ToVector3 - -将 Vector4 转换为 Vector3,丢弃 w 分量。 - -```cpp -Vector3 ToVector3() const -``` - -**返回:** `Vector3` - 转换后的 Vector3 (x, y, z) - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector4 pos4(1.0f, 2.0f, 3.0f, 1.0f); -Vector3 pos3 = pos4.ToVector3(); // (1, 2, 3) -``` - -## 相关文档 - -- [Vector4 总览](vector4.md) -- [Vector3 总览](../vector3/vector3.md) diff --git a/docs/api/math/vector4/vector4.md b/docs/api/math/vector4/vector4.md deleted file mode 100644 index 70df5adc..00000000 --- a/docs/api/math/vector4/vector4.md +++ /dev/null @@ -1,71 +0,0 @@ -# Vector4 - -**命名空间**: `XCEngine::Math` - -**类型**: `struct` - -**头文件**: `XCEngine/Core/Math/Vector4.h` - -**描述**: 四维向量,用于齐次坐标变换和四元数相关计算 - -## 概述 - -Vector4 是四维向量结构体,常用于: -- 齐次坐标变换(x, y, z, w) -- RGBA 颜色表示 -- SIMD 矢量操作 -- 四元数分量存储 - -## 结构体成员 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| `x` | `float` | X 分量 | `0.0f` | -| `y` | `float` | Y 分量 | `0.0f` | -| `z` | `float` | Z 分量 | `0.0f` | -| `w` | `float` | W 分量(齐次坐标) | `0.0f` | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Vector4()`](constructor_default.md) | 默认构造函数,创建零向量 | -| [`Vector4(x, y, z, w)`](constructor.md) | 从四个分量构造向量 | -| [`Vector4(Vector3, w)`](constructor-vector3.md) | 从 Vector3 构造(w 默认 0) | -| [`Zero`](zero.md) | 返回零向量 (0, 0, 0, 0) | -| [`One`](one.md) | 返回单位向量 (1, 1, 1, 1) | -| [`Dot`](dot.md) | 计算两个向量的点积 | -| [`Project`](project.md) | 将向量投影到法线向量上 | -| [`ToVector3`](to-vector3.md) | 转换为 Vector3 | -| [`operator[]`](./operator-brackets.md) | 下标访问分量 | -| [`operator+`](operator-add.md) | 向量加法 | -| [`operator-`](operator-sub.md) | 向量减法 | -| [`operator*`](operator-mul.md) | 向量数乘 | -| [`operator==`](operator-eq.md) | 相等比较 | -| [`operator!=`](operator-ne.md) | 不等比较 | - -## 使用示例 - -```cpp -#include -#include -#include - -int main() { - Vector4 a(1.0f, 2.0f, 3.0f, 4.0f); - Vector4 b(4.0f, 3.0f, 2.0f, 1.0f); - - Vector4 sum = a + b; - Vector4 scaled = a * 2.0f; - float dot = Vector4::Dot(a, b); - - Vector4 projected = Vector4::Project(a, Vector4(1.0f, 0.0f, 0.0f, 0.0f)); - Vector3 v3 = a.ToVector3(); - - return 0; -} -``` - -## 相关文档 - -- [Math 模块总览](../math.md) - Math 模块总览 diff --git a/docs/api/math/vector4/zero.md b/docs/api/math/vector4/zero.md deleted file mode 100644 index 406c6f78..00000000 --- a/docs/api/math/vector4/zero.md +++ /dev/null @@ -1,22 +0,0 @@ -# Vector4::Zero - -返回零向量 (0, 0, 0, 0)。 - -```cpp -static Vector4 Zero() -``` - -**返回:** `Vector4` - 值为 (0, 0, 0, 0) 的向量 - -**复杂度:** O(1) - -**示例:** - -```cpp -Vector4 origin = Vector4::Zero(); -``` - -## 相关文档 - -- [Vector4 总览](vector4.md) - diff --git a/docs/api/math/viewport/getaspectratio.md b/docs/api/math/viewport/getaspectratio.md deleted file mode 100644 index e1a9355f..00000000 --- a/docs/api/math/viewport/getaspectratio.md +++ /dev/null @@ -1,18 +0,0 @@ -# Viewport::GetAspectRatio - -```cpp -float GetAspectRatio() const -``` - -获取视口宽高比。 - -**返回:** `float` - 宽高比 (width / height),height 为 0 时返回 0.0f - -**复杂度:** O(1) - -**示例:** - -```cpp -Viewport viewport(0, 0, 1920, 1080); -float aspect = viewport.GetAspectRatio(); // 1.777... (16:9) -``` diff --git a/docs/api/math/viewport/getrect.md b/docs/api/math/viewport/getrect.md deleted file mode 100644 index 274b8be1..00000000 --- a/docs/api/math/viewport/getrect.md +++ /dev/null @@ -1,18 +0,0 @@ -# Viewport::GetRect - -```cpp -Rect GetRect() const -``` - -将视口转换为 Rect。 - -**返回:** `Rect` - 对应的矩形 (x, y, width, height),不包含深度范围 - -**复杂度:** O(1) - -**示例:** - -```cpp -Viewport viewport(0, 0, 1920, 1080, 0.0f, 1.0f); -Rect rect = viewport.GetRect(); // (0, 0, 1920, 1080) -``` diff --git a/docs/api/math/viewport/viewport.md b/docs/api/math/viewport/viewport.md deleted file mode 100644 index 12917763..00000000 --- a/docs/api/math/viewport/viewport.md +++ /dev/null @@ -1,45 +0,0 @@ -# Viewport - -渲染视口结构体,用于屏幕到归一化坐标的映射。 - -**头文件:** `#include ` - -**命名空间:** `XCEngine::Math` - -## 结构体定义 - -```cpp -struct Viewport { - float x = 0.0f; - float y = 0.0f; - float width = 0.0f; - float height = 0.0f; - float minDepth = 0.0f; - float maxDepth = 1.0f; - - Viewport() = default; - Viewport(float x, float y, float w, float h); - Viewport(float x, float y, float w, float h, float minD, float maxD); -}; -``` - -## 构造函数 - -| 方法 | 描述 | -|------|------| -| `Viewport()` | 默认构造 | -| `Viewport(x, y, w, h)` | 2D 视口 | -| `Viewport(x, y, w, h, minD, maxD)` | 带深度范围的 3D 视口 | - -## 方法 - -| 方法 | 返回值 | 描述 | -|------|--------|------| -| [GetAspectRatio()](getaspectratio.md) | `float` | 宽高比 (width / height) | -| [GetRect()](getrect.md) | `Rect` | 转换为 Rect | - -## 相关文档 - -- [Math 模块总览](../math.md) - 返回 Math 模块总览 -- [Rect](../rect/rect-overview.md) - 浮点矩形 -- [RectInt](../rectint/rectint.md) - 整数矩形 diff --git a/docs/api/memory/allocator/allocate.md b/docs/api/memory/allocator/allocate.md deleted file mode 100644 index c7c7fbc8..00000000 --- a/docs/api/memory/allocator/allocate.md +++ /dev/null @@ -1,38 +0,0 @@ -# IAllocator::Allocate - -```cpp -virtual void* Allocate(size_t size, size_t alignment = 0) = 0; -``` - -从分配器请求指定大小的内存块。如果 `alignment` 大于 0,则返回的地址将按该对齐值对齐。分配成功时返回有效指针,失败时返回 `nullptr` 或抛出异常(取决于具体实现)。 - -**参数:** -- `size` - 请求的字节数 -- `alignment` - 内存对齐要求,默认为 0(表示使用实现默认对齐) - -**返回:** 分配成功返回已分配内存块的指针,失败返回 `nullptr` - -**复杂度:** O(1)(固定块分配器)或 O(n)(需要搜索合适大小的块) - -**示例:** - -```cpp -#include - -class MyAllocator : public IAllocator { -public: - void* Allocate(size_t size, size_t alignment = 0) override { - // 使用系统 new 分配 - return ::operator new(size); - } - // ... 其他方法实现 -}; - -MyAllocator alloc; -void* ptr = alloc.Allocate(256); // 分配 256 字节 -void* aligned = alloc.Allocate(64, 16); // 分配 64 字节,16 字节对齐 -``` - -## 相关文档 - -- [IAllocator 总览](allocator.md) - 返回类总览 diff --git a/docs/api/memory/allocator/allocator.md b/docs/api/memory/allocator/allocator.md deleted file mode 100644 index 0e9293d0..00000000 --- a/docs/api/memory/allocator/allocator.md +++ /dev/null @@ -1,75 +0,0 @@ -# IAllocator - -**命名空间**: `XCEngine::Memory` - -**类型**: `class` (abstract interface) - -**头文件**: `XCEngine/Memory/Allocator.h` - -**描述**: 内存分配器抽象接口,定义标准分配协议。 - -## 概述 - -`IAllocator` 是 XCEngine 内存管理系统的核心抽象接口。它定义了分配、释放和重新分配内存的标准方法,以及内存统计接口。所有专用分配器(LinearAllocator、PoolAllocator、ProxyAllocator)都实现此接口。 - -## 公共方法 - -### 内存操作 - -| 方法 | 描述 | -|------|------| -| [`Allocate`](allocate.md) | 分配内存 | -| [`Free`](free.md) | 释放内存 | -| [`Reallocate`](reallocate.md) | 重新分配内存 | - -### 统计信息 - -| 方法 | 描述 | -|------|------| -| [`GetTotalAllocated`](get-total-allocated.md) | 获取已分配总字节数 | -| [`GetTotalFreed`](get-total-freed.md) | 获取已释放总字节数 | -| [`GetPeakAllocated`](get-peak-allocated.md) | 获取峰值分配字节数 | -| [`GetAllocationCount`](get-allocation-count.md) | 获取分配次数 | - -### 元信息 - -| 方法 | 描述 | -|------|------| -| [`GetName`](get-name.md) | 获取分配器名称 | - -## 使用示例 - -```cpp -#include - -class MyAllocator : public IAllocator { -public: - void* Allocate(size_t size, size_t alignment = 0) override { - return ::operator new(size); - } - - void Free(void* ptr) override { - ::operator delete(ptr); - } - - void* Reallocate(void* ptr, size_t newSize) override { - void* newPtr = Allocate(newSize); - Free(ptr); - return newPtr; - } - - size_t GetTotalAllocated() const override { return m_allocated; } - size_t GetTotalFreed() const override { return m_freed; } - size_t GetPeakAllocated() const override { return m_peak; } - size_t GetAllocationCount() const override { return m_count; } - const char* GetName() const override { return "MyAllocator"; } -}; -``` - -## 相关文档 - -- [Memory 模块总览](../memory.md) - 返回模块总览 -- [MemoryManager](../manager/manager.md) - 内存管理器 -- [LinearAllocator](../linear-allocator/linear-allocator.md) - 线性分配器 -- [PoolAllocator](../pool-allocator/pool-allocator.md) - 内存池分配器 -- [ProxyAllocator](../proxy-allocator/proxy-allocator.md) - 代理分配器 diff --git a/docs/api/memory/allocator/free.md b/docs/api/memory/allocator/free.md deleted file mode 100644 index 172fff45..00000000 --- a/docs/api/memory/allocator/free.md +++ /dev/null @@ -1,40 +0,0 @@ -# IAllocator::Free - -```cpp -virtual void Free(void* ptr) = 0; -``` - -释放之前通过 `Allocate` 分配的内存块。如果 `ptr` 为 `nullptr`,则此调用无效果。部分分配器(如 LinearAllocator)可能不支持此操作。 - -**参数:** -- `ptr` - 指向要释放内存块的指针 - -**返回:** 无 - -**复杂度:** O(1)(固定块释放)或 O(n)(需要搜索) - -**示例:** - -```cpp -#include - -class MyAllocator : public IAllocator { -public: - void* Allocate(size_t size, size_t alignment = 0) override { - return ::operator new(size); - } - - void Free(void* ptr) override { - if (ptr) ::operator delete(ptr); - } - // ... 其他方法实现 -}; - -MyAllocator alloc; -void* ptr = alloc.Allocate(512); -alloc.Free(ptr); // 释放内存 -``` - -## 相关文档 - -- [IAllocator 总览](allocator.md) - 返回类总览 diff --git a/docs/api/memory/allocator/get-allocation-count.md b/docs/api/memory/allocator/get-allocation-count.md deleted file mode 100644 index 627e9cc2..00000000 --- a/docs/api/memory/allocator/get-allocation-count.md +++ /dev/null @@ -1,52 +0,0 @@ -# IAllocator::GetAllocationCount - -```cpp -virtual size_t GetAllocationCount() const = 0; -``` - -返回当前处于已分配状态(未释放)的内存块数量。此方法用于监控活跃分配的数量。 - -**参数:** 无 - -**返回:** 当前已分配块的数量 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -class MyAllocator : public IAllocator { - size_t m_count = 0; -public: - void* Allocate(size_t size, size_t alignment = 0) override { - ++m_count; - return ::operator new(size); - } - - void Free(void* ptr) override { - if (ptr) { - --m_count; - ::operator delete(ptr); - } - } - - void* Reallocate(void* ptr, size_t newSize) override { /* ... */ } - - size_t GetTotalAllocated() const override { return 0; } - size_t GetTotalFreed() const override { return 0; } - size_t GetPeakAllocated() const override { return 0; } - size_t GetAllocationCount() const override { return m_count; } - const char* GetName() const override { return "MyAllocator"; } -}; - -MyAllocator alloc; -alloc.Allocate(64); -alloc.Allocate(128); -size_t count = alloc.GetAllocationCount(); // 返回 2 -``` - -## 相关文档 - -- [IAllocator 总览](allocator.md) - 返回类总览 diff --git a/docs/api/memory/allocator/get-name.md b/docs/api/memory/allocator/get-name.md deleted file mode 100644 index 47155e1b..00000000 --- a/docs/api/memory/allocator/get-name.md +++ /dev/null @@ -1,40 +0,0 @@ -# IAllocator::GetName - -```cpp -virtual const char* GetName() const = 0; -``` - -返回分配器的名称字符串。此方法用于调试、日志记录和内存报告,帮助识别不同分配器的使用情况。 - -**参数:** 无 - -**返回:** 分配器的名称字符串 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -class MyAllocator : public IAllocator { -public: - void* Allocate(size_t size, size_t alignment = 0) override { return ::operator new(size); } - void Free(void* ptr) override { if (ptr) ::operator delete(ptr); } - void* Reallocate(void* ptr, size_t newSize) override { /* ... */ } - - size_t GetTotalAllocated() const override { return 0; } - size_t GetTotalFreed() const override { return 0; } - size_t GetPeakAllocated() const override { return 0; } - size_t GetAllocationCount() const override { return 0; } - const char* GetName() const override { return "MyAllocator"; } -}; - -MyAllocator alloc; -const char* name = alloc.GetName(); // 返回 "MyAllocator" -printf("Allocator: %s\n", name); -``` - -## 相关文档 - -- [IAllocator 总览](allocator.md) - 返回类总览 diff --git a/docs/api/memory/allocator/get-peak-allocated.md b/docs/api/memory/allocator/get-peak-allocated.md deleted file mode 100644 index 9fb7f03c..00000000 --- a/docs/api/memory/allocator/get-peak-allocated.md +++ /dev/null @@ -1,57 +0,0 @@ -# IAllocator::GetPeakAllocated - -```cpp -virtual size_t GetPeakAllocated() const = 0; -``` - -返回此分配器自创建以来达到的峰值分配字节数。该值在每次分配后更新,用于监控内存使用高峰。 - -**参数:** 无 - -**返回:** 峰值分配字节数 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -class MyAllocator : public IAllocator { - size_t m_peak = 0; - size_t m_current = 0; -public: - void* Allocate(size_t size, size_t alignment = 0) override { - void* ptr = ::operator new(size); - m_current += size; - if (m_current > m_peak) m_peak = m_current; - return ptr; - } - - void Free(void* ptr) override { - if (ptr) { - // size 需要分配器内部记录或通过其他机制获取 - ::operator delete(ptr); - m_current -= 256; // 示例中硬编码 - } - } - - void* Reallocate(void* ptr, size_t newSize) override { /* ... */ } - - size_t GetTotalAllocated() const override { return 0; } - size_t GetTotalFreed() const override { return 0; } - size_t GetPeakAllocated() const override { return m_peak; } - size_t GetAllocationCount() const override { return 0; } - const char* GetName() const override { return "MyAllocator"; } -}; - -MyAllocator alloc; -alloc.Allocate(100); -size_t peak1 = alloc.GetPeakAllocated(); // 100 -alloc.Allocate(50); -size_t peak2 = alloc.GetPeakAllocated(); // 150 -``` - -## 相关文档 - -- [IAllocator 总览](allocator.md) - 返回类总览 diff --git a/docs/api/memory/allocator/get-total-allocated.md b/docs/api/memory/allocator/get-total-allocated.md deleted file mode 100644 index 182b8444..00000000 --- a/docs/api/memory/allocator/get-total-allocated.md +++ /dev/null @@ -1,50 +0,0 @@ -# IAllocator::GetTotalAllocated - -```cpp -virtual size_t GetTotalAllocated() const = 0; -``` - -返回此分配器自创建以来累计分配的字节总数。这是一个只读查询操作,不会修改任何内部状态。 - -**参数:** 无 - -**返回:** 累计已分配的字节数 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -class MyAllocator : public IAllocator { - size_t m_allocated = 0; -public: - void* Allocate(size_t size, size_t alignment = 0) override { - void* ptr = ::operator new(size); - m_allocated += size; - return ptr; - } - - void Free(void* ptr) override { - if (ptr) ::operator delete(ptr); - } - - void* Reallocate(void* ptr, size_t newSize) override { /* ... */ } - - size_t GetTotalAllocated() const override { return m_allocated; } - size_t GetTotalFreed() const override { return 0; } - size_t GetPeakAllocated() const override { return m_allocated; } - size_t GetAllocationCount() const override { return 0; } - const char* GetName() const override { return "MyAllocator"; } -}; - -MyAllocator alloc; -alloc.Allocate(100); -alloc.Allocate(200); -size_t total = alloc.GetTotalAllocated(); // 返回 300 -``` - -## 相关文档 - -- [IAllocator 总览](allocator.md) - 返回类总览 diff --git a/docs/api/memory/allocator/get-total-freed.md b/docs/api/memory/allocator/get-total-freed.md deleted file mode 100644 index ee9cb385..00000000 --- a/docs/api/memory/allocator/get-total-freed.md +++ /dev/null @@ -1,48 +0,0 @@ -# IAllocator::GetTotalFreed - -```cpp -virtual size_t GetTotalFreed() const = 0; -``` - -返回此分配器自创建以来累计释放的字节总数。部分分配器(如 LinearAllocator)可能始终返回 0,因为它们不跟踪单个释放操作。 - -**参数:** 无 - -**返回:** 累计已释放的字节数 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -class MyAllocator : public IAllocator { -public: - void* Allocate(size_t size, size_t alignment = 0) override { return ::operator new(size); } - - void Free(void* ptr) override { - if (ptr) { - // size 需要分配器内部记录或通过其他机制获取 - ::operator delete(ptr); - } - } - - void* Reallocate(void* ptr, size_t newSize) override { /* ... */ } - - size_t GetTotalAllocated() const override { return 0; } - size_t GetTotalFreed() const override { return 0; } // 示例未实际统计 - size_t GetPeakAllocated() const override { return 0; } - size_t GetAllocationCount() const override { return 0; } - const char* GetName() const override { return "MyAllocator"; } -}; - -MyAllocator alloc; -void* ptr = alloc.Allocate(128); -alloc.Free(ptr); -size_t freed = alloc.GetTotalFreed(); // 返回 0(示例未统计) -``` - -## 相关文档 - -- [IAllocator 总览](allocator.md) - 返回类总览 diff --git a/docs/api/memory/allocator/reallocate.md b/docs/api/memory/allocator/reallocate.md deleted file mode 100644 index 345fbba2..00000000 --- a/docs/api/memory/allocator/reallocate.md +++ /dev/null @@ -1,55 +0,0 @@ -# IAllocator::Reallocate - -```cpp -virtual void* Reallocate(void* ptr, size_t newSize) = 0; -``` - -调整已分配内存块的大小。如果 `ptr` 为 `nullptr`,行为等同于 `Allocate(newSize)`。如果 `newSize` 为 0,行为等同于 `Free(ptr)` 并返回 `nullptr`。如果分配器不支持重新分配,应返回 `nullptr` 并保持原内存不变。 - -**参数:** -- `ptr` - 指向现有内存块的指针 -- `newSize` - 新的字节大小 - -**返回:** 调整后的新内存块指针(可能与原指针不同) - -**复杂度:** O(n),需要分配新内存并复制数据 - -**示例:** - -```cpp -#include - -class MyAllocator : public IAllocator { -public: - void* Allocate(size_t size, size_t alignment = 0) override { - return ::operator new(size); - } - - void Free(void* ptr) override { - if (ptr) ::operator delete(ptr); - } - - void* Reallocate(void* ptr, size_t newSize) override { - if (newSize == 0) { - Free(ptr); - return nullptr; - } - if (!ptr) return Allocate(newSize); - - size_t oldSize = /* 需要外部记录 */ 256; // 示例中硬编码 - void* newPtr = Allocate(newSize); - memcpy(newPtr, ptr, oldSize < newSize ? oldSize : newSize); - Free(ptr); - return newPtr; - } - // ... 其他方法实现 -}; - -MyAllocator alloc; -void* ptr = alloc.Allocate(128); -void* bigger = alloc.Reallocate(ptr, 256); // 扩展到 256 字节 -``` - -## 相关文档 - -- [IAllocator 总览](allocator.md) - 返回类总览 diff --git a/docs/api/memory/linear-allocator/allocate.md b/docs/api/memory/linear-allocator/allocate.md deleted file mode 100644 index 228dec23..00000000 --- a/docs/api/memory/linear-allocator/allocate.md +++ /dev/null @@ -1,41 +0,0 @@ -# LinearAllocator::Allocate - -```cpp -void* Allocate(size_t size, size_t alignment = 8) override; -``` - -在缓冲区的当前位置顺序分配内存。每次分配都会将内部偏移量向前推进(对齐后)。如果剩余空间不足,则分配失败返回 `nullptr`。默认对齐值为 8 字节。 - -**参数:** -- `size` - 请求的字节数 -- `alignment` - 内存对齐要求,默认为 8 字节 - -**返回:** 分配成功返回已对齐的指针,失败返回 `nullptr` - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -LinearAllocator allocator(1024); - -// 分配 256 字节(8 字节对齐) -void* ptr1 = allocator.Allocate(256); - -// 分配 128 字节(16 字节对齐) -void* ptr2 = allocator.Allocate(128, 16); - -// 分配 64 字节(默认 8 字节对齐) -void* ptr3 = allocator.Allocate(64); - -// 检查是否成功 -if (!ptr1) { - // 分配失败,缓冲区已满 -} -``` - -## 相关文档 - -- [LinearAllocator 总览](linear-allocator.md) - 返回类总览 diff --git a/docs/api/memory/linear-allocator/clear.md b/docs/api/memory/linear-allocator/clear.md deleted file mode 100644 index 6a6f879c..00000000 --- a/docs/api/memory/linear-allocator/clear.md +++ /dev/null @@ -1,37 +0,0 @@ -# LinearAllocator::Clear - -```cpp -void Clear(); -``` - -清空分配器,将内部偏移量重置为 0,所有已分配的内存被视为已释放。下一次 `Allocate` 将从缓冲区起始位置开始。此方法不实际释放或修改底层内存,适合作为帧分配器使用,每帧开始时调用 Clear 重置。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -LinearAllocator allocator(1024 * 1024); - -// 第一帧 -void* frame1_ptr = allocator.Allocate(256); -void* frame1_ptr2 = allocator.Allocate(128); -// ... 第一帧渲染逻辑 - -// 帧结束时清空 -allocator.Clear(); - -// 第二帧重新开始 -void* frame2_ptr = allocator.Allocate(256); -// 此时 frame1_ptr 已无效,但内存已被回收复用 -``` - -## 相关文档 - -- [LinearAllocator 总览](linear-allocator.md) - 返回类总览 diff --git a/docs/api/memory/linear-allocator/constructor.md b/docs/api/memory/linear-allocator/constructor.md deleted file mode 100644 index 8fe40fd4..00000000 --- a/docs/api/memory/linear-allocator/constructor.md +++ /dev/null @@ -1,36 +0,0 @@ -# LinearAllocator::LinearAllocator - -```cpp -explicit LinearAllocator(size_t size, IAllocator* parent = nullptr); -``` - -构造一个线性分配器,预分配指定大小的缓冲区。如果提供了 `parent` 分配器,则使用它分配底层缓冲区;否则使用系统默认分配(`_aligned_malloc`,8 字节对齐)。 - -**参数:** -- `size` - 预分配的缓冲区大小(字节数) -- `parent` - 父分配器,用于分配底层缓冲区,默认为 `nullptr`(使用系统分配) - -**返回:** 无 - -**复杂度:** O(n),需要分配 `size` 大小的缓冲区 - -**示例:** - -```cpp -#include - -// 使用系统分配器创建 1MB 线性分配器 -LinearAllocator allocator1(1024 * 1024); - -// 使用指定的父分配器 -IAllocator* parent = MemoryManager::Get().GetSystemAllocator(); -LinearAllocator allocator2(1024 * 1024, parent); - -// 默认 8 字节对齐 -void* ptr = allocator1.Allocate(256); -``` - -## 相关文档 - -- [LinearAllocator 总览](linear-allocator.md) - 返回类总览 -- [IAllocator](../allocator/allocator.md) - 分配器接口 diff --git a/docs/api/memory/linear-allocator/free.md b/docs/api/memory/linear-allocator/free.md deleted file mode 100644 index 0b6e491c..00000000 --- a/docs/api/memory/linear-allocator/free.md +++ /dev/null @@ -1,35 +0,0 @@ -# LinearAllocator::Free - -```cpp -void Free(void* ptr) override; -``` - -此方法对 LinearAllocator 无实际效果。线性分配器不支持单个内存块的释放,因为内存是顺序分配的,释放中间某块会破坏后续分配的完整性。需要释放所有内存时使用 `Clear()` 方法。 - -**参数:** -- `ptr` - 被忽略 - -**返回:** 无 - -**复杂度:** O(1)(空操作) - -**示例:** - -```cpp -#include - -LinearAllocator allocator(1024); -void* ptr = allocator.Allocate(256); -void* ptr2 = allocator.Allocate(128); - -// Free 实际上什么都不做 -allocator.Free(ptr); -allocator.Free(ptr2); - -// 如需释放所有内存,应使用 Clear -allocator.Clear(); -``` - -## 相关文档 - -- [LinearAllocator 总览](linear-allocator.md) - 返回类总览 diff --git a/docs/api/memory/linear-allocator/get-allocation-count.md b/docs/api/memory/linear-allocator/get-allocation-count.md deleted file mode 100644 index 852c0744..00000000 --- a/docs/api/memory/linear-allocator/get-allocation-count.md +++ /dev/null @@ -1,31 +0,0 @@ -# LinearAllocator::GetAllocationCount - -```cpp -size_t GetAllocationCount() const override; -``` - -返回自分配器创建以来的累计分配次数。线性分配器不支持单个块释放,始终返回 0。 - -**参数:** 无 - -**返回:** 始终返回 `0` - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -LinearAllocator allocator(1024); - -allocator.Allocate(256); -allocator.Allocate(128); -allocator.Allocate(64); - -size_t count = allocator.GetAllocationCount(); // 0(不支持计数) -``` - -## 相关文档 - -- [LinearAllocator 总览](linear-allocator.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/memory/linear-allocator/get-capacity.md b/docs/api/memory/linear-allocator/get-capacity.md deleted file mode 100644 index 23fdbcfa..00000000 --- a/docs/api/memory/linear-allocator/get-capacity.md +++ /dev/null @@ -1,33 +0,0 @@ -# LinearAllocator::GetCapacity - -```cpp -size_t GetCapacity() const; -``` - -返回分配器的总容量,即预分配缓冲区的大小。此值在构造时确定,之后保持不变。 - -**参数:** 无 - -**返回:** 总容量(字节数) - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -LinearAllocator allocator(1024 * 1024); // 1MB - -size_t capacity = allocator.GetCapacity(); // 1048576 - -allocator.Allocate(512); -allocator.Allocate(256); - -size_t used = allocator.GetUsedSize(); // 768 -size_t remaining = allocator.GetCapacity() - allocator.GetUsedSize(); // 1047808 -``` - -## 相关文档 - -- [LinearAllocator 总览](linear-allocator.md) - 返回类总览 diff --git a/docs/api/memory/linear-allocator/get-marker.md b/docs/api/memory/linear-allocator/get-marker.md deleted file mode 100644 index 7d335ee4..00000000 --- a/docs/api/memory/linear-allocator/get-marker.md +++ /dev/null @@ -1,43 +0,0 @@ -# LinearAllocator::GetMarker - -```cpp -void* GetMarker() const; -``` - -获取当前分配位置的标记。标记是内部偏移量(`m_offset`)的快照,以 `void*` 类型返回。将此值传给 `SetMarker` 可恢复到该位置。此方法用于实现临时分配的撤销功能。 - -**参数:** 无 - -**返回:** 当前位置标记(偏移量值,类型为 `void*`) - -**注意:** 返回值是偏移量数值的指针表示,不是真实内存指针。将其传给 `SetMarker` 可恢复到此分配位置。 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -LinearAllocator allocator(1024); - -// 分配一些数据 -void* ptr1 = allocator.Allocate(128); - -// 保存标记(用于回滚点) -void* marker = allocator.GetMarker(); - -// 分配临时数据 -void* temp = allocator.Allocate(64); -void* temp2 = allocator.Allocate(32); - -// 临时数据用完了,恢复到标记位置 -allocator.SetMarker(marker); - -// 此时 temp 和 temp2 的内存已被回收 -// ptr1 仍然有效 -``` - -## 相关文档 - -- [LinearAllocator 总览](linear-allocator.md) - 返回类总览 diff --git a/docs/api/memory/linear-allocator/get-name.md b/docs/api/memory/linear-allocator/get-name.md deleted file mode 100644 index 01cccc58..00000000 --- a/docs/api/memory/linear-allocator/get-name.md +++ /dev/null @@ -1,27 +0,0 @@ -# LinearAllocator::GetName - -```cpp -const char* GetName() const override; -``` - -返回分配器的名称字符串,用于调试和日志输出。 - -**参数:** 无 - -**返回:** 固定返回 `"LinearAllocator"` - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -LinearAllocator allocator(1024); - -const char* name = allocator.GetName(); // "LinearAllocator" -``` - -## 相关文档 - -- [LinearAllocator 总览](linear-allocator.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/memory/linear-allocator/get-peak-allocated.md b/docs/api/memory/linear-allocator/get-peak-allocated.md deleted file mode 100644 index 18ac10e5..00000000 --- a/docs/api/memory/linear-allocator/get-peak-allocated.md +++ /dev/null @@ -1,33 +0,0 @@ -# LinearAllocator::GetPeakAllocated - -```cpp -size_t GetPeakAllocated() const override; -``` - -返回自分配器创建以来的峰值分配字节数。对于线性分配器,这等于总容量(`m_capacity`)。 - -**参数:** 无 - -**返回:** 峰值分配字节数(等于容量) - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -LinearAllocator allocator(1024); - -size_t peak = allocator.GetPeakAllocated(); // 1024(容量) - -allocator.Allocate(512); -size_t used = allocator.GetUsedSize(); // 512 - -// 即使未达到容量,峰值仍为容量大小 -size_t peak_after = allocator.GetPeakAllocated(); // 1024 -``` - -## 相关文档 - -- [LinearAllocator 总览](linear-allocator.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/memory/linear-allocator/get-total-allocated.md b/docs/api/memory/linear-allocator/get-total-allocated.md deleted file mode 100644 index efa78f4b..00000000 --- a/docs/api/memory/linear-allocator/get-total-allocated.md +++ /dev/null @@ -1,36 +0,0 @@ -# LinearAllocator::GetTotalAllocated - -```cpp -size_t GetTotalAllocated() const override; -``` - -返回自分配器创建以来的累计分配字节数。对于线性分配器,这等于当前已使用的字节数(`m_offset`)。 - -**参数:** 无 - -**返回:** 累计已分配的字节数 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -LinearAllocator allocator(1024); - -size_t total1 = allocator.GetTotalAllocated(); // 0 - -allocator.Allocate(256); -allocator.Allocate(128); - -size_t total2 = allocator.GetTotalAllocated(); // 384 - -allocator.Clear(); - -size_t total3 = allocator.GetTotalAllocated(); // 0(Clear 后重置) -``` - -## 相关文档 - -- [LinearAllocator 总览](linear-allocator.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/memory/linear-allocator/get-total-freed.md b/docs/api/memory/linear-allocator/get-total-freed.md deleted file mode 100644 index ce5a375a..00000000 --- a/docs/api/memory/linear-allocator/get-total-freed.md +++ /dev/null @@ -1,30 +0,0 @@ -# LinearAllocator::GetTotalFreed - -```cpp -size_t GetTotalFreed() const override; -``` - -返回自分配器创建以来的累计释放字节数。线性分配器不支持单个块释放,始终返回 0。 - -**参数:** 无 - -**返回:** 始终返回 `0` - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -LinearAllocator allocator(1024); - -void* ptr = allocator.Allocate(256); -allocator.Free(ptr); // 无实际效果 - -size_t freed = allocator.GetTotalFreed(); // 0 -``` - -## 相关文档 - -- [LinearAllocator 总览](linear-allocator.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/memory/linear-allocator/get-used-size.md b/docs/api/memory/linear-allocator/get-used-size.md deleted file mode 100644 index 898859bb..00000000 --- a/docs/api/memory/linear-allocator/get-used-size.md +++ /dev/null @@ -1,39 +0,0 @@ -# LinearAllocator::GetUsedSize - -```cpp -size_t GetUsedSize() const; -``` - -返回当前已使用的字节数,即内部偏移量的值。此值在 `Allocate` 后增加,在 `Clear` 或 `SetMarker` 后可能减少(取决于设置的目标位置)。 - -**参数:** 无 - -**返回:** 已使用的字节数 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -LinearAllocator allocator(1024); - -size_t before = allocator.GetUsedSize(); // 0 - -allocator.Allocate(128); -allocator.Allocate(256); - -size_t after = allocator.GetUsedSize(); // 384 - -void* marker = allocator.GetMarker(); -allocator.Allocate(64); -size_t with_temp = allocator.GetUsedSize(); // 448 - -allocator.SetMarker(marker); -size_t after_rollback = allocator.GetUsedSize(); // 384 -``` - -## 相关文档 - -- [LinearAllocator 总览](linear-allocator.md) - 返回类总览 diff --git a/docs/api/memory/linear-allocator/linear-allocator.md b/docs/api/memory/linear-allocator/linear-allocator.md deleted file mode 100644 index 003af947..00000000 --- a/docs/api/memory/linear-allocator/linear-allocator.md +++ /dev/null @@ -1,38 +0,0 @@ -# LinearAllocator - -**命名空间**: `XCEngine::Memory` - -**类型**: `class` - -**头文件**: `XCEngine/Memory/LinearAllocator.h` - -**描述**: 线性分配器,适合帧分配和临时对象。 - -## 概述 - -`LinearAllocator` 是一种顺序分配器,预分配一个大缓冲区,每次分配从缓冲区起始位置顺序分配,偏移量递增。它不适合需要释放任意块的场景,但分配和清除非常高效,常用于帧分配器。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`LinearAllocator`](constructor.md) | 构造线性分配器 | -| [`~LinearAllocator`](~linear-allocator.md) | 析构函数,释放底层缓冲区 | -| [`Allocate`](allocate.md) | 顺序分配内存 | -| [`Free`](free.md) | 无效果(不支持) | -| [`Reallocate`](reallocate.md) | 不支持(始终返回 nullptr) | -| [`Clear`](clear.md) | 清空所有分配 | -| [`GetMarker`](get-marker.md) | 获取当前位置标记 | -| [`SetMarker`](set-marker.md) | 回滚到指定标记位置 | -| [`GetUsedSize`](get-used-size.md) | 获取已使用字节数 | -| [`GetCapacity`](get-capacity.md) | 获取总容量 | -| [`GetName`](get-name.md) | 获取分配器名称 | -| [`GetTotalAllocated`](get-total-allocated.md) | 获取累计分配字节数 | -| [`GetTotalFreed`](get-total-freed.md) | 获取累计释放字节数 | -| [`GetPeakAllocated`](get-peak-allocated.md) | 获取峰值分配字节数 | -| [`GetAllocationCount`](get-allocation-count.md) | 获取分配次数 | - -## 相关文档 - -- [Memory 模块总览](../memory.md) - 返回模块总览 -- [IAllocator](../allocator/allocator.md) - 分配器接口 diff --git a/docs/api/memory/linear-allocator/reallocate.md b/docs/api/memory/linear-allocator/reallocate.md deleted file mode 100644 index ec4fd1b6..00000000 --- a/docs/api/memory/linear-allocator/reallocate.md +++ /dev/null @@ -1,35 +0,0 @@ -# LinearAllocator::Reallocate - -```cpp -void* Reallocate(void* ptr, size_t newSize) override; -``` - -线性分配器不支持重新分配。此方法始终返回 `nullptr`,原内存块保持不变。由于线性分配器的顺序分配特性,无法调整现有块的大小。 - -**参数:** -- `ptr` - 不被使用(始终返回 nullptr) -- `newSize` - 不被使用(始终返回 nullptr) - -**返回:** 始终返回 `nullptr` - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -LinearAllocator allocator(1024); -void* ptr1 = allocator.Allocate(128); - -// Reallocate 不支持,始终返回 nullptr -void* ptr2 = allocator.Reallocate(ptr1, 256); -if (!ptr2) { - // 线性分配器不支持重新分配 - // ptr1 仍然有效 -} -``` - -## 相关文档 - -- [LinearAllocator 总览](linear-allocator.md) - 返回类总览 diff --git a/docs/api/memory/linear-allocator/set-marker.md b/docs/api/memory/linear-allocator/set-marker.md deleted file mode 100644 index b2fa9371..00000000 --- a/docs/api/memory/linear-allocator/set-marker.md +++ /dev/null @@ -1,41 +0,0 @@ -# LinearAllocator::SetMarker - -```cpp -void SetMarker(void* marker); -``` - -恢复到之前通过 `GetMarker` 获取的标记位置。所有在标记之后的分配都将被丢弃,内部偏移量重置为该标记位置。此方法不会释放内存,只是移动偏移量指针。 - -**参数:** -- `marker` - 通过 `GetMarker` 获取的标记指针 - -**返回:** 无 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -LinearAllocator allocator(1024); - -// 基础数据 -void* base = allocator.Allocate(256); -void* marker = allocator.GetMarker(); - -// 可选的扩展数据 -void* ext1 = allocator.Allocate(64); -void* ext2 = allocator.Allocate(128); - -// 决定不使用扩展数据,回滚 -allocator.SetMarker(marker); - -// 扩展数据内存已被回收 -// 可以重新分配其他数据 -void* new_data = allocator.Allocate(128); -``` - -## 相关文档 - -- [LinearAllocator 总览](linear-allocator.md) - 返回类总览 diff --git a/docs/api/memory/linear-allocator/~linear-allocator.md b/docs/api/memory/linear-allocator/~linear-allocator.md deleted file mode 100644 index 9112c655..00000000 --- a/docs/api/memory/linear-allocator/~linear-allocator.md +++ /dev/null @@ -1,29 +0,0 @@ -# LinearAllocator::~LinearAllocator - -```cpp -~LinearAllocator() override; -``` - -销毁线性分配器,释放预分配的缓冲区。如果提供了 `parent` 分配器,则使用它释放缓冲区;否则使用系统默认释放(`_aligned_free`)。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -{ - LinearAllocator allocator(1024 * 1024); - void* ptr = allocator.Allocate(256); - // ... 使用 allocator -} // 析构时自动释放 1MB 缓冲区 -``` - -## 相关文档 - -- [LinearAllocator 总览](linear-allocator.md) - 返回类总览 diff --git a/docs/api/memory/manager/create-linear-allocator.md b/docs/api/memory/manager/create-linear-allocator.md deleted file mode 100644 index c0475b6b..00000000 --- a/docs/api/memory/manager/create-linear-allocator.md +++ /dev/null @@ -1,32 +0,0 @@ -# MemoryManager::CreateLinearAllocator - -```cpp -std::unique_ptr CreateLinearAllocator(size_t size); -``` - -创建并返回一个新的 LinearAllocator 实例,使用系统分配器作为底层。返回的 `unique_ptr` 管理分配器生命周期。 - -**参数:** -- `size` - 分配器缓冲区大小(字节) - -**返回:** LinearAllocator 的 unique_ptr - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -auto linear = MemoryManager::Get().CreateLinearAllocator(1024 * 1024); -void* ptr = linear->Allocate(256); -void* marker = linear->GetMarker(); -linear->Allocate(128); -linear->SetMarker(marker); -linear->Clear(); -``` - -## 相关文档 - -- [MemoryManager 总览](manager.md) - 返回类总览 -- [LinearAllocator](../linear-allocator/linear-allocator.md) - 线性分配器 diff --git a/docs/api/memory/manager/create-pool-allocator.md b/docs/api/memory/manager/create-pool-allocator.md deleted file mode 100644 index 4f096d58..00000000 --- a/docs/api/memory/manager/create-pool-allocator.md +++ /dev/null @@ -1,37 +0,0 @@ -# MemoryManager::CreatePoolAllocator - -```cpp -std::unique_ptr CreatePoolAllocator(size_t blockSize, size_t count); -``` - -创建并返回一个新的 PoolAllocator 实例,使用系统分配器作为底层。返回的 `unique_ptr` 管理分配器生命周期。 - -**参数:** -- `blockSize` - 每个内存块的大小(字节) -- `count` - 内存池中块的数量 - -**返回:** PoolAllocator 的 unique_ptr - -**复杂度:** O(blockSize * count)(需要预分配所有块) - -**示例:** - -```cpp -#include - -struct Particle { - float x, y, z; - float life; -}; - -auto pool = MemoryManager::Get().CreatePoolAllocator(sizeof(Particle), 1000); -void* block = pool->Allocate(); -auto* p = new (block) Particle{1.0f, 2.0f, 3.0f, 5.0f}; -p->~Particle(); -pool->Free(block); -``` - -## 相关文档 - -- [MemoryManager 总览](manager.md) - 返回类总览 -- [PoolAllocator](../pool-allocator/pool-allocator.md) - 内存池分配器 diff --git a/docs/api/memory/manager/create-proxy-allocator.md b/docs/api/memory/manager/create-proxy-allocator.md deleted file mode 100644 index de9bb5e5..00000000 --- a/docs/api/memory/manager/create-proxy-allocator.md +++ /dev/null @@ -1,36 +0,0 @@ -# MemoryManager::CreateProxyAllocator - -```cpp -std::unique_ptr CreateProxyAllocator(const char* name); -``` - -创建并返回一个新的 ProxyAllocator 实例,包装系统分配器并使用指定名称。返回的 `unique_ptr` 管理分配器生命周期。 - -**参数:** -- `name` - 代理分配器的名称 - -**返回:** ProxyAllocator 的 unique_ptr - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -auto proxy = MemoryManager::Get().CreateProxyAllocator("FrameData"); -void* ptr = proxy->Allocate(1024); -void* ptr2 = proxy->Allocate(512); - -const auto& stats = proxy->GetStats(); -printf("Peak: %zu bytes, Count: %zu\n", - stats.peakAllocated, stats.allocationCount); - -proxy->Free(ptr); -proxy->Free(ptr2); -``` - -## 相关文档 - -- [MemoryManager 总览](manager.md) - 返回类总览 -- [ProxyAllocator](../proxy-allocator/proxy-allocator.md) - 代理分配器 diff --git a/docs/api/memory/manager/dump-memory-leaks.md b/docs/api/memory/manager/dump-memory-leaks.md deleted file mode 100644 index 3ec9f1dc..00000000 --- a/docs/api/memory/manager/dump-memory-leaks.md +++ /dev/null @@ -1,31 +0,0 @@ -# MemoryManager::DumpMemoryLeaks - -```cpp -void DumpMemoryLeaks(); -``` - -输出当前未释放的内存分配信息。如果启用了内存跟踪,此方法会遍历所有记录并报告疑似泄漏的分配。应在程序退出前调用,以便发现资源泄漏。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(n) - -**示例:** - -```cpp -#include - -MemoryManager::Get().Initialize(); - -// ... 程序运行 ... - -// 程序退出前检查泄漏 -MemoryManager::Get().DumpMemoryLeaks(); -MemoryManager::Get().Shutdown(); -``` - -## 相关文档 - -- [MemoryManager 总览](manager.md) - 返回类总览 diff --git a/docs/api/memory/manager/generate-memory-report.md b/docs/api/memory/manager/generate-memory-report.md deleted file mode 100644 index b665957e..00000000 --- a/docs/api/memory/manager/generate-memory-report.md +++ /dev/null @@ -1,37 +0,0 @@ -# MemoryManager::GenerateMemoryReport - -```cpp -void GenerateMemoryReport(); -``` - -生成并输出当前内存使用情况的详细报告。报告内容包括各分配器的统计信息、峰值使用量、分配次数等。应在启用内存跟踪后调用。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(n) - -**示例:** - -```cpp -#include - -MemoryManager::Get().Initialize(); - -auto proxy = MemoryManager::Get().CreateProxyAllocator("GameFrame"); -proxy->Allocate(1024 * 1024); -proxy->Allocate(512 * 1024); - -// 生成内存报告 -MemoryManager::Get().GenerateMemoryReport(); - -proxy->Free(proxy->Allocate(256 * 1024)); -MemoryManager::Get().GenerateMemoryReport(); - -MemoryManager::Get().Shutdown(); -``` - -## 相关文档 - -- [MemoryManager 总览](manager.md) - 返回类总览 diff --git a/docs/api/memory/manager/get-system-allocator.md b/docs/api/memory/manager/get-system-allocator.md deleted file mode 100644 index 34a3ebd4..00000000 --- a/docs/api/memory/manager/get-system-allocator.md +++ /dev/null @@ -1,27 +0,0 @@ -# MemoryManager::GetSystemAllocator - -```cpp -IAllocator* GetSystemAllocator(); -``` - -获取系统默认分配器。该分配器使用标准 C 库的 `std::malloc` 和平台特定的对齐分配函数(如 Windows 的 `_aligned_malloc`)作为后端,适用于通用内存分配场景。 - -**参数:** 无 - -**返回:** 系统分配器指针 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -IAllocator* sysAlloc = MemoryManager::Get().GetSystemAllocator(); -void* ptr = sysAlloc->Allocate(1024); -sysAlloc->Free(ptr); -``` - -## 相关文档 - -- [MemoryManager 总览](manager.md) - 返回类总览 diff --git a/docs/api/memory/manager/get.md b/docs/api/memory/manager/get.md deleted file mode 100644 index c4eb11c5..00000000 --- a/docs/api/memory/manager/get.md +++ /dev/null @@ -1,39 +0,0 @@ -# MemoryManager::Get - -```cpp -static MemoryManager& Get(); -``` - -获取 MemoryManager 单例实例。如果尚未创建则内部构造。此方法是获取内存管理器实例的唯一途径。 - -**参数:** 无 - -**返回:** MemoryManager 单例引用 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -// 获取单例 -MemoryManager& manager = MemoryManager::Get(); - -// 初始化 -manager.Initialize(); - -// 访问系统分配器 -IAllocator* sysAlloc = manager.GetSystemAllocator(); - -// 关闭 -manager.Shutdown(); - -// 多次调用返回同一实例 -MemoryManager& manager2 = MemoryManager::Get(); -// manager == manager2 为 true -``` - -## 相关文档 - -- [MemoryManager 总览](manager.md) - 返回类总览 diff --git a/docs/api/memory/manager/initialize.md b/docs/api/memory/manager/initialize.md deleted file mode 100644 index c95c0460..00000000 --- a/docs/api/memory/manager/initialize.md +++ /dev/null @@ -1,33 +0,0 @@ -# MemoryManager::Initialize - -```cpp -void Initialize(); -``` - -初始化内存管理器。创建系统默认分配器,设置内存跟踪标志。应在程序启动早期调用,且仅可调用一次。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(n) - -**示例:** - -```cpp -#include - -int main() { - // 程序启动时初始化 - MemoryManager::Get().Initialize(); - - // 使用内存系统... - - MemoryManager::Get().Shutdown(); - return 0; -} -``` - -## 相关文档 - -- [MemoryManager 总览](manager.md) - 返回类总览 diff --git a/docs/api/memory/manager/manager.md b/docs/api/memory/manager/manager.md deleted file mode 100644 index 940b17a0..00000000 --- a/docs/api/memory/manager/manager.md +++ /dev/null @@ -1,87 +0,0 @@ -# MemoryManager - -**命名空间**: `XCEngine::Memory` - -**类型**: `class` (singleton) - -**头文件**: `XCEngine/Memory/MemoryManager.h` - -**描述**: 全局内存管理器单例,提供系统分配器和各种专用分配器的创建。 - -## 概述 - -`MemoryManager` 是 XCEngine 内存管理系统的核心单例。它负责维护系统分配器,提供分配器工厂方法,并支持内存泄漏检测和报告。 - -## 单例访问 - -| 方法 | 描述 | -|------|------| -| [`Get`](get.md) | 获取单例实例 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Initialize`](initialize.md) | 初始化内存管理器 | -| [`Shutdown`](shutdown.md) | 关闭内存管理器 | -| [`GetSystemAllocator`](get-system-allocator.md) | 获取系统默认分配器 | -| [`CreateLinearAllocator`](create-linear-allocator.md) | 创建线性分配器 | -| [`CreatePoolAllocator`](create-pool-allocator.md) | 创建内存池分配器 | -| [`CreateProxyAllocator`](create-proxy-allocator.md) | 创建代理分配器 | -| [`SetTrackAllocations`](set-track-allocations.md) | 设置是否跟踪分配 | -| [`DumpMemoryLeaks`](dump-memory-leaks.md) | 输出内存泄漏报告 | -| [`GenerateMemoryReport`](generate-memory-report.md) | 生成内存使用报告 | - -## 宏定义 - -### XE_ALLOC - -```cpp -#define XE_ALLOC(allocator, size, ...) allocator->Allocate(size, ##__VA_ARGS__) -``` - -内存分配宏。 - -### XE_FREE - -```cpp -#define XE_FREE(allocator, ptr) allocator->Free(ptr) -``` - -内存释放宏。 - -## 使用示例 - -```cpp -#include - -// 初始化 -MemoryManager::Get().Initialize(); - -// 获取系统分配器 -IAllocator* sysAlloc = MemoryManager::Get().GetSystemAllocator(); - -// 创建专用分配器 -auto linearAlloc = MemoryManager::Get().CreateLinearAllocator(1024 * 1024); -auto poolAlloc = MemoryManager::Get().CreatePoolAllocator(sizeof(MyObject), 1000); -auto proxyAlloc = MemoryManager::Get().CreateProxyAllocator("GameFrame"); - -// 使用宏分配 -void* ptr = XE_ALLOC(proxyAlloc, 256); -XE_FREE(proxyAlloc, ptr); - -// 跟踪内存 -MemoryManager::Get().SetTrackAllocations(true); -MemoryManager::Get().GenerateMemoryReport(); - -// 关闭 -MemoryManager::Get().Shutdown(); -``` - -## 相关文档 - -- [Memory 模块总览](../memory.md) - 返回模块总览 -- [IAllocator](../allocator/allocator.md) - 分配器接口 -- [LinearAllocator](../linear-allocator/linear-allocator.md) - 线性分配器 -- [PoolAllocator](../pool-allocator/pool-allocator.md) - 内存池分配器 -- [ProxyAllocator](../proxy-allocator/proxy-allocator.md) - 代理分配器 diff --git a/docs/api/memory/manager/set-track-allocations.md b/docs/api/memory/manager/set-track-allocations.md deleted file mode 100644 index 2b559995..00000000 --- a/docs/api/memory/manager/set-track-allocations.md +++ /dev/null @@ -1,35 +0,0 @@ -# MemoryManager::SetTrackAllocations - -```cpp -void SetTrackAllocations(bool track); -``` - -设置是否启用内存分配跟踪。启用后系统会记录所有分配操作,用于生成内存报告和泄漏检测。 - -**参数:** -- `track` - true 启用跟踪,false 禁用跟踪 - -**返回:** 无 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -MemoryManager::Get().Initialize(); - -// 禁用跟踪(提升性能) -MemoryManager::Get().SetTrackAllocations(false); - -// ... 大量内存操作 ... - -// 重新启用跟踪进行分析 -MemoryManager::Get().SetTrackAllocations(true); -MemoryManager::Get().GenerateMemoryReport(); -``` - -## 相关文档 - -- [MemoryManager 总览](manager.md) - 返回类总览 diff --git a/docs/api/memory/manager/shutdown.md b/docs/api/memory/manager/shutdown.md deleted file mode 100644 index f631f5bc..00000000 --- a/docs/api/memory/manager/shutdown.md +++ /dev/null @@ -1,35 +0,0 @@ -# MemoryManager::Shutdown - -```cpp -void Shutdown(); -``` - -关闭内存管理器。执行内存泄漏检测报告,释放系统分配器。应在程序退出前调用。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(n) - -**示例:** - -```cpp -#include - -int main() { - MemoryManager::Get().Initialize(); - - // ... 游戏主循环 ... - - // 程序退出前关闭 - MemoryManager::Get().DumpMemoryLeaks(); - MemoryManager::Get().Shutdown(); - - return 0; -} -``` - -## 相关文档 - -- [MemoryManager 总览](manager.md) - 返回类总览 diff --git a/docs/api/memory/memory.md b/docs/api/memory/memory.md deleted file mode 100644 index 1b156a90..00000000 --- a/docs/api/memory/memory.md +++ /dev/null @@ -1,77 +0,0 @@ -# Memory 模块概览 - -**命名空间**: `XCEngine::Memory` - -**类型**: `module` - -**头文件**: `XCEngine/Memory/MemoryManager.h` - -**描述**: XCEngine 的内存管理模块,提供多种内存分配器实现。 - -## 概述 - -Memory 模块提供了一套完整的内存管理解决方案,包括基础分配器接口和各种专用分配器实现。 - -## 模块内容 - -### 分配器接口 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [IAllocator](allocator/allocator.md) | `Allocator.h` | 内存分配器抽象接口 | - -### 分配器实现 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [LinearAllocator](linear-allocator/linear-allocator.md) | `LinearAllocator.h` | 线性分配器,适合帧分配 | -| [PoolAllocator](pool-allocator/pool-allocator.md) | `PoolAllocator.h` | 内存池分配器,适合固定大小对象 | -| [ProxyAllocator](proxy-allocator/proxy-allocator.md) | `ProxyAllocator.h` | 代理分配器,用于统计和跟踪 | - -### 管理器 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [MemoryManager](manager/manager.md) | `MemoryManager.h` | 全局内存管理器 | - -## 分配器类型对比 - -| 分配器 | 适用场景 | 特点 | -|--------|----------|------| -| `IAllocator` | 基类接口 | 定义标准分配协议 | -| `LinearAllocator` | 帧分配、临时对象 | 快速分配,只支持按顺序释放 | -| `PoolAllocator` | 同尺寸对象池 | 高效分配,消除碎片 | -| `ProxyAllocator` | 调试和统计 | 记录分配信息,跟踪内存使用 | - -## 宏定义 - -| 宏 | 描述 | -|----|------| -| `XE_ALLOC(allocator, size, ...)` | 内存分配宏 | -| `XE_FREE(allocator, ptr)` | 内存释放宏 | - -## 使用示例 - -```cpp -#include - -// 初始化内存管理器 -MemoryManager::Get().Initialize(); - -// 获取系统分配器 -IAllocator* sysAlloc = MemoryManager::Get().GetSystemAllocator(); - -// 创建线性分配器 -auto linearAlloc = MemoryManager::Get().CreateLinearAllocator(1024 * 1024); - -// 使用代理分配器跟踪统计 -auto proxyAlloc = MemoryManager::Get().CreateProxyAllocator("FrameData"); - -// 分配内存 -void* ptr = XE_ALLOC(linearAlloc, 1024); -XE_FREE(linearAlloc, ptr); -``` - -## 相关文档 - -- [Containers 模块](../containers/containers.md) - 使用分配器的容器 diff --git a/docs/api/memory/pool-allocator/allocate.md b/docs/api/memory/pool-allocator/allocate.md deleted file mode 100644 index ce71f8d5..00000000 --- a/docs/api/memory/pool-allocator/allocate.md +++ /dev/null @@ -1,38 +0,0 @@ -# PoolAllocator::Allocate - -```cpp -void* Allocate(size_t size, size_t alignment = 0) override; -``` - -从内存池中分配一个空闲块。每次分配一个固定大小的块。如果 `size` 超过块大小或池中没有空闲块,返回 `nullptr`。分配操作从空闲链表头部取出一个块。 - -**参数:** -- `size` - 请求的大小,如果超过构造时指定的块大小则分配失败 -- `alignment` - 被忽略(构造时确定) - -**返回:** 分配成功返回块指针,池空返回 `nullptr` - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -// 创建能容纳 1000 个整数的内存池 -PoolAllocator pool(sizeof(int), 1000, alignof(int)); - -// 分配(忽略 size 参数,只分配固定大小的块) -void* block1 = pool.Allocate(1); // 分配一块(实际大小为 sizeof(int)) -void* block2 = pool.Allocate(10000); // 也分配一块(实际大小为 sizeof(int)) - -if (block1 && block2) { - // 使用分配的内存块 - int* arr = static_cast(block1); - arr[0] = 42; -} -``` - -## 相关文档 - -- [PoolAllocator 总览](pool-allocator.md) - 返回类总览 diff --git a/docs/api/memory/pool-allocator/constructor.md b/docs/api/memory/pool-allocator/constructor.md deleted file mode 100644 index 8b5cc517..00000000 --- a/docs/api/memory/pool-allocator/constructor.md +++ /dev/null @@ -1,40 +0,0 @@ -# PoolAllocator::PoolAllocator - -```cpp -PoolAllocator(size_t blockSize, size_t poolSize, size_t alignment = 8); -``` - -构造内存池分配器,预分配 `poolSize` 个大小为 `blockSize` 字节的内存块。内存块按 `alignment` 对齐(默认 8 字节)。内部维护一个空闲链表来管理分配。 - -**参数:** -- `blockSize` - 每个内存块的大小(字节) -- `poolSize` - 内存池中总块数 -- `alignment` - 对齐要求,默认为 8 字节 - -**返回:** 无 - -**复杂度:** O(n),需要预分配所有块 - -**示例:** - -```cpp -#include - -struct Particle { - float x, y, z; - float vx, vy, vz; - float life; -}; - -// 创建一个能容纳 1000 个 Particle 的内存池,16 字节对齐 -PoolAllocator pool(sizeof(Particle), 1000, alignof(Particle)); - -size_t blockSize = pool.GetBlockSize(); // sizeof(Particle) -size_t total = pool.GetTotalBlockCount(); // 1000 -size_t free = pool.GetFreeBlockCount(); // 1000 -``` - -## 相关文档 - -- [PoolAllocator 总览](pool-allocator.md) - 返回类总览 -- [`~PoolAllocator`](~pool-allocator.md) - 析构函数 \ No newline at end of file diff --git a/docs/api/memory/pool-allocator/contains.md b/docs/api/memory/pool-allocator/contains.md deleted file mode 100644 index 0f078e1f..00000000 --- a/docs/api/memory/pool-allocator/contains.md +++ /dev/null @@ -1,38 +0,0 @@ -# PoolAllocator::Contains - -```cpp -bool Contains(void* ptr) const; -``` - -检查给定的指针是否属于此内存池的地址范围。由于池在构造时预分配连续内存,可通过指针地址区间判断所有权。此方法用于调试和内存验证。 - -**参数:** -- `ptr` - 要检查的指针 - -**返回:** 指针属于此池返回 `true`,否则返回 `false` - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -PoolAllocator pool(sizeof(int), 100); - -void* inside = pool.Allocate(); -void* outside = ::operator new(sizeof(int)); - -if (pool.Contains(inside)) { - // inside 属于此内存池,可以安全 Free -} - -if (!pool.Contains(outside)) { - // outside 不属于此池,不能调用 pool.Free() - ::operator delete(outside); -} -``` - -## 相关文档 - -- [PoolAllocator 总览](pool-allocator.md) - 返回类总览 diff --git a/docs/api/memory/pool-allocator/free.md b/docs/api/memory/pool-allocator/free.md deleted file mode 100644 index 6e1849b5..00000000 --- a/docs/api/memory/pool-allocator/free.md +++ /dev/null @@ -1,38 +0,0 @@ -# PoolAllocator::Free - -```cpp -void Free(void* ptr) override; -``` - -将内存块归还到空闲链表中。如果 `ptr` 为 `nullptr` 则无效果。释放操作将块插入空闲链表头部。必须传入从此池分配的指针,传入外部指针会导致未定义行为。 - -**参数:** -- `ptr` - 指向要释放的内存块 - -**返回:** 无 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -PoolAllocator pool(sizeof(int), 100); - -void* block = pool.Allocate(); -if (block) { - int* num = static_cast(block); - *num = 123; - - pool.Free(block); // 归还到空闲链表 - block = nullptr; -} - -// 检查空闲块数量 -size_t freeCount = pool.GetFreeBlockCount(); -``` - -## 相关文档 - -- [PoolAllocator 总览](pool-allocator.md) - 返回类总览 diff --git a/docs/api/memory/pool-allocator/get-allocation-count.md b/docs/api/memory/pool-allocator/get-allocation-count.md deleted file mode 100644 index 227c1830..00000000 --- a/docs/api/memory/pool-allocator/get-allocation-count.md +++ /dev/null @@ -1,40 +0,0 @@ -# PoolAllocator::GetAllocationCount - -```cpp -size_t GetAllocationCount() const override; -``` - -返回当前已分配块的数量。计算公式:`m_totalBlocks - m_freeBlocks`。 - -**参数:** 无 - -**返回:** 当前已分配块的数量 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -PoolAllocator pool(sizeof(int), 100); - -size_t count = pool.GetAllocationCount(); // 0 - -void* blocks[10]; -for (int i = 0; i < 10; ++i) { - blocks[i] = pool.Allocate(); -} - -count = pool.GetAllocationCount(); // 10 - -for (int i = 0; i < 5; ++i) { - pool.Free(blocks[i]); -} - -count = pool.GetAllocationCount(); // 5 -``` - -## 相关文档 - -- [PoolAllocator 总览](pool-allocator.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/memory/pool-allocator/get-block-size.md b/docs/api/memory/pool-allocator/get-block-size.md deleted file mode 100644 index ba6a6a4c..00000000 --- a/docs/api/memory/pool-allocator/get-block-size.md +++ /dev/null @@ -1,31 +0,0 @@ -# PoolAllocator::GetBlockSize - -```cpp -size_t GetBlockSize() const; -``` - -返回内存池中每个内存块的大小。此值在构造时确定,之后保持不变。实际分配的内存可能按对齐要求调整,但块大小返回原始请求值。 - -**参数:** 无 - -**返回:** 每个内存块的字节大小 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -PoolAllocator pool(sizeof(int) * 100, 50); - -size_t blockSize = pool.GetBlockSize(); // 400 字节 - -void* block = pool.Allocate(); -int* arr = static_cast(block); -// arr 指向的大小为 blockSize 字节的内存块 -``` - -## 相关文档 - -- [PoolAllocator 总览](pool-allocator.md) - 返回类总览 diff --git a/docs/api/memory/pool-allocator/get-free-block-count.md b/docs/api/memory/pool-allocator/get-free-block-count.md deleted file mode 100644 index 82ec3e92..00000000 --- a/docs/api/memory/pool-allocator/get-free-block-count.md +++ /dev/null @@ -1,40 +0,0 @@ -# PoolAllocator::GetFreeBlockCount - -```cpp -size_t GetFreeBlockCount() const; -``` - -返回当前空闲块的的数量。每次 `Allocate` 成功后减 1,每次 `Free` 后加 1。 - -**参数:** 无 - -**返回:** 当前可分配的空闲块数量 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -PoolAllocator pool(sizeof(int), 100); - -size_t initial = pool.GetFreeBlockCount(); // 100 - -void* blocks[10]; -for (int i = 0; i < 10; ++i) { - blocks[i] = pool.Allocate(); -} - -size_t after = pool.GetFreeBlockCount(); // 90 - -for (int i = 0; i < 5; ++i) { - pool.Free(blocks[i]); -} - -size_t final = pool.GetFreeBlockCount(); // 95 -``` - -## 相关文档 - -- [PoolAllocator 总览](pool-allocator.md) - 返回类总览 diff --git a/docs/api/memory/pool-allocator/get-name.md b/docs/api/memory/pool-allocator/get-name.md deleted file mode 100644 index 0df12e8a..00000000 --- a/docs/api/memory/pool-allocator/get-name.md +++ /dev/null @@ -1,29 +0,0 @@ -# PoolAllocator::GetName - -```cpp -const char* GetName() const override; -``` - -返回分配器的名称字符串 "PoolAllocator"。用于调试和日志记录。 - -**参数:** 无 - -**返回:** 固定返回 `"PoolAllocator"` 字符串 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -PoolAllocator pool(sizeof(int), 100); - -const char* name = pool.GetName(); // "PoolAllocator" -std::cout << "Allocator: " << name << std::endl; -``` - -## 相关文档 - -- [PoolAllocator 总览](pool-allocator.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/memory/pool-allocator/get-peak-allocated.md b/docs/api/memory/pool-allocator/get-peak-allocated.md deleted file mode 100644 index 6fc842ae..00000000 --- a/docs/api/memory/pool-allocator/get-peak-allocated.md +++ /dev/null @@ -1,33 +0,0 @@ -# PoolAllocator::GetPeakAllocated - -```cpp -size_t GetPeakAllocated() const override; -``` - -返回峰值分配的内存总量(字节)。由于池在构造时预分配所有块,峰值即为 `m_totalBlocks * m_blockSize`。 - -**参数:** 无 - -**返回:** 内存池总容量(字节) - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -PoolAllocator pool(sizeof(int), 100); - -size_t peak = pool.GetPeakAllocated(); // 100 * sizeof(int) - -// 即使分配了部分块,峰值仍然是总容量 -void* block1 = pool.Allocate(); -void* block2 = pool.Allocate(); -size_t current = pool.GetTotalAllocated(); // 2 * sizeof(int) -peak = pool.GetPeakAllocated(); // 100 * sizeof(int) -``` - -## 相关文档 - -- [PoolAllocator 总览](pool-allocator.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/memory/pool-allocator/get-total-allocated.md b/docs/api/memory/pool-allocator/get-total-allocated.md deleted file mode 100644 index 1ab4fc46..00000000 --- a/docs/api/memory/pool-allocator/get-total-allocated.md +++ /dev/null @@ -1,33 +0,0 @@ -# PoolAllocator::GetTotalAllocated - -```cpp -size_t GetTotalAllocated() const override; -``` - -返回当前已分配的内存总量(字节)。计算公式:`(m_totalBlocks - m_freeBlocks) * m_blockSize`。 - -**参数:** 无 - -**返回:** 当前已分配块的字节数 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -PoolAllocator pool(sizeof(int), 100); - -size_t allocated = pool.GetTotalAllocated(); // 0 - -void* block = pool.Allocate(); -allocated = pool.GetTotalAllocated(); // sizeof(int) - -pool.Free(block); -allocated = pool.GetTotalAllocated(); // 0 -``` - -## 相关文档 - -- [PoolAllocator 总览](pool-allocator.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/memory/pool-allocator/get-total-block-count.md b/docs/api/memory/pool-allocator/get-total-block-count.md deleted file mode 100644 index 45800fc1..00000000 --- a/docs/api/memory/pool-allocator/get-total-block-count.md +++ /dev/null @@ -1,34 +0,0 @@ -# PoolAllocator::GetTotalBlockCount - -```cpp -size_t GetTotalBlockCount() const; -``` - -返回内存池中的总块数。此值在构造时确定,之后保持不变。 - -**参数:** 无 - -**返回:** 内存池的总块数 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -PoolAllocator pool(sizeof(int), 100); - -size_t total = pool.GetTotalBlockCount(); // 100 -size_t free = pool.GetFreeBlockCount(); // 100 - -void* block = pool.Allocate(); -size_t freeAfter = pool.GetFreeBlockCount(); // 99 - -pool.Free(block); -size_t freeRestored = pool.GetFreeBlockCount(); // 100 -``` - -## 相关文档 - -- [PoolAllocator 总览](pool-allocator.md) - 返回类总览 diff --git a/docs/api/memory/pool-allocator/get-total-freed.md b/docs/api/memory/pool-allocator/get-total-freed.md deleted file mode 100644 index 0eaf8fea..00000000 --- a/docs/api/memory/pool-allocator/get-total-freed.md +++ /dev/null @@ -1,33 +0,0 @@ -# PoolAllocator::GetTotalFreed - -```cpp -size_t GetTotalFreed() const override; -``` - -返回当前空闲的内存总量(字节)。计算公式:`m_freeBlocks * m_blockSize`。 - -**参数:** 无 - -**返回:** 当前空闲块的字节数 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -PoolAllocator pool(sizeof(int), 100); - -size_t freed = pool.GetTotalFreed(); // 100 * sizeof(int) - -void* block = pool.Allocate(); -freed = pool.GetTotalFreed(); // 99 * sizeof(int) - -pool.Free(block); -freed = pool.GetTotalFreed(); // 100 * sizeof(int) -``` - -## 相关文档 - -- [PoolAllocator 总览](pool-allocator.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/memory/pool-allocator/pool-allocator.md b/docs/api/memory/pool-allocator/pool-allocator.md deleted file mode 100644 index 216609a9..00000000 --- a/docs/api/memory/pool-allocator/pool-allocator.md +++ /dev/null @@ -1,80 +0,0 @@ -# PoolAllocator - -**命名空间**: `XCEngine::Memory` - -**类型**: `class` - -**头文件**: `XCEngine/Memory/PoolAllocator.h` - -**描述**: 内存池分配器,预分配固定大小的内存块池。 - -## 概述 - -`PoolAllocator` 是一种高效固定块分配器,适合需要频繁分配和释放相同大小对象的场景,如对象池、粒子系统等。它预分配 `poolSize` 个大小为 `blockSize` 字节的内存块,通过空闲链表管理分配和回收。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`PoolAllocator`](constructor.md) | 构造内存池分配器 | -| [`~PoolAllocator`](~pool-allocator.md) | 析构函数,释放整个内存池 | -| [`Allocate`](allocate.md) | 分配一个内存块 | -| [`Free`](free.md) | 释放内存块回空闲链表 | -| [`Reallocate`](reallocate.md) | 不支持(始终返回 nullptr) | -| [`Contains`](contains.md) | 检查指针是否属于此池 | -| [`GetBlockSize`](get-block-size.md) | 获取块大小 | -| [`GetFreeBlockCount`](get-free-block-count.md) | 获取空闲块数量 | -| [`GetTotalBlockCount`](get-total-block-count.md) | 获取总块数 | -| [`GetName`](get-name.md) | 获取分配器名称 | -| [`GetTotalAllocated`](get-total-allocated.md) | 获取当前已分配内存 | -| [`GetTotalFreed`](get-total-freed.md) | 获取当前空闲内存 | -| [`GetPeakAllocated`](get-peak-allocated.md) | 获取峰值分配内存 | -| [`GetAllocationCount`](get-allocation-count.md) | 获取当前分配块数量 | - -## 构造函数 - -```cpp -PoolAllocator(size_t blockSize, size_t poolSize, size_t alignment = 8); -~PoolAllocator() override; -``` - -构造内存池分配器,预分配 `poolSize` 个大小为 `blockSize` 字节的内存块。内存块按 `alignment` 对齐(默认 8 字节)。内部维护一个空闲块链表来管理分配。析构函数释放整个内存池。 - -**参数:** -- `blockSize` - 每个内存块的大小(字节) -- `poolSize` - 内存池中总块数 -- `alignment` - 对齐要求,默认为 8 - -**返回:** 无 - -**复杂度:** O(n),需要预分配所有块 - -**注意:** `Reallocate` 方法始终返回 `nullptr`,此分配器不支持重新分配。 - -**示例:** - -```cpp -#include - -struct Particle { - float x, y, z; - float vx, vy, vz; - float life; -}; - -// 创建一个能容纳 1000 个 Particle 的内存池,16 字节对齐 -PoolAllocator pool(sizeof(Particle), 1000, alignof(Particle)); - -size_t blockSize = pool.GetBlockSize(); // sizeof(Particle) -size_t total = pool.GetTotalBlockCount(); // 1000 -size_t free = pool.GetFreeBlockCount(); // 1000 - -// 分配和释放 -void* block = pool.Allocate(); -pool.Free(block); -``` - -## 相关文档 - -- [Memory 模块总览](../memory.md) - 返回模块总览 -- [IAllocator](../allocator/allocator.md) - 分配器接口 diff --git a/docs/api/memory/pool-allocator/reallocate.md b/docs/api/memory/pool-allocator/reallocate.md deleted file mode 100644 index 069730e6..00000000 --- a/docs/api/memory/pool-allocator/reallocate.md +++ /dev/null @@ -1,35 +0,0 @@ -# PoolAllocator::Reallocate - -```cpp -void* Reallocate(void* ptr, size_t newSize) override; -``` - -内存池分配器不支持重新分配。此方法始终返回 `nullptr`,原内存块保持不变。 - -**参数:** -- `ptr` - 不被使用 -- `newSize` - 不被使用 - -**返回:** 始终返回 `nullptr` - -**复杂度:** O(1) - -**示例:** - -```cpp -#include - -PoolAllocator pool(sizeof(int), 100); -void* block = pool.Allocate(); - -// Reallocate 不支持 -void* newBlock = pool.Reallocate(block, 256); -if (!newBlock) { - // 内存池不支持重新分配 - // 原 block 仍然有效 -} -``` - -## 相关文档 - -- [PoolAllocator 总览](pool-allocator.md) - 返回类总览 diff --git a/docs/api/memory/pool-allocator/~pool-allocator.md b/docs/api/memory/pool-allocator/~pool-allocator.md deleted file mode 100644 index bec36364..00000000 --- a/docs/api/memory/pool-allocator/~pool-allocator.md +++ /dev/null @@ -1,31 +0,0 @@ -# PoolAllocator::~PoolAllocator - -```cpp -~PoolAllocator() override; -``` - -销毁内存池分配器,释放预分配的所有内存块。析构函数调用 `std::free` 释放整个内存池,不再需要单独释放每个块。 - -**参数:** 无 - -**返回:** 无 - -**注意:** 析构函数释放整个内存池,包括所有已分配和空闲的块。调用析构函数后,池中所有已分配出去的块也随之失效,使用这些块指针将导致未定义行为。 - -**示例:** - -```cpp -#include - -{ - PoolAllocator pool(sizeof(int), 1000); - void* block = pool.Allocate(); - // ... 使用内存块 - - pool.Free(block); // 可选:显式释放(析构时会自动释放) -} // 超出作用域时自动释放整个内存池 -``` - -## 相关文档 - -- [PoolAllocator 总览](pool-allocator.md) - 返回类总览 diff --git a/docs/api/memory/proxy-allocator/allocate.md b/docs/api/memory/proxy-allocator/allocate.md deleted file mode 100644 index 3973c371..00000000 --- a/docs/api/memory/proxy-allocator/allocate.md +++ /dev/null @@ -1,37 +0,0 @@ -# ProxyAllocator::Allocate - -```cpp -void* Allocate(size_t size, size_t alignment = 0) override; -``` - -分配内存并记录统计。调用转发到底层分配器,同时递增分配计数和总分配字节数,并更新峰值记录。 - -**参数:** -- `size` - 请求的字节数 -- `alignment` - 内存对齐要求 - -**返回:** 分配成功返回指针,失败返回 `nullptr` - -**复杂度:** O(1)(底层分配器复杂度 + 统计更新) - -**示例:** - -```cpp -#include -#include - -IAllocator* sysAlloc = MemoryManager::Get().GetSystemAllocator(); -ProxyAllocator proxy(sysAlloc, "TrackedAlloc"); - -void* p1 = proxy.Allocate(100); -void* p2 = proxy.Allocate(200); -void* p3 = proxy.Allocate(300, 16); - -const auto& stats = proxy.GetStats(); -printf("Total: %zu, Peak: %zu, Count: %zu\n", - stats.totalAllocated, stats.peakAllocated, stats.allocationCount); -``` - -## 相关文档 - -- [ProxyAllocator 总览](proxy-allocator.md) - 返回类总览 diff --git a/docs/api/memory/proxy-allocator/constructor.md b/docs/api/memory/proxy-allocator/constructor.md deleted file mode 100644 index 58848f6d..00000000 --- a/docs/api/memory/proxy-allocator/constructor.md +++ /dev/null @@ -1,39 +0,0 @@ -# ProxyAllocator::ProxyAllocator - -```cpp -ProxyAllocator(IAllocator* underlying, const char* name); -``` - -构造一个代理分配器,包装底层分配器并记录分配统计。所有 `Allocate`、`Free`、`Reallocate` 调用都会被转发到底层分配器,同时记录统计信息。名称用于日志和报告。 - -**参数:** -- `underlying` - 被包装的底层分配器,不能为 `nullptr` -- `name` - 代理分配器的名称字符串 - -**返回:** 无 - -**复杂度:** O(1) - -**线程安全:** ✅ (内部使用 mutex 保护统计数据) - -**示例:** - -```cpp -#include -#include - -MemoryManager::Get().Initialize(); - -// 使用系统分配器作为底层 -IAllocator* sysAlloc = MemoryManager::Get().GetSystemAllocator(); -ProxyAllocator proxy(sysAlloc, "TempAllocations"); - -// 通过代理分配 -void* ptr = proxy.Allocate(1024); -proxy.Free(ptr); -``` - -## 相关文档 - -- [ProxyAllocator 总览](proxy-allocator.md) - 返回类总览 -- [`~ProxyAllocator`](~proxy-allocator.md) - 析构函数 diff --git a/docs/api/memory/proxy-allocator/free.md b/docs/api/memory/proxy-allocator/free.md deleted file mode 100644 index 1c0ec6db..00000000 --- a/docs/api/memory/proxy-allocator/free.md +++ /dev/null @@ -1,40 +0,0 @@ -# ProxyAllocator::Free - -```cpp -void Free(void* ptr) override; -``` - -释放内存并记录统计。调用转发到底层分配器,同时更新统计信息:递增 `totalFreed`(累加释放字节数),并递减 `allocationCount`。 - -**参数:** -- `ptr` - 指向要释放的内存块 - -**返回:** 无 - -**复杂度:** O(1)(底层释放 + 统计更新) - -**示例:** - -```cpp -#include -#include - -IAllocator* sysAlloc = MemoryManager::Get().GetSystemAllocator(); -ProxyAllocator proxy(sysAlloc, "TrackedAlloc"); - -void* p1 = proxy.Allocate(512); -void* p2 = proxy.Allocate(256); - -proxy.Free(p1); -proxy.Free(p2); - -const auto& stats = proxy.GetStats(); -// totalFreed 累加了释放的字节数 -// allocationCount 最终为 0 -printf("Total allocated: %zu bytes, Freed: %zu bytes, Current count: %zu\n", - stats.totalAllocated, stats.totalFreed, stats.allocationCount); -``` - -## 相关文档 - -- [ProxyAllocator 总览](proxy-allocator.md) - 返回类总览 diff --git a/docs/api/memory/proxy-allocator/get-allocation-count.md b/docs/api/memory/proxy-allocator/get-allocation-count.md deleted file mode 100644 index 62e68cda..00000000 --- a/docs/api/memory/proxy-allocator/get-allocation-count.md +++ /dev/null @@ -1,37 +0,0 @@ -# ProxyAllocator::GetAllocationCount - -```cpp -size_t GetAllocationCount() const override; -``` - -获取当前未释放的分配次数。 - -**参数:** 无 - -**返回:** 当前未释放的分配次数 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -IAllocator* sysAlloc = MemoryManager::Get().GetSystemAllocator(); -ProxyAllocator proxy(sysAlloc, "TrackedAlloc"); - -proxy.Allocate(100); -proxy.Allocate(200); -void* p = proxy.Allocate(300); -proxy.Free(p); - -size_t count = proxy.GetAllocationCount(); -printf("Current allocation count: %zu\n", count); -``` - -## 相关文档 - -- [ProxyAllocator 总览](proxy-allocator.md) - 返回类总览 diff --git a/docs/api/memory/proxy-allocator/get-name.md b/docs/api/memory/proxy-allocator/get-name.md deleted file mode 100644 index e6aeebbc..00000000 --- a/docs/api/memory/proxy-allocator/get-name.md +++ /dev/null @@ -1,32 +0,0 @@ -# ProxyAllocator::GetName - -```cpp -const char* GetName() const override; -``` - -获取分配器的名称字符串。 - -**参数:** 无 - -**返回:** 分配器名称字符串 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -IAllocator* sysAlloc = MemoryManager::Get().GetSystemAllocator(); -ProxyAllocator proxy(sysAlloc, "TrackedAlloc"); - -const char* name = proxy.GetName(); -printf("Allocator name: %s\n", name); -``` - -## 相关文档 - -- [ProxyAllocator 总览](proxy-allocator.md) - 返回类总览 diff --git a/docs/api/memory/proxy-allocator/get-peak-allocated.md b/docs/api/memory/proxy-allocator/get-peak-allocated.md deleted file mode 100644 index 0ffc4706..00000000 --- a/docs/api/memory/proxy-allocator/get-peak-allocated.md +++ /dev/null @@ -1,37 +0,0 @@ -# ProxyAllocator::GetPeakAllocated - -```cpp -size_t GetPeakAllocated() const override; -``` - -获取峰值分配的字节数。 - -**参数:** 无 - -**返回:** 峰值分配的字节数 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -IAllocator* sysAlloc = MemoryManager::Get().GetSystemAllocator(); -ProxyAllocator proxy(sysAlloc, "TrackedAlloc"); - -proxy.Allocate(100); -proxy.Allocate(200); -proxy.Free(proxy.Allocate(50)); -proxy.Free(proxy.Allocate(100)); - -size_t peakAllocated = proxy.GetPeakAllocated(); -printf("Peak allocated: %zu bytes\n", peakAllocated); -``` - -## 相关文档 - -- [ProxyAllocator 总览](proxy-allocator.md) - 返回类总览 diff --git a/docs/api/memory/proxy-allocator/get-stats.md b/docs/api/memory/proxy-allocator/get-stats.md deleted file mode 100644 index 6fab8a5f..00000000 --- a/docs/api/memory/proxy-allocator/get-stats.md +++ /dev/null @@ -1,40 +0,0 @@ -# ProxyAllocator::GetStats - -```cpp -const Stats& GetStats() const; -``` - -返回详细的统计信息结构体引用。包含累计分配、累计释放、峰值分配、分配次数和额外开销。返回 const 引用,无锁开销(内部已有互斥保护)。 - -**参数:** 无 - -**返回:** Stats 结构体 const 引用 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -IAllocator* sysAlloc = MemoryManager::Get().GetSystemAllocator(); -ProxyAllocator proxy(sysAlloc, "FrameData"); - -proxy.Allocate(1024); -proxy.Allocate(512); -proxy.Free(proxy.Allocate(256)); - -const ProxyAllocator::Stats& stats = proxy.GetStats(); -printf("Total allocated: %zu bytes\n", stats.totalAllocated); -printf("Total freed: %zu times\n", stats.totalFreed); -printf("Peak allocated: %zu bytes\n", stats.peakAllocated); -printf("Allocation count: %zu\n", stats.allocationCount); -printf("Memory overhead: %zu bytes\n", stats.memoryOverhead); -printf("Current in use: %zu bytes\n", - stats.totalAllocated - stats.allocationCount * sizeof(/* typical block */ size_t)); -``` - -## 相关文档 - -- [ProxyAllocator 总览](proxy-allocator.md) - 返回类总览 diff --git a/docs/api/memory/proxy-allocator/get-total-allocated.md b/docs/api/memory/proxy-allocator/get-total-allocated.md deleted file mode 100644 index cb589677..00000000 --- a/docs/api/memory/proxy-allocator/get-total-allocated.md +++ /dev/null @@ -1,35 +0,0 @@ -# ProxyAllocator::GetTotalAllocated - -```cpp -size_t GetTotalAllocated() const override; -``` - -获取累计分配的字节数。 - -**参数:** 无 - -**返回:** 累计分配的字节数 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -IAllocator* sysAlloc = MemoryManager::Get().GetSystemAllocator(); -ProxyAllocator proxy(sysAlloc, "TrackedAlloc"); - -proxy.Allocate(100); -proxy.Allocate(200); - -size_t totalAllocated = proxy.GetTotalAllocated(); -printf("Total allocated: %zu bytes\n", totalAllocated); -``` - -## 相关文档 - -- [ProxyAllocator 总览](proxy-allocator.md) - 返回类总览 diff --git a/docs/api/memory/proxy-allocator/get-total-freed.md b/docs/api/memory/proxy-allocator/get-total-freed.md deleted file mode 100644 index 5d7e86d0..00000000 --- a/docs/api/memory/proxy-allocator/get-total-freed.md +++ /dev/null @@ -1,35 +0,0 @@ -# ProxyAllocator::GetTotalFreed - -```cpp -size_t GetTotalFreed() const override; -``` - -获取累计释放的字节数。 - -**参数:** 无 - -**返回:** 累计释放的字节数 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include -#include - -IAllocator* sysAlloc = MemoryManager::Get().GetSystemAllocator(); -ProxyAllocator proxy(sysAlloc, "TrackedAlloc"); - -void* p1 = proxy.Allocate(100); -proxy.Free(p1); - -size_t totalFreed = proxy.GetTotalFreed(); -printf("Total freed: %zu bytes\n", totalFreed); -``` - -## 相关文档 - -- [ProxyAllocator 总览](proxy-allocator.md) - 返回类总览 diff --git a/docs/api/memory/proxy-allocator/proxy-allocator.md b/docs/api/memory/proxy-allocator/proxy-allocator.md deleted file mode 100644 index 35b89308..00000000 --- a/docs/api/memory/proxy-allocator/proxy-allocator.md +++ /dev/null @@ -1,35 +0,0 @@ -# ProxyAllocator - -**命名空间**: `XCEngine::Memory` - -**类型**: `class` - -**头文件**: `XCEngine/Memory/ProxyAllocator.h` - -**描述**: 代理分配器,用于统计和跟踪底层分配器的分配情况。 - -## 概述 - -`ProxyAllocator` 包装一个底层分配器,转发所有分配请求,同时记录详细的统计信息。它线程安全(使用互斥锁保护统计数据),适合需要监控内存使用的场景。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`ProxyAllocator`](constructor.md) | 构造代理分配器 | -| [`~ProxyAllocator`](~proxy-allocator.md) | 析构函数 | -| [`Allocate`](allocate.md) | 分配内存并记录统计 | -| [`Free`](free.md) | 释放内存并记录统计 | -| [`Reallocate`](reallocate.md) | 转发到底层分配器 | -| [`GetStats`](get-stats.md) | 获取详细统计信息 | -| [`GetTotalAllocated`](get-total-allocated.md) | 获取累计分配字节数 | -| [`GetTotalFreed`](get-total-freed.md) | 获取累计释放字节数 | -| [`GetPeakAllocated`](get-peak-allocated.md) | 获取峰值分配字节数 | -| [`GetAllocationCount`](get-allocation-count.md) | 获取分配次数 | -| [`GetName`](get-name.md) | 获取分配器名称 | - -## 相关文档 - -- [Memory 模块总览](../memory.md) - 返回模块总览 -- [IAllocator](../allocator/allocator.md) - 分配器接口 -- [MemoryManager](../manager/manager.md) - 内存管理器 diff --git a/docs/api/memory/proxy-allocator/reallocate.md b/docs/api/memory/proxy-allocator/reallocate.md deleted file mode 100644 index 7a9087ac..00000000 --- a/docs/api/memory/proxy-allocator/reallocate.md +++ /dev/null @@ -1,38 +0,0 @@ -# ProxyAllocator::Reallocate - -```cpp -void* Reallocate(void* ptr, size_t newSize) override; -``` - -重新分配内存。调用转发到底层分配器,同时更新统计信息(峰值分配和当前分配量)。此方法线程安全,内部使用互斥锁保护。 - -**参数:** -- `ptr` - 现有内存块指针 -- `newSize` - 新的字节大小 - -**返回:** 成功返回新指针,失败返回 `nullptr`(由底层分配器决定) - -**复杂度:** O(n)(底层分配器 + 数据复制) - -**示例:** - -```cpp -#include -#include - -IAllocator* sysAlloc = MemoryManager::Get().GetSystemAllocator(); -ProxyAllocator proxy(sysAlloc, "TrackedAlloc"); - -void* p1 = proxy.Allocate(128); -void* p2 = proxy.Reallocate(p1, 256); - -if (p2) { - // 重新分配成功 -} else { - // 失败,p1 仍然有效 -} -``` - -## 相关文档 - -- [ProxyAllocator 总览](proxy-allocator.md) - 返回类总览 diff --git a/docs/api/memory/proxy-allocator/~proxy-allocator.md b/docs/api/memory/proxy-allocator/~proxy-allocator.md deleted file mode 100644 index 52dbacc8..00000000 --- a/docs/api/memory/proxy-allocator/~proxy-allocator.md +++ /dev/null @@ -1,37 +0,0 @@ -# ProxyAllocator::~ProxyAllocator - -```cpp -~ProxyAllocator() override; -``` - -销毁代理分配器。不会释放底层分配器的内存,只是停止统计并转发请求。 - -**参数:** 无 - -**返回:** 无 - -**注意:** 析构函数仅销毁代理对象本身,底层分配器需要由用户单独管理。 - -**示例:** - -```cpp -#include -#include - -IAllocator* sysAlloc = MemoryManager::Get().GetSystemAllocator(); - -{ - ProxyAllocator proxy(sysAlloc, "ScopedAlloc"); - proxy.Allocate(1024); - // 超出作用域时代理被销毁,但底层分配器仍在 -} - -// 底层分配器仍可继续使用 -void* ptr = sysAlloc->Allocate(256); -sysAlloc->Free(ptr); -``` - -## 相关文档 - -- [ProxyAllocator 总览](proxy-allocator.md) - 返回类总览 -- [`ProxyAllocator`](constructor.md) - 构造函数 diff --git a/docs/api/resources/asyncloader/asyncloader.md b/docs/api/resources/asyncloader/asyncloader.md deleted file mode 100644 index 40cdb936..00000000 --- a/docs/api/resources/asyncloader/asyncloader.md +++ /dev/null @@ -1,121 +0,0 @@ -# AsyncLoader - -**命名空间**: `XCEngine::Resources` - -**类型**: `class` (singleton) - -**头文件**: `XCEngine/Core/Asset/AsyncLoader.h` - -**描述**: 异步资源加载器单例,负责多线程后台资源加载和完成回调调度。 - -## 概述 - -`AsyncLoader` 是 XCEngine 的后台异步加载系统。它使用独立工作线程从磁盘加载资源,并在加载完成后通过回调通知调用者。它维护待处理队列和完成队列,通过双缓冲机制实现无锁的线程安全操作。 - -## 单例访问 - -| 方法 | 描述 | -|------|------| -| `static AsyncLoader& Get()` | 获取单例实例 | - -## LoadRequest 结构体 - -异步加载请求结构体。 - -| 成员 | 类型 | 描述 | -|------|------|------| -| `path` | `Containers::String` | 资源路径 | -| `type` | `ResourceType` | 资源类型 | -| `callback` | `std::function` | 加载完成回调函数 | -| `settings` | `ImportSettings*` | 导入设置(可为 nullptr) | -| `requestId` | `Core::uint64` | 请求唯一标识符 | - -### 构造方法 - -| 方法 | 描述 | -|------|------| -| `LoadRequest()` | 默认构造 | -| `LoadRequest(const Containers::String& p, ResourceType t, std::function cb, ImportSettings* s = nullptr)` | 从参数构造 | -| `LoadRequest(LoadRequest&& other) noexcept` | 移动构造 | -| `LoadRequest(const LoadRequest&) = default` | 拷贝构造 | - -### 赋值 - -| 方法 | 描述 | -|------|------| -| `LoadRequest& operator=(LoadRequest&& other) noexcept` | 移动赋值 | -| `LoadRequest& operator=(const LoadRequest&) = default` | 拷贝赋值 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `void Initialize(Core::uint32 workerThreadCount = 2)` | 初始化异步加载器,创建工作线程 | -| `void Shutdown()` | 关闭异步加载器,等待所有挂起任务完成 | -| `void Submit(const Containers::String& path, ResourceType type, std::function callback)` | 提交异步加载请求 | -| `void Submit(const Containers::String& path, ResourceType type, ImportSettings* settings, std::function callback)` | 带设置的异步加载请求 | -| `void Update()` | 更新函数,在主线程调用,处理完成的加载请求 | -| `bool IsLoading() const` | 是否有正在加载的资源 | -| `Core::uint32 GetPendingCount() const` | 获取待处理加载请求数量 | -| `float GetProgress() const` | 获取整体加载进度(0.0f ~ 1.0f) | -| `void CancelAll()` | 取消所有待处理的加载请求 | -| `void Cancel(Core::uint64 requestId)` | 取消指定 ID 的加载请求 | - -### 方法详情 - -- [Initialize](initialize.md) - 初始化异步加载器 -- [Shutdown](shutdown.md) - 关闭异步加载器 -- [Submit](submit.md) - 提交异步加载请求 -- [Update](update.md) - 更新函数,处理完成的加载请求 -- [IsLoading](isloading.md) - 检查是否有正在加载的资源 -- [GetPendingCount](getpendingcount.md) - 获取待处理加载请求数量 -- [GetProgress](getprogress.md) - 获取整体加载进度 -- [CancelAll](cancelall.md) - 取消所有待处理的加载请求 -- [Cancel](cancel.md) - 取消指定 ID 的加载请求 - -## 实现说明 - -**注意**: 当前 `AsyncLoader` 的实现为部分完成状态(stub): -- `Initialize()` 工作线程数参数被忽略 -- `Submit()` 仅将请求加入队列,不进行实际异步加载 -- `Update()` 不执行实际加载,直接调用回调返回成功 -- `Cancel()` 为空实现 - -## 使用示例 - -```cpp -// 初始化(使用 4 个工作线程) -AsyncLoader::Get().Initialize(4); - -// 提交多个异步加载请求 -AsyncLoader::Get().Submit("textures/player.png", ResourceType::Texture, - [](LoadResult result) { - if (result.success) { - ResourceHandle tex(result.resource); - printf("Texture loaded: %s\n", tex->GetPath().CStr()); - } - }); - -AsyncLoader::Get().Submit("models/player.fbx", ResourceType::Mesh, - [](LoadResult result) { - if (result.success) { - ResourceHandle mesh(result.resource); - printf("Mesh loaded: %s\n", mesh->GetPath().CStr()); - } - }); - -// 在主循环中调用 Update 处理完成回调 -while (AsyncLoader::Get().IsLoading()) { - AsyncLoader::Get().Update(); // 在主线程分发回调 - // 其他渲染逻辑... -} - -// 关闭 -AsyncLoader::Get().Shutdown(); -``` - -## 相关文档 - -- [ResourceManager](../resource-manager/resource-manager.md) - 资源管理器 -- [IResourceLoader](../iloader/iloader.md) - 资源加载器接口 -- [Resources 总览](../resources.md) - 返回模块总览 diff --git a/docs/api/resources/asyncloader/cancel.md b/docs/api/resources/asyncloader/cancel.md deleted file mode 100644 index 41c342f2..00000000 --- a/docs/api/resources/asyncloader/cancel.md +++ /dev/null @@ -1,27 +0,0 @@ -# AsyncLoader::Cancel - -```cpp -void Cancel(Core::uint64 requestId) -``` - -取消指定 ID 的加载请求。 - -**参数:** -- `requestId` - 要取消的请求 ID(由 `LoadRequest::requestId` 提供) - -**返回:** 无 - -**注意:** 当前实现未完成此功能。 - -**示例:** - -```cpp -LoadRequest req("textures/player.png", ResourceType::Texture, - [](LoadResult result) { /* ... */ }); - -AsyncLoader::Get().Cancel(req.requestId); -``` - -## 相关文档 - -- [AsyncLoader 总览](asyncloader.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/resources/asyncloader/cancelall.md b/docs/api/resources/asyncloader/cancelall.md deleted file mode 100644 index 8aa163da..00000000 --- a/docs/api/resources/asyncloader/cancelall.md +++ /dev/null @@ -1,26 +0,0 @@ -# AsyncLoader::CancelAll - -```cpp -void CancelAll() -``` - -取消所有待处理的加载请求。清空待处理队列,不会触发任何回调。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(n) - -**示例:** - -```cpp -// 场景切换时取消所有加载请求 -void OnSceneChange() { - AsyncLoader::Get().CancelAll(); -} -``` - -## 相关文档 - -- [AsyncLoader 总览](asyncloader.md) - 返回类总览 diff --git a/docs/api/resources/asyncloader/getpendingcount.md b/docs/api/resources/asyncloader/getpendingcount.md deleted file mode 100644 index 126f9b60..00000000 --- a/docs/api/resources/asyncloader/getpendingcount.md +++ /dev/null @@ -1,24 +0,0 @@ -# AsyncLoader::GetPendingCount - -```cpp -Core::uint32 GetPendingCount() const -``` - -获取当前待处理的加载请求数量。 - -**参数:** 无 - -**返回:** 待处理加载请求数量 - -**复杂度:** O(1) - -**示例:** - -```cpp -Core::uint32 pending = AsyncLoader::Get().GetPendingCount(); -printf("Pending requests: %u\n", pending); -``` - -## 相关文档 - -- [AsyncLoader 总览](asyncloader.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/resources/asyncloader/getprogress.md b/docs/api/resources/asyncloader/getprogress.md deleted file mode 100644 index 3a8cc2b0..00000000 --- a/docs/api/resources/asyncloader/getprogress.md +++ /dev/null @@ -1,24 +0,0 @@ -# AsyncLoader::GetProgress - -```cpp -float GetProgress() const -``` - -获取整体加载进度。返回已完成加载数与总请求数的比值,范围 0.0f ~ 1.0f。 - -**参数:** 无 - -**返回:** 加载进度(0.0f ~ 1.0f) - -**复杂度:** O(1) - -**示例:** - -```cpp -float progress = AsyncLoader::Get().GetProgress(); -printf("Loading: %.1f%%\n", progress * 100.0f); -``` - -## 相关文档 - -- [AsyncLoader 总览](asyncloader.md) - 返回类总览 diff --git a/docs/api/resources/asyncloader/initialize.md b/docs/api/resources/asyncloader/initialize.md deleted file mode 100644 index 66a3e9a6..00000000 --- a/docs/api/resources/asyncloader/initialize.md +++ /dev/null @@ -1,24 +0,0 @@ -# AsyncLoader::Initialize - -```cpp -void Initialize(Core::uint32 workerThreadCount = 2) -``` - -初始化异步加载器。根据 `workerThreadCount` 参数创建相应数量的工作线程用于后台资源加载。 - -**参数:** -- `workerThreadCount` - 工作线程数量,默认为 2 - -**返回:** 无 - -**复杂度:** O(n),n 为创建的工作线程数 - -**示例:** - -```cpp -AsyncLoader::Get().Initialize(4); -``` - -## 相关文档 - -- [AsyncLoader 总览](asyncloader.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/resources/asyncloader/isloading.md b/docs/api/resources/asyncloader/isloading.md deleted file mode 100644 index 80a1c9bc..00000000 --- a/docs/api/resources/asyncloader/isloading.md +++ /dev/null @@ -1,25 +0,0 @@ -# AsyncLoader::IsLoading - -```cpp -bool IsLoading() const -``` - -检查是否有正在加载的资源。 - -**参数:** 无 - -**返回:** 如果有待处理或完成的加载请求返回 `true`,否则返回 `false` - -**复杂度:** O(1) - -**示例:** - -```cpp -if (AsyncLoader::Get().IsLoading()) { - printf("Resources are still loading...\n"); -} -``` - -## 相关文档 - -- [AsyncLoader 总览](asyncloader.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/resources/asyncloader/shutdown.md b/docs/api/resources/asyncloader/shutdown.md deleted file mode 100644 index 8243730f..00000000 --- a/docs/api/resources/asyncloader/shutdown.md +++ /dev/null @@ -1,23 +0,0 @@ -# AsyncLoader::Shutdown - -```cpp -void Shutdown() -``` - -关闭异步加载器。取消所有待处理的加载请求并清理资源。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(n) - -**示例:** - -```cpp -AsyncLoader::Get().Shutdown(); -``` - -## 相关文档 - -- [AsyncLoader 总览](asyncloader.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/resources/asyncloader/submit.md b/docs/api/resources/asyncloader/submit.md deleted file mode 100644 index b676f86d..00000000 --- a/docs/api/resources/asyncloader/submit.md +++ /dev/null @@ -1,36 +0,0 @@ -# AsyncLoader::Submit - -```cpp -void Submit(const Containers::String& path, ResourceType type, - std::function callback) -void Submit(const Containers::String& path, ResourceType type, ImportSettings* settings, - std::function callback) -``` - -提交异步加载请求。将请求加入待处理队列,由工作线程在后台执行加载。 - -**参数:** -- `path` - 资源路径 -- `type` - 资源类型 -- `settings` - 导入设置(可为 nullptr) -- `callback` - 加载完成回调 - -**返回:** 无 - -**复杂度:** O(1) - -**示例:** - -```cpp -AsyncLoader::Get().Submit("textures/player.png", ResourceType::Texture, - [](LoadResult result) { - if (result.success) { - ResourceHandle tex(result.resource); - } - }); -``` - -## 相关文档 - -- [AsyncLoader 总览](asyncloader.md) - 返回类总览 -- [Cancel](cancel.md) - 取消指定请求 diff --git a/docs/api/resources/asyncloader/update.md b/docs/api/resources/asyncloader/update.md deleted file mode 100644 index 946f7031..00000000 --- a/docs/api/resources/asyncloader/update.md +++ /dev/null @@ -1,27 +0,0 @@ -# AsyncLoader::Update - -```cpp -void Update() -``` - -更新函数,在主线程调用。处理完成的加载请求,将结果从完成队列取出并在主线程执行回调。必须在主线程调用以确保线程安全。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(n),n 为完成队列中的请求数 - -**示例:** - -```cpp -// 在主循环中调用 -while (running) { - AsyncLoader::Get().Update(); // 分发完成的加载回调 - RenderFrame(); -} -``` - -## 相关文档 - -- [AsyncLoader 总览](asyncloader.md) - 返回类总览 diff --git a/docs/api/resources/audio-loader/can-load.md b/docs/api/resources/audio-loader/can-load.md deleted file mode 100644 index b636c8ce..00000000 --- a/docs/api/resources/audio-loader/can-load.md +++ /dev/null @@ -1,36 +0,0 @@ -# AudioLoader::CanLoad - -## 方法签名 - -```cpp -bool CanLoad(const Containers::String& path) const override; -``` - -## 详细描述 - -根据文件扩展名判断此加载器是否能处理指定路径的资源。检测时先提取路径扩展名(小写),再与支持列表逐一比对。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `path` | `const Containers::String&` | 资源文件的完整或相对路径 | - -## 返回值 - -`bool` - 如果扩展名在支持列表中返回 `true`,否则返回 `false`。 - -## 示例 - -```cpp -AudioLoader loader; - -// 正确识别支持的格式 -bool canLoad1 = loader.CanLoad("assets/audio/bgm.ogg"); // true -bool canLoad2 = loader.CanLoad("sound_effect.wav"); // true -bool canLoad3 = loader.CanLoad("music.mp3"); // true - -// 识别不支持的格式 -bool canLoad4 = loader.CanLoad("video.avi"); // false -bool canLoad5 = loader.CanLoad("document.pdf"); // false -``` diff --git a/docs/api/resources/audio-loader/constructor.md b/docs/api/resources/audio-loader/constructor.md deleted file mode 100644 index 7a309bec..00000000 --- a/docs/api/resources/audio-loader/constructor.md +++ /dev/null @@ -1,27 +0,0 @@ -# AudioLoader::AudioLoader - -```cpp -AudioLoader(); -``` - -默认构造函数,创建一个 `AudioLoader` 实例。该加载器负责管理音频资源的加载流程。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**示例:** - -```cpp -#include "Resources/AudioLoader.h" - -using namespace XCEngine::Resources; - -AudioLoader loader; -``` - -## 相关文档 - -- [AudioLoader 总览](index.md) - 返回类总览 diff --git a/docs/api/resources/audio-loader/destructor.md b/docs/api/resources/audio-loader/destructor.md deleted file mode 100644 index 174ef614..00000000 --- a/docs/api/resources/audio-loader/destructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# AudioLoader::~AudioLoader - -```cpp -virtual ~AudioLoader() override; -``` - -析构函数,用于销毁 `AudioLoader` 对象。该析构函数不执行任何特殊清理操作。 - -**参数:** 无 - -**返回:** 无 - -**示例:** - -```cpp -#include "Resources/AudioLoader.h" - -using namespace XCEngine::Resources; - -{ - AudioLoader loader; - // 使用 loader... -} -// loader 在此自动销毁 -``` - -## 相关文档 - -- [AudioLoader 总览](index.md) - 返回类总览 diff --git a/docs/api/resources/audio-loader/get-default-settings.md b/docs/api/resources/audio-loader/get-default-settings.md deleted file mode 100644 index ab40abd3..00000000 --- a/docs/api/resources/audio-loader/get-default-settings.md +++ /dev/null @@ -1,27 +0,0 @@ -# AudioLoader::GetDefaultSettings - -## 方法签名 - -```cpp -ImportSettings* GetDefaultSettings() const override; -``` - -## 详细描述 - -返回音频资源的默认导入设置。当前版本音频加载器不使用导入设置,始终返回 `nullptr`。 - -## 返回值 - -`ImportSettings*` - 始终返回 `nullptr`。 - -## 示例 - -```cpp -AudioLoader loader; -ImportSettings* settings = loader.GetDefaultSettings(); - -// 始终为 nullptr -if (settings == nullptr) { - printf("No default settings for AudioLoader\n"); -} -``` diff --git a/docs/api/resources/audio-loader/get-supported-extensions.md b/docs/api/resources/audio-loader/get-supported-extensions.md deleted file mode 100644 index 48909a71..00000000 --- a/docs/api/resources/audio-loader/get-supported-extensions.md +++ /dev/null @@ -1,38 +0,0 @@ -# AudioLoader::GetSupportedExtensions - -## 方法签名 - -```cpp -Containers::Array GetSupportedExtensions() const override; -``` - -## 详细描述 - -返回此加载器支持的所有音频文件扩展名。扩展名列表用于 `ResourceManager` 确定给定文件应由哪个加载器处理。 - -## 返回值 - -返回 `Containers::Array`,包含所有支持的扩展名小写形式。 - -**支持的格式:** - -| 扩展名 | 格式 | -|--------|------| -| `wav` | WAV (Waveform Audio File Format) | -| `ogg` | OGG (Ogg Vorbis) | -| `mp3` | MP3 (MPEG-1 Audio Layer III) | -| `flac` | FLAC (Free Lossless Audio Codec) | -| `aiff` | AIFF (Audio Interchange File Format) | -| `aif` | AIFF (旧版扩展名) | - -## 示例 - -```cpp -AudioLoader loader; -Array extensions = loader.GetSupportedExtensions(); - -for (const auto& ext : extensions) { - printf("Supported: %s\n", ext.CStr()); -} -// 输出: wav, ogg, mp3, flac, aiff, aif -``` diff --git a/docs/api/resources/audio-loader/index.md b/docs/api/resources/audio-loader/index.md deleted file mode 100644 index fd8feb01..00000000 --- a/docs/api/resources/audio-loader/index.md +++ /dev/null @@ -1,56 +0,0 @@ -# AudioLoader - -## 命名空间 - -`XCEngine::Resources` - -## 类型 - -类 (Class) - -## 描述 - -音频资源加载器,负责从文件系统加载音频文件并转换为 `AudioClip` 资源。支持 WAV、OGG、MP3、FLAC、AIFF 等常见音频格式。 - -## 概述 - -`AudioLoader` 继承自 `IResourceLoader` 接口,实现音频资源的异步加载与格式解析。内部通过文件扩展名和文件头数据双重检测确定音频格式,确保加载结果的准确性。 - -## 公共方法表格 - -| 方法 | 返回值 | 描述 | -|------|--------|------| -| [AudioLoader](constructor.md) | - | 构造函数 | -| [~AudioLoader](destructor.md) | - | 析构函数 | -| `GetResourceType()` | `ResourceType` | 返回资源类型 `AudioClip`(继承自 IResourceLoader) | -| [GetSupportedExtensions](get-supported-extensions.md) | `Array` | 获取支持的扩展名列表 | -| [CanLoad](can-load.md) | `bool` | 检查是否能够加载指定路径的资源 | -| [Load](load.md) | `LoadResult` | 加载音频资源 | -| [GetDefaultSettings](get-default-settings.md) | `ImportSettings*` | 获取默认导入设置 | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Resources; - -// 通过 ResourceManager 加载音频 -ResourceGUID guid = ResourceGUID::Generate("assets/audio/bgm_music.ogg"); -LoadResult result = ResourceManager::Get().Load(guid, "assets/audio/bgm_music.ogg"); - -if (result.IsSuccess()) { - AudioClip* clip = result.GetResource(); - // 使用音频片段 -} -``` - -## 相关文档 - -- [GetSupportedExtensions](get-supported-extensions.md) - 获取支持的音频格式 -- [CanLoad](can-load.md) - 检查资源可加载性 -- [Load](load.md) - 加载音频资源 -- [GetDefaultSettings](get-default-settings.md) - 获取默认导入设置 -- [IResourceLoader](../iloader/iloader.md) - 资源加载器基类 -- [AudioClip](../audioclip/audioclip.md) - 音频资源类型 diff --git a/docs/api/resources/audio-loader/load.md b/docs/api/resources/audio-loader/load.md deleted file mode 100644 index bf7b1a03..00000000 --- a/docs/api/resources/audio-loader/load.md +++ /dev/null @@ -1,58 +0,0 @@ -# AudioLoader::Load - -## 方法签名 - -```cpp -LoadResult Load(const Containers::String& path, const ImportSettings* settings = nullptr) override; -``` - -## 详细描述 - -从指定路径加载音频文件,读取文件数据后自动检测音频格式,并创建包含完整音频数据的 `AudioClip` 对象。 - -**加载流程:** - -1. 调用 `ReadFileData(path)` 读取文件数据 -2. 若读取失败,返回包含错误信息的 `LoadResult` -3. 调用 `DetectAudioFormat()` 检测音频格式 -4. 创建 `AudioClip` 对象并设置路径、名称、GUID -5. 调用 `SetAudioFormat()` 和 `SetAudioData()` 设置音频属性 -6. 计算内存占用并返回成功结果 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `path` | `const Containers::String&` | 音频文件的完整或相对路径 | -| `settings` | `const ImportSettings*` | 导入设置(当前版本未使用,始终为 `nullptr`) | - -## 返回值 - -`LoadResult` - 成功时包含 `AudioClip*` 指针,失败时包含错误信息字符串。 - -## 示例 - -```cpp -#include -#include - -using namespace XCEngine::Resources; - -AudioLoader loader; -LoadResult result = loader.Load("assets/audio/bgm_music.ogg"); - -if (result.IsSuccess()) { - AudioClip* audioClip = result.GetResource(); - - printf("Loaded: %s\n", audioClip->m_name.CStr()); - printf("Format: %d\n", static_cast(audioClip->GetAudioFormat())); - printf("Size: %zu bytes\n", audioClip->m_memorySize); -} else { - printf("Error: %s\n", result.GetError().CStr()); -} -``` - -## 注意事项 - -- 当前实现 `ParseWAVData()` 方法为空,WAV 格式解析逻辑尚未完成 -- `settings` 参数当前版本未使用,保留接口兼容性 diff --git a/docs/api/resources/audioclip/audioclip.md b/docs/api/resources/audioclip/audioclip.md deleted file mode 100644 index cd0af675..00000000 --- a/docs/api/resources/audioclip/audioclip.md +++ /dev/null @@ -1,153 +0,0 @@ -# AudioClip - -**命名空间**: `XCEngine::Resources` - -**类型**: `class` - -**头文件**: `XCEngine/Resources/AudioClip/AudioClip.h` - -**描述**: 音频片段资源类,管理音频样本数据、格式信息和播放参数。 - -## 概述 - -`AudioClip` 是 XCEngine 中的音频资源类,继承自 `IResource`。它管理音频的原始样本数据、采样率、通道数、位深度、时长、格式类型和播放参数。 - -## 头文件 - -```cpp -#include -``` - -## 枚举类型 - -### AudioFormat - -音频格式枚举。 - -| 值 | 描述 | -|----|------| -| `Unknown` | 未知格式 | -| `WAV` | WAV 格式 | -| `OGG` | OGG Vorbis 格式 | -| `MP3` | MP3 格式 | -| `FLAC` | FLAC 无损格式 | - -### AudioType - -音频类型枚举。 - -| 值 | 描述 | -|----|------| -| `SoundEffect` | 音效 | -| `Music` | 音乐 | -| `Voice` | 语音 | -| `Ambient` | 环境音 | - -## 公共方法 - -### 构造与析构 - -| 方法 | 描述 | -|------|------| -| [AudioClip](constructor.md) | 默认构造函数 | -| [~AudioClip](destructor.md) | 析构函数 | - -### 基础属性 - -| 方法 | 描述 | -|------|------| -| `ResourceType GetType() const` | 返回 `ResourceType::AudioClip` | -| `const Containers::String& GetName() const` | 获取音频名称 | -| `const Containers::String& GetPath() const` | 获取音频路径 | -| `ResourceGUID GetGUID() const` | 获取全局唯一标识符 | -| [IsValid](is-valid.md) | 检查音频是否有效 | -| [GetMemorySize](get-memory-size.md) | 获取内存大小 | -| [Release](release.md) | 释放音频引用 | - -### 音频数据 - -| 方法 | 描述 | -|------|------| -| [SetAudioData](setaudiodata.md) | 设置音频数据(需先设置采样率、通道数、位深度,自动计算时长) | -| [GetAudioData](get-audio-data.md) | 获取音频数据指针 | - -### 音频参数 - -| 方法 | 描述 | -|------|------| -| [SetSampleRate](set-sample-rate.md) | 设置采样率(Hz) | -| [GetSampleRate](get-sample-rate.md) | 获取采样率 | -| [SetChannels](set-channels.md) | 设置通道数(1=单声道, 2=立体声) | -| [GetChannels](get-channels.md) | 获取通道数 | -| [SetBitsPerSample](set-bits-per-sample.md) | 设置位深度(8/16/24/32) | -| [GetBitsPerSample](get-bits-per-sample.md) | 获取位深度 | -| [SetDuration](set-duration.md) | 设置时长(秒) | -| [GetDuration](get-duration.md) | 获取时长(秒) | - -### 格式与类型 - -| 方法 | 描述 | -|------|------| -| [SetAudioFormat](set-audio-format.md) | 设置音频格式 | -| [GetAudioFormat](get-audio-format.md) | 获取音频格式 | -| [SetAudioType](set-audio-type.md) | 设置音频类型 | -| [GetAudioType](get-audio-type.md) | 获取音频类型 | - -### 3D 和循环 - -| 方法 | 描述 | -|------|------| -| [SetIs3D](set-is-3d.md) | 设置是否为 3D 音频 | -| [Is3D](is-3d.md) | 检查是否为 3D 音频 | -| [SetLoop](set-loop.md) | 设置是否循环播放 | -| [IsLoop](is-loop.md) | 检查是否循环播放 | - -### RHI 资源 - -| 方法 | 描述 | -|------|------| -| [GetRHIResource](get-rhi-resource.md) | 获取 RHI 音频缓冲区 | -| [SetRHIResource](set-rhi-resource.md) | 设置 RHI 音频缓冲区 | - -## 实现说明 - -**注意**: -- `AudioLoader::Load()` 加载 WAV 文件时仅设置格式,不解析 WAV 头信息来设置采样率、通道数和位深度。这些字段需要手动设置或通过 `SetAudioData()` 的自动计算(需先设置 `m_sampleRate`、`m_channels`、`m_bitsPerSample`)。 -- `AudioLoader::ParseWAVData()` 为 stub,始终返回 true。 -- `AudioLoader::DetectAudioFormat()` 不检测 AIFF/AIF 格式的文件头,仅依赖扩展名判断。 - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Resources; - -// 加载音频 -ResourceHandle sfx = ResourceManager::Get().Load("sounds/explosion.wav"); -ResourceHandle music = ResourceManager::Get().Load("music/background.ogg"); - -// 设置参数 -sfx->SetAudioType(AudioType::SoundEffect); -sfx->SetSampleRate(44100); -sfx->SetChannels(2); -sfx->SetBitsPerSample(16); -sfx->SetDuration(1.5f); -sfx->SetLoop(false); - -// 3D 音频 -sfx->SetIs3D(false); -music->SetIs3D(false); - -// 获取信息 -uint32_t sampleRate = sfx->GetSampleRate(); -float duration = sfx->GetDuration(); -bool loop = sfx->IsLoop(); -``` - -## 相关文档 - -- [IResource](../iresource/iresource.md) - 资源基类 -- [ResourceManager](../resource-manager/resource-manager.md) - 资源管理器 -- [Resources 总览](../resources.md) - 返回模块总览 diff --git a/docs/api/resources/audioclip/constructor.md b/docs/api/resources/audioclip/constructor.md deleted file mode 100644 index 414c3814..00000000 --- a/docs/api/resources/audioclip/constructor.md +++ /dev/null @@ -1,23 +0,0 @@ -# AudioClip::AudioClip - -```cpp -AudioClip() -``` - -构造一个新的 `AudioClip` 实例。 - -**线程安全:** ✅ - -**示例:** - -```cpp -#include - -using namespace XCEngine::Resources; - -AudioClip* clip = new AudioClip(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 diff --git a/docs/api/resources/audioclip/destructor.md b/docs/api/resources/audioclip/destructor.md deleted file mode 100644 index b498e5cf..00000000 --- a/docs/api/resources/audioclip/destructor.md +++ /dev/null @@ -1,26 +0,0 @@ -# AudioClip::~AudioClip - -```cpp -virtual ~AudioClip() override -``` - -销毁 `AudioClip` 实例并释放相关资源。 - -**线程安全:** ❌ (不应在多线程中同时访问正在销毁的对象) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Resources; - -{ - AudioClip clip; - clip.SetAudioFormat(AudioFormat::WAV); -} -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 diff --git a/docs/api/resources/audioclip/get-audio-data.md b/docs/api/resources/audioclip/get-audio-data.md deleted file mode 100644 index a4a79a56..00000000 --- a/docs/api/resources/audioclip/get-audio-data.md +++ /dev/null @@ -1,29 +0,0 @@ -# AudioClip::GetAudioData - -```cpp -const Containers::Array& GetAudioData() const -``` - -获取音频的原始样本数据。 - -**返回:** 音频数据字节数组的常量引用 - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -auto wavData = ResourceFileSystem::Get().ReadResource("sounds/explosion.wav"); -clip.SetAudioData(wavData); - -const Containers::Array& data = clip.GetAudioData(); -size_t dataSize = data.Size(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [SetAudioData](setaudiodata.md) - 设置音频数据 diff --git a/docs/api/resources/audioclip/get-audio-format.md b/docs/api/resources/audioclip/get-audio-format.md deleted file mode 100644 index 4fd250b1..00000000 --- a/docs/api/resources/audioclip/get-audio-format.md +++ /dev/null @@ -1,26 +0,0 @@ -# AudioClip::GetAudioFormat - -```cpp -AudioFormat GetAudioFormat() const -``` - -获取音频的格式。 - -**返回:** `AudioFormat` 枚举值 - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -clip.SetAudioFormat(AudioFormat::OGG); -AudioFormat format = clip.GetAudioFormat(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [SetAudioFormat](set-audio-format.md) - 设置音频格式 diff --git a/docs/api/resources/audioclip/get-audio-type.md b/docs/api/resources/audioclip/get-audio-type.md deleted file mode 100644 index 484fe6a9..00000000 --- a/docs/api/resources/audioclip/get-audio-type.md +++ /dev/null @@ -1,26 +0,0 @@ -# AudioClip::GetAudioType - -```cpp -AudioType GetAudioType() const -``` - -获取音频的类型。 - -**返回:** `AudioType` 枚举值 - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -clip.SetAudioType(AudioType::Voice); -AudioType type = clip.GetAudioType(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [SetAudioType](set-audio-type.md) - 设置音频类型 diff --git a/docs/api/resources/audioclip/get-bits-per-sample.md b/docs/api/resources/audioclip/get-bits-per-sample.md deleted file mode 100644 index 3e3c912f..00000000 --- a/docs/api/resources/audioclip/get-bits-per-sample.md +++ /dev/null @@ -1,26 +0,0 @@ -# AudioClip::GetBitsPerSample - -```cpp -Core::uint32 GetBitsPerSample() const -``` - -获取音频的位深度。 - -**返回:** 位深度(8、16、24、32) - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -clip.SetBitsPerSample(16); -uint32_t bits = clip.GetBitsPerSample(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [SetBitsPerSample](set-bits-per-sample.md) - 设置位深度 diff --git a/docs/api/resources/audioclip/get-channels.md b/docs/api/resources/audioclip/get-channels.md deleted file mode 100644 index 7dfd7f26..00000000 --- a/docs/api/resources/audioclip/get-channels.md +++ /dev/null @@ -1,26 +0,0 @@ -# AudioClip::GetChannels - -```cpp -Core::uint32 GetChannels() const -``` - -获取音频的通道数。 - -**返回:** 通道数(1=单声道,2=立体声) - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -clip.SetChannels(2); -uint32_t channels = clip.GetChannels(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [SetChannels](set-channels.md) - 设置通道数 diff --git a/docs/api/resources/audioclip/get-duration.md b/docs/api/resources/audioclip/get-duration.md deleted file mode 100644 index f08a5d33..00000000 --- a/docs/api/resources/audioclip/get-duration.md +++ /dev/null @@ -1,26 +0,0 @@ -# AudioClip::GetDuration - -```cpp -float GetDuration() const -``` - -获取音频的时长。 - -**返回:** 时长(秒) - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -clip.SetDuration(3.0f); -float duration = clip.GetDuration(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [SetDuration](set-duration.md) - 设置时长 diff --git a/docs/api/resources/audioclip/get-guid.md b/docs/api/resources/audioclip/get-guid.md deleted file mode 100644 index cd2d46f7..00000000 --- a/docs/api/resources/audioclip/get-guid.md +++ /dev/null @@ -1,25 +0,0 @@ -# AudioClip::GetGUID - -```cpp -ResourceGUID GetGUID() const override -``` - -获取音频资源的全局唯一标识符。 - -**返回:** 资源 GUID - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -ResourceGUID guid = clip.GetGUID(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [IResource](../iresource/iresource.md) - 资源基类 diff --git a/docs/api/resources/audioclip/get-memory-size.md b/docs/api/resources/audioclip/get-memory-size.md deleted file mode 100644 index 3561c940..00000000 --- a/docs/api/resources/audioclip/get-memory-size.md +++ /dev/null @@ -1,25 +0,0 @@ -# AudioClip::GetMemorySize - -```cpp -size_t GetMemorySize() const override -``` - -获取音频资源占用的内存大小。 - -**返回:** 内存大小(字节) - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -size_t memSize = clip.GetMemorySize(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [IResource](../iresource/iresource.md) - 资源基类 diff --git a/docs/api/resources/audioclip/get-name.md b/docs/api/resources/audioclip/get-name.md deleted file mode 100644 index 61cc3eaa..00000000 --- a/docs/api/resources/audioclip/get-name.md +++ /dev/null @@ -1,25 +0,0 @@ -# AudioClip::GetName - -```cpp -const Containers::String& GetName() const override -``` - -获取音频资源的名称。 - -**返回:** 音频名称的常量引用 - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -Containers::String name = clip.GetName(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [IResource](../iresource/iresource.md) - 资源基类 diff --git a/docs/api/resources/audioclip/get-path.md b/docs/api/resources/audioclip/get-path.md deleted file mode 100644 index 64c7fa79..00000000 --- a/docs/api/resources/audioclip/get-path.md +++ /dev/null @@ -1,25 +0,0 @@ -# AudioClip::GetPath - -```cpp -const Containers::String& GetPath() const override -``` - -获取音频资源的路径。 - -**返回:** 音频路径的常量引用 - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -Containers::String path = clip.GetPath(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [IResource](../iresource/iresource.md) - 资源基类 diff --git a/docs/api/resources/audioclip/get-rhi-resource.md b/docs/api/resources/audioclip/get-rhi-resource.md deleted file mode 100644 index 87c90dd3..00000000 --- a/docs/api/resources/audioclip/get-rhi-resource.md +++ /dev/null @@ -1,27 +0,0 @@ -# AudioClip::GetRHIResource - -```cpp -class IRHIAudioBuffer* GetRHIResource() const -``` - -获取 RHI 音频缓冲区资源指针。 - -**返回:** `IRHIAudioBuffer` 指针,如果未设置则返回 `nullptr` - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -IRHIAudioBuffer* rhi = clip.GetRHIResource(); -if (rhi != nullptr) { -} -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [SetRHIResource](set-rhi-resource.md) - 设置 RHI 音频缓冲区 diff --git a/docs/api/resources/audioclip/get-sample-rate.md b/docs/api/resources/audioclip/get-sample-rate.md deleted file mode 100644 index a3067b89..00000000 --- a/docs/api/resources/audioclip/get-sample-rate.md +++ /dev/null @@ -1,26 +0,0 @@ -# AudioClip::GetSampleRate - -```cpp -Core::uint32 GetSampleRate() const -``` - -获取音频的采样率。 - -**返回:** 采样率(Hz) - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -clip.SetSampleRate(48000); -uint32_t rate = clip.GetSampleRate(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [SetSampleRate](set-sample-rate.md) - 设置采样率 diff --git a/docs/api/resources/audioclip/get-type.md b/docs/api/resources/audioclip/get-type.md deleted file mode 100644 index 415d4a33..00000000 --- a/docs/api/resources/audioclip/get-type.md +++ /dev/null @@ -1,25 +0,0 @@ -# AudioClip::GetType - -```cpp -ResourceType GetType() const override -``` - -返回资源的类型标识符。 - -**返回:** `ResourceType::AudioClip` - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -ResourceType type = clip.GetType(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [IResource](../iresource/iresource.md) - 资源基类 diff --git a/docs/api/resources/audioclip/is-3d.md b/docs/api/resources/audioclip/is-3d.md deleted file mode 100644 index 74937e4b..00000000 --- a/docs/api/resources/audioclip/is-3d.md +++ /dev/null @@ -1,26 +0,0 @@ -# AudioClip::Is3D - -```cpp -bool Is3D() const -``` - -检查音频是否为 3D 音频。 - -**返回:** 如果是 3D 音频返回 `true`,否则返回 `false` - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -clip.SetIs3D(false); -bool is3D = clip.Is3D(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [SetIs3D](set-is-3d.md) - 设置是否为 3D 音频 diff --git a/docs/api/resources/audioclip/is-loop.md b/docs/api/resources/audioclip/is-loop.md deleted file mode 100644 index 024e4474..00000000 --- a/docs/api/resources/audioclip/is-loop.md +++ /dev/null @@ -1,26 +0,0 @@ -# AudioClip::IsLoop - -```cpp -bool IsLoop() const -``` - -检查音频是否循环播放。 - -**返回:** 如果循环播放返回 `true`,否则返回 `false` - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -clip.SetLoop(false); -bool loop = clip.IsLoop(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [SetLoop](set-loop.md) - 设置是否循环播放 diff --git a/docs/api/resources/audioclip/is-valid.md b/docs/api/resources/audioclip/is-valid.md deleted file mode 100644 index 6657ec3c..00000000 --- a/docs/api/resources/audioclip/is-valid.md +++ /dev/null @@ -1,25 +0,0 @@ -# AudioClip::IsValid - -```cpp -bool IsValid() const override -``` - -检查音频资源是否有效。 - -**返回:** 如果资源有效返回 `true`,否则返回 `false` - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -bool valid = clip.IsValid(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [IResource](../iresource/iresource.md) - 资源基类 diff --git a/docs/api/resources/audioclip/release.md b/docs/api/resources/audioclip/release.md deleted file mode 100644 index 838d32c8..00000000 --- a/docs/api/resources/audioclip/release.md +++ /dev/null @@ -1,36 +0,0 @@ -# AudioClip::Release - -```cpp -void Release() -``` - -释放音频资源,释放存储的音频数据并清除 RHI 资源引用。 - -## 详细描述 - -调用此方法后: -1. 清除音频数据(调用 `m_audioData.Clear()`) -2. 将 RHI 资源引用置为 `nullptr` -3. 将 `m_isValid` 标记为 `false` - -## 参数 - -无 - -## 返回值 - -无 - -## 示例 - -```cpp -ResourceHandle sfx = ResourceManager::Get().Load("sounds/explosion.wav"); -sfx->Release(); -if (!sfx->IsValid()) { - // 音频已释放 -} -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 diff --git a/docs/api/resources/audioclip/set-audio-format.md b/docs/api/resources/audioclip/set-audio-format.md deleted file mode 100644 index 47439202..00000000 --- a/docs/api/resources/audioclip/set-audio-format.md +++ /dev/null @@ -1,27 +0,0 @@ -# AudioClip::SetAudioFormat - -```cpp -void SetAudioFormat(AudioFormat format) -``` - -设置音频的格式。 - -**参数:** -- `format` - 音频格式(`AudioFormat::Unknown`、`AudioFormat::WAV`、`AudioFormat::OGG`、`AudioFormat::MP3`、`AudioFormat::FLAC`) - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -clip.SetAudioFormat(AudioFormat::WAV); -AudioFormat format = clip.GetAudioFormat(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [GetAudioFormat](get-audio-format.md) - 获取音频格式 diff --git a/docs/api/resources/audioclip/set-audio-type.md b/docs/api/resources/audioclip/set-audio-type.md deleted file mode 100644 index 88867a72..00000000 --- a/docs/api/resources/audioclip/set-audio-type.md +++ /dev/null @@ -1,27 +0,0 @@ -# AudioClip::SetAudioType - -```cpp -void SetAudioType(AudioType type) -``` - -设置音频的类型。 - -**参数:** -- `type` - 音频类型(`AudioType::SoundEffect`、`AudioType::Music`、`AudioType::Voice`、`AudioType::Ambient`) - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -clip.SetAudioType(AudioType::Music); -AudioType type = clip.GetAudioType(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [GetAudioType](get-audio-type.md) - 获取音频类型 diff --git a/docs/api/resources/audioclip/set-bits-per-sample.md b/docs/api/resources/audioclip/set-bits-per-sample.md deleted file mode 100644 index 8bf77855..00000000 --- a/docs/api/resources/audioclip/set-bits-per-sample.md +++ /dev/null @@ -1,27 +0,0 @@ -# AudioClip::SetBitsPerSample - -```cpp -void SetBitsPerSample(Core::uint32 bits) -``` - -设置音频的位深度。 - -**参数:** -- `bits` - 位深度(8、16、24、32) - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -clip.SetBitsPerSample(16); -uint32_t bits = clip.GetBitsPerSample(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [GetBitsPerSample](get-bits-per-sample.md) - 获取位深度 diff --git a/docs/api/resources/audioclip/set-channels.md b/docs/api/resources/audioclip/set-channels.md deleted file mode 100644 index d7b2157b..00000000 --- a/docs/api/resources/audioclip/set-channels.md +++ /dev/null @@ -1,27 +0,0 @@ -# AudioClip::SetChannels - -```cpp -void SetChannels(Core::uint32 channels) -``` - -设置音频的通道数。 - -**参数:** -- `channels` - 通道数(1=单声道,2=立体声) - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -clip.SetChannels(2); -uint32_t channels = clip.GetChannels(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [GetChannels](get-channels.md) - 获取通道数 diff --git a/docs/api/resources/audioclip/set-duration.md b/docs/api/resources/audioclip/set-duration.md deleted file mode 100644 index cc362a30..00000000 --- a/docs/api/resources/audioclip/set-duration.md +++ /dev/null @@ -1,27 +0,0 @@ -# AudioClip::SetDuration - -```cpp -void SetDuration(float seconds) -``` - -设置音频的时长。 - -**参数:** -- `seconds` - 时长(秒) - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -clip.SetDuration(2.5f); -float duration = clip.GetDuration(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [GetDuration](get-duration.md) - 获取时长 diff --git a/docs/api/resources/audioclip/set-is-3d.md b/docs/api/resources/audioclip/set-is-3d.md deleted file mode 100644 index 083e2839..00000000 --- a/docs/api/resources/audioclip/set-is-3d.md +++ /dev/null @@ -1,27 +0,0 @@ -# AudioClip::SetIs3D - -```cpp -void SetIs3D(bool is3D) -``` - -设置音频是否为 3D 音频。 - -**参数:** -- `is3D` - 是否为 3D 音频 - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -clip.SetIs3D(true); -bool is3D = clip.Is3D(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [Is3D](is-3d.md) - 检查是否为 3D 音频 diff --git a/docs/api/resources/audioclip/set-loop.md b/docs/api/resources/audioclip/set-loop.md deleted file mode 100644 index 5ec542df..00000000 --- a/docs/api/resources/audioclip/set-loop.md +++ /dev/null @@ -1,27 +0,0 @@ -# AudioClip::SetLoop - -```cpp -void SetLoop(bool loop) -``` - -设置音频是否循环播放。 - -**参数:** -- `loop` - 是否循环播放 - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -clip.SetLoop(true); -bool loop = clip.IsLoop(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [IsLoop](is-loop.md) - 检查是否循环播放 diff --git a/docs/api/resources/audioclip/set-rhi-resource.md b/docs/api/resources/audioclip/set-rhi-resource.md deleted file mode 100644 index ad5fadff..00000000 --- a/docs/api/resources/audioclip/set-rhi-resource.md +++ /dev/null @@ -1,28 +0,0 @@ -# AudioClip::SetRHIResource - -```cpp -void SetRHIResource(class IRHIAudioBuffer* resource) -``` - -设置 RHI 音频缓冲区资源。 - -**参数:** -- `resource` - `IRHIAudioBuffer` 指针 - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -IRHIAudioBuffer* rhiBuffer = CreateRHIBuffer(); -clip.SetRHIResource(rhiBuffer); -IRHIAudioBuffer* rhi = clip.GetRHIResource(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [GetRHIResource](get-rhi-resource.md) - 获取 RHI 音频缓冲区 diff --git a/docs/api/resources/audioclip/set-sample-rate.md b/docs/api/resources/audioclip/set-sample-rate.md deleted file mode 100644 index f6013b86..00000000 --- a/docs/api/resources/audioclip/set-sample-rate.md +++ /dev/null @@ -1,27 +0,0 @@ -# AudioClip::SetSampleRate - -```cpp -void SetSampleRate(Core::uint32 rate) -``` - -设置音频的采样率。 - -**参数:** -- `rate` - 采样率(Hz),常用值为 44100、48000 等 - -**线程安全:** ✅ - -**示例:** - -```cpp -using namespace XCEngine::Resources; - -AudioClip clip; -clip.SetSampleRate(44100); -uint32_t rate = clip.GetSampleRate(); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 -- [GetSampleRate](get-sample-rate.md) - 获取采样率 diff --git a/docs/api/resources/audioclip/setaudiodata.md b/docs/api/resources/audioclip/setaudiodata.md deleted file mode 100644 index e7d147f3..00000000 --- a/docs/api/resources/audioclip/setaudiodata.md +++ /dev/null @@ -1,29 +0,0 @@ -# AudioClip::SetAudioData - -```cpp -void SetAudioData(const Containers::Array& data) -``` - -设置音频原始样本数据。 - -**参数:** -- `data` - 音频数据字节数组 - -**返回:** 无 - -**复杂度:** O(n) - -**示例:** - -```cpp -auto wavData = ResourceFileSystem::Get().ReadResource("sounds/explosion.wav"); -AudioClip* clip = new AudioClip(); -clip->SetAudioData(wavData); -clip->SetSampleRate(44100); -clip->SetChannels(2); -clip->SetBitsPerSample(16); -``` - -## 相关文档 - -- [AudioClip 总览](audioclip.md) - 返回类总览 diff --git a/docs/api/resources/dependencygraph/adddependency.md b/docs/api/resources/dependencygraph/adddependency.md deleted file mode 100644 index 301eccbb..00000000 --- a/docs/api/resources/dependencygraph/adddependency.md +++ /dev/null @@ -1,27 +0,0 @@ -# ResourceDependencyGraph::AddDependency - -```cpp -void AddDependency(ResourceGUID owner, ResourceGUID dependency) -``` - -添加资源依赖关系。表示 `owner` 资源依赖 `dependency` 资源。依赖关系是单向的。 - -**参数:** -- `owner` - 拥有依赖关系的主体资源 -- `dependency` - 被依赖的资源 - -**返回:** 无 - -**复杂度:** O(1) - -**示例:** - -```cpp -// Material 依赖 Texture 和 Shader -graph.AddDependency(materialGuid, textureGuid); -graph.AddDependency(materialGuid, shaderGuid); -``` - -## 相关文档 - -- [ResourceDependencyGraph 总览](dependencygraph.md) - 返回类总览 diff --git a/docs/api/resources/dependencygraph/addnode.md b/docs/api/resources/dependencygraph/addnode.md deleted file mode 100644 index a8bd4ac6..00000000 --- a/docs/api/resources/dependencygraph/addnode.md +++ /dev/null @@ -1,27 +0,0 @@ -# ResourceDependencyGraph::AddNode - -```cpp -void AddNode(ResourceGUID guid, ResourceType type) -``` - -向依赖图中添加一个新节点。如果节点已存在则忽略。 - -**参数:** -- `guid` - 资源的全局唯一标识符 -- `type` - 资源类型 - -**返回:** 无 - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceDependencyGraph graph; -graph.AddNode(textureGuid, ResourceType::Texture); -graph.AddNode(materialGuid, ResourceType::Material); -``` - -## 相关文档 - -- [ResourceDependencyGraph 总览](dependencygraph.md) - 返回类总览 diff --git a/docs/api/resources/dependencygraph/dependencygraph.md b/docs/api/resources/dependencygraph/dependencygraph.md deleted file mode 100644 index 055ae329..00000000 --- a/docs/api/resources/dependencygraph/dependencygraph.md +++ /dev/null @@ -1,90 +0,0 @@ -# ResourceDependencyGraph - -**命名空间**: `XCEngine::Resources` - -**类型**: `class` - -**头文件**: `XCEngine/Resources/DependencyGraph.h` - -**描述**: 资源依赖图管理器,负责跟踪资源之间的依赖关系、引用计数和拓扑排序。 - -## 概述 - -`ResourceDependencyGraph` 维护了所有资源之间的依赖关系图。它支持添加/移除依赖节点、查询依赖关系、循环依赖检测、拓扑排序(用于正确的加载/卸载顺序)等功能。 - -## DependencyNode 结构体 - -| 成员 | 类型 | 描述 | -|------|------|------| -| `guid` | `ResourceGUID` | 资源全局唯一标识符 | -| `type` | `ResourceType` | 资源类型 | -| `dependencies` | `Containers::Array` | 此资源依赖的其他资源 | -| `dependents` | `Containers::Array` | 依赖此资源的其他资源 | -| `refCount` | `Core::uint32` | 引用计数 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `void AddNode(ResourceGUID guid, ResourceType type)` | 添加依赖节点 | -| `void RemoveNode(ResourceGUID guid)` | 移除依赖节点 | -| `bool HasNode(ResourceGUID guid) const` | 检查节点是否存在 | -| `void AddDependency(ResourceGUID owner, ResourceGUID dependency)` | 添加依赖关系(A 依赖 B) | -| `void RemoveDependency(ResourceGUID owner, ResourceGUID dependency)` | 移除依赖关系 | -| `Containers::Array GetDependencies(ResourceGUID guid) const` | 获取指定资源的直接依赖列表 | -| `Containers::Array GetDependents(ResourceGUID guid) const` | 获取依赖指定资源的所有资源列表 | -| `Containers::Array GetAllDependencies(ResourceGUID guid) const` | 获取所有递归依赖(包括传递依赖) | -| `void IncrementRefCount(ResourceGUID guid)` | 增加引用计数 | -| `void DecrementRefCount(ResourceGUID guid)` | 减少引用计数 | -| `Core::uint32 GetRefCount(ResourceGUID guid) const` | 获取引用计数 | -| `bool HasCircularDependency(ResourceGUID guid, Containers::Array& outCycle) const` | 检测是否存在循环依赖 | -| `Containers::Array TopologicalSort() const` | 拓扑排序(当前返回空数组 - stub) | -| `bool Unload(ResourceGUID guid)` | 安全卸载(考虑依赖关系) | -| `void Clear()` | 清空所有节点和依赖关系 | - -## 实现说明 - -**注意**: `TopologicalSort()` 当前为 stub,返回空数组。 - -## 使用示例 - -```cpp -ResourceDependencyGraph graph; - -// 添加节点 -graph.AddNode(textureGuid, ResourceType::Texture); -graph.AddNode(materialGuid, ResourceType::Material); -graph.AddNode(shaderGuid, ResourceType::Shader); - -// 设置依赖关系:Material 依赖 Texture 和 Shader -graph.AddDependency(materialGuid, textureGuid); -graph.AddDependency(materialGuid, shaderGuid); - -// 查询依赖 -auto deps = graph.GetDependencies(materialGuid); -// deps 包含 textureGuid 和 shaderGuid - -// 查询被依赖者 -auto dependents = graph.GetDependents(textureGuid); -// dependents 包含 materialGuid - -// 拓扑排序(正确的加载顺序) -auto loadOrder = graph.TopologicalSort(); -// loadOrder 保证依赖在目标之前加载 - -// 循环依赖检测 -Containers::Array cycle; -if (graph.HasCircularDependency(guid, cycle)) { - printf("Circular dependency detected!"); -} - -// 引用计数 -graph.IncrementRefCount(guid); -graph.DecrementRefCount(guid); -``` - -## 相关文档 - -- [ResourceManager](../resource-manager/resource-manager.md) - 资源管理器 -- [ResourceHandle](../resourcehandle.md) - 资源句柄 -- [Resources 总览](../resources.md) - 返回模块总览 diff --git a/docs/api/resources/dependencygraph/getdependencies.md b/docs/api/resources/dependencygraph/getdependencies.md deleted file mode 100644 index 733fdd2e..00000000 --- a/docs/api/resources/dependencygraph/getdependencies.md +++ /dev/null @@ -1,25 +0,0 @@ -# ResourceDependencyGraph::GetDependencies - -```cpp -Containers::Array GetDependencies(ResourceGUID guid) const -``` - -获取指定资源直接依赖的所有资源列表。不包含传递依赖。 - -**参数:** -- `guid` - 资源全局唯一标识符 - -**返回:** 直接依赖的 GUID 数组 - -**复杂度:** O(k),k 为直接依赖数量 - -**示例:** - -```cpp -auto deps = graph.GetDependencies(materialGuid); -// 返回 Material 直接依赖的资源(Texture、Shader 等) -``` - -## 相关文档 - -- [ResourceDependencyGraph 总览](dependencygraph.md) - 返回类总览 diff --git a/docs/api/resources/dependencygraph/hascirculardependency.md b/docs/api/resources/dependencygraph/hascirculardependency.md deleted file mode 100644 index b358cd76..00000000 --- a/docs/api/resources/dependencygraph/hascirculardependency.md +++ /dev/null @@ -1,31 +0,0 @@ -# ResourceDependencyGraph::HasCircularDependency - -```cpp -bool HasCircularDependency(ResourceGUID guid, Containers::Array& outCycle) const -``` - -检测是否存在以指定节点为起点的循环依赖。使用 DFS 遍历依赖图,检测回路。 - -**参数:** -- `guid` - 起始节点 -- `outCycle` - 输出参数,检测到的循环路径(包含形成环的节点 GUID) - -**返回:** 如果存在循环依赖则返回 true,否则返回 false - -**复杂度:** O(n + e) - -**示例:** - -```cpp -Containers::Array cycle; -if (graph.HasCircularDependency(guid, cycle)) { - printf("Circular dependency detected: "); - for (const auto& g : cycle) { - printf("%llu ", g.value); - } -} -``` - -## 相关文档 - -- [ResourceDependencyGraph 总览](dependencygraph.md) - 返回类总览 diff --git a/docs/api/resources/dependencygraph/topologicalsort.md b/docs/api/resources/dependencygraph/topologicalsort.md deleted file mode 100644 index 9a539adc..00000000 --- a/docs/api/resources/dependencygraph/topologicalsort.md +++ /dev/null @@ -1,28 +0,0 @@ -# ResourceDependencyGraph::TopologicalSort - -```cpp -Containers::Array TopologicalSort() const -``` - -拓扑排序。按依赖顺序返回所有节点,确保被依赖的资源排在依赖者之前。用于确定正确的加载和卸载顺序。 - -**参数:** 无 - -**返回:** 按依赖顺序排序的 GUID 数组 - -**复杂度:** O(n + e),n 为节点数,e 为边数 - -**示例:** - -```cpp -auto loadOrder = graph.TopologicalSort(); -// loadOrder[0] 是最底层依赖(如 Texture) -// loadOrder[last] 是最顶层资源(如 Material) -for (const auto& guid : loadOrder) { - ResourceManager::Get().Load(guid); -} -``` - -## 相关文档 - -- [ResourceDependencyGraph 总览](dependencygraph.md) - 返回类总览 diff --git a/docs/api/resources/filearchive/close.md b/docs/api/resources/filearchive/close.md deleted file mode 100644 index 0d106047..00000000 --- a/docs/api/resources/filearchive/close.md +++ /dev/null @@ -1,22 +0,0 @@ -# FileArchive::Close - -关闭归档。 - -## 方法签名 - -```cpp -void Close() override; -``` - -## 详细描述 - -关闭归档并重置内部状态。清空归档路径并标记为无效状态。 - -## 示例 - -```cpp -FileArchive archive; -archive.Open("resources/textures/"); -// 使用归档... -archive.Close(); -``` diff --git a/docs/api/resources/filearchive/enumerate.md b/docs/api/resources/filearchive/enumerate.md deleted file mode 100644 index 70b0c185..00000000 --- a/docs/api/resources/filearchive/enumerate.md +++ /dev/null @@ -1,31 +0,0 @@ -# FileArchive::Enumerate - -枚举匹配的文件。 - -## 方法签名 - -```cpp -void Enumerate(const Containers::String& pattern, Containers::Array& outFiles) const override; -``` - -## 详细描述 - -枚举归档目录中与指定模式匹配的文件。当前实现为 stub,仅清空输出数组,未实现实际的模式匹配功能。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `pattern` | `const Containers::String&` | 文件匹配模式(如 `*.png`、`textures/*.jpg`) | -| `outFiles` | `Containers::Array&` | 输出容器,接收匹配的文件路径列表 | - -## 示例 - -```cpp -FileArchive archive; -archive.Open("resources/"); - -Containers::Array files; -archive.Enumerate("*.png", files); -// 注意:当前实现返回空数组 -``` diff --git a/docs/api/resources/filearchive/exists.md b/docs/api/resources/filearchive/exists.md deleted file mode 100644 index 75f06a43..00000000 --- a/docs/api/resources/filearchive/exists.md +++ /dev/null @@ -1,36 +0,0 @@ -# FileArchive::Exists - -检查文件是否存在。 - -## 方法签名 - -```cpp -bool Exists(const Containers::String& fileName) const override; -``` - -## 详细描述 - -检查归档内是否存在指定文件。文件路径是相对于归档目录的路径。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `fileName` | `const Containers::String&` | 要检查的文件名(相对于归档路径) | - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `bool` | 文件存在返回 `true`,否则返回 `false` | - -## 示例 - -```cpp -FileArchive archive; -archive.Open("resources/"); - -if (archive.Exists("textures/player.png")) { - // 文件存在 -} -``` diff --git a/docs/api/resources/filearchive/filearchive.md b/docs/api/resources/filearchive/filearchive.md deleted file mode 100644 index 53c6c710..00000000 --- a/docs/api/resources/filearchive/filearchive.md +++ /dev/null @@ -1,75 +0,0 @@ -# FileArchive - -**命名空间**: `XCEngine::Resources` - -**类型**: `class` - -**头文件**: `XCEngine/Core/IO/FileArchive.h` - -**继承自**: `IArchive` - -**描述**: 文件归档读取器,将文件系统目录作为虚拟归档进行访问。 - -## 概述 - -`FileArchive` 实现了 `IArchive` 接口,用于将文件系统目录作为虚拟归档进行访问。它维护已打开目录的路径和有效性状态,支持读取文件、检查存在性、获取文件大小等操作。 - -## 继承关系 - -``` -IArchive -└── FileArchive -``` - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`FileArchive()`](filearchive.md) | 默认构造 | -| [`~FileArchive()`](filearchive.md) | 析构函数,自动关闭归档 | -| [`Open(...)`](open.md) | 打开归档目录 | -| [`Close()`](close.md) | 关闭归档 | -| [`Read(...)`](read.md) | 读取文件数据 | -| [`GetSize(...)`](getsize.md) | 获取文件大小 | -| [`Exists(...)`](exists.md) | 检查文件是否存在 | -| [`Enumerate(...)`](enumerate.md) | 枚举匹配的文件(暂未实现) | -| [`IsValid()`](filearchive.md) | 检查归档是否有效 | -| [`GetPath()`](filearchive.md) | 获取归档路径 | - -## 使用示例 - -```cpp -#include - -// 创建并打开归档 -FileArchive archive; -if (archive.Open("resources/textures/")) { - // 检查文件是否存在 - if (archive.Exists("player.png")) { - // 获取文件大小 - size_t size = archive.GetSize("player.png"); - - // 读取文件内容 - Containers::Array buffer(size); - if (archive.Read("player.png", buffer.Data(), size, 0)) { - // 处理文件数据 - } - } - - // 枚举匹配的文件 - Containers::Array files; - archive.Enumerate("*.png", files); - - archive.Close(); -} -``` - -## 实现说明 - -- `Enumerate()` 当前为 stub,仅清空输出数组,未实现模式匹配功能。 - -## 相关文档 - -- [Resources 模块总览](../resources.md) - 返回模块总览 -- [IArchive](../resource-file-system/iarchive.md) - 归档接口定义 -- [ResourceFileSystem](../resource-file-system/index.md) - 资源文件系统 diff --git a/docs/api/resources/filearchive/getsize.md b/docs/api/resources/filearchive/getsize.md deleted file mode 100644 index 3f42de9e..00000000 --- a/docs/api/resources/filearchive/getsize.md +++ /dev/null @@ -1,37 +0,0 @@ -# FileArchive::GetSize - -获取文件大小。 - -## 方法签名 - -```cpp -size_t GetSize(const Containers::String& fileName) const override; -``` - -## 详细描述 - -获取归档内指定文件的字节大小。文件路径是相对于归档目录的路径。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `fileName` | `const Containers::String&` | 要查询的文件名(相对于归档路径) | - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `size_t` | 文件字节大小,文件不存在或归档无效时返回 0 | - -## 示例 - -```cpp -FileArchive archive; -archive.Open("resources/"); - -size_t size = archive.GetSize("textures/player.png"); -if (size > 0) { - // 文件存在,准备读取 -} -``` diff --git a/docs/api/resources/filearchive/open.md b/docs/api/resources/filearchive/open.md deleted file mode 100644 index 5354a867..00000000 --- a/docs/api/resources/filearchive/open.md +++ /dev/null @@ -1,34 +0,0 @@ -# FileArchive::Open - -打开归档目录。 - -## 方法签名 - -```cpp -bool Open(const Containers::String& path) override; -``` - -## 详细描述 - -打开指定路径的目录作为归档。归档路径可以是绝对路径或相对路径。方法会设置内部路径并标记归档为有效状态。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `path` | `const Containers::String&` | 归档目录路径 | - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `bool` | 始终返回 `true`。当前实现不验证路径是否真实存在。 | - -## 示例 - -```cpp -FileArchive archive; -if (archive.Open("resources/textures/")) { - // 归档已打开 -} -``` diff --git a/docs/api/resources/filearchive/read.md b/docs/api/resources/filearchive/read.md deleted file mode 100644 index c27020bf..00000000 --- a/docs/api/resources/filearchive/read.md +++ /dev/null @@ -1,42 +0,0 @@ -# FileArchive::Read - -读取文件数据。 - -## 方法签名 - -```cpp -bool Read(const Containers::String& fileName, void* buffer, size_t size, size_t offset) const override; -``` - -## 详细描述 - -从归档中读取指定文件的全部或部分内容。文件路径是相对于归档目录的路径。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `fileName` | `const Containers::String&` | 要读取的文件名(相对于归档路径) | -| `buffer` | `void*` | 读取数据的目标缓冲区 | -| `size` | `size_t` | 要读取的字节数 | -| `offset` | `size_t` | 文件内起始偏移位置 | - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `bool` | 读取成功返回 `true`,失败返回 `false` | - -## 示例 - -```cpp -FileArchive archive; -archive.Open("resources/"); - -size_t fileSize = archive.GetSize("textures/player.png"); -Containers::Array buffer(fileSize); - -if (archive.Read("textures/player.png", buffer.Data(), fileSize, 0)) { - // 文件读取成功 -} -``` diff --git a/docs/api/resources/filesystem/exists.md b/docs/api/resources/filesystem/exists.md deleted file mode 100644 index aedf8184..00000000 --- a/docs/api/resources/filesystem/exists.md +++ /dev/null @@ -1,26 +0,0 @@ -# ResourceFileSystem::Exists - -```cpp -bool Exists(const Containers::String& relativePath) const -``` - -检查资源文件是否存在。优先在归档包中查找,其次在目录中查找。 - -**参数:** -- `relativePath` - 资源相对路径 - -**返回:** 如果存在则返回 true - -**复杂度:** O(1) - -**示例:** - -```cpp -if (ResourceFileSystem::Get().Exists("shaders/default.vert")) { - // 文件存在... -} -``` - -## 相关文档 - -- [ResourceFileSystem 总览](filesystem.md) - 返回类总览 diff --git a/docs/api/resources/filesystem/filesystem.md b/docs/api/resources/filesystem/filesystem.md deleted file mode 100644 index 5e16da66..00000000 --- a/docs/api/resources/filesystem/filesystem.md +++ /dev/null @@ -1,106 +0,0 @@ -# ResourceFileSystem - -**命名空间**: `XCEngine::Resources` - -**类型**: `class` - -**头文件**: `XCEngine/Core/IO/ResourceFileSystem.h` - -**描述**: 资源文件系统,负责资源文件的查找、读取和虚拟文件系统(支持目录和归档包)管理。 - -## 概述 - -`ResourceFileSystem` 实现了虚拟资源文件系统,支持从多个目录和归档包(如 `.zip`、`.pak`)中查找和读取资源。它通过 `IArchive` 接口支持不同的归档格式,并提供资源信息缓存。 - -## 单例访问 - -| 方法 | 描述 | -|------|------| -| `static ResourceFileSystem& Get()` | 获取单例实例 | - -## IArchive 接口 - -抽象归档接口,用于封装单个归档包或目录的读取操作。 - -### 公共方法 - -| 方法 | 描述 | -|------|------| -| `virtual bool Open(const Containers::String& path)` | 打开归档 | -| `virtual void Close()` | 关闭归档 | -| `virtual bool Read(const Containers::String& fileName, void* buffer, size_t size, size_t offset) const` | 从归档中读取文件 | -| `virtual size_t GetSize(const Containers::String& fileName) const` | 获取文件大小 | -| `virtual bool Exists(const Containers::String& fileName) const` | 检查文件是否存在 | -| `virtual void Enumerate(const Containers::String& pattern, Containers::Array& outFiles) const` | 枚举匹配的文件 | -| `virtual bool IsValid() const` | 是否有效 | - -## ResourceInfo 结构体 - -| 成员 | 类型 | 描述 | -|------|------|------| -| `path` | `Containers::String` | 资源相对路径 | -| `size` | `size_t` | 文件大小(字节) | -| `modifiedTime` | `Core::uint64` | 修改时间戳 | -| `inArchive` | `bool` | 是否在归档包中 | -| `archivePath` | `Containers::String` | 所属归档路径 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `Initialize()` | 初始化,设置资源根目录 | -| `Shutdown()` | 关闭,释放所有归档 | -| [`AddArchive`](../resource-file-system/add-archive.md) | 添加归档包(优先查找) | -| [`AddDirectory`](../resource-file-system/add-directory.md) | 添加资源目录 | -| [`RemoveArchive`](../resource-file-system/remove-archive.md) | 移除归档包 | -| [`FindResource`](../resource-file-system/find-resource.md) | 查找资源的绝对路径 | -| [`Exists`](../resource-file-system/exists.md) | 检查资源是否存在 | -| [`ReadResource`](../resource-file-system/read-resource.md) | 读取资源文件内容(字节数组) | -| [`GetResourceInfo`](../resource-file-system/get-resource-info.md) | 获取资源信息 | -| [`EnumerateResources`](../resource-file-system/enumerate-resources.md) | 枚举匹配的资源 | - -## 实现说明 - -**注意**: 当前 `GetResourceInfo()` 不填充 `modifiedTime` 字段,`EnumerateResources()` 为 stub 实现。 - -## 使用示例 - -```cpp -// 初始化资源文件系统 -ResourceFileSystem::Get().Initialize("resources/"); - -// 添加归档包(优先于目录) -ResourceFileSystem::Get().AddArchive("data/resources.pak"); - -// 添加额外资源目录 -ResourceFileSystem::Get().AddDirectory("user_content/"); - -// 检查资源是否存在 -if (ResourceFileSystem::Get().Exists("textures/player.png")) { - // 读取资源 - auto data = ResourceFileSystem::Get().ReadResource("textures/player.png"); - // 使用数据... -} - -// 获取资源信息 -ResourceInfo info; -if (ResourceFileSystem::Get().GetResourceInfo("shaders/default.vert", info)) { - printf("Size: %zu, InArchive: %s\n", info.size, info.inArchive ? "yes" : "no"); -} - -// 枚举资源 -Containers::Array textures; -ResourceFileSystem::Get().EnumerateResources("textures/*.png", textures); -for (const auto& tex : textures) { - printf("Found: %s\n", tex.path.CStr()); -} - -// 关闭 -ResourceFileSystem::Get().Shutdown(); -``` - -## 相关文档 - -- [ResourceManager](../resource-manager/resource-manager.md) - 资源管理器 -- [IResourceLoader](../iloader/iloader.md) - 资源加载器 -- [Resources 总览](../resources.md) - 返回模块总览 diff --git a/docs/api/resources/filesystem/initialize.md b/docs/api/resources/filesystem/initialize.md deleted file mode 100644 index 6ac2d768..00000000 --- a/docs/api/resources/filesystem/initialize.md +++ /dev/null @@ -1,24 +0,0 @@ -# ResourceFileSystem::Initialize - -```cpp -void Initialize(const Containers::String& rootPath) -``` - -初始化资源文件系统。设置资源根目录,准备虚拟文件系统。 - -**参数:** -- `rootPath` - 资源根目录路径 - -**返回:** 无 - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceFileSystem::Get().Initialize("resources/"); -``` - -## 相关文档 - -- [ResourceFileSystem 总览](filesystem.md) - 返回类总览 diff --git a/docs/api/resources/filesystem/readresource.md b/docs/api/resources/filesystem/readresource.md deleted file mode 100644 index fd9e0516..00000000 --- a/docs/api/resources/filesystem/readresource.md +++ /dev/null @@ -1,27 +0,0 @@ -# ResourceFileSystem::ReadResource - -```cpp -Containers::Array ReadResource(const Containers::String& relativePath) const -``` - -读取资源文件内容。优先从归档包中读取,其次从目录中查找。 - -**参数:** -- `relativePath` - 资源相对路径 - -**返回:** 文件内容的字节数组,读取失败返回空数组 - -**复杂度:** O(n),n 为文件大小 - -**示例:** - -```cpp -auto data = ResourceFileSystem::Get().ReadResource("textures/player.png"); -if (!data.Empty()) { - // 使用数据... -} -``` - -## 相关文档 - -- [ResourceFileSystem 总览](filesystem.md) - 返回类总览 diff --git a/docs/api/resources/iloader/canload.md b/docs/api/resources/iloader/canload.md deleted file mode 100644 index a2bf4a3a..00000000 --- a/docs/api/resources/iloader/canload.md +++ /dev/null @@ -1,31 +0,0 @@ -# IResourceLoader::CanLoad - -```cpp -bool CanLoad(const Containers::String& path) const -``` - -检查此加载器是否能加载指定路径的资源。通过比对路径扩展名与支持列表判断。 - -**参数:** -- `path` - 资源路径 - -**返回:** 如果扩展名在支持列表中则返回 true - -**复杂度:** O(k),k 为扩展名数量 - -**示例:** - -```cpp -bool TextureLoader::CanLoad(const Containers::String& path) const { - Containers::String ext = GetExtension(path); - auto supported = GetSupportedExtensions(); - for (const auto& s : supported) { - if (ext == s) return true; - } - return false; -} -``` - -## 相关文档 - -- [IResourceLoader 总览](iloader.md) - 返回类总览 diff --git a/docs/api/resources/iloader/getdefaultsettings.md b/docs/api/resources/iloader/getdefaultsettings.md deleted file mode 100644 index 60daecad..00000000 --- a/docs/api/resources/iloader/getdefaultsettings.md +++ /dev/null @@ -1,25 +0,0 @@ -# IResourceLoader::GetDefaultSettings - -```cpp -ImportSettings* GetDefaultSettings() const = 0 -``` - -获取此加载器的默认导入设置。纯虚方法,子类返回其特有的默认设置实例。 - -**参数:** 无 - -**返回:** 默认 `ImportSettings` 指针,调用者不持有所有权 - -**复杂度:** O(1) - -**示例:** - -```cpp -ImportSettings* TextureLoader::GetDefaultSettings() const { - return new TextureImportSettings(); -} -``` - -## 相关文档 - -- [IResourceLoader 总览](iloader.md) - 返回类总览 diff --git a/docs/api/resources/iloader/getresourcetype.md b/docs/api/resources/iloader/getresourcetype.md deleted file mode 100644 index 9a7d8be0..00000000 --- a/docs/api/resources/iloader/getresourcetype.md +++ /dev/null @@ -1,23 +0,0 @@ -# IResourceLoader::GetResourceType - -```cpp -virtual ResourceType GetResourceType() const = 0 -``` - -获取此加载器所支持的资源类型。纯虚方法,子类必须实现。 - -**参数:** 无 - -**返回:** `ResourceType` 枚举值,标识资源类型(如 `ResourceType::Texture`、`ResourceType::Mesh` 等) - -**示例:** - -```cpp -ResourceType TextureLoader::GetResourceType() const { - return ResourceType::Texture; -} -``` - -## 相关文档 - -- [IResourceLoader 总览](iloader.md) - 返回类总览 diff --git a/docs/api/resources/iloader/getsupportedextensions.md b/docs/api/resources/iloader/getsupportedextensions.md deleted file mode 100644 index 11c796d7..00000000 --- a/docs/api/resources/iloader/getsupportedextensions.md +++ /dev/null @@ -1,25 +0,0 @@ -# IResourceLoader::GetSupportedExtensions - -```cpp -Containers::Array GetSupportedExtensions() const -``` - -获取此加载器支持的文件扩展名列表。用于 `CanLoad` 判断和编辑器中资源类型识别。 - -**参数:** 无 - -**返回:** 支持的扩展名数组(如 `{".png", ".jpg", ".bmp"}`) - -**复杂度:** O(1) - -**示例:** - -```cpp -Containers::Array TextureLoader::GetSupportedExtensions() const { - return {".png", ".jpg", ".jpeg", ".bmp", ".tga", ".dds"}; -} -``` - -## 相关文档 - -- [IResourceLoader 总览](iloader.md) - 返回类总览 diff --git a/docs/api/resources/iloader/iloader.md b/docs/api/resources/iloader/iloader.md deleted file mode 100644 index a31c35e4..00000000 --- a/docs/api/resources/iloader/iloader.md +++ /dev/null @@ -1,121 +0,0 @@ -# IResourceLoader - -**命名空间**: `XCEngine::Resources` - -**类型**: `class` (abstract) - -**头文件**: `XCEngine/Core/IO/IResourceLoader.h` - -**描述**: 资源加载器抽象接口,定义了资源加载的标准协议。每个资源类型需要提供对应的加载器实现。 - -## 概述 - -`IResourceLoader` 是资源加载系统的核心抽象接口。它定义了同步和异步加载资源的方法,以及资源类型的查询。`ResourceManager` 通过注册加载器来支持不同类型资源的加载。 - -## LoadResult 结构体 - -加载操作的返回值结构体。 - -```cpp -struct LoadResult { - IResource* resource = nullptr; - bool success = false; - Containers::String errorMessage; - LoadResult() = default; - explicit LoadResult(IResource* res) : resource(res), success(res != nullptr) {} - explicit LoadResult(const Containers::String& error) : success(false), errorMessage(error) {} - explicit LoadResult(bool inSuccess, const Containers::String& error = "") - : success(inSuccess), errorMessage(error) {} - operator bool() const { return success && resource != nullptr; } -}; -``` - -## 公共方法 - -### 资源信息 - -| 方法 | 描述 | -|------|------| -| [`GetResourceType`](getresourcetype.md) | 获取此加载器支持的资源类型 | -| [`GetSupportedExtensions`](getsupportedextensions.md) | 获取支持的文件扩展名列表 | -| [`CanLoad`](canload.md) | 检查此加载器是否能加载指定路径 | -| [`GetDefaultSettings`](getdefaultsettings.md) | 获取默认导入设置 | - -### 同步加载 - -| 方法 | 描述 | -|------|------| -| [`Load`](load.md) | 同步加载资源 | - -### 异步加载 - -| 方法 | 描述 | -|------|------| -| [`LoadAsync`](loadasync.md) | 异步加载资源(带默认实现,子类可重写) | - -### 辅助方法(受保护) - -| 方法 | 描述 | -|------|------| -| `static Containers::Array ReadFileData(const Containers::String& path)` | 读取文件数据 | -| `static Containers::String GetExtension(const Containers::String& path)` | 获取文件扩展名 | - -## 实现说明 - -**注意**: 各资源加载器的 `GetDefaultSettings()` 当前返回 `nullptr`,未返回实际的默认设置对象。 - -## 宏 - -### REGISTER_RESOURCE_LOADER - -自动注册加载器到 ResourceManager 的宏。 - -```cpp -REGISTER_RESOURCE_LOADER(TextureLoader) -``` - -## 使用示例 - -```cpp -class TextureLoader : public IResourceLoader { -public: - ResourceType GetResourceType() const override { - return ResourceType::Texture; - } - - Containers::Array GetSupportedExtensions() const override { - return {".png", ".jpg", ".jpeg", ".bmp", ".tga"}; - } - - bool CanLoad(const Containers::String& path) const override { - Containers::String ext = GetExtension(path); - return ext == ".png" || ext == ".jpg" || ext == ".bmp"; - } - - ImportSettings* GetDefaultSettings() const override { - return new TextureImportSettings(); - } - - LoadResult Load(const Containers::String& path, - const ImportSettings* settings = nullptr) override { - LoadResult result; - auto data = ReadFileData(path); - if (data.Empty()) { - return LoadResult("Failed to read file: " + path); - } - result.resource = new Texture(); - result.success = true; - return result; - } -}; - -// 注册加载器 -ResourceManager::Get().RegisterLoader(new TextureLoader()); -``` - -## 相关文档 - -- [ResourceManager](../resource-manager/resource-manager.md) - 资源管理器 -- [AsyncLoader](../asyncloader/asyncloader.md) - 异步加载器 -- [ImportSettings](../importsettings/importsettings.md) - 导入设置 -- [Resources 总览](../resources.md) - 返回模块总览 diff --git a/docs/api/resources/iloader/load.md b/docs/api/resources/iloader/load.md deleted file mode 100644 index 5151636d..00000000 --- a/docs/api/resources/iloader/load.md +++ /dev/null @@ -1,42 +0,0 @@ -# IResourceLoader::Load - -```cpp -LoadResult Load(const Containers::String& path, const ImportSettings* settings = nullptr) -``` - -同步加载资源。纯虚方法,由具体加载器实现。从指定路径读取文件数据,解析为对应类型的资源对象。 - -**参数:** -- `path` - 资源文件路径 -- `settings` - 可选的导入设置,用于自定义加载行为 - -**返回:** `LoadResult`,包含加载结果(资源指针、是否成功、错误信息等) - -**复杂度:** O(n),取决于文件大小 - -**示例:** - -```cpp -LoadResult TextureLoader::Load(const Containers::String& path, - const ImportSettings* settings) { - LoadResult result; - auto data = ReadFileData(path); - if (data.Empty()) { - result.errorMessage = "Failed to read file: " + path; - return result; - } - Texture* tex = new Texture(); - if (!tex->LoadFromData(data.Data(), data.Size(), settings)) { - delete tex; - result.errorMessage = "Failed to parse texture data"; - return result; - } - result.resource = tex; - result.success = true; - return result; -} -``` - -## 相关文档 - -- [IResourceLoader 总览](iloader.md) - 返回类总览 diff --git a/docs/api/resources/iloader/loadasync.md b/docs/api/resources/iloader/loadasync.md deleted file mode 100644 index fb39b38a..00000000 --- a/docs/api/resources/iloader/loadasync.md +++ /dev/null @@ -1,34 +0,0 @@ -# IResourceLoader::LoadAsync - -```cpp -void LoadAsync(const Containers::String& path, const ImportSettings* settings, - std::function callback) -``` - -异步加载资源。默认实现直接调用同步 `Load` 方法并在当前线程执行回调。子类可重写以实现真正的多线程异步加载。 - -**参数:** -- `path` - 资源路径 -- `settings` - 导入设置(可为 nullptr) -- `callback` - 加载完成回调函数 - -**返回:** 无 - -**复杂度:** O(n) - -**示例:** - -```cpp -void AsyncTextureLoader::LoadAsync(const Containers::String& path, - const ImportSettings* settings, - std::function callback) { - std::thread([this, path, settings, callback]() { - LoadResult result = Load(path, settings); - callback(result); // 回调可在工作线程执行 - }).detach(); -} -``` - -## 相关文档 - -- [IResourceLoader 总览](iloader.md) - 返回类总览 diff --git a/docs/api/resources/importsettings/importsettings.md b/docs/api/resources/importsettings/importsettings.md deleted file mode 100644 index bbf18f61..00000000 --- a/docs/api/resources/importsettings/importsettings.md +++ /dev/null @@ -1,173 +0,0 @@ -# ImportSettings - -**命名空间**: `XCEngine::Resources` - -**类型**: `class` (abstract) - -**描述**: 资源导入设置抽象基类,定义资源导入时的配置选项接口。 - -## 概述 - -`ImportSettings` 是所有资源导入设置的抽象基类。它提供了克隆和 JSON 序列化接口,允许不同资源类型定义各自的导入选项。引擎内置了两个具体实现:`TextureImportSettings` 和 `MeshImportSettings`。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `virtual Core::UniqueRef Clone() const = 0` | 克隆一份设置 | -| `virtual bool LoadFromJSON(const Containers::String& json)` | 从 JSON 加载设置(当前返回 false - stub) | -| `virtual Containers::String SaveToJSON() const` | 保存为 JSON 字符串(当前返回空字符串 - stub) | - ---- - -## TextureImportSettings - -纹理导入设置,继承自 `ImportSettings`。 - -**头文件**: `XCEngine/Resources/Texture/TextureImportSettings.h` - -## 实现说明 - -**注意**: `LoadFromJSON()` 和 `SaveToJSON()` 当前为 stub 实现。 - -### 枚举类型 - -#### MipmapFilter - -| 值 | 描述 | -|----|------| -| `Box` | Box 滤波器 | -| `Kaiser` | Kaiser 滤波器 | - -#### CompressionQuality - -| 值 | 描述 | -|----|------| -| `Low` | 低质量 | -| `Medium` | 中等质量 | -| `High` | 高质量 | -| `Ultra` | 超高质量 | - -### 公共方法 - -| 方法 | 描述 | -|------|------| -| `void SetTextureType(TextureType type)` | 设置纹理类型 | -| `TextureType GetTextureType() const` | 获取纹理类型 | -| `void SetTargetFormat(TextureFormat format)` | 设置目标格式 | -| `TextureFormat GetTargetFormat() const` | 获取目标格式 | -| `void SetGenerateMipmaps(bool generate)` | 设置是否生成 Mipmap | -| `bool GetGenerateMipmaps() const` | 获取是否生成 Mipmap | -| `void SetMipmapFilter(MipmapFilter filter)` | 设置 Mipmap 滤波器 | -| `MipmapFilter GetMipmapFilter() const` | 获取 Mipmap 滤波器 | -| `void SetMaxAnisotropy(Core::uint32 anisotropy)` | 设置最大各向异性级别 | -| `Core::uint32 GetMaxAnisotropy() const` | 获取最大各向异性级别 | -| `void SetSRGB(bool srgb)` | 设置是否 sRGB | -| `bool GetSRGB() const` | 获取 sRGB 设置 | -| `void SetFlipVertical(bool flip)` | 设置是否垂直翻转 | -| `bool GetFlipVertical() const` | 获取垂直翻转设置 | -| `void SetFlipHorizontal(bool flip)` | 设置是否水平翻转 | -| `bool GetFlipHorizontal() const` | 获取水平翻转设置 | -| `void SetBorderColor(const Math::Vector3& color)` | 设置边框颜色 | -| `const Math::Vector3& GetBorderColor() const` | 获取边框颜色 | -| `void SetCompressionQuality(CompressionQuality quality)` | 设置压缩质量 | -| `CompressionQuality GetCompressionQuality() const` | 获取压缩质量 | -| `void SetUseHardwareCompression(bool use)` | 设置是否使用硬件压缩 | -| `bool GetUseHardwareCompression() const` | 获取硬件压缩设置 | -| `void SetMaxSize(Core::uint32 size)` | 设置最大纹理尺寸 | -| `Core::uint32 GetMaxSize() const` | 获取最大纹理尺寸 | -| `void SetGenerateNormalMap(bool generate)` | 设置是否生成法线贴图 | -| `bool GetGenerateNormalMap() const` | 获取法线贴图生成设置 | -| `void SetNormalMapStrength(float strength)` | 设置法线贴图强度 | -| `float GetNormalMapStrength() const` | 获取法线贴图强度 | - ---- - -## MeshImportSettings - -网格导入设置,继承自 `ImportSettings`。 - -**头文件**: `XCEngine/Resources/Mesh/MeshImportSettings.h` - -## 实现说明 - -**注意**: `LoadFromJSON()` 和 `SaveToJSON()` 当前为 stub 实现。 - -### MeshImportFlags - -| 值 | 描述 | -|----|------| -| `None` | 无特殊标志 | -| `FlipUVs` | 翻转 UV 坐标 | -| `FlipWindingOrder` | 翻转绕序 | -| `GenerateNormals` | 生成法线 | -| `GenerateTangents` | 生成切线 | -| `OptimizeMesh` | 优化网格 | -| `ImportSkinning` | 导入骨骼蒙皮 | -| `ImportAnimations` | 导入动画 | -| `ImportMaterials` | 导入材质 | -| `ImportCameras` | 导入相机 | -| `ImportLights` | 导入灯光 | - -支持位运算组合(`operator|`、`operator&`、`operator~`)。 - -### 公共方法 - -| 方法 | 描述 | -|------|------| -| `void SetImportFlags(MeshImportFlags flags)` | 设置导入标志 | -| `MeshImportFlags GetImportFlags() const` | 获取导入标志 | -| `void AddImportFlag(MeshImportFlags flag)` | 添加单个导入标志 | -| `void RemoveImportFlag(MeshImportFlags flag)` | 移除单个导入标志 | -| `bool HasImportFlag(MeshImportFlags flag) const` | 检查是否包含某标志 | -| `void SetScale(float scale)` | 设置缩放 | -| `float GetScale() const` | 获取缩放 | -| `void SetOffset(const Math::Vector3& offset)` | 设置偏移 | -| `const Math::Vector3& GetOffset() const` | 获取偏移 | -| `void SetAxisConversion(bool convert)` | 设置轴转换 | -| `bool GetAxisConversion() const` | 获取轴转换设置 | -| `void SetMergeMeshes(bool merge)` | 设置是否合并网格 | -| `bool GetMergeMeshes() const` | 获取合并网格设置 | -| `void SetOptimizeThreshold(float threshold)` | 设置优化阈值 | -| `float GetOptimizeThreshold() const` | 获取优化阈值 | -| `void SetImportScale(float scale)` | 设置导入缩放 | -| `float GetImportScale() const` | 获取导入缩放 | -| `void SetThreshold(float threshold)` | 设置阈值 | -| `float GetThreshold() const` | 获取阈值 | - -## 使用示例 - -```cpp -#include -#include - -// 纹理导入设置 -TextureImportSettings texSettings; -texSettings.SetTextureType(TextureType::Texture2D); -texSettings.SetGenerateMipmaps(true); -texSettings.SetSRGB(true); -texSettings.SetCompressionQuality(CompressionQuality::High); -texSettings.SetMaxAnisotropy(16); - -// 加载设置 -texSettings.LoadFromJSON(R"({"sRGB":true,"maxAnisotropy":8})"); - -// 保存设置 -Containers::String json = texSettings.SaveToJSON(); - -// 网格导入设置 -MeshImportSettings meshSettings; -meshSettings.SetImportFlags(MeshImportFlags::FlipUVs | MeshImportFlags::GenerateNormals); -meshSettings.SetScale(1.0f); -meshSettings.SetAxisConversion(true); - -// 使用设置加载资源 -ResourceHandle tex = ResourceManager::Get().Load("tex.png", &texSettings); -ResourceHandle mesh = ResourceManager::Get().Load("model.fbx", &meshSettings); -``` - -## 相关文档 - -- [IResourceLoader](../iloader/iloader.md) - 资源加载器 -- [ResourceManager](../resource-manager/resource-manager.md) - 资源管理器 -- [Resources 总览](../resources.md) - 返回模块总览 diff --git a/docs/api/resources/iresource/getguid.md b/docs/api/resources/iresource/getguid.md deleted file mode 100644 index da88fc0f..00000000 --- a/docs/api/resources/iresource/getguid.md +++ /dev/null @@ -1,29 +0,0 @@ -# IResource::GetGUID - -```cpp -virtual ResourceGUID GetGUID() const = 0 -``` - -获取全局唯一标识符。纯虚方法,由具体资源类实现,返回资源的唯一 GUID。 - -**参数:** 无 - -**返回:** `ResourceGUID` - 资源的全局唯一标识符 - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle mat = ResourceManager::Get().Load("materials/player.mat"); -ResourceGUID guid = mat->GetGUID(); -// guid 是根据路径生成的唯一标识符 -``` - -## 相关文档 - -- [IResource 总览](iresource.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/resources/iresource/getmemorysize.md b/docs/api/resources/iresource/getmemorysize.md deleted file mode 100644 index 3d97c734..00000000 --- a/docs/api/resources/iresource/getmemorysize.md +++ /dev/null @@ -1,29 +0,0 @@ -# IResource::GetMemorySize - -```cpp -virtual size_t GetMemorySize() const = 0 -``` - -获取资源占用的内存大小。纯虚方法,由具体资源类实现,返回资源在内存中的字节数。 - -**参数:** 无 - -**返回:** `size_t` - 资源占用的内存大小(字节) - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle mesh = ResourceManager::Get().Load("models/player.fbx"); -size_t size = mesh->GetMemorySize(); -// size == 内存占用字节数 -``` - -## 相关文档 - -- [IResource 总览](iresource.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/resources/iresource/getname.md b/docs/api/resources/iresource/getname.md deleted file mode 100644 index 57b9fbb0..00000000 --- a/docs/api/resources/iresource/getname.md +++ /dev/null @@ -1,29 +0,0 @@ -# IResource::GetName - -```cpp -virtual const Containers::String& GetName() const = 0 -``` - -获取资源名称。纯虚方法,由具体资源类实现,返回资源的显示名称。 - -**参数:** 无 - -**返回:** `const Containers::String&` - 资源名称的常量引用 - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle mesh = ResourceManager::Get().Load("models/player.fbx"); -const Containers::String& name = mesh->GetName(); -// name == "player" -``` - -## 相关文档 - -- [IResource 总览](iresource.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/resources/iresource/getpath.md b/docs/api/resources/iresource/getpath.md deleted file mode 100644 index ab697aca..00000000 --- a/docs/api/resources/iresource/getpath.md +++ /dev/null @@ -1,29 +0,0 @@ -# IResource::GetPath - -```cpp -virtual const Containers::String& GetPath() const = 0 -``` - -获取资源路径。纯虚方法,由具体资源类实现,返回资源在文件系统中的相对路径。 - -**参数:** 无 - -**返回:** `const Containers::String&` - 资源路径的常量引用 - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle tex = ResourceManager::Get().Load("textures/player.png"); -const Containers::String& path = tex->GetPath(); -// path == "textures/player.png" -``` - -## 相关文档 - -- [IResource 总览](iresource.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/resources/iresource/gettype.md b/docs/api/resources/iresource/gettype.md deleted file mode 100644 index eded9782..00000000 --- a/docs/api/resources/iresource/gettype.md +++ /dev/null @@ -1,30 +0,0 @@ -# IResource::GetType - -```cpp -virtual ResourceType GetType() const = 0 -``` - -获取资源类型。纯虚方法,由具体资源类实现,返回该资源所属的类型枚举值。 - -**参数:** 无 - -**返回:** `ResourceType` - 资源类型枚举 - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle tex = ResourceManager::Get().Load("textures/player.png"); -ResourceType type = tex->GetType(); -// type == ResourceType::Texture -``` - -## 相关文档 - -- [IResource 总览](iresource.md) - 返回类总览 -- [ResourceTypes](../resourcetypes/resourcetypes.md) - 资源类型定义 \ No newline at end of file diff --git a/docs/api/resources/iresource/initialize.md b/docs/api/resources/iresource/initialize.md deleted file mode 100644 index c5f8e825..00000000 --- a/docs/api/resources/iresource/initialize.md +++ /dev/null @@ -1,38 +0,0 @@ -# IResource::Initialize - -```cpp -void Initialize(const ConstructParams& params) -``` - -使用构造参数初始化资源。将参数中的名称、路径、GUID 和内存大小写入对应成员变量,并将资源标记为有效状态。 - -**参数:** -- `params` - 包含资源名称、路径、GUID 和内存大小的构造参数结构体 - -**返回:** 无 - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -class MyResource : public IResource { -public: - MyResource() { - ConstructParams params; - params.name = "player_texture"; - params.path = "textures/player.png"; - params.guid = ResourceGUID::Generate(params.path); - params.memorySize = 1024 * 1024; // 1MB - Initialize(params); - } -}; -``` - -## 相关文档 - -- [IResource 总览](iresource.md) - 返回类总览 diff --git a/docs/api/resources/iresource/iresource.md b/docs/api/resources/iresource/iresource.md deleted file mode 100644 index fee12b76..00000000 --- a/docs/api/resources/iresource/iresource.md +++ /dev/null @@ -1,55 +0,0 @@ -# IResource - -**命名空间**: `XCEngine::Resources` - -**类型**: `class` (abstract) - -**头文件**: `XCEngine/Core/Asset/IResource.h` - -**描述**: 资源基类接口,所有具体资源类型(Texture、Mesh、Material 等)都必须继承自此类。 - -## 概述 - -`IResource` 是 XCEngine 资源管理系统的核心抽象基类。它定义了所有资源共有的基本属性和行为,包括资源类型、名称、路径、GUID、内存大小和有效性状态。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`GetType()`](gettype.md) | 获取资源类型 | -| [`GetName()`](getname.md) | 获取资源名称 | -| [`GetPath()`](getpath.md) | 获取资源路径 | -| [`GetGUID()`](getguid.md) | 获取全局唯一标识符 | -| [`IsValid()`](isvalid.md) | 检查资源是否有效 | -| [`GetMemorySize()`](getmemorysize.md) | 获取资源占用的内存大小(字节) | -| [`Release()`](release.md) | 释放资源引用 | -| [`Initialize()`](initialize.md) | 使用构造参数初始化资源 | -| [`SetInvalid()`](setinvalid.md) | 将资源标记为无效 | - -### 构造参数结构体 `ConstructParams` - -| 成员 | 类型 | 描述 | -|------|------|------| -| `name` | `Containers::String` | 资源名称 | -| `path` | `Containers::String` | 资源路径 | -| `guid` | `ResourceGUID` | 全局唯一标识符 | -| `memorySize` | `size_t` | 内存占用大小(字节),默认 0 | - -## 使用示例 - -```cpp -class MyResource : public IResource { -public: - ResourceType GetType() const override { return ResourceType::Custom; } - const Containers::String& GetName() const override { return m_name; } - const Containers::String& GetPath() const override { return m_path; } - ResourceGUID GetGUID() const override { return m_guid; } - bool IsValid() const override { return m_isValid; } - size_t GetMemorySize() const override { return m_memorySize; } - void Release() override { /* 释放逻辑 */ } -}; -``` - -## 相关文档 - -- [Resources 总览](../resources.md) - 返回模块总览 diff --git a/docs/api/resources/iresource/isvalid.md b/docs/api/resources/iresource/isvalid.md deleted file mode 100644 index c370149c..00000000 --- a/docs/api/resources/iresource/isvalid.md +++ /dev/null @@ -1,33 +0,0 @@ -# IResource::IsValid - -```cpp -virtual bool IsValid() const = 0 -``` - -检查资源是否有效。纯虚方法,由具体资源类实现,返回资源当前的有效状态。 - -**参数:** 无 - -**返回:** `bool` - 资源有效返回 `true`,无效返回 `false` - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle tex = ResourceManager::Get().Load("textures/player.png"); -if (tex->IsValid()) { - // 资源加载成功,可以使用 -} else { - // 资源加载失败或已被释放 -} -``` - -## 相关文档 - -- [IResource 总览](iresource.md) - 返回类总览 -- [SetInvalid](setinvalid.md) - 将资源标记为无效 \ No newline at end of file diff --git a/docs/api/resources/iresource/release.md b/docs/api/resources/iresource/release.md deleted file mode 100644 index 8b90fcfd..00000000 --- a/docs/api/resources/iresource/release.md +++ /dev/null @@ -1,37 +0,0 @@ -# IResource::Release - -```cpp -virtual void Release() = 0 -``` - -释放资源引用。纯虚方法,由具体资源类实现,用于执行资源特有的清理逻辑(如释放 GPU 资源、释放内存等)。在 `ResourceHandle` 析构或调用 `Reset()` 时会自动触发。 - -**参数:** 无 - -**返回:** 无 - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) 或 O(n),取决于具体实现 - -**示例:** - -```cpp -class Texture : public IResource { -public: - void Release() override { - if (m_rhiTexture) { - m_rhiTexture->Release(); - m_rhiTexture = nullptr; - } - m_pixelData.Clear(); - m_isValid = false; - } -}; -``` - -## 相关文档 - -- [IResource 总览](iresource.md) - 返回类总览 diff --git a/docs/api/resources/iresource/setinvalid.md b/docs/api/resources/iresource/setinvalid.md deleted file mode 100644 index 2316989b..00000000 --- a/docs/api/resources/iresource/setinvalid.md +++ /dev/null @@ -1,32 +0,0 @@ -# IResource::SetInvalid - -```cpp -void SetInvalid() -``` - -将资源标记为无效状态。此方法用于在加载失败或资源损坏时将 `m_isValid` 设为 false,之后调用 `IsValid()` 将返回 false。 - -**参数:** 无 - -**返回:** 无 - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -void LoadFailed() { - texture->SetInvalid(); - if (!texture->IsValid()) { - // 处理资源无效情况 - } -} -``` - -## 相关文档 - -- [IResource 总览](iresource.md) - 返回类总览 diff --git a/docs/api/resources/material-loader/index.md b/docs/api/resources/material-loader/index.md deleted file mode 100644 index d121853e..00000000 --- a/docs/api/resources/material-loader/index.md +++ /dev/null @@ -1,59 +0,0 @@ -# MaterialLoader - -## 命名空间 - -`XCEngine::Resources` - -## 类型 - -类 (Class) - -## 描述 - -材质资源加载器,负责从磁盘加载 `.mat`、`.material` 和 `.json` 格式的材质资源文件。 - -## 概述 - -`MaterialLoader` 继承自 `IResourceLoader`,实现了材质资源的加载功能。它支持多种材质文件格式,能够解析材质文件中的 shader 引用并自动加载对应的 Shader 资源。加载过程中会提取材质的基本属性信息并创建 `Material` 对象。 - -## 公共方法 - -| 方法 | 签名 | 描述 | -|------|------|------| -| [MaterialLoader](methods/constructor.md) | `MaterialLoader()` | 默认构造函数 | -| [~MaterialLoader](methods/destructor.md) | `virtual ~MaterialLoader()` | 析构函数 | -| [GetResourceType](methods/get-resource-type.md) | `ResourceType GetResourceType() const` | 返回资源类型为 Material | -| [GetSupportedExtensions](methods/get-supported-extensions.md) | `Array GetSupportedExtensions() const` | 返回支持的扩展名列表 | -| [CanLoad](methods/can-load.md) | `bool CanLoad(const String& path) const` | 检查给定路径是否可被加载 | -| [Load](methods/load.md) | `LoadResult Load(const String& path, const ImportSettings* settings = nullptr)` | 加载指定路径的材质资源 | -| [GetDefaultSettings](methods/get-default-settings.md) | `ImportSettings* GetDefaultSettings() const` | 返回默认导入设置 | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Resources; - -// 通过 ResourceManager 加载材质 -auto materialHandle = ResourceManager::Get().Load("assets/materials/wood.mat"); -if (materialHandle.IsValid()) { - Material* material = materialHandle.Get(); - // 使用材质... -} - -// 直接使用 MaterialLoader -MaterialLoader loader; -LoadResult result = loader.Load("assets/materials/wood.material"); -if (result.IsSuccess()) { - Material* material = static_cast(result.GetResource()); - // 使用材质... -} -``` - -## 相关文档 - -- [Material](../material/material.md) -- [IResourceLoader](../iloader/iloader.md) -- [ResourceManager](../resource-manager/resource-manager.md) diff --git a/docs/api/resources/material-loader/methods/can-load.md b/docs/api/resources/material-loader/methods/can-load.md deleted file mode 100644 index d64c5c96..00000000 --- a/docs/api/resources/material-loader/methods/can-load.md +++ /dev/null @@ -1,31 +0,0 @@ -# MaterialLoader::CanLoad - -## 方法签名 - -```cpp -bool CanLoad(const Containers::String& path) const override; -``` - -## 详细描述 - -检查给定路径的文件是否可以被该加载器加载。通过提取文件扩展名并与支持列表进行比较来判断。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| path | `const Containers::String&` | 待检查的文件路径 | - -## 返回值 - -`bool` - 如果文件扩展名在支持列表中返回 `true`,否则返回 `false` - -## 示例 - -```cpp -MaterialLoader loader; -bool canLoad1 = loader.CanLoad("assets/materials/wood.mat"); // true -bool canLoad2 = loader.CanLoad("assets/materials/wood.material"); // true -bool canLoad3 = loader.CanLoad("assets/materials/wood.json"); // true -bool canLoad4 = loader.CanLoad("assets/materials/wood.png"); // false -``` diff --git a/docs/api/resources/material-loader/methods/constructor.md b/docs/api/resources/material-loader/methods/constructor.md deleted file mode 100644 index 26f05a6d..00000000 --- a/docs/api/resources/material-loader/methods/constructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# MaterialLoader::MaterialLoader - -## 方法签名 - -```cpp -MaterialLoader(); -``` - -## 详细描述 - -`MaterialLoader` 类的默认构造函数,使用默认方式构造一个 `MaterialLoader` 实例。 - -## 参数 - -无 - -## 返回值 - -无 - -## 示例 - -```cpp -#include - -using namespace XCEngine::Resources; - -MaterialLoader loader; -``` diff --git a/docs/api/resources/material-loader/methods/destructor.md b/docs/api/resources/material-loader/methods/destructor.md deleted file mode 100644 index 92529a04..00000000 --- a/docs/api/resources/material-loader/methods/destructor.md +++ /dev/null @@ -1,28 +0,0 @@ -# MaterialLoader::~MaterialLoader - -## 方法签名 - -```cpp -virtual ~MaterialLoader() override; -``` - -## 详细描述 - -`MaterialLoader` 类的析构函数,用于清理 `MaterialLoader` 实例占用的资源。当前实现为默认析构函数。 - -## 参数 - -无 - -## 返回值 - -无 - -## 示例 - -```cpp -{ - MaterialLoader loader; - // 使用 loader... -} // loader 在此自动销毁 -``` diff --git a/docs/api/resources/material-loader/methods/get-default-settings.md b/docs/api/resources/material-loader/methods/get-default-settings.md deleted file mode 100644 index 080e8266..00000000 --- a/docs/api/resources/material-loader/methods/get-default-settings.md +++ /dev/null @@ -1,27 +0,0 @@ -# MaterialLoader::GetDefaultSettings - -## 方法签名 - -```cpp -ImportSettings* GetDefaultSettings() const override; -``` - -## 详细描述 - -返回材质加载器的默认导入设置。当前实现返回 `nullptr`,表示材质加载不使用特殊的导入设置。 - -## 参数 - -无 - -## 返回值 - -`ImportSettings*` - 始终返回 `nullptr` - -## 示例 - -```cpp -MaterialLoader loader; -ImportSettings* settings = loader.GetDefaultSettings(); -// settings == nullptr -``` diff --git a/docs/api/resources/material-loader/methods/get-resource-type.md b/docs/api/resources/material-loader/methods/get-resource-type.md deleted file mode 100644 index fe0cb2c8..00000000 --- a/docs/api/resources/material-loader/methods/get-resource-type.md +++ /dev/null @@ -1,27 +0,0 @@ -# MaterialLoader::GetResourceType - -## 方法签名 - -```cpp -ResourceType GetResourceType() const override; -``` - -## 详细描述 - -返回该加载器管理的资源类型,固定为 `ResourceType::Material`。此方法继承自 `IResourceLoader` 接口,用于资源管理器识别加载器类型。 - -## 参数 - -无 - -## 返回值 - -`ResourceType` - 资源类型枚举值,始终返回 `ResourceType::Material` - -## 示例 - -```cpp -MaterialLoader loader; -ResourceType type = loader.GetResourceType(); -// type == ResourceType::Material -``` diff --git a/docs/api/resources/material-loader/methods/get-supported-extensions.md b/docs/api/resources/material-loader/methods/get-supported-extensions.md deleted file mode 100644 index a06d4bfa..00000000 --- a/docs/api/resources/material-loader/methods/get-supported-extensions.md +++ /dev/null @@ -1,36 +0,0 @@ -# MaterialLoader::GetSupportedExtensions - -## 方法签名 - -```cpp -Containers::Array GetSupportedExtensions() const override; -``` - -## 详细描述 - -返回该加载器支持的文件扩展名列表。`MaterialLoader` 支持三种材质文件格式: -- `.mat` - 材质文件 -- `.material` - 材质文件(完整格式) -- `.json` - JSON 格式的材质描述文件 - -## 参数 - -无 - -## 返回值 - -`Containers::Array` - 支持的扩展名数组 - -## 示例 - -```cpp -MaterialLoader loader; -auto extensions = loader.GetSupportedExtensions(); -for (const auto& ext : extensions) { - printf("Supported extension: %s\n", ext.CStr()); -} -// Output: -// Supported extension: mat -// Supported extension: material -// Supported extension: json -``` diff --git a/docs/api/resources/material-loader/methods/load.md b/docs/api/resources/material-loader/methods/load.md deleted file mode 100644 index 942d48c5..00000000 --- a/docs/api/resources/material-loader/methods/load.md +++ /dev/null @@ -1,62 +0,0 @@ -# MaterialLoader::Load - -## 方法签名 - -```cpp -LoadResult Load(const Containers::String& path, const ImportSettings* settings = nullptr) override; -``` - -## 详细描述 - -加载指定路径的材质资源文件。加载过程包括: -1. 读取文件数据 -2. 创建 `Material` 对象并设置基本信息(路径、名称、GUID) -3. 解析 JSON 格式内容,提取 shader 路径 -4. 加载引用的 Shader 资源 -5. 设置材质的有效性标志和内存占用 - -当前实现仅支持解析 JSON 中的 `"shader"` 字段并加载对应的 Shader 资源。 - -## 参数 - -| 参数 | 类型 | 默认值 | 描述 | -|------|------|--------|------| -| path | `const Containers::String&` | - | 材质文件路径 | -| settings | `const ImportSettings*` | `nullptr` | 导入设置(当前未使用) | - -## 返回值 - -`LoadResult` - 加载结果对象,包含成功加载的 `Material` 指针或错误信息 - -## 示例 - -```cpp -#include - -using namespace XCEngine::Resources; - -MaterialLoader loader; -LoadResult result = loader.Load("assets/materials/pbr.metallic"); - -if (result.IsSuccess()) { - Material* material = static_cast(result.GetResource()); - printf("Loaded material: %s, GUID: %s\n", - material->m_name.CStr(), - material->m_guid.ToString().CStr()); -} else { - printf("Failed to load material: %s\n", result.GetError().CStr()); -} -``` - -### JSON 材质文件格式 - -```json -{ - "shader": "shaders/pbr.glsl", - "properties": { - "albedo": [1.0, 1.0, 1.0, 1.0], - "metallic": 0.0, - "roughness": 0.5 - } -} -``` diff --git a/docs/api/resources/material/clear-all-properties.md b/docs/api/resources/material/clear-all-properties.md deleted file mode 100644 index 9d130f7b..00000000 --- a/docs/api/resources/material/clear-all-properties.md +++ /dev/null @@ -1,21 +0,0 @@ -# Material::ClearAllProperties - -```cpp -void ClearAllProperties(); -``` - -清空所有属性和纹理绑定。 - -**线程安全:** ❌ - -**复杂度:** O(n) - -**示例:** - -```cpp -mat->ClearAllProperties(); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/get-bool.md b/docs/api/resources/material/get-bool.md deleted file mode 100644 index 22ced97d..00000000 --- a/docs/api/resources/material/get-bool.md +++ /dev/null @@ -1,26 +0,0 @@ -# Material::GetBool - -```cpp -bool GetBool(const Containers::String& name) const; -``` - -获取布尔属性值。如果属性不存在则返回 false。 - -**参数:** -- `name` - 属性名称 - -**返回:** 布尔属性值,不存在则返回 false - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -bool receiveShadow = mat->GetBool("receiveShadow"); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/get-constant-buffer-data.md b/docs/api/resources/material/get-constant-buffer-data.md deleted file mode 100644 index 8126c749..00000000 --- a/docs/api/resources/material/get-constant-buffer-data.md +++ /dev/null @@ -1,25 +0,0 @@ -# Material::GetConstantBufferData - -```cpp -const Containers::Array& GetConstantBufferData() const; -``` - -获取常量缓冲区原始数据。数据由 UpdateConstantBuffer() 更新。 - -**返回:** 常量缓冲区数据数组的引用 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -mat->UpdateConstantBuffer(); -const auto& cbData = mat->GetConstantBufferData(); -// 将 cbData 上传到 GPU -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/get-float.md b/docs/api/resources/material/get-float.md deleted file mode 100644 index 2aa9c5b0..00000000 --- a/docs/api/resources/material/get-float.md +++ /dev/null @@ -1,26 +0,0 @@ -# Material::GetFloat - -```cpp -float GetFloat(const Containers::String& name) const; -``` - -获取浮点属性值。如果属性不存在则返回 0.0f。 - -**参数:** -- `name` - 属性名称 - -**返回:** 浮点属性值,不存在则返回 0.0f - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -float roughness = mat->GetFloat("roughness"); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/get-float2.md b/docs/api/resources/material/get-float2.md deleted file mode 100644 index ba7583ae..00000000 --- a/docs/api/resources/material/get-float2.md +++ /dev/null @@ -1,26 +0,0 @@ -# Material::GetFloat2 - -```cpp -Math::Vector2 GetFloat2(const Containers::String& name) const; -``` - -获取二维向量属性值。如果属性不存在则返回零向量。 - -**参数:** -- `name` - 属性名称 - -**返回:** 二维向量属性值 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Math::Vector2 uvScale = mat->GetFloat2("uvScale"); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/get-float3.md b/docs/api/resources/material/get-float3.md deleted file mode 100644 index 8b77a940..00000000 --- a/docs/api/resources/material/get-float3.md +++ /dev/null @@ -1,26 +0,0 @@ -# Material::GetFloat3 - -```cpp -Math::Vector3 GetFloat3(const Containers::String& name) const; -``` - -获取三维向量属性值。如果属性不存在则返回零向量。 - -**参数:** -- `name` - 属性名称 - -**返回:** 三维向量属性值 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Math::Vector3 albedo = mat->GetFloat3("albedo"); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/get-float4.md b/docs/api/resources/material/get-float4.md deleted file mode 100644 index 82516a51..00000000 --- a/docs/api/resources/material/get-float4.md +++ /dev/null @@ -1,26 +0,0 @@ -# Material::GetFloat4 - -```cpp -Math::Vector4 GetFloat4(const Containers::String& name) const; -``` - -获取四维向量属性值。如果属性不存在则返回零向量。 - -**参数:** -- `name` - 属性名称 - -**返回:** 四维向量属性值 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Math::Vector4 plane = mat->GetFloat4("planeEquation"); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/get-guid.md b/docs/api/resources/material/get-guid.md deleted file mode 100644 index 3f74c948..00000000 --- a/docs/api/resources/material/get-guid.md +++ /dev/null @@ -1,24 +0,0 @@ -# Material::GetGUID - -```cpp -ResourceGUID GetGUID() const override; -``` - -获取材质的全局唯一标识符。 - -**返回:** 资源 GUID - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle mat = ResourceManager::Get().Load("materials/pbr.mat"); -ResourceGUID guid = mat->GetGUID(); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/get-int.md b/docs/api/resources/material/get-int.md deleted file mode 100644 index a0261b70..00000000 --- a/docs/api/resources/material/get-int.md +++ /dev/null @@ -1,26 +0,0 @@ -# Material::GetInt - -```cpp -Core::int32 GetInt(const Containers::String& name) const; -``` - -获取整数属性值。如果属性不存在则返回 0。 - -**参数:** -- `name` - 属性名称 - -**返回:** 整数属性值,不存在则返回 0 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -int32 normalScale = mat->GetInt("normalScale"); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/get-memory-size.md b/docs/api/resources/material/get-memory-size.md deleted file mode 100644 index 89713754..00000000 --- a/docs/api/resources/material/get-memory-size.md +++ /dev/null @@ -1,24 +0,0 @@ -# Material::GetMemorySize - -```cpp -size_t GetMemorySize() const override; -``` - -获取材质占用的内存大小。 - -**返回:** 内存大小(字节) - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle mat = ResourceManager::Get().Load("materials/pbr.mat"); -size_t memSize = mat->GetMemorySize(); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/get-name.md b/docs/api/resources/material/get-name.md deleted file mode 100644 index c1150324..00000000 --- a/docs/api/resources/material/get-name.md +++ /dev/null @@ -1,24 +0,0 @@ -# Material::GetName - -```cpp -const Containers::String& GetName() const override; -``` - -获取材质的名称。 - -**返回:** 材质名称字符串的引用 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle mat = ResourceManager::Get().Load("materials/pbr.mat"); -const String& name = mat->GetName(); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/get-path.md b/docs/api/resources/material/get-path.md deleted file mode 100644 index 7ac4662d..00000000 --- a/docs/api/resources/material/get-path.md +++ /dev/null @@ -1,24 +0,0 @@ -# Material::GetPath - -```cpp -const Containers::String& GetPath() const override; -``` - -获取材质资源的路径。 - -**返回:** 资源路径字符串的引用 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle mat = ResourceManager::Get().Load("materials/pbr.mat"); -const String& path = mat->GetPath(); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/get-shader.md b/docs/api/resources/material/get-shader.md deleted file mode 100644 index bc0bb041..00000000 --- a/docs/api/resources/material/get-shader.md +++ /dev/null @@ -1,26 +0,0 @@ -# Material::GetShader - -```cpp -class Shader* GetShader() const; -``` - -获取材质关联的着色器指针。 - -**返回:** 着色器指针,如果未设置则返回 nullptr - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Shader* shader = mat->GetShader(); -if (shader != nullptr) { - // 使用着色器 -} -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/get-texture.md b/docs/api/resources/material/get-texture.md deleted file mode 100644 index 19e15591..00000000 --- a/docs/api/resources/material/get-texture.md +++ /dev/null @@ -1,26 +0,0 @@ -# Material::GetTexture - -```cpp -ResourceHandle GetTexture(const Containers::String& name) const; -``` - -获取纹理属性句柄。 - -**参数:** -- `name` - 属性名称 - -**返回:** 纹理资源句柄 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle albedoMap = mat->GetTexture("albedoMap"); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/get-type.md b/docs/api/resources/material/get-type.md deleted file mode 100644 index eb245de3..00000000 --- a/docs/api/resources/material/get-type.md +++ /dev/null @@ -1,26 +0,0 @@ -# Material::GetType - -```cpp -ResourceType GetType() const override; -``` - -返回材质的资源类型,标识该资源为 Material 类型。 - -**返回:** `ResourceType::Material` - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle mat = ResourceManager::Get().Load("materials/pbr.mat"); -if (mat->GetType() == ResourceType::Material) { - // 这是一个材质资源 -} -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/has-property.md b/docs/api/resources/material/has-property.md deleted file mode 100644 index ef85e482..00000000 --- a/docs/api/resources/material/has-property.md +++ /dev/null @@ -1,28 +0,0 @@ -# Material::HasProperty - -```cpp -bool HasProperty(const Containers::String& name) const; -``` - -检查指定属性是否存在。 - -**参数:** -- `name` - 属性名称 - -**返回:** 属性存在返回 true,否则返回 false - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -if (mat->HasProperty("roughness")) { - float roughness = mat->GetFloat("roughness"); -} -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/is-valid.md b/docs/api/resources/material/is-valid.md deleted file mode 100644 index 26e6fd6d..00000000 --- a/docs/api/resources/material/is-valid.md +++ /dev/null @@ -1,26 +0,0 @@ -# Material::IsValid - -```cpp -bool IsValid() const override; -``` - -检查材质是否有效且已正确加载。 - -**返回:** 材质有效返回 true,否则返回 false - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle mat = ResourceManager::Get().Load("materials/pbr.mat"); -if (mat->IsValid()) { - // 材质已成功加载 -} -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/material.md b/docs/api/resources/material/material.md deleted file mode 100644 index 2d9ae6b8..00000000 --- a/docs/api/resources/material/material.md +++ /dev/null @@ -1,164 +0,0 @@ -# Material - -**命名空间**: `XCEngine::Resources` - -**类型**: `class` - -**头文件**: `XCEngine/Resources/Material/Material.h` - -**描述**: 材质资源类,管理渲染所需的着色器和属性参数。 - -## 概述 - -`Material` 是 XCEngine 中的材质资源类,继承自 `IResource`。它管理材质关联的着色器和各种属性参数(浮点数、向量、整数、布尔值、纹理等),并支持将属性数据打包到常量缓冲区供 GPU 着色器使用。 - -## 头文件 - -```cpp -#include -``` - -## 枚举类型 - -### MaterialPropertyType - -材质属性类型枚举,定义材质支持的属性数据类型。 - -| 值 | 描述 | -|----|------| -| `Float` | 单精度浮点数 | -| `Float2` | 二维浮点向量 | -| `Float3` | 三维浮点向量 | -| `Float4` | 四维浮点向量 | -| `Int` | 32位整数 | -| `Int2` | 二维整数向量 | -| `Int3` | 三维整数向量 | -| `Int4` | 四维整数向量 | -| `Bool` | 布尔值 | -| `Texture` | 二维纹理资源 | -| `Cubemap` | 立方体贴图资源 | - -## 结构体 - -### MaterialProperty - -材质属性结构体,存储单个属性的名称、类型和值。 - -| 成员 | 类型 | 描述 | -|------|------|------| -| `name` | `Containers::String` | 属性名称标识符 | -| `type` | `MaterialPropertyType` | 属性数据类型 | -| `value` | `union Value` | 属性值联合体,支持 float[4]、int[4]、bool | -| `refCount` | `Core::uint32` | 引用计数 | - -## 公共方法表格 - -### 资源基类方法 - -| 方法 | 描述 | -|------|------| -| `GetType()` | 返回 `ResourceType::Material` | -| `GetName()` | 获取材质名称 | -| `GetPath()` | 获取材质资源路径 | -| `GetGUID()` | 获取全局唯一标识符 | -| `IsValid()` | 检查材质是否有效且已加载 | -| `GetMemorySize()` | 获取材质占用的内存大小 | -| `Release()` | 释放材质所有引用和资源 | - -### 着色器管理 - -| 方法 | 描述 | -|------|------| -| [`SetShader`](set-shader.md) | 设置材质使用的着色器 | -| [`GetShader`](get-shader.md) | 获取材质关联的着色器指针 | - -### 属性设置方法 - -| 方法 | 描述 | -|------|------| -| [`SetFloat`](set-float.md) | 设置浮点属性 | -| [`SetFloat2`](set-float2.md) | 设置二维向量属性 | -| [`SetFloat3`](set-float3.md) | 设置三维向量属性 | -| [`SetFloat4`](set-float4.md) | 设置四维向量属性 | -| [`SetInt`](set-int.md) | 设置整数属性 | -| [`SetBool`](set-bool.md) | 设置布尔属性 | -| [`SetTexture`](set-texture.md) | 设置纹理属性 | - -### 属性获取方法 - -| 方法 | 描述 | -|------|------| -| [`GetFloat`](get-float.md) | 获取浮点属性值,不存在返回 0.0f | -| [`GetFloat2`](get-float2.md) | 获取二维向量属性值 | -| [`GetFloat3`](get-float3.md) | 获取三维向量属性值 | -| [`GetFloat4`](get-float4.md) | 获取四维向量属性值 | -| [`GetInt`](get-int.md) | 获取整数属性值,不存在返回 0 | -| [`GetBool`](get-bool.md) | 获取布尔属性值,不存在返回 false | -| [`GetTexture`](get-texture.md) | 获取纹理属性句柄 | - -### 常量缓冲区 - -| 方法 | 描述 | -|------|------| -| [`GetConstantBufferData`](get-constant-buffer-data.md) | 获取常量缓冲区原始数据 | -| [`UpdateConstantBuffer`](update-constant-buffer.md) | 更新常量缓冲区数据 | - -### 属性查询与管理 - -| 方法 | 描述 | -|------|------| -| [`HasProperty`](has-property.md) | 检查指定属性是否存在 | -| [`RemoveProperty`](remove-property.md) | 移除指定属性 | -| [`ClearAllProperties`](clear-all-properties.md) | 清空所有属性和纹理绑定 | - -## 使用示例 - -```cpp -// 通过资源管理器加载材质 -ResourceHandle mat = ResourceManager::Get().Load("materials/player.mat"); - -// 设置着色器 -ResourceHandle shader = ResourceManager::Get().Load("shaders/pbr.shader"); -mat->SetShader(shader); - -// 设置材质属性 -mat->SetFloat("roughness", 0.5f); -mat->SetFloat("metallic", 0.0f); -mat->SetFloat3("albedo", Math::Vector3(1.0f, 0.8f, 0.6f)); -mat->SetFloat4("emission", Math::Vector4(1.0f, 0.5f, 0.2f, 2.0f)); -mat->SetInt("normalScale", 1); -mat->SetBool("receiveShadow", true); - -// 设置纹理 -ResourceHandle albedoTex = ResourceManager::Get().Load("textures/albedo.png"); -ResourceHandle normalTex = ResourceManager::Get().Load("textures/normal.png"); -ResourceHandle roughnessTex = ResourceManager::Get().Load("textures/roughness.png"); -mat->SetTexture("albedoMap", albedoTex); -mat->SetTexture("normalMap", normalTex); -mat->SetTexture("roughnessMap", roughnessTex); - -// 获取属性 -float roughness = mat->GetFloat("roughness"); -Math::Vector3 albedo = mat->GetFloat3("albedo"); -Shader* shader = mat->GetShader(); - -// 属性查询 -if (mat->HasProperty("metallic")) { - float metallic = mat->GetFloat("metallic"); -} - -// 更新常量缓冲区供 GPU 使用 -mat->UpdateConstantBuffer(); -const auto& cbData = mat->GetConstantBufferData(); - -// 释放材质 -mat->Release(); -``` - -## 相关文档 - -- [IResource](../iresource/iresource.md) - 资源基类接口 -- [Shader](../shader/shader.md) - 着色器资源 -- [Texture](../texture/texture.md) - 纹理资源 -- [ResourceHandle](../resourcehandle.md) - 资源句柄 -- [Resources 模块总览](../resources.md) - 返回模块总览 diff --git a/docs/api/resources/material/release.md b/docs/api/resources/material/release.md deleted file mode 100644 index 220428f1..00000000 --- a/docs/api/resources/material/release.md +++ /dev/null @@ -1,26 +0,0 @@ -# Material::Release - -**方法签名**: -```cpp -void Release() override -``` - -**详细描述**: 释放材质的所有引用和资源。调用后着色器引用、属性映射、纹理绑定和常量缓冲区数据都将被清空,材质变为无效状态。 - -**参数**: 无 - -**返回值**: 无 - -**复杂度**: O(n),n 为属性和纹理绑定数量 - -**示例**: - -```cpp -mat->Release(); -// 调用后 mat->IsValid() 返回 false -``` - -## 相关文档 - -- [Material 总览](material.md) - 返回类总览 -- [IResource::Release](../iresource/iresource.md) - 资源基类接口 diff --git a/docs/api/resources/material/remove-property.md b/docs/api/resources/material/remove-property.md deleted file mode 100644 index 4ba33607..00000000 --- a/docs/api/resources/material/remove-property.md +++ /dev/null @@ -1,24 +0,0 @@ -# Material::RemoveProperty - -```cpp -void RemoveProperty(const Containers::String& name); -``` - -移除指定属性。 - -**参数:** -- `name` - 属性名称 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -mat->RemoveProperty("roughness"); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/set-bool.md b/docs/api/resources/material/set-bool.md deleted file mode 100644 index 9623de24..00000000 --- a/docs/api/resources/material/set-bool.md +++ /dev/null @@ -1,26 +0,0 @@ -# Material::SetBool - -```cpp -void SetBool(const Containers::String& name, bool value); -``` - -设置布尔属性值。 - -**参数:** -- `name` - 属性名称 -- `value` - 布尔值 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -mat->SetBool("receiveShadow", true); -mat->SetBool("castShadow", false); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/set-float.md b/docs/api/resources/material/set-float.md deleted file mode 100644 index ae90ec4c..00000000 --- a/docs/api/resources/material/set-float.md +++ /dev/null @@ -1,26 +0,0 @@ -# Material::SetFloat - -```cpp -void SetFloat(const Containers::String& name, float value); -``` - -设置浮点属性值。如果属性不存在则创建,存在则更新。 - -**参数:** -- `name` - 属性名称 -- `value` - 浮点数值 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -mat->SetFloat("roughness", 0.5f); -mat->SetFloat("metallic", 0.8f); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/set-float2.md b/docs/api/resources/material/set-float2.md deleted file mode 100644 index a9d5ed14..00000000 --- a/docs/api/resources/material/set-float2.md +++ /dev/null @@ -1,25 +0,0 @@ -# Material::SetFloat2 - -```cpp -void SetFloat2(const Containers::String& name, const Math::Vector2& value); -``` - -设置二维向量属性值。 - -**参数:** -- `name` - 属性名称 -- `value` - 二维向量值 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -mat->SetFloat2("uvScale", Math::Vector2(2.0f, 2.0f)); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/set-float3.md b/docs/api/resources/material/set-float3.md deleted file mode 100644 index 3d56d266..00000000 --- a/docs/api/resources/material/set-float3.md +++ /dev/null @@ -1,26 +0,0 @@ -# Material::SetFloat3 - -```cpp -void SetFloat3(const Containers::String& name, const Math::Vector3& value); -``` - -设置三维向量属性值,常用于颜色、法线缩放等。 - -**参数:** -- `name` - 属性名称 -- `value` - 三维向量值 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -mat->SetFloat3("albedo", Math::Vector3(1.0f, 0.8f, 0.6f)); -mat->SetFloat3("emission", Math::Vector3(0.5f, 0.5f, 0.5f)); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/set-float4.md b/docs/api/resources/material/set-float4.md deleted file mode 100644 index d92c094c..00000000 --- a/docs/api/resources/material/set-float4.md +++ /dev/null @@ -1,25 +0,0 @@ -# Material::SetFloat4 - -```cpp -void SetFloat4(const Containers::String& name, const Math::Vector4& value); -``` - -设置四维向量属性值。 - -**参数:** -- `name` - 属性名称 -- `value` - 四维向量值 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -mat->SetFloat4("planeEquation", Math::Vector4(0.0f, 1.0f, 0.0f, 0.0f)); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/set-int.md b/docs/api/resources/material/set-int.md deleted file mode 100644 index 76b6f74e..00000000 --- a/docs/api/resources/material/set-int.md +++ /dev/null @@ -1,26 +0,0 @@ -# Material::SetInt - -```cpp -void SetInt(const Containers::String& name, Core::int32 value); -``` - -设置整数属性值。 - -**参数:** -- `name` - 属性名称 -- `value` - 整数值 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -mat->SetInt("normalScale", 1); -mat->SetInt("uSampleCount", 4); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/set-shader.md b/docs/api/resources/material/set-shader.md deleted file mode 100644 index 877607d4..00000000 --- a/docs/api/resources/material/set-shader.md +++ /dev/null @@ -1,25 +0,0 @@ -# Material::SetShader - -```cpp -void SetShader(const ResourceHandle& shader); -``` - -设置材质使用的着色器。 - -**参数:** -- `shader` - 着色器资源句柄 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle shader = ResourceManager::Get().Load("shaders/pbr.shader"); -mat->SetShader(shader); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/set-texture.md b/docs/api/resources/material/set-texture.md deleted file mode 100644 index 7aa0e52a..00000000 --- a/docs/api/resources/material/set-texture.md +++ /dev/null @@ -1,28 +0,0 @@ -# Material::SetTexture - -```cpp -void SetTexture(const Containers::String& name, const ResourceHandle& texture); -``` - -设置纹理属性。 - -**参数:** -- `name` - 属性名称 -- `texture` - 纹理资源句柄 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle albedoTex = ResourceManager::Get().Load("textures/albedo.png"); -ResourceHandle normalTex = ResourceManager::Get().Load("textures/normal.png"); -mat->SetTexture("albedoMap", albedoTex); -mat->SetTexture("normalMap", normalTex); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/material/update-constant-buffer.md b/docs/api/resources/material/update-constant-buffer.md deleted file mode 100644 index ac7227ed..00000000 --- a/docs/api/resources/material/update-constant-buffer.md +++ /dev/null @@ -1,23 +0,0 @@ -# Material::UpdateConstantBuffer - -```cpp -void UpdateConstantBuffer(); -``` - -更新常量缓冲区数据。清空当前常量缓冲区数据。 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -mat->SetFloat("roughness", 0.5f); -mat->SetFloat3("albedo", Math::Vector3(1.0f, 0.8f, 0.6f)); -mat->UpdateConstantBuffer(); -``` - -## 相关文档 - -- [Material](material.md) - 返回类总览 diff --git a/docs/api/resources/mesh-import-settings/mesh-import-settings.md b/docs/api/resources/mesh-import-settings/mesh-import-settings.md deleted file mode 100644 index 6436919f..00000000 --- a/docs/api/resources/mesh-import-settings/mesh-import-settings.md +++ /dev/null @@ -1,101 +0,0 @@ -# MeshImportSettings - -**命名空间**: `XCEngine::Resources` - -**类型**: `class` - -**继承**: `ImportSettings` - -**头文件**: `XCEngine/Resources/MeshImportSettings.h` - -**描述**: 网格资源导入设置类,定义从外部模型文件导入网格时的配置选项。 - ---- - -## 概述 - -`MeshImportSettings` 继承自 `ImportSettings`,提供网格导入时的完整配置能力。支持导入标志位操作、缩放、偏移、轴转换、网格合并等选项。`LoadFromJSON()` 和 `SaveToJSON()` 当前为 stub 实现。 - ---- - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `MeshImportSettings()` | 构造函数 | -| `virtual ~MeshImportSettings() override` | 析构函数 | -| `Core::UniqueRef Clone() const override` | 克隆设置对象 | -| `bool LoadFromJSON(const Containers::String& json) override` | 从 JSON 加载设置(stub) | -| `Containers::String SaveToJSON() const override` | 保存为 JSON(stub) | -| `void SetImportFlags(MeshImportFlags flags)` | 设置导入标志 | -| `MeshImportFlags GetImportFlags() const` | 获取导入标志 | -| `void AddImportFlag(MeshImportFlags flag)` | 添加导入标志 | -| `void RemoveImportFlag(MeshImportFlags flag)` | 移除导入标志 | -| `bool HasImportFlag(MeshImportFlags flag) const` | 检查是否包含标志 | -| `void SetScale(float scale)` | 设置缩放 | -| `float GetScale() const` | 获取缩放 | -| `void SetOffset(const Math::Vector3& offset)` | 设置偏移 | -| `const Math::Vector3& GetOffset() const` | 获取偏移 | -| `void SetAxisConversion(bool convert)` | 设置轴转换 | -| `bool GetAxisConversion() const` | 获取轴转换设置 | -| `void SetMergeMeshes(bool merge)` | 设置是否合并网格 | -| `bool GetMergeMeshes() const` | 获取合并网格设置 | -| `void SetOptimizeThreshold(float threshold)` | 设置优化阈值 | -| `float GetOptimizeThreshold() const` | 获取优化阈值 | -| `void SetImportScale(float scale)` | 设置导入缩放 | -| `float GetImportScale() const` | 获取导入缩放 | -| `void SetThreshold(float threshold)` | 设置阈值 | -| `float GetThreshold() const` | 获取阈值 | - ---- - -## MeshImportFlags 枚举 - -| 标志 | 值 | 描述 | -|------|------|------| -| `None` | `0` | 无特殊标志 | -| `FlipUVs` | `1 << 0` | 翻转 UV 坐标 | -| `FlipWindingOrder` | `1 << 1` | 翻转顶点绕序 | -| `GenerateNormals` | `1 << 2` | 生成法线 | -| `GenerateTangents` | `1 << 3` | 生成切线 | -| `OptimizeMesh` | `1 << 4` | 优化网格 | -| `ImportSkinning` | `1 << 5` | 导入骨骼蒙皮数据 | -| `ImportAnimations` | `1 << 6` | 导入动画数据 | -| `ImportMaterials` | `1 << 7` | 导入材质 | -| `ImportCameras` | `1 << 8` | 导入相机 | -| `ImportLights` | `1 << 9` | 导入灯光 | - -支持位运算组合:`operator|`、`operator&`、`operator~`。 - ---- - -## 使用示例 - -```cpp -#include -#include - -// 创建导入设置 -MeshImportSettings settings; -settings.SetImportFlags(MeshImportFlags::FlipUVs | MeshImportFlags::GenerateNormals | MeshImportFlags::OptimizeMesh); -settings.SetScale(1.0f); -settings.SetOffset(Math::Vector3::Zero()); -settings.SetAxisConversion(true); -settings.SetMergeMeshes(false); -settings.SetOptimizeThreshold(0.3f); - -// 克隆设置 -auto cloned = settings.Clone(); - -// 加载网格资源 -ResourceHandle mesh = ResourceManager::Get().Load("models/player.fbx", &settings); -``` - ---- - -## 相关文档 - -- [ImportSettings](../importsettings/importsettings.md) - 导入设置基类 -- [IResourceLoader](../iloader/iloader.md) - 资源加载器接口 -- [ResourceManager](../resource-manager/resource-manager.md) - 资源管理器 -- [Resources 总览](../resources.md) - 资源模块总览 diff --git a/docs/api/resources/mesh-loader/index.md b/docs/api/resources/mesh-loader/index.md deleted file mode 100644 index 3ce1882c..00000000 --- a/docs/api/resources/mesh-loader/index.md +++ /dev/null @@ -1,59 +0,0 @@ -# MeshLoader - -## 命名空间 - -`XCEngine::Resources` - -## 类型 - -类 (Class) - -## 描述 - -网格资源加载器,负责从磁盘加载 `.fbx`、`.obj`、`.gltf`、`.glb`、`.dae` 和 `.stl` 格式的网格资源文件。 - -## 概述 - -`MeshLoader` 继承自 `IResourceLoader`,实现了网格资源的加载功能。它支持多种主流 3D 模型文件格式,能够读取文件数据并创建 `Mesh` 对象。加载过程中会提取资源的基本信息(路径、名称、GUID)并设置内存占用。当前实现专注于文件读取和基础资源创建,具体网格数据解析由 `Mesh` 类完成。 - -## 公共方法 - -| 方法 | 签名 | 描述 | -|------|------|------| -| [MeshLoader](methods/constructor.md) | `MeshLoader()` | 默认构造函数 | -| [~MeshLoader](methods/destructor.md) | `virtual ~MeshLoader()` | 析构函数 | -| [GetResourceType](methods/get-resource-type.md) | `ResourceType GetResourceType() const` | 返回资源类型为 Mesh | -| [GetSupportedExtensions](methods/get-supported-extensions.md) | `Array GetSupportedExtensions() const` | 返回支持的扩展名列表 | -| [CanLoad](methods/can-load.md) | `bool CanLoad(const String& path) const` | 检查给定路径是否可被加载 | -| [Load](methods/load.md) | `LoadResult Load(const String& path, const ImportSettings* settings = nullptr)` | 加载指定路径的网格资源 | -| [GetDefaultSettings](methods/get-default-settings.md) | `ImportSettings* GetDefaultSettings() const` | 返回默认导入设置 | - -## 使用示例 - -```cpp -#include "Resources/MeshLoader.h" -#include "Resources/ResourceManager.h" - -using namespace XCEngine::Resources; - -// 通过 ResourceManager 加载网格 -auto meshHandle = ResourceManager::Get().Load("assets/models/player.fbx"); -if (meshHandle.IsValid()) { - Mesh* mesh = meshHandle.Get(); - // 使用网格... -} - -// 直接使用 MeshLoader -MeshLoader loader; -LoadResult result = loader.Load("assets/models/player.obj"); -if (result.IsSuccess()) { - Mesh* mesh = static_cast(result.GetResource()); - // 使用网格... -} -``` - -## 相关文档 - -- [Mesh](../mesh/mesh.md) -- [IResourceLoader](../iloader/iloader.md) -- [ResourceManager](../resource-manager/resource-manager.md) diff --git a/docs/api/resources/mesh-loader/methods/can-load.md b/docs/api/resources/mesh-loader/methods/can-load.md deleted file mode 100644 index 65b2d7a2..00000000 --- a/docs/api/resources/mesh-loader/methods/can-load.md +++ /dev/null @@ -1,36 +0,0 @@ -# MeshLoader::CanLoad - -## 方法签名 - -```cpp -bool CanLoad(const Containers::String& path) const override; -``` - -## 详细描述 - -检查给定路径的文件是否可以被该加载器加载。方法通过提取文件扩展名并转换为小写后进行匹配判断。支持的文件格式包括:fbx、obj、gltf、glb、dae、stl。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| path | `const Containers::String&` | 文件路径 | - -## 返回值 - -`bool` - 如果文件扩展名在支持列表中返回 `true`,否则返回 `false` - -## 示例 - -```cpp -#include "Resources/MeshLoader.h" - -using namespace XCEngine::Resources; - -MeshLoader loader; - -bool canLoadFbx = loader.CanLoad("assets/models/player.fbx"); // true -bool canLoadObj = loader.CanLoad("assets/models/cube.obj"); // true -bool canLoadPng = loader.CanLoad("assets/textures/wood.png"); // false -bool canLoadUnknown = loader.CanLoad("assets/data/model.xyz"); // false -``` diff --git a/docs/api/resources/mesh-loader/methods/constructor.md b/docs/api/resources/mesh-loader/methods/constructor.md deleted file mode 100644 index 09ed98b9..00000000 --- a/docs/api/resources/mesh-loader/methods/constructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# MeshLoader::MeshLoader - -## 方法签名 - -```cpp -MeshLoader(); -``` - -## 详细描述 - -默认构造函数,使用默认行为构造 `MeshLoader` 对象。该构造函数不执行任何特殊初始化操作。 - -## 参数 - -无 - -## 返回值 - -无 - -## 示例 - -```cpp -#include - -using namespace XCEngine::Resources; - -MeshLoader loader; -``` diff --git a/docs/api/resources/mesh-loader/methods/destructor.md b/docs/api/resources/mesh-loader/methods/destructor.md deleted file mode 100644 index 5f072c2f..00000000 --- a/docs/api/resources/mesh-loader/methods/destructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# MeshLoader::~MeshLoader - -## 方法签名 - -```cpp -virtual ~MeshLoader() override; -``` - -## 详细描述 - -析构函数,用于销毁 `MeshLoader` 对象。该析构函数不执行任何特殊清理操作。 - -## 参数 - -无 - -## 示例 - -```cpp -#include "Resources/MeshLoader.h" - -using namespace XCEngine::Resources; - -{ - MeshLoader loader; - // 使用 loader... -} -// loader 在此自动销毁 -``` diff --git a/docs/api/resources/mesh-loader/methods/get-default-settings.md b/docs/api/resources/mesh-loader/methods/get-default-settings.md deleted file mode 100644 index 3f7edfab..00000000 --- a/docs/api/resources/mesh-loader/methods/get-default-settings.md +++ /dev/null @@ -1,31 +0,0 @@ -# MeshLoader::GetDefaultSettings - -## 方法签名 - -```cpp -ImportSettings* GetDefaultSettings() const override; -``` - -## 详细描述 - -返回网格资源的默认导入设置。当前实现返回 `nullptr`,表示 `MeshLoader` 不使用导入设置。 - -## 参数 - -无 - -## 返回值 - -`ImportSettings*` - 返回 `nullptr` - -## 示例 - -```cpp -#include "Resources/MeshLoader.h" - -using namespace XCEngine::Resources; - -MeshLoader loader; -ImportSettings* settings = loader.GetDefaultSettings(); -// settings == nullptr -``` diff --git a/docs/api/resources/mesh-loader/methods/get-resource-type.md b/docs/api/resources/mesh-loader/methods/get-resource-type.md deleted file mode 100644 index 1ccf53f0..00000000 --- a/docs/api/resources/mesh-loader/methods/get-resource-type.md +++ /dev/null @@ -1,31 +0,0 @@ -# MeshLoader::GetResourceType - -## 方法签名 - -```cpp -ResourceType GetResourceType() const override; -``` - -## 详细描述 - -返回该加载器处理的资源类型。此方法标识 `MeshLoader` 负责加载 `Mesh` 类型的资源。 - -## 参数 - -无 - -## 返回值 - -`ResourceType` - 返回 `ResourceType::Mesh`,表示该加载器用于加载网格资源 - -## 示例 - -```cpp -#include "Resources/MeshLoader.h" - -using namespace XCEngine::Resources; - -MeshLoader loader; -ResourceType type = loader.GetResourceType(); -// type == ResourceType::Mesh -``` diff --git a/docs/api/resources/mesh-loader/methods/get-supported-extensions.md b/docs/api/resources/mesh-loader/methods/get-supported-extensions.md deleted file mode 100644 index a25ed944..00000000 --- a/docs/api/resources/mesh-loader/methods/get-supported-extensions.md +++ /dev/null @@ -1,46 +0,0 @@ -# MeshLoader::GetSupportedExtensions - -## 方法签名 - -```cpp -Containers::Array GetSupportedExtensions() const override; -``` - -## 详细描述 - -返回该加载器支持的文件扩展名列表。`MeshLoader` 支持六种主流 3D 模型文件格式: -- `.fbx` - Autodesk FBX 格式 -- `.obj` - Wavefront OBJ 格式 -- `.gltf` - GL Transmission Format -- `.glb` - GL Binary 格式 -- `.dae` - COLLADA 格式 -- `.stl` - STereoLithography 格式 - -## 参数 - -无 - -## 返回值 - -`Containers::Array` - 支持的扩展名数组 - -## 示例 - -```cpp -#include "Resources/MeshLoader.h" - -using namespace XCEngine::Resources; - -MeshLoader loader; -auto extensions = loader.GetSupportedExtensions(); -for (const auto& ext : extensions) { - printf("Supported extension: %s\n", ext.CStr()); -} -// Output: -// Supported extension: fbx -// Supported extension: obj -// Supported extension: gltf -// Supported extension: glb -// Supported extension: dae -// Supported extension: stl -``` diff --git a/docs/api/resources/mesh-loader/methods/load.md b/docs/api/resources/mesh-loader/methods/load.md deleted file mode 100644 index 4104fb58..00000000 --- a/docs/api/resources/mesh-loader/methods/load.md +++ /dev/null @@ -1,55 +0,0 @@ -# MeshLoader::Load - -## 方法签名 - -```cpp -LoadResult Load(const Containers::String& path, const ImportSettings* settings = nullptr) override; -``` - -## 详细描述 - -加载指定路径的网格资源文件。加载过程包括: -1. 提取文件扩展名并转换为小写 -2. 验证文件格式是否支持 -3. 读取文件数据到内存 -4. 创建 `Mesh` 对象并设置基本信息(路径、名称、GUID) -5. 设置内存占用大小 - -当前实现专注于文件读取和基础资源创建框架,具体网格顶点数据、索引数据的解析由 `Mesh` 类在后续流程中完成。`settings` 参数当前未使用。 - -## 参数 - -| 参数 | 类型 | 默认值 | 描述 | -|------|------|--------|------| -| path | `const Containers::String&` | - | 网格文件路径 | -| settings | `const ImportSettings*` | `nullptr` | 导入设置(当前未使用) | - -## 返回值 - -`LoadResult` - 加载结果对象,包含成功加载的 `Mesh` 指针或错误信息 - -## 示例 - -```cpp -#include - -using namespace XCEngine::Resources; - -MeshLoader loader; -LoadResult result = loader.Load("assets/models/player.fbx"); - -if (result.IsSuccess()) { - Mesh* mesh = static_cast(result.GetResource()); - printf("Loaded mesh: %s, GUID: %s, Size: %zu bytes\n", - mesh->m_name.CStr(), - mesh->m_guid.ToString().CStr(), - mesh->m_memorySize); -} else { - printf("Failed to load mesh: %s\n", result.GetError().CStr()); -} -``` - -### 错误情况 - -- 不支持的文件格式:返回 `"Unsupported mesh format: "` -- 文件读取失败:返回 `"Failed to read file: "` diff --git a/docs/api/resources/mesh/add-section.md b/docs/api/resources/mesh/add-section.md deleted file mode 100644 index 2f26aaad..00000000 --- a/docs/api/resources/mesh/add-section.md +++ /dev/null @@ -1,52 +0,0 @@ -# Mesh::AddSection - -```cpp -void AddSection(const MeshSection& section); -``` - -添加一个网格分段(Submesh)。网格分段用于将一个网格分割成多个部分,每个部分可以有不同的材质。 - -**参数:** -- `section` - 网格分段结构,包含顶点和索引范围以及材质 ID - -**返回:** 无 - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) 均摊 - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -Mesh mesh; -mesh.SetVertexData(...); -mesh.SetIndexData(...); - -// 添加第一个分段(使用材质 0) -MeshSection section1; -section1.baseVertex = 0; -section1.vertexCount = 4; -section1.startIndex = 0; -section1.indexCount = 6; -section1.materialID = 0; -mesh.AddSection(section1); - -// 添加第二个分段(使用材质 1) -MeshSection section2; -section2.baseVertex = 4; -section2.vertexCount = 4; -section2.startIndex = 6; -section2.indexCount = 6; -section2.materialID = 1; -mesh.AddSection(section2); -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/constructor.md b/docs/api/resources/mesh/constructor.md deleted file mode 100644 index 40160d90..00000000 --- a/docs/api/resources/mesh/constructor.md +++ /dev/null @@ -1,31 +0,0 @@ -# Mesh::Mesh - -```cpp -Mesh(); -``` - -构造一个新的 Mesh 实例。初始化所有成员变量为默认值,顶点计数、索引计数均为 0,不持有任何数据。 - -**参数:** 无 - -**返回:** 无 - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -Mesh mesh; -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/destructor.md b/docs/api/resources/mesh/destructor.md deleted file mode 100644 index 19376aa0..00000000 --- a/docs/api/resources/mesh/destructor.md +++ /dev/null @@ -1,35 +0,0 @@ -# Mesh::~Mesh - -```cpp -virtual ~Mesh() override; -``` - -销毁 Mesh 实例。如果资源已加载,会释放所有持有的顶点数据、索引数据和网格分段信息。 - -**参数:** 无 - -**返回:** 无 - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -{ - Mesh mesh; - // 使用 mesh... -} -// mesh 在此处自动销毁 -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/get-guid.md b/docs/api/resources/mesh/get-guid.md deleted file mode 100644 index 82fc12f8..00000000 --- a/docs/api/resources/mesh/get-guid.md +++ /dev/null @@ -1,41 +0,0 @@ -# Mesh::GetGUID - -```cpp -ResourceGUID GetGUID() const override; -``` - -返回网格资源的全局唯一标识符(GUID)。GUID 在资源创建时分配,用于资源系统的唯一标识和查找。 - -**参数:** 无 - -**返回:** `ResourceGUID` - 资源的全局唯一标识符 - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -Mesh mesh; -IResource::ConstructParams params; -params.name = "Character_Hero"; -params.path = "assets/meshes/hero.mesh"; -params.guid = ResourceGUID::Generate(params.path); -mesh.Initialize(params); - -ResourceGUID guid = mesh.GetGUID(); -if (guid.IsValid()) { - // GUID 有效 -} -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/get-index-count.md b/docs/api/resources/mesh/get-index-count.md deleted file mode 100644 index 7a095494..00000000 --- a/docs/api/resources/mesh/get-index-count.md +++ /dev/null @@ -1,34 +0,0 @@ -# Mesh::GetIndexCount - -```cpp -Core::uint32 GetIndexCount() const; -``` - -获取网格的索引数量。 - -**参数:** 无 - -**返回:** `Core::uint32` - 索引数量 - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -Mesh mesh; -mesh.SetIndexData(...); - -uint32_t indexCount = mesh.GetIndexCount(); -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/get-index-data-size.md b/docs/api/resources/mesh/get-index-data-size.md deleted file mode 100644 index 0ef79cd7..00000000 --- a/docs/api/resources/mesh/get-index-data-size.md +++ /dev/null @@ -1,34 +0,0 @@ -# Mesh::GetIndexDataSize - -```cpp -size_t GetIndexDataSize() const; -``` - -获取网格索引数据的总字节数。 - -**参数:** 无 - -**返回:** `size_t` - 索引数据字节数 - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -Mesh mesh; -mesh.SetIndexData(...); - -size_t dataSize = mesh.GetIndexDataSize(); -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/get-index-data.md b/docs/api/resources/mesh/get-index-data.md deleted file mode 100644 index d9d6ce54..00000000 --- a/docs/api/resources/mesh/get-index-data.md +++ /dev/null @@ -1,37 +0,0 @@ -# Mesh::GetIndexData - -```cpp -const void* GetIndexData() const; -``` - -获取网格索引数据的只读指针。 - -**参数:** 无 - -**返回:** `const void*` - 索引数据指针,如果没有设置则返回 nullptr - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -Mesh mesh; -mesh.SetIndexData(...); - -const void* indexData = mesh.GetIndexData(); -if (indexData != nullptr) { - // 安全访问索引数据 -} -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/get-memory-size.md b/docs/api/resources/mesh/get-memory-size.md deleted file mode 100644 index 534aeabe..00000000 --- a/docs/api/resources/mesh/get-memory-size.md +++ /dev/null @@ -1,33 +0,0 @@ -# Mesh::GetMemorySize - -```cpp -size_t GetMemorySize() const override; -``` - -返回网格资源占用的内存大小。包含顶点数据和索引数据的总字节数。 - -**参数:** 无 - -**返回:** `size_t` - 内存大小(字节) - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -Mesh mesh; -// 设置数据... -size_t memSize = mesh.GetMemorySize(); -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/get-name.md b/docs/api/resources/mesh/get-name.md deleted file mode 100644 index 969410d6..00000000 --- a/docs/api/resources/mesh/get-name.md +++ /dev/null @@ -1,38 +0,0 @@ -# Mesh::GetName - -```cpp -const Containers::String& GetName() const override; -``` - -返回网格资源的名称。名称在资源创建时通过 `IResource::Initialize` 方法设置。 - -**参数:** 无 - -**返回:** `const Containers::String&` - 资源名称的引用 - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -Mesh mesh; -IResource::ConstructParams params; -params.name = "Character_Hero"; -params.path = "assets/meshes/hero.mesh"; -params.guid = ResourceGUID::Generate(params.path); -mesh.Initialize(params); - -const String& name = mesh.GetName(); -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/get-path.md b/docs/api/resources/mesh/get-path.md deleted file mode 100644 index 1a0652ae..00000000 --- a/docs/api/resources/mesh/get-path.md +++ /dev/null @@ -1,38 +0,0 @@ -# Mesh::GetPath - -```cpp -const Containers::String& GetPath() const override; -``` - -返回网格资源的路径。路径用于资源定位和唯一标识。 - -**参数:** 无 - -**返回:** `const Containers::String&` - 资源路径的引用 - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -Mesh mesh; -IResource::ConstructParams params; -params.name = "Character_Hero"; -params.path = "assets/meshes/hero.mesh"; -params.guid = ResourceGUID::Generate(params.path); -mesh.Initialize(params); - -const String& path = mesh.GetPath(); -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/get-sections.md b/docs/api/resources/mesh/get-sections.md deleted file mode 100644 index 57b5c0a4..00000000 --- a/docs/api/resources/mesh/get-sections.md +++ /dev/null @@ -1,40 +0,0 @@ -# Mesh::GetSections - -```cpp -const Containers::Array& GetSections() const; -``` - -获取网格的所有分段信息。 - -**参数:** 无 - -**返回:** `const Containers::Array&` - 分段数组的只读引用 - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -Mesh mesh; -mesh.SetVertexData(...); -mesh.SetIndexData(...); -mesh.AddSection(...); - -const auto& sections = mesh.GetSections(); -for (size_t i = 0; i < sections.Size(); ++i) { - const MeshSection& section = sections[i]; - // 处理每个分段 -} -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/get-type.md b/docs/api/resources/mesh/get-type.md deleted file mode 100644 index e9531edd..00000000 --- a/docs/api/resources/mesh/get-type.md +++ /dev/null @@ -1,34 +0,0 @@ -# Mesh::GetType - -```cpp -ResourceType GetType() const override; -``` - -返回资源的类型标识符。对于 Mesh 类,返回值为 `ResourceType::Mesh`。 - -**参数:** 无 - -**返回:** `ResourceType` - 资源类型,恒定为 `ResourceType::Mesh` - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -Mesh mesh; -if (mesh.GetType() == ResourceType::Mesh) { - // 这是一个网格资源 -} -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/get-vertex-attributes.md b/docs/api/resources/mesh/get-vertex-attributes.md deleted file mode 100644 index 1409a0a8..00000000 --- a/docs/api/resources/mesh/get-vertex-attributes.md +++ /dev/null @@ -1,43 +0,0 @@ -# Mesh::GetVertexAttributes - -```cpp -VertexAttribute GetVertexAttributes() const; -``` - -获取网格的顶点属性标志,表示网格包含哪些顶点数据通道。 - -**参数:** 无 - -**返回:** `VertexAttribute` - 顶点属性标志,可通过按位与检查特定属性 - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -Mesh mesh; -mesh.SetVertexData( - ..., - VertexAttribute::Position | VertexAttribute::Normal | VertexAttribute::UV0 -); - -VertexAttribute attrs = mesh.GetVertexAttributes(); -if (attrs & VertexAttribute::Normal) { - // 网格包含法线数据 -} -if (attrs & VertexAttribute::UV0) { - // 网格包含第一组 UV 坐标 -} -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/get-vertex-count.md b/docs/api/resources/mesh/get-vertex-count.md deleted file mode 100644 index 85eee763..00000000 --- a/docs/api/resources/mesh/get-vertex-count.md +++ /dev/null @@ -1,34 +0,0 @@ -# Mesh::GetVertexCount - -```cpp -Core::uint32 GetVertexCount() const; -``` - -获取网格的顶点数量。 - -**参数:** 无 - -**返回:** `Core::uint32` - 顶点数量 - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -Mesh mesh; -mesh.SetVertexData(...); - -uint32_t vertexCount = mesh.GetVertexCount(); -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/get-vertex-data-size.md b/docs/api/resources/mesh/get-vertex-data-size.md deleted file mode 100644 index 9a2ad102..00000000 --- a/docs/api/resources/mesh/get-vertex-data-size.md +++ /dev/null @@ -1,34 +0,0 @@ -# Mesh::GetVertexDataSize - -```cpp -size_t GetVertexDataSize() const; -``` - -获取网格顶点数据的总字节数。 - -**参数:** 无 - -**返回:** `size_t` - 顶点数据字节数 - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -Mesh mesh; -mesh.SetVertexData(...); - -size_t dataSize = mesh.GetVertexDataSize(); -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/get-vertex-data.md b/docs/api/resources/mesh/get-vertex-data.md deleted file mode 100644 index 6fb37123..00000000 --- a/docs/api/resources/mesh/get-vertex-data.md +++ /dev/null @@ -1,37 +0,0 @@ -# Mesh::GetVertexData - -```cpp -const void* GetVertexData() const; -``` - -获取网格顶点数据的只读指针。 - -**参数:** 无 - -**返回:** `const void*` - 顶点数据指针,如果没有设置则返回 nullptr - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -Mesh mesh; -mesh.SetVertexData(...); - -const void* vertexData = mesh.GetVertexData(); -if (vertexData != nullptr) { - // 安全访问顶点数据 -} -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/get-vertex-stride.md b/docs/api/resources/mesh/get-vertex-stride.md deleted file mode 100644 index 9c5807c9..00000000 --- a/docs/api/resources/mesh/get-vertex-stride.md +++ /dev/null @@ -1,41 +0,0 @@ -# Mesh::GetVertexStride - -```cpp -Core::uint32 GetVertexStride() const; -``` - -获取单个顶点的字节大小(步长)。 - -**参数:** 无 - -**返回:** `Core::uint32` - 顶点步长(字节) - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -struct Vertex { - float position[3]; - float normal[3]; - float uv[2]; -}; - -Mesh mesh; -mesh.SetVertexData(..., sizeof(Vertex), ...); - -uint32_t stride = mesh.GetVertexStride(); -// stride == sizeof(Vertex) -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/is-use-32bit-index.md b/docs/api/resources/mesh/is-use-32bit-index.md deleted file mode 100644 index d38a7995..00000000 --- a/docs/api/resources/mesh/is-use-32bit-index.md +++ /dev/null @@ -1,40 +0,0 @@ -# Mesh::IsUse32BitIndex - -```cpp -bool IsUse32BitIndex() const; -``` - -检查网格是否使用 32 位索引格式。如果返回 false,则表示使用 16 位索引格式。 - -**参数:** 无 - -**返回:** `bool` - true 表示使用 32 位索引,false 表示使用 16 位索引 - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -Mesh mesh; -mesh.SetIndexData(..., 6, true); // 32 位索引 - -if (mesh.IsUse32BitIndex()) { - // 使用 32 位索引访问 - const uint32_t* indices = static_cast(mesh.GetIndexData()); -} else { - // 使用 16 位索引访问 - const uint16_t* indices = static_cast(mesh.GetIndexData()); -} -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/is-valid.md b/docs/api/resources/mesh/is-valid.md deleted file mode 100644 index 79512e4f..00000000 --- a/docs/api/resources/mesh/is-valid.md +++ /dev/null @@ -1,44 +0,0 @@ -# Mesh::IsValid - -```cpp -bool IsValid() const override; -``` - -检查网格资源是否有效。资源在调用 `Initialize` 后变为有效,调用 `SetInvalid` 或 `Release` 后变为无效。 - -**参数:** 无 - -**返回:** `bool` - 资源是否有效 - -**异常:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -Mesh mesh; -if (!mesh.IsValid()) { - // 资源尚未初始化 -} - -IResource::ConstructParams params; -params.name = "Cube"; -params.path = "assets/meshes/cube.mesh"; -params.guid = ResourceGUID::Generate(params.path); -mesh.Initialize(params); - -if (mesh.IsValid()) { - // 资源已初始化 -} -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/mesh.md b/docs/api/resources/mesh/mesh.md deleted file mode 100644 index 42d9631a..00000000 --- a/docs/api/resources/mesh/mesh.md +++ /dev/null @@ -1,121 +0,0 @@ -# Mesh - -**命名空间**: `XCEngine::Resources` - -**类型**: `class` (inherits from `IResource`) - -**头文件**: `XCEngine/Resources/Mesh/Mesh.h` - -**描述**: 网格资源类,用于存储和管理 3D 网格数据,包括顶点数据、索引数据和网格分段信息 - -## 概述 - -Mesh 类是 XCEngine 引擎中的核心资源类型之一,负责管理 3D 模型的网格数据。它存储顶点属性(位置、法线、切线、UV 坐标、骨骼权重等)、索引数据以及网格分段(MeshSection)信息。Mesh 资源通常由资源加载器从外部文件(如 .obj、.fbx 等格式)加载,或通过程序化方式生成。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Mesh`](constructor.md) | 构造函数 | -| [`~Mesh`](destructor.md) | 析构函数 | -| [`GetType`](get-type.md) | 获取资源类型 | -| [`GetName`](get-name.md) | 获取资源名称 | -| [`GetPath`](get-path.md) | 获取资源路径 | -| [`GetGUID`](get-guid.md) | 获取资源全局唯一标识符 | -| [`IsValid`](is-valid.md) | 检查资源是否有效 | -| [`GetMemorySize`](get-memory-size.md) | 获取资源内存大小 | -| [`Release`](release.md) | 释放资源 | -| [`SetVertexData`](set-vertex-data.md) | 设置顶点数据 | -| [`GetVertexData`](get-vertex-data.md) | 获取顶点数据指针 | -| [`GetVertexDataSize`](get-vertex-data-size.md) | 获取顶点数据大小 | -| [`GetVertexCount`](get-vertex-count.md) | 获取顶点数量 | -| [`GetVertexStride`](get-vertex-stride.md) | 获取顶点步长 | -| [`GetVertexAttributes`](get-vertex-attributes.md) | 获取顶点属性 | -| [`SetIndexData`](set-index-data.md) | 设置索引数据 | -| [`GetIndexData`](get-index-data.md) | 获取索引数据指针 | -| [`GetIndexDataSize`](get-index-data-size.md) | 获取索引数据大小 | -| [`GetIndexCount`](get-index-count.md) | 获取索引数量 | -| [`IsUse32BitIndex`](is-use-32bit-index.md) | 是否使用 32 位索引 | -| [`AddSection`](add-section.md) | 添加网格分段 | -| [`GetSections`](get-sections.md) | 获取所有网格分段 | - -## 相关类型 - -### VertexAttribute - -```cpp -enum class VertexAttribute : Core::uint32 { - Position = 1 << 0, - Normal = 1 << 1, - Tangent = 1 << 2, - Color = 1 << 3, - UV0 = 1 << 4, - UV1 = 1 << 5, - UV2 = 1 << 6, - UV3 = 1 << 7, - BoneWeights = 1 << 8, - BoneIndices = 1 << 9 -}; -``` - -顶点属性枚举,用于指定网格包含哪些顶点数据通道。多个属性可以通过按位或组合使用。 - -### MeshSection - -```cpp -struct MeshSection { - Core::uint32 baseVertex; - Core::uint32 vertexCount; - Core::uint32 startIndex; - Core::uint32 indexCount; - Core::uint32 materialID; -}; -``` - -网格分段结构,描述网格中某个子网格的区域信息,包括顶点范围、索引范围和材质 ID。 - -## 使用示例 - -```cpp -#include -#include "XCEngine/Core/Containers/Array.h" - -using namespace XCEngine; -using namespace Resources; - -void CreateQuadMesh(Mesh* outMesh) { - struct Vertex { - float position[3]; - float normal[3]; - float uv[2]; - }; - - Vertex vertices[4] = { - {{-0.5f, -0.5f, 0.0f}, {0.0f, 0.0f, 1.0f}, {0.0f, 0.0f}}, - {{ 0.5f, -0.5f, 0.0f}, {0.0f, 0.0f, 1.0f}, {1.0f, 0.0f}}, - {{ 0.5f, 0.5f, 0.0f}, {0.0f, 0.0f, 1.0f}, {1.0f, 1.0f}}, - {{-0.5f, 0.5f, 0.0f}, {0.0f, 0.0f, 1.0f}, {0.0f, 1.0f}} - }; - - uint32_t indices[6] = {0, 1, 2, 0, 2, 3}; - - VertexAttribute attributes = VertexAttribute::Position | - VertexAttribute::Normal | - VertexAttribute::UV0; - - outMesh->SetVertexData(vertices, sizeof(vertices), 4, sizeof(Vertex), attributes); - outMesh->SetIndexData(indices, sizeof(indices), 6, false); - - MeshSection section; - section.baseVertex = 0; - section.vertexCount = 4; - section.startIndex = 0; - section.indexCount = 6; - section.materialID = 0; - outMesh->AddSection(section); -} -``` - -## 相关文档 - -- [IResource](../iresource/iresource.md) - 资源基类 diff --git a/docs/api/resources/mesh/meshsection.md b/docs/api/resources/mesh/meshsection.md deleted file mode 100644 index d1df4f3a..00000000 --- a/docs/api/resources/mesh/meshsection.md +++ /dev/null @@ -1,38 +0,0 @@ -# MeshSection - -**命名空间**: `XCEngine::Resources` - -**类型**: `struct` - -**描述**: 网格分段结构体,用于描述网格的一部分,支持多材质渲染。 - -## 概述 - -MeshSection 定义了网格的一个连续区域,每个区域可以有不同的材质。网格分段包含顶点和索引范围信息,以及关联的材质 ID。 - -## 成员变量 - -| 变量 | 类型 | 描述 | -|------|------|------| -| `baseVertex` | `Core::uint32` | 基准顶点偏移 | -| `vertexCount` | `Core::uint32` | 顶点数量 | -| `startIndex` | `Core::uint32` | 起始索引 | -| `indexCount` | `Core::uint32` | 索引数量 | -| `materialID` | `Core::uint32` | 材质 ID | - -## 使用示例 - -```cpp -MeshSection section; -section.baseVertex = 0; -section.vertexCount = 4; -section.startIndex = 0; -section.indexCount = 6; -section.materialID = 0; -mesh.AddSection(section); -``` - -## 相关文档 - -- [Mesh 类总览](mesh.md) - 返回类总览 -- [AddSection](add-section.md) - 添加网格分段 diff --git a/docs/api/resources/mesh/release.md b/docs/api/resources/mesh/release.md deleted file mode 100644 index 86260f5f..00000000 --- a/docs/api/resources/mesh/release.md +++ /dev/null @@ -1,41 +0,0 @@ -# Mesh::Release - -```cpp -void Release() override; -``` - -释放网格资源持有的所有数据。将清空顶点数据、索引数据和所有网格分段信息,并将相关计数重置为 0。 - -**参数:** 无 - -**返回:** 无 - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(n) - n 为数据大小 - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -Mesh mesh; -mesh.SetVertexData(...); -mesh.SetIndexData(...); -mesh.AddSection(...); - -// 使用完毕,释放数据 -mesh.Release(); - -// 释放后所有数据清空 -assert(mesh.GetVertexCount() == 0); -assert(mesh.GetIndexCount() == 0); -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/set-index-data.md b/docs/api/resources/mesh/set-index-data.md deleted file mode 100644 index a17e7572..00000000 --- a/docs/api/resources/mesh/set-index-data.md +++ /dev/null @@ -1,44 +0,0 @@ -# Mesh::SetIndexData - -```cpp -void SetIndexData(const void* data, size_t size, Core::uint32 indexCount, bool use32Bit); -``` - -设置网格的索引数据。此方法会复制传入的数据到内部缓冲区。 - -**参数:** -- `data` - 索引数据指针,不能为 nullptr -- `size` - 索引数据总字节数 -- `indexCount` - 索引数量 -- `use32Bit` - 是否使用 32 位索引,false 则使用 16 位索引 - -**返回:** 无 - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(n) - n 为索引数据大小 - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -Mesh mesh; -mesh.SetVertexData(...); - -// 使用 16 位索引(最多 65536 个顶点) -uint16_t indices16[6] = {0, 1, 2, 0, 2, 3}; -mesh.SetIndexData(indices16, sizeof(indices16), 6, false); - -// 或使用 32 位索引 -uint32_t indices32[6] = {0, 1, 2, 0, 2, 3}; -mesh.SetIndexData(indices32, sizeof(indices32), 6, true); -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/set-vertex-data.md b/docs/api/resources/mesh/set-vertex-data.md deleted file mode 100644 index e237b717..00000000 --- a/docs/api/resources/mesh/set-vertex-data.md +++ /dev/null @@ -1,57 +0,0 @@ -# Mesh::SetVertexData - -```cpp -void SetVertexData(const void* data, size_t size, Core::uint32 vertexCount, - Core::uint32 vertexStride, VertexAttribute attributes); -``` - -设置网格的顶点数据。此方法会复制传入的数据到内部缓冲区。 - -**参数:** -- `data` - 顶点数据指针,不能为 nullptr -- `size` - 顶点数据总字节数 -- `vertexCount` - 顶点数量 -- `vertexStride` - 单个顶点的字节大小 -- `attributes` - 顶点属性标志,指定数据包含哪些顶点通道 - -**返回:** 无 - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(n) - n 为顶点数据大小 - -**示例:** - -```cpp -#include "XCEngine/Resources/Mesh.h" - -using namespace XCEngine::Resources; - -struct Vertex { - float position[3]; - float normal[3]; - float uv[2]; -}; - -Vertex vertices[4] = { - {{-0.5f, -0.5f, 0.0f}, {0.0f, 0.0f, 1.0f}, {0.0f, 0.0f}}, - {{ 0.5f, -0.5f, 0.0f}, {0.0f, 0.0f, 1.0f}, {1.0f, 0.0f}}, - {{ 0.5f, 0.5f, 0.0f}, {0.0f, 0.0f, 1.0f}, {1.0f, 1.0f}}, - {{-0.5f, 0.5f, 0.0f}, {0.0f, 0.0f, 1.0f}, {0.0f, 1.0f}} -}; - -Mesh mesh; -mesh.SetVertexData( - vertices, - sizeof(vertices), - 4, - sizeof(Vertex), - VertexAttribute::Position | VertexAttribute::Normal | VertexAttribute::UV0 -); -``` - -## 相关文档 - -- [类总览](mesh.md) - 返回类总览 diff --git a/docs/api/resources/mesh/vertexattribute.md b/docs/api/resources/mesh/vertexattribute.md deleted file mode 100644 index 81f46be4..00000000 --- a/docs/api/resources/mesh/vertexattribute.md +++ /dev/null @@ -1,37 +0,0 @@ -# VertexAttribute - -**命名空间**: `XCEngine::Resources` - -**类型**: `enum class` - -**描述**: 顶点属性标志枚举,用于指定网格顶点包含哪些属性。 - -## 概述 - -VertexAttribute 是位标志枚举,用于描述顶点缓冲中包含的顶点属性类型。每种属性对应一个比特位,可以组合使用。 - -## 枚举值 - -| 值 | 描述 | -|----|------| -| `Position` | 顶点位置 (x, y, z) | -| `Normal` | 法线向量 (x, y, z) | -| `Tangent` | 切线向量 (x, y, z) | -| `Color` | 顶点颜色 (r, g, b, a) | -| `UV0` | 第一组 UV 坐标 | -| `UV1` | 第二组 UV 坐标 | -| `UV2` | 第三组 UV 坐标 | -| `UV3` | 第四组 UV 坐标 | -| `BoneWeights` | 骨骼权重 | -| `BoneIndices` | 骨骼索引 | - -## 使用示例 - -```cpp -VertexAttribute attributes = VertexAttribute::Position | VertexAttribute::Normal | VertexAttribute::UV0; -``` - -## 相关文档 - -- [Mesh 类总览](mesh.md) - 返回类总览 -- [SetVertexData](set-vertex-data.md) - 设置顶点数据 diff --git a/docs/api/resources/resource-dependency-graph/add-dependency.md b/docs/api/resources/resource-dependency-graph/add-dependency.md deleted file mode 100644 index c9c04aa4..00000000 --- a/docs/api/resources/resource-dependency-graph/add-dependency.md +++ /dev/null @@ -1,36 +0,0 @@ -# AddDependency - -添加资源之间的依赖关系。 - -## 方法签名 - -```cpp -void AddDependency(ResourceGUID owner, ResourceGUID dependency); -``` - -## 详细描述 - -在两个已存在的节点之间建立依赖关系。`owner` 节点依赖于 `dependency` 节点,即 `dependency` 会被 `owner` 使用。该方法会同时更新两个节点的关联数组: -- 将 `dependency` 添加到 `owner` 的 `dependencies` 列表 -- 将 `owner` 添加到 `dependency` 的 `dependents` 列表 - -如果任一节点不存在或依赖关系已存在,则不做任何操作。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `owner` | `ResourceGUID` | 依赖方(被依赖项的使用者)的全局唯一标识符 | -| `dependency` | `ResourceGUID` | 被依赖项(owner 所依赖的资源)的全局唯一标识符 | - -## 返回值 - -无 - -## 示例 - -```cpp -graph.AddNode("material"_guid, ResourceType::Material); -graph.AddNode("texture"_guid, ResourceType::Texture); -graph.AddDependency("material"_guid, "texture"_guid); // material 依赖 texture -``` diff --git a/docs/api/resources/resource-dependency-graph/add-node.md b/docs/api/resources/resource-dependency-graph/add-node.md deleted file mode 100644 index 1a2e0422..00000000 --- a/docs/api/resources/resource-dependency-graph/add-node.md +++ /dev/null @@ -1,32 +0,0 @@ -# AddNode - -添加资源节点到依赖图中。 - -## 方法签名 - -```cpp -void AddNode(ResourceGUID guid, ResourceType type); -``` - -## 详细描述 - -将指定资源添加为依赖图中的新节点。如果节点已存在,则不做任何操作。该方法会创建一个带有空依赖关系和被依赖关系列表的新节点,初始引用计数为 0。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `guid` | `ResourceGUID` | 要添加的资源的全局唯一标识符 | -| `type` | `ResourceType` | 资源类型 | - -## 返回值 - -无 - -## 示例 - -```cpp -ResourceDependencyGraph graph; -graph.AddNode("texture_albedo"_guid, ResourceType::Texture); -graph.AddNode("material_standard"_guid, ResourceType::Material); -``` diff --git a/docs/api/resources/resource-dependency-graph/clear.md b/docs/api/resources/resource-dependency-graph/clear.md deleted file mode 100644 index 5d4e22da..00000000 --- a/docs/api/resources/resource-dependency-graph/clear.md +++ /dev/null @@ -1,30 +0,0 @@ -# Clear - -清空整个依赖图。 - -## 方法签名 - -```cpp -void Clear(); -``` - -## 详细描述 - -移除所有节点并清空内部数据结构。调用此方法后,依赖图将处于空状态,所有之前添加的节点和依赖关系都将被销毁。 - -## 参数 - -无 - -## 返回值 - -无 - -## 示例 - -```cpp -graph.AddNode("A"_guid, ResourceType::Texture); -graph.AddNode("B"_guid, ResourceType::Material); -graph.Clear(); -// 现在依赖图为空 -``` diff --git a/docs/api/resources/resource-dependency-graph/decrement-ref-count.md b/docs/api/resources/resource-dependency-graph/decrement-ref-count.md deleted file mode 100644 index 177d9da9..00000000 --- a/docs/api/resources/resource-dependency-graph/decrement-ref-count.md +++ /dev/null @@ -1,32 +0,0 @@ -# DecrementRefCount - -减少资源的引用计数。 - -## 方法签名 - -```cpp -void DecrementRefCount(ResourceGUID guid); -``` - -## 详细描述 - -原子地减少指定资源的引用计数。引用计数不会减少到 0 以下。如果节点不存在或引用计数已为 0,则不做任何操作。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `guid` | `ResourceGUID` | 目标资源的全局唯一标识符 | - -## 返回值 - -无 - -## 示例 - -```cpp -graph.IncrementRefCount("texture"_guid); -graph.IncrementRefCount("texture"_guid); -graph.DecrementRefCount("texture"_guid); // refCount 现在为 1 -graph.DecrementRefCount("texture"_guid); // refCount 现在为 0 -``` diff --git a/docs/api/resources/resource-dependency-graph/get-all-dependencies.md b/docs/api/resources/resource-dependency-graph/get-all-dependencies.md deleted file mode 100644 index 941320c6..00000000 --- a/docs/api/resources/resource-dependency-graph/get-all-dependencies.md +++ /dev/null @@ -1,41 +0,0 @@ -# GetAllDependencies - -获取资源的完整依赖链(递归)。 - -## 方法签名 - -```cpp -Containers::Array GetAllDependencies(ResourceGUID guid) const; -``` - -## 详细描述 - -使用深度优先搜索递归获取指定资源的所有传递依赖项,返回完整的依赖链。返回结果不包括 `guid` 自身,且每个资源 GUID 只出现一次(即使有多个路径依赖该资源)。 - -搜索算法使用栈实现 DFS,遍历所有依赖项及其子依赖项。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `guid` | `ResourceGUID` | 要查询的资源的全局唯一标识符 | - -## 返回值 - -`Containers::Array` - 完整依赖链的 GUID 数组 - -## 示例 - -```cpp -// 假设依赖关系: A -> B -> C -> D -graph.AddNode("A"_guid, ResourceType::Material); -graph.AddNode("B"_guid, ResourceType::Texture); -graph.AddNode("C"_guid, ResourceType::Image); -graph.AddNode("D"_guid, ResourceType::File); -graph.AddDependency("A"_guid, "B"_guid); -graph.AddDependency("B"_guid, "C"_guid); -graph.AddDependency("C"_guid, "D"_guid); - -auto allDeps = graph.GetAllDependencies("A"_guid); -// allDeps 包含 ["B", "C", "D"](顺序可能因实现而异) -``` diff --git a/docs/api/resources/resource-dependency-graph/get-dependencies.md b/docs/api/resources/resource-dependency-graph/get-dependencies.md deleted file mode 100644 index 605ef49c..00000000 --- a/docs/api/resources/resource-dependency-graph/get-dependencies.md +++ /dev/null @@ -1,38 +0,0 @@ -# GetDependencies - -获取资源的直接依赖项列表。 - -## 方法签名 - -```cpp -Containers::Array GetDependencies(ResourceGUID guid) const; -``` - -## 详细描述 - -返回指定资源直接依赖的所有资源 GUID 数组。这些是 `guid` 节点在 `dependencies` 数组中存储的资源,仅包含一层依赖关系,不包括传递依赖。 - -如果指定节点不存在,返回空数组。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `guid` | `ResourceGUID` | 要查询的资源的全局唯一标识符 | - -## 返回值 - -`Containers::Array` - 直接依赖项的 GUID 数组 - -## 示例 - -```cpp -graph.AddNode("material"_guid, ResourceType::Material); -graph.AddNode("texture1"_guid, ResourceType::Texture); -graph.AddNode("texture2"_guid, ResourceType::Texture); -graph.AddDependency("material"_guid, "texture1"_guid); -graph.AddDependency("material"_guid, "texture2"_guid); - -auto deps = graph.GetDependencies("material"_guid); -// deps 包含 ["texture1", "texture2"] -``` diff --git a/docs/api/resources/resource-dependency-graph/get-dependents.md b/docs/api/resources/resource-dependency-graph/get-dependents.md deleted file mode 100644 index d83d68bc..00000000 --- a/docs/api/resources/resource-dependency-graph/get-dependents.md +++ /dev/null @@ -1,38 +0,0 @@ -# GetDependents - -获取资源的直接被依赖项列表。 - -## 方法签名 - -```cpp -Containers::Array GetDependents(ResourceGUID guid) const; -``` - -## 详细描述 - -返回直接依赖指定资源的所有资源 GUID 数组。这些是 `guid` 节点在 `dependents` 数组中存储的资源,仅包含一层被依赖关系,不包括传递被依赖项。 - -如果指定节点不存在,返回空数组。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `guid` | `ResourceGUID` | 要查询的资源的全局唯一标识符 | - -## 返回值 - -`Containers::Array` - 直接被依赖项的 GUID 数组 - -## 示例 - -```cpp -graph.AddNode("texture"_guid, ResourceType::Texture); -graph.AddNode("material1"_guid, ResourceType::Material); -graph.AddNode("material2"_guid, ResourceType::Material); -graph.AddDependency("material1"_guid, "texture"_guid); -graph.AddDependency("material2"_guid, "texture"_guid); - -auto deps = graph.GetDependents("texture"_guid); -// deps 包含 ["material1", "material2"] -``` diff --git a/docs/api/resources/resource-dependency-graph/get-ref-count.md b/docs/api/resources/resource-dependency-graph/get-ref-count.md deleted file mode 100644 index f912eb24..00000000 --- a/docs/api/resources/resource-dependency-graph/get-ref-count.md +++ /dev/null @@ -1,31 +0,0 @@ -# GetRefCount - -获取资源的引用计数。 - -## 方法签名 - -```cpp -Core::uint32 GetRefCount(ResourceGUID guid) const; -``` - -## 详细描述 - -返回指定资源的当前引用计数。如果节点不存在,返回 0。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `guid` | `ResourceGUID` | 目标资源的全局唯一标识符 | - -## 返回值 - -`Core::uint32` - 当前引用计数,如果节点不存在则返回 0 - -## 示例 - -```cpp -graph.IncrementRefCount("texture"_guid); -graph.IncrementRefCount("texture"_guid); -uint32 count = graph.GetRefCount("texture"_guid); // 返回 2 -``` diff --git a/docs/api/resources/resource-dependency-graph/has-circular-dependency.md b/docs/api/resources/resource-dependency-graph/has-circular-dependency.md deleted file mode 100644 index fcdbbf3c..00000000 --- a/docs/api/resources/resource-dependency-graph/has-circular-dependency.md +++ /dev/null @@ -1,36 +0,0 @@ -# HasCircularDependency - -检测资源是否存在循环依赖。 - -## 方法签名 - -```cpp -bool HasCircularDependency(ResourceGUID guid, Containers::Array& outCycle) const; -``` - -## 详细描述 - -检测从指定资源出发是否存在循环依赖关系。算法使用深度优先搜索遍历依赖图,如果发现在同一条路径上访问同一个节点两次,则说明存在循环依赖。 - -当检测到循环时,`outCycle` 参数将被填充为从起点到循环点的路径(包含循环点)。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `guid` | `ResourceGUID` | 起始资源的全局唯一标识符 | -| `outCycle` | `Containers::Array&` | 输出参数,接收检测到的循环路径 | - -## 返回值 - -`bool` - 如果存在循环依赖返回 `true`,否则返回 `false` - -## 示例 - -```cpp -// 假设存在循环: A -> B -> C -> A -Containers::Array cycle; -if (graph.HasCircularDependency("A"_guid, cycle)) { - // cycle 包含类似 ["A", "B", "C", "A"] 的路径 -} -``` diff --git a/docs/api/resources/resource-dependency-graph/has-node.md b/docs/api/resources/resource-dependency-graph/has-node.md deleted file mode 100644 index 9c03aaa1..00000000 --- a/docs/api/resources/resource-dependency-graph/has-node.md +++ /dev/null @@ -1,31 +0,0 @@ -# HasNode - -检查节点是否存在。 - -## 方法签名 - -```cpp -bool HasNode(ResourceGUID guid) const; -``` - -## 详细描述 - -检查指定资源节点是否存在于依赖图中。这是在添加依赖关系前验证节点是否存在的常用方法。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `guid` | `ResourceGUID` | 要检查的资源的全局唯一标识符 | - -## 返回值 - -`bool` - 如果节点存在返回 `true`,否则返回 `false` - -## 示例 - -```cpp -graph.AddNode("texture"_guid, ResourceType::Texture); -bool exists = graph.HasNode("texture"_guid); // 返回 true -bool notExists = graph.HasNode("unknown"_guid); // 返回 false -``` diff --git a/docs/api/resources/resource-dependency-graph/increment-ref-count.md b/docs/api/resources/resource-dependency-graph/increment-ref-count.md deleted file mode 100644 index 466054fe..00000000 --- a/docs/api/resources/resource-dependency-graph/increment-ref-count.md +++ /dev/null @@ -1,32 +0,0 @@ -# IncrementRefCount - -增加资源的引用计数。 - -## 方法签名 - -```cpp -void IncrementRefCount(ResourceGUID guid); -``` - -## 详细描述 - -原子地增加指定资源的引用计数。引用计数用于追踪资源被多少其他资源或系统引用。当引用计数大于 0 时,资源不能被卸载。 - -如果节点不存在,则不做任何操作。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `guid` | `ResourceGUID` | 目标资源的全局唯一标识符 | - -## 返回值 - -无 - -## 示例 - -```cpp -graph.IncrementRefCount("texture"_guid); -graph.IncrementRefCount("texture"_guid); // refCount 现在为 2 -``` diff --git a/docs/api/resources/resource-dependency-graph/index.md b/docs/api/resources/resource-dependency-graph/index.md deleted file mode 100644 index 3d55ff53..00000000 --- a/docs/api/resources/resource-dependency-graph/index.md +++ /dev/null @@ -1,94 +0,0 @@ -# ResourceDependencyGraph - -## 命名空间 - -`XCEngine::Resources` - -## 类型 - -类 (`class`) - -## 描述 - -资源依赖图管理器,用于跟踪和管理资源之间的依赖关系。该类维护一个双向依赖图,支持添加/移除节点和依赖关系、查询依赖链、循环依赖检测、引用计数管理以及拓扑排序。 - -## 概述 - -`ResourceDependencyGraph` 提供了一套完整的资源依赖关系管理机制。每个资源被表示为一个节点,节点之间通过有向边建立依赖关系。类内部维护两个方向的关系: -- **依赖项** (dependencies): 当前资源直接依赖的资源 -- **被依赖项** (dependents): 直接依赖当前资源的资源 - -该图结构支持: -- 双向依赖查询 -- 递归获取完整依赖链 -- 循环依赖检测 -- 引用计数追踪 -- 拓扑排序以确定资源加载/卸载顺序 - -## 公共方法表格 - -| 方法 | 描述 | -|------|------| -| `AddNode(ResourceGUID guid, ResourceType type)` | 添加资源节点到依赖图 | -| `RemoveNode(ResourceGUID guid)` | 从依赖图中移除资源节点 | -| `AddDependency(ResourceGUID owner, ResourceGUID dependency)` | 添加依赖关系 | -| `RemoveDependency(ResourceGUID owner, ResourceGUID dependency)` | 移除依赖关系 | -| `GetDependencies(ResourceGUID guid)` | 获取资源的直接依赖项 | -| `GetDependents(ResourceGUID guid)` | 获取资源的直接被依赖项 | -| `GetAllDependencies(ResourceGUID guid)` | 获取资源的完整依赖链(递归) | -| `IncrementRefCount(ResourceGUID guid)` | 增加资源引用计数 | -| `DecrementRefCount(ResourceGUID guid)` | 减少资源引用计数 | -| `GetRefCount(ResourceGUID guid)` | 获取资源引用计数 | -| `HasCircularDependency(ResourceGUID guid, Containers::Array& outCycle)` | 检测是否存在循环依赖 | -| `TopologicalSort()` | 对所有资源节点进行拓扑排序 | -| `Unload(ResourceGUID guid)` | 检查资源是否可以卸载 | -| `Clear()` | 清空整个依赖图 | -| `HasNode(ResourceGUID guid)` | 检查节点是否存在 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine; -using namespace Resources; - -void Example() { - ResourceDependencyGraph graph; - - // 添加资源节点 - graph.AddNode("texture_albedo"_guid, ResourceType::Texture); - graph.AddNode("material_standard"_guid, ResourceType::Material); - graph.AddNode("mesh_cube"_guid, ResourceType::Mesh); - - // 建立依赖关系 - graph.AddDependency("material_standard"_guid, "texture_albedo"_guid); - graph.AddDependency("mesh_cube"_guid, "material_standard"_guid); - - // 查询依赖 - auto deps = graph.GetDependencies("material_standard"_guid); // 返回 ["texture_albedo"] - auto allDeps = graph.GetAllDependencies("mesh_cube"_guid); // 返回 ["material_standard", "texture_albedo"] - - // 引用计数管理 - graph.IncrementRefCount("texture_albedo"_guid); - graph.IncrementRefCount("texture_albedo"_guid); - uint32 count = graph.GetRefCount("texture_albedo"_guid); // 返回 2 - - // 检测循环依赖 - Containers::Array cycle; - if (graph.HasCircularDependency("mesh_cube"_guid, cycle)) { - // 处理循环依赖 - } - - // 检查是否可以卸载 - if (graph.Unload("texture_albedo"_guid)) { - // 可以卸载 - } -} -``` - -## 相关文档 - -- [ResourceTypes](../resourcetypes/resourcetypes.md) - 资源类型定义 -- [ResourceManager](../resource-manager/resource-manager.md) - 资源管理器 -- [Resources 总览](../resources.md) - 返回模块总览 diff --git a/docs/api/resources/resource-dependency-graph/remove-dependency.md b/docs/api/resources/resource-dependency-graph/remove-dependency.md deleted file mode 100644 index e7be87ea..00000000 --- a/docs/api/resources/resource-dependency-graph/remove-dependency.md +++ /dev/null @@ -1,34 +0,0 @@ -# RemoveDependency - -移除资源之间的依赖关系。 - -## 方法签名 - -```cpp -void RemoveDependency(ResourceGUID owner, ResourceGUID dependency); -``` - -## 详细描述 - -移除两个节点之间的依赖关系。该方法会同时更新两个节点的关联数组: -- 从 `owner` 的 `dependencies` 列表中移除 `dependency` -- 从 `dependency` 的 `dependents` 列表中移除 `owner` - -如果任一节点不存在或依赖关系不存在,则不做任何操作。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `owner` | `ResourceGUID` | 依赖方的全局唯一标识符 | -| `dependency` | `ResourceGUID` | 被依赖项的全局唯一标识符 | - -## 返回值 - -无 - -## 示例 - -```cpp -graph.RemoveDependency("material"_guid, "texture"_guid); -``` diff --git a/docs/api/resources/resource-dependency-graph/remove-node.md b/docs/api/resources/resource-dependency-graph/remove-node.md deleted file mode 100644 index 077dd359..00000000 --- a/docs/api/resources/resource-dependency-graph/remove-node.md +++ /dev/null @@ -1,33 +0,0 @@ -# RemoveNode - -从依赖图中移除资源节点。 - -## 方法签名 - -```cpp -void RemoveNode(ResourceGUID guid); -``` - -## 详细描述 - -从依赖图中移除指定节点。此操作不会自动移除与其他节点之间的依赖关系,这些关系需要在调用此方法前手动清除。该方法直接从内部哈希表中删除节点。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `guid` | `ResourceGUID` | 要移除的资源的全局唯一标识符 | - -## 返回值 - -无 - -## 示例 - -```cpp -graph.RemoveNode("texture_albedo"_guid); -``` - -## 注意 - -移除节点前,建议先使用 `RemoveDependency` 清除该节点的所有依赖关系,以保持依赖图的一致性。 diff --git a/docs/api/resources/resource-dependency-graph/topological-sort.md b/docs/api/resources/resource-dependency-graph/topological-sort.md deleted file mode 100644 index 14db7fae..00000000 --- a/docs/api/resources/resource-dependency-graph/topological-sort.md +++ /dev/null @@ -1,28 +0,0 @@ -# TopologicalSort - -对所有资源节点进行拓扑排序。 - -## 方法签名 - -```cpp -Containers::Array TopologicalSort() const; -``` - -## 详细描述 - -返回所有资源节点的一种拓扑排序顺序,确保每个资源的所有依赖项都出现在该资源之前。该方法可用于确定资源的加载顺序。 - -## 参数 - -无 - -## 返回值 - -`Containers::Array` - 按拓扑顺序排列的资源 GUID 数组 - -## 示例 - -```cpp -auto sorted = graph.TopologicalSort(); -// 返回资源加载顺序 -``` diff --git a/docs/api/resources/resource-dependency-graph/unload.md b/docs/api/resources/resource-dependency-graph/unload.md deleted file mode 100644 index c63a6e5e..00000000 --- a/docs/api/resources/resource-dependency-graph/unload.md +++ /dev/null @@ -1,39 +0,0 @@ -# Unload - -检查资源是否可以卸载。 - -## 方法签名 - -```cpp -bool Unload(ResourceGUID guid); -``` - -## 详细描述 - -检查指定资源是否满足卸载条件。资源可以卸载当且仅当满足以下条件: -1. 节点存在于依赖图中 -2. 资源的引用计数为 0 -3. 所有直接依赖该资源的资源的引用计数也都为 0 - -该方法是一个检查函数,不会实际执行卸载操作。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `guid` | `ResourceGUID` | 目标资源的全局唯一标识符 | - -## 返回值 - -`bool` - 如果可以卸载返回 `true`,否则返回 `false` - -## 示例 - -```cpp -graph.IncrementRefCount("texture"_guid); -if (graph.Unload("texture"_guid)) { - // 不能卸载,因为引用计数 > 0 -} else { - // 检查失败 -} -``` diff --git a/docs/api/resources/resource-file-system/add-archive.md b/docs/api/resources/resource-file-system/add-archive.md deleted file mode 100644 index ed87e7b8..00000000 --- a/docs/api/resources/resource-file-system/add-archive.md +++ /dev/null @@ -1,51 +0,0 @@ -# ResourceFileSystem::AddArchive - -## 方法签名 - -```cpp -bool AddArchive(const Containers::String& archivePath); -``` - -## 所属类 - -`XCEngine::Resources::ResourceFileSystem` - -## 描述 - -添加档案压缩包作为资源来源。档案文件(如 ZIP、Pak 等格式)会被注册为可搜索的资源位置。 - -此方法线程安全。 - -## 参数 - -| 参数名 | 类型 | 描述 | -|--------|------|------| -| `archivePath` | `const Containers::String&` | 档案压缩包的路径 | - -## 返回值 - -- `bool` - 成功添加返回 `true` - -## 示例 - -```cpp -#include "Resources/ResourceFileSystem.h" - -using namespace XCEngine::Resources; - -ResourceFileSystem& fs = ResourceFileSystem::Get(); -fs.Initialize("C:/Game/Resources"); - -// 添加多个档案作为资源来源 -fs.AddArchive("C:/Game/Paks/Common.pak"); -fs.AddArchive("C:/Game/Paks/Textures.pak"); -fs.AddArchive("C:/Game/Paks/Audio.pak"); - -// 读取档案中的资源 -auto data = fs.ReadResource("textures/player/diffuse.png"); -``` - -## 注意事项 - -- 当前实现仅存储路径,实际档案加载功能待实现 -- 档案中的资源会通过 `FindInArchives` 被搜索 diff --git a/docs/api/resources/resource-file-system/add-directory.md b/docs/api/resources/resource-file-system/add-directory.md deleted file mode 100644 index b0b38f62..00000000 --- a/docs/api/resources/resource-file-system/add-directory.md +++ /dev/null @@ -1,51 +0,0 @@ -# ResourceFileSystem::AddDirectory - -## 方法签名 - -```cpp -bool AddDirectory(const Containers::String& directoryPath); -``` - -## 所属类 - -`XCEngine::Resources::ResourceFileSystem` - -## 描述 - -添加文件系统目录作为资源来源。指定的目录会被注册为可搜索的资源位置。 - -此方法线程安全。 - -## 参数 - -| 参数名 | 类型 | 描述 | -|--------|------|------| -| `directoryPath` | `const Containers::String&` | 目录的路径 | - -## 返回值 - -- `bool` - 成功添加返回 `true` - -## 示例 - -```cpp -#include "Resources/ResourceFileSystem.h" - -using namespace XCEngine::Resources; - -ResourceFileSystem& fs = ResourceFileSystem::Get(); -fs.Initialize("C:/Game/Resources"); - -// 添加多个目录作为资源来源 -fs.AddDirectory("C:/Game/Assets/Textures"); -fs.AddDirectory("C:/Game/Assets/Shaders"); -fs.AddDirectory("C:/Game/Assets/Models"); - -// 读取目录中的资源 -auto data = fs.ReadResource("textures/player/diffuse.png"); -``` - -## 注意事项 - -- 目录搜索优先级:根路径 > 先添加的目录 -- 路径末尾的斜杠会自动处理 diff --git a/docs/api/resources/resource-file-system/enumerate-resources.md b/docs/api/resources/resource-file-system/enumerate-resources.md deleted file mode 100644 index a0ce905a..00000000 --- a/docs/api/resources/resource-file-system/enumerate-resources.md +++ /dev/null @@ -1,63 +0,0 @@ -# ResourceFileSystem::EnumerateResources - -## 方法签名 - -```cpp -void EnumerateResources(const Containers::String& pattern, Containers::Array& outResources) const; -``` - -## 所属类 - -`XCEngine::Resources::ResourceFileSystem` - -## 描述 - -枚举所有匹配指定模式的资源。模式支持通配符(如 `*.png`、`textures/**` 等)。 - -此方法线程安全。 - -## 参数 - -| 参数名 | 类型 | 描述 | -|--------|------|------| -| `pattern` | `const Containers::String&` | 文件名匹配模式 | -| `outResources` | `Containers::Array&` | 输出容器,接收匹配的资源信息列表 | - -## 返回值 - -无 - -## 示例 - -```cpp -#include "Resources/ResourceFileSystem.h" - -using namespace XCEngine::Resources; - -ResourceFileSystem& fs = ResourceFileSystem::Get(); -fs.Initialize("C:/Game/Resources"); -fs.AddDirectory("C:/Game/Assets"); - -Containers::Array resources; - -// 枚举所有 PNG 纹理 -fs.EnumerateResources("**/*.png", resources); -printf("Found %zu PNG files:\n", resources.Size()); -for (const auto& res : resources) { - printf(" - %s (%zu bytes)\n", res.path.CStr(), res.size); -} - -// 枚举所有着色器 -resources.Clear(); -fs.EnumerateResources("**/*.glsl", resources); -printf("Found %zu shader files:\n", resources.Size()); - -// 枚举特定目录下的资源 -resources.Clear(); -fs.EnumerateResources("textures/**/*.png", resources); -``` - -## 注意事项 - -- 当前实现尚未完成,输出容器可能为空 -- 模式语法的具体支持情况待实现 diff --git a/docs/api/resources/resource-file-system/exists.md b/docs/api/resources/resource-file-system/exists.md deleted file mode 100644 index aa096feb..00000000 --- a/docs/api/resources/resource-file-system/exists.md +++ /dev/null @@ -1,63 +0,0 @@ -# ResourceFileSystem::Exists - -## 方法签名 - -```cpp -bool Exists(const Containers::String& relativePath) const; -``` - -## 所属类 - -`XCEngine::Resources::ResourceFileSystem` - -## 描述 - -检查指定相对路径的资源是否存在。该方法会搜索所有已注册的目录和档案。 - -此方法线程安全。 - -## 参数 - -| 参数名 | 类型 | 描述 | -|--------|------|------| -| `relativePath` | `const Containers::String&` | 资源的相对路径 | - -## 返回值 - -- `bool` - 资源存在返回 `true`,不存在返回 `false` - -## 示例 - -```cpp -#include "Resources/ResourceFileSystem.h" - -using namespace XCEngine::Resources; - -ResourceFileSystem& fs = ResourceFileSystem::Get(); -fs.Initialize("C:/Game/Resources"); -fs.AddDirectory("C:/Game/Assets"); -fs.AddArchive("C:/Game/Paks/Textures.pak"); - -// 检查各种资源是否存在 -if (fs.Exists("textures/player/diffuse.png")) { - // 加载纹理 -} - -if (fs.Exists("shaders/forward.glsl")) { - // 加载着色器 -} - -if (fs.Exists("audio/bgm/main_theme.ogg")) { - // 加载音频 -} - -// 检查可能不存在的资源 -if (!fs.Exists("textures/legacy/old_texture.png")) { - printf("Using default texture\n"); -} -``` - -## 注意事项 - -- 内部调用 `FindResource` 实现 -- 档案中的资源同样可以被检查 diff --git a/docs/api/resources/resource-file-system/find-resource.md b/docs/api/resources/resource-file-system/find-resource.md deleted file mode 100644 index d9b08d05..00000000 --- a/docs/api/resources/resource-file-system/find-resource.md +++ /dev/null @@ -1,60 +0,0 @@ -# ResourceFileSystem::FindResource - -## 方法签名 - -```cpp -bool FindResource(const Containers::String& relativePath, Containers::String& outAbsolutePath) const; -``` - -## 所属类 - -`XCEngine::Resources::ResourceFileSystem` - -## 描述 - -查找指定相对路径的资源,并返回其绝对路径。搜索顺序为:目录(根路径 + 已注册目录)→ 档案。 - -此方法线程安全。 - -## 参数 - -| 参数名 | 类型 | 描述 | -|--------|------|------| -| `relativePath` | `const Containers::String&` | 资源的相对路径 | -| `outAbsolutePath` | `Containers::String&` | 输出参数,接收资源的绝对路径 | - -## 返回值 - -- `bool` - 找到资源返回 `true`,未找到返回 `false` - -## 示例 - -```cpp -#include "Resources/ResourceFileSystem.h" - -using namespace XCEngine::Resources; - -ResourceFileSystem& fs = ResourceFileSystem::Get(); -fs.Initialize("C:/Game/Resources"); -fs.AddDirectory("C:/Game/Assets"); - -Containers::String absolutePath; - -// 查找纹理资源 -if (fs.FindResource("textures/player/diffuse.png", absolutePath)) { - printf("Found at: %s\n", absolutePath.CStr()); - // 使用绝对路径加载纹理 -} else { - printf("Resource not found\n"); -} - -// 查找着色器资源 -if (fs.FindResource("shaders/forward.glsl", absolutePath)) { - printf("Shader at: %s\n", absolutePath.CStr()); -} -``` - -## 注意事项 - -- 搜索路径格式应使用正斜杠 `/` -- 档案内资源返回的绝对路径格式为 `archive://relative/path` diff --git a/docs/api/resources/resource-file-system/get-resource-info.md b/docs/api/resources/resource-file-system/get-resource-info.md deleted file mode 100644 index 8617e790..00000000 --- a/docs/api/resources/resource-file-system/get-resource-info.md +++ /dev/null @@ -1,63 +0,0 @@ -# ResourceFileSystem::GetResourceInfo - -## 方法签名 - -```cpp -bool GetResourceInfo(const Containers::String& relativePath, ResourceInfo& outInfo) const; -``` - -## 所属类 - -`XCEngine::Resources::ResourceFileSystem` - -## 描述 - -获取指定资源的详细信息,包括路径、大小、修改时间和所属档案等。查询结果会被缓存以提高后续查询性能。 - -此方法线程安全。 - -## 参数 - -| 参数名 | 类型 | 描述 | -|--------|------|------| -| `relativePath` | `const Containers::String&` | 资源的相对路径 | -| `outInfo` | `ResourceInfo&` | 输出参数,接收资源信息 | - -## 返回值 - -- `bool` - 成功获取返回 `true`,资源不存在返回 `false` - -## 示例 - -```cpp -#include "Resources/ResourceFileSystem.h" - -using namespace XCEngine::Resources; - -ResourceFileSystem& fs = ResourceFileSystem::Get(); -fs.Initialize("C:/Game/Resources"); -fs.AddDirectory("C:/Game/Assets"); -fs.AddArchive("C:/Game/Paks/Textures.pak"); - -ResourceInfo info; - -// 获取目录中的资源信息 -if (fs.GetResourceInfo("shaders/forward.glsl", info)) { - printf("Path: %s\n", info.path.CStr()); - printf("Size: %zu bytes\n", info.size); - printf("In Archive: %s\n", info.inArchive ? "Yes" : "No"); -} - -// 获取档案中的资源信息 -if (fs.GetResourceInfo("textures/player/diffuse.png", info)) { - printf("Path: %s\n", info.path.CStr()); - printf("Archive: %s\n", info.archivePath.CStr()); - printf("In Archive: %s\n", info.inArchive ? "Yes" : "No"); -} -``` - -## 注意事项 - -- 首次查询后信息会被缓存 -- 当前实现的大小和修改时间为占位值,待完整实现 -- `ResourceInfo::size` 和 `ResourceInfo::modifiedTime` 的获取需要操作系统 API 支持 diff --git a/docs/api/resources/resource-file-system/get.md b/docs/api/resources/resource-file-system/get.md deleted file mode 100644 index 3343133b..00000000 --- a/docs/api/resources/resource-file-system/get.md +++ /dev/null @@ -1,59 +0,0 @@ -# ResourceFileSystem::Get - -## 方法签名 - -```cpp -static ResourceFileSystem& Get(); -``` - -## 所属类 - -`XCEngine::Resources::ResourceFileSystem` - -## 描述 - -获取 `ResourceFileSystem` 的单例实例。该方法是获取全局资源文件系统的唯一入口。 - -## 参数 - -无 - -## 返回值 - -- `ResourceFileSystem&` - 单例实例的引用 - -## 示例 - -```cpp -#include "Resources/ResourceFileSystem.h" - -using namespace XCEngine::Resources; - -// 推荐用法:通过引用访问 -ResourceFileSystem& fs = ResourceFileSystem::Get(); -fs.Initialize("C:/Game/Resources"); - -// 多次调用返回相同实例 -ResourceFileSystem& fs2 = ResourceFileSystem::Get(); -assert(&fs == &fs2); // 相同地址 - -// 完整使用流程 -ResourceFileSystem& fs3 = ResourceFileSystem::Get(); -fs3.Initialize("C:/Game/Resources"); -fs3.AddDirectory("C:/Game/Assets"); -fs3.AddArchive("C:/Game/Paks/Common.pak"); - -if (fs3.Exists("textures/player/diffuse.png")) { - auto data = fs3.ReadResource("textures/player/diffuse.png"); - // 处理数据 -} - -// 程序结束时清理 -fs3.Shutdown(); -``` - -## 注意事项 - -- 内部使用局部静态变量实现单例 -- 第一次调用时自动构造实例 -- 线程安全(局部静态变量初始化线程安全) diff --git a/docs/api/resources/resource-file-system/iarchive.md b/docs/api/resources/resource-file-system/iarchive.md deleted file mode 100644 index 0c0aec5f..00000000 --- a/docs/api/resources/resource-file-system/iarchive.md +++ /dev/null @@ -1,123 +0,0 @@ -# IArchive 接口 - -## 头文件 - -```cpp -#include "XCEngine/Resources/ResourceFileSystem.h" -``` - -## 命名空间 - -`XCEngine::Resources` - -## 类型 - -抽象接口类 - -## 描述 - -`IArchive` 是档案压缩包资源的抽象接口,定义了访问档案内资源的基本操作。具体的档案实现(如 ZIP、Pak 等)需要继承此接口。 - -## 方法详情 - -### Open - -```cpp -virtual bool Open(const Containers::String& path) = 0; -``` - -打开指定路径的档案文件。 - -**参数:** -- `path` - 档案文件的路径 - -**返回值:** -- `bool` - 成功返回 `true`,失败返回 `false` - ---- - -### Close - -```cpp -virtual void Close() = 0; -``` - -关闭当前打开的档案,释放相关资源。 - ---- - -### Read - -```cpp -virtual bool Read(const Containers::String& fileName, void* buffer, size_t size, size_t offset) const = 0; -``` - -从档案中读取指定的文件数据。 - -**参数:** -- `fileName` - 要读取的文件名 -- `buffer` - 接收数据的缓冲区指针 -- `size` - 要读取的字节数 -- `offset` - 文件内的读取偏移量 - -**返回值:** -- `bool` - 成功返回 `true`,失败返回 `false` - ---- - -### GetSize - -```cpp -virtual size_t GetSize(const Containers::String& fileName) const = 0; -``` - -获取档案内指定文件的大小。 - -**参数:** -- `fileName` - 文件名 - -**返回值:** -- `size_t` - 文件大小(字节),若文件不存在则返回 0 - ---- - -### Exists - -```cpp -virtual bool Exists(const Containers::String& fileName) const = 0; -``` - -检查档案内是否存在指定文件。 - -**参数:** -- `fileName` - 要检查的文件名 - -**返回值:** -- `bool` - 存在返回 `true`,不存在返回 `false` - ---- - -### Enumerate - -```cpp -virtual void Enumerate(const Containers::String& pattern, Containers::Array& outFiles) const = 0; -``` - -枚举档案内匹配指定模式的文件。 - -**参数:** -- `pattern` - 文件名匹配模式(支持通配符) -- `outFiles` - 输出容器,接收匹配的文件名列表 - ---- - -### IsValid - -```cpp -virtual bool IsValid() const = 0; -``` - -检查档案是否已正确打开且有效。 - -**返回值:** -- `bool` - 有效返回 `true`,无效返回 `false` diff --git a/docs/api/resources/resource-file-system/index.md b/docs/api/resources/resource-file-system/index.md deleted file mode 100644 index 3a7ecd4d..00000000 --- a/docs/api/resources/resource-file-system/index.md +++ /dev/null @@ -1,88 +0,0 @@ -# ResourceFileSystem - -## 命名空间 - -`XCEngine::Resources` - -## 类型 - -| 类型 | 名称 | 描述 | -|------|------|------| -| class | `ResourceFileSystem` | 资源文件系统管理器 | -| class | `IArchive` | 档案压缩包接口 | -| struct | `ResourceInfo` | 资源信息结构 | - -## 概述 - -`ResourceFileSystem` 是 XCEngine 资源管理模块的核心组件,负责管理游戏资源的加载与访问。它支持从文件系统目录和档案压缩包(如 ZIP、Pak 等)中检索资源,并提供统一的资源访问接口。 - -该类采用单例模式,通过 `Get()` 静态方法获取全局实例。线程安全,通过内部互斥锁保护数据结构。 - -### 主要功能 - -- 支持多目录和多档案的资源来源 -- 资源路径解析(相对路径 → 绝对路径) -- 资源读取(以字节数组形式返回) -- 资源存在性检查 -- 资源元数据查询 -- 资源枚举(支持通配符模式) -- 信息缓存以提高查询性能 - -## 公共方法表格 - -| 方法 | 签名 | 描述 | -|------|------|------| -| `Initialize` | `void Initialize(const Containers::String& rootPath)` | 初始化资源文件系统,设置根路径 | -| `Shutdown` | `void Shutdown()` | 关闭文件系统,释放所有资源 | -| `AddArchive` | `bool AddArchive(const Containers::String& archivePath)` | 添加档案压缩包作为资源来源 | -| `AddDirectory` | `bool AddDirectory(const Containers::String& directoryPath)` | 添加目录作为资源来源 | -| `RemoveArchive` | `void RemoveArchive(const Containers::String& archivePath)` | 移除指定的档案压缩包 | -| `FindResource` | `bool FindResource(const Containers::String& relativePath, Containers::String& outAbsolutePath) const` | 查找资源并返回绝对路径 | -| `ReadResource` | `Containers::Array ReadResource(const Containers::String& relativePath) const` | 读取资源数据 | -| `Exists` | `bool Exists(const Containers::String& relativePath) const` | 检查资源是否存在 | -| `GetResourceInfo` | `bool GetResourceInfo(const Containers::String& relativePath, ResourceInfo& outInfo) const` | 获取资源详细信息 | -| `EnumerateResources` | `void EnumerateResources(const Containers::String& pattern, Containers::Array& outResources) const` | 枚举匹配模式的资源 | -| `Get` | `static ResourceFileSystem& Get()` | 获取单例实例 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine; -using namespace XCEngine::Resources; - -// 初始化资源文件系统 -ResourceFileSystem& fs = ResourceFileSystem::Get(); -fs.Initialize("C:/Game/Resources"); - -// 添加资源来源 -fs.AddDirectory("C:/Game/Assets/Textures"); -fs.AddArchive("C:/Game/Paks/Common.pak"); - -// 读取资源 -Containers::Array data = fs.ReadResource("textures/player/diffuse.png"); -if (data.Size() > 0) { - // 处理资源数据 -} - -// 检查资源是否存在 -if (fs.Exists("shaders/forward.glsl")) { - // 加载着色器 -} - -// 获取资源信息 -ResourceInfo info; -if (fs.GetResourceInfo("audio/bgm/main_theme.ogg", info)) { - printf("Resource size: %zu\n", info.size); -} - -// 枚举资源 -Containers::Array resources; -fs.EnumerateResources("textures/**/*.png", resources); -``` - -## 相关文档 - -- [IArchive 接口](iarchive.md) -- [ResourceInfo 结构](resource-info.md) diff --git a/docs/api/resources/resource-file-system/initialize.md b/docs/api/resources/resource-file-system/initialize.md deleted file mode 100644 index a5482305..00000000 --- a/docs/api/resources/resource-file-system/initialize.md +++ /dev/null @@ -1,49 +0,0 @@ -# ResourceFileSystem::Initialize - -## 方法签名 - -```cpp -void Initialize(const Containers::String& rootPath); -``` - -## 所属类 - -`XCEngine::Resources::ResourceFileSystem` - -## 描述 - -初始化资源文件系统,设置资源根目录路径。调用此方法后,资源系统将以指定路径作为基础路径进行资源搜索。 - -此方法线程安全。 - -## 参数 - -| 参数名 | 类型 | 描述 | -|--------|------|------| -| `rootPath` | `const Containers::String&` | 资源根目录的绝对路径 | - -## 返回值 - -无 - -## 示例 - -```cpp -#include "Resources/ResourceFileSystem.h" - -using namespace XCEngine::Resources; - -ResourceFileSystem& fs = ResourceFileSystem::Get(); - -// 初始化资源文件系统 -fs.Initialize("C:/Game/Resources"); - -// 现在可以添加其他资源来源并访问资源 -fs.AddDirectory("C:/Game/Assets"); -``` - -## 注意事项 - -- 应在程序启动早期调用此方法 -- 如果已存在资源,系统会先清空现有配置 -- `Shutdown()` 会重置根路径设置 diff --git a/docs/api/resources/resource-file-system/read-resource.md b/docs/api/resources/resource-file-system/read-resource.md deleted file mode 100644 index e7db463f..00000000 --- a/docs/api/resources/resource-file-system/read-resource.md +++ /dev/null @@ -1,66 +0,0 @@ -# ResourceFileSystem::ReadResource - -## 方法签名 - -```cpp -Containers::Array ReadResource(const Containers::String& relativePath) const; -``` - -## 所属类 - -`XCEngine::Resources::ResourceFileSystem` - -## 描述 - -读取指定相对路径的资源内容,以字节数组形式返回。该方法会首先查找资源的绝对路径,然后从文件系统读取数据。 - -此方法线程安全。 - -## 参数 - -| 参数名 | 类型 | 描述 | -|--------|------|------| -| `relativePath` | `const Containers::String&` | 资源的相对路径 | - -## 返回值 - -- `Containers::Array` - 资源数据的字节数组。如果读取失败或资源不存在,返回空数组。 - -## 示例 - -```cpp -#include "Resources/ResourceFileSystem.h" - -using namespace XCEngine::Resources; - -ResourceFileSystem& fs = ResourceFileSystem::Get(); -fs.Initialize("C:/Game/Resources"); -fs.AddDirectory("C:/Game/Assets"); - -// 读取文本资源 -auto textData = fs.ReadResource("shaders/forward.glsl"); -if (textData.Size() > 0) { - printf("Shader size: %zu bytes\n", textData.Size()); - // 处理着色器源码 -} - -// 读取二进制资源 -auto texData = fs.ReadResource("textures/player/diffuse.png"); -if (texData.Size() > 0) { - // 使用图像数据 - const uint8_t* pixels = texData.Data(); - size_t width = *reinterpret_cast(pixels); -} - -// 读取不存在的资源 -auto invalidData = fs.ReadResource("nonexistent/file.txt"); -if (invalidData.Empty()) { - printf("Resource not found or read error\n"); -} -``` - -## 注意事项 - -- 返回的数组直接包含文件的原始字节数据 -- 当前实现仅支持从文件系统读取,档案读取待实现 -- 读取失败时返回空数组,可通过 `Empty()` 方法检查 diff --git a/docs/api/resources/resource-file-system/remove-archive.md b/docs/api/resources/resource-file-system/remove-archive.md deleted file mode 100644 index 13df0c16..00000000 --- a/docs/api/resources/resource-file-system/remove-archive.md +++ /dev/null @@ -1,56 +0,0 @@ -# ResourceFileSystem::RemoveArchive - -## 方法签名 - -```cpp -void RemoveArchive(const Containers::String& archivePath); -``` - -## 所属类 - -`XCEngine::Resources::ResourceFileSystem` - -## 描述 - -移除已注册的档案压缩包。移除后,该档案内的资源将无法通过此资源系统访问。 - -此方法线程安全。 - -## 参数 - -| 参数名 | 类型 | 描述 | -|--------|------|------| -| `archivePath` | `const Containers::String&` | 要移除的档案路径 | - -## 返回值 - -无 - -## 示例 - -```cpp -#include "Resources/ResourceFileSystem.h" - -using namespace XCEngine::Resources; - -ResourceFileSystem& fs = ResourceFileSystem::Get(); -fs.Initialize("C:/Game/Resources"); - -fs.AddArchive("C:/Game/Paks/Common.pak"); -fs.AddArchive("C:/Game/Paks/DLC.pak"); - -// 检查资源是否存在 -if (fs.Exists("dlc/special_texture.png")) { - // 使用 DLC 资源 -} - -// 移除 DLC 包 -fs.RemoveArchive("C:/Game/Paks/DLC.pak"); - -// 现在 DLC 资源无法访问 -``` - -## 注意事项 - -- 如果档案不存在,则此方法不做任何操作 -- 当前实现从目录列表中移除匹配路径(档案与目录共用存储) diff --git a/docs/api/resources/resource-file-system/resource-info.md b/docs/api/resources/resource-file-system/resource-info.md deleted file mode 100644 index f68c4c14..00000000 --- a/docs/api/resources/resource-file-system/resource-info.md +++ /dev/null @@ -1,46 +0,0 @@ -# ResourceInfo 结构 - -## 头文件 - -```cpp -#include "XCEngine/Resources/ResourceFileSystem.h" -``` - -## 命名空间 - -`XCEngine::Resources` - -## 描述 - -`ResourceInfo` 结构体用于存储资源的元数据信息,包括资源路径、大小、修改时间和所属档案等。 - -## 成员变量 - -| 变量 | 类型 | 描述 | -|------|------|------| -| `path` | `Containers::String` | 资源的相对路径 | -| `size` | `size_t` | 资源大小(字节) | -| `modifiedTime` | `Core::uint64` | 最后修改时间戳 | -| `inArchive` | `bool` | 是否位于档案压缩包内 | -| `archivePath` | `Containers::String` | 所属档案的路径(如果位于档案内) | - -## 使用示例 - -```cpp -#include "Resources/ResourceFileSystem.h" - -using namespace XCEngine::Resources; - -ResourceFileSystem& fs = ResourceFileSystem::Get(); -ResourceInfo info; - -if (fs.GetResourceInfo("textures/player/diffuse.png", info)) { - printf("Path: %s\n", info.path.CStr()); - printf("Size: %zu bytes\n", info.size); - printf("Modified: %llu\n", info.modifiedTime); - printf("In Archive: %s\n", info.inArchive ? "Yes" : "No"); - if (info.inArchive) { - printf("Archive: %s\n", info.archivePath.CStr()); - } -} -``` diff --git a/docs/api/resources/resource-file-system/shutdown.md b/docs/api/resources/resource-file-system/shutdown.md deleted file mode 100644 index 217c91a8..00000000 --- a/docs/api/resources/resource-file-system/shutdown.md +++ /dev/null @@ -1,44 +0,0 @@ -# ResourceFileSystem::Shutdown - -## 方法签名 - -```cpp -void Shutdown(); -``` - -## 所属类 - -`XCEngine::Resources::ResourceFileSystem` - -## 描述 - -关闭资源文件系统,释放所有已分配的资源。此方法会清空所有已注册的档案和目录,清除资源信息缓存,并将根路径重置为空字符串。 - -此方法线程安全。 - -## 参数 - -无 - -## 返回值 - -无 - -## 示例 - -```cpp -#include "Resources/ResourceFileSystem.h" - -using namespace XCEngine::Resources; - -ResourceFileSystem& fs = ResourceFileSystem::Get(); - -// 程序结束时关闭资源系统 -fs.Shutdown(); -``` - -## 注意事项 - -- 应在程序退出前调用此方法 -- 调用后系统处于未初始化状态,需要重新调用 `Initialize()` 才能使用 -- 已打开的档案会被自动关闭 diff --git a/docs/api/resources/resource-loader/canload.md b/docs/api/resources/resource-loader/canload.md deleted file mode 100644 index 47036920..00000000 --- a/docs/api/resources/resource-loader/canload.md +++ /dev/null @@ -1,31 +0,0 @@ -# IResourceLoader::CanLoad - -```cpp -virtual bool CanLoad(const Containers::String& path) const = 0 -``` - -纯虚方法,检查此加载器是否能加载指定路径的资源。通过比对路径扩展名与支持列表判断。 - -**参数:** -- `path` - 资源路径 - -**返回:** 如果扩展名在支持列表中则返回 true - -**复杂度:** O(k),k 为扩展名数量 - -**示例:** - -```cpp -bool TextureLoader::CanLoad(const Containers::String& path) const { - Containers::String ext = GetExtension(path); - auto supported = GetSupportedExtensions(); - for (const auto& s : supported) { - if (ext == s) return true; - } - return false; -} -``` - -## 相关文档 - -- [IResourceLoader 总览](resource-loader.md) - 返回类总览 diff --git a/docs/api/resources/resource-loader/getdefaultsettings.md b/docs/api/resources/resource-loader/getdefaultsettings.md deleted file mode 100644 index ae7e9456..00000000 --- a/docs/api/resources/resource-loader/getdefaultsettings.md +++ /dev/null @@ -1,25 +0,0 @@ -# IResourceLoader::GetDefaultSettings - -```cpp -virtual ImportSettings* GetDefaultSettings() const = 0 -``` - -纯虚方法,返回此加载器使用的默认导入设置。每个加载器可提供针对其资源类型的默认导入参数。 - -**返回:** `ImportSettings*` 默认导入设置指针 - -**实现注意:** 当前各加载器实现返回 `nullptr`,未返回实际的默认设置对象。 - -**线程安全:** ✅ - -**示例:** - -```cpp -ImportSettings* TextureLoader::GetDefaultSettings() const { - return new TextureImportSettings(); -} -``` - -## 相关文档 - -- [IResourceLoader 总览](resource-loader.md) - 返回类总览 diff --git a/docs/api/resources/resource-loader/getresourcetype.md b/docs/api/resources/resource-loader/getresourcetype.md deleted file mode 100644 index 3b1a6ec3..00000000 --- a/docs/api/resources/resource-loader/getresourcetype.md +++ /dev/null @@ -1,27 +0,0 @@ -# IResourceLoader::GetResourceType - -```cpp -virtual ResourceType GetResourceType() const = 0 -``` - -纯虚方法,返回此加载器所处理的资源类型。每个加载器必须声明自己处理的资源类型(如 Texture、Mesh、Audio 等)。 - -**返回:** `ResourceType` 枚举值,表示支持的资源类型 - -**线程安全:** ✅ - -**示例:** - -```cpp -class TextureLoader : public IResourceLoader { -public: - ResourceType GetResourceType() const override { - return ResourceType::Texture; - } - // ... -}; -``` - -## 相关文档 - -- [IResourceLoader 总览](resource-loader.md) - 返回类总览 diff --git a/docs/api/resources/resource-loader/getsupportedextensions.md b/docs/api/resources/resource-loader/getsupportedextensions.md deleted file mode 100644 index aa46d152..00000000 --- a/docs/api/resources/resource-loader/getsupportedextensions.md +++ /dev/null @@ -1,23 +0,0 @@ -# IResourceLoader::GetSupportedExtensions - -```cpp -virtual Containers::Array GetSupportedExtensions() const = 0 -``` - -纯虚方法,返回此加载器支持的文件扩展名列表。例如纹理加载器可能返回 `{".png", ".jpg", ".jpeg", ".bmp", ".tga"}`。 - -**返回:** `Containers::Array` 支持的扩展名列表(包含点号) - -**线程安全:** ✅ - -**示例:** - -```cpp -Containers::Array TextureLoader::GetSupportedExtensions() const { - return {".png", ".jpg", ".jpeg", ".bmp", ".tga"}; -} -``` - -## 相关文档 - -- [IResourceLoader 总览](resource-loader.md) - 返回类总览 diff --git a/docs/api/resources/resource-loader/load.md b/docs/api/resources/resource-loader/load.md deleted file mode 100644 index 8fac4561..00000000 --- a/docs/api/resources/resource-loader/load.md +++ /dev/null @@ -1,42 +0,0 @@ -# IResourceLoader::Load - -```cpp -virtual LoadResult Load(const Containers::String& path, const ImportSettings* settings = nullptr) = 0 -``` - -同步加载资源。纯虚方法,由具体加载器实现。从指定路径读取文件数据,解析为对应类型的资源对象。 - -**参数:** -- `path` - 资源文件路径 -- `settings` - 可选的导入设置,用于自定义加载行为 - -**返回:** `LoadResult`,包含加载结果(资源指针、是否成功、错误信息等) - -**复杂度:** O(n),取决于文件大小 - -**示例:** - -```cpp -LoadResult TextureLoader::Load(const Containers::String& path, - const ImportSettings* settings) { - LoadResult result; - auto data = ReadFileData(path); - if (data.Empty()) { - result.errorMessage = "Failed to read file: " + path; - return result; - } - Texture* tex = new Texture(); - if (!tex->LoadFromData(data.Data(), data.Size(), settings)) { - delete tex; - result.errorMessage = "Failed to parse texture data"; - return result; - } - result.resource = tex; - result.success = true; - return result; -} -``` - -## 相关文档 - -- [IResourceLoader 总览](resource-loader.md) - 返回类总览 diff --git a/docs/api/resources/resource-loader/loadasync.md b/docs/api/resources/resource-loader/loadasync.md deleted file mode 100644 index b77fedc7..00000000 --- a/docs/api/resources/resource-loader/loadasync.md +++ /dev/null @@ -1,45 +0,0 @@ -# IResourceLoader::LoadAsync - -```cpp -virtual void LoadAsync(const Containers::String& path, - const ImportSettings* settings, - std::function callback) -``` - -异步加载资源。虚方法,提供默认实现(直接在调用线程执行 Load 然后调用回调)。子类可重写以提供真正的异步实现。 - -**参数:** -- `path` - 资源文件路径 -- `settings` - 导入设置 -- `callback` - 加载完成后的回调函数,接收 `LoadResult` 参数 - -**线程安全:** ❌(默认实现同步执行,子类重写时需确保线程安全) - -**示例:** - -```cpp -// 使用默认实现的异步加载 -ResourceManager::Get().LoadAsync("textures/player.png", - nullptr, [](LoadResult result) { - if (result.success) { - Texture* tex = static_cast(result.resource); - // 使用纹理 - } - }); - -// 子类重写提供真正的异步实现 -class AsyncTextureLoader : public IResourceLoader { - void LoadAsync(const Containers::String& path, - const ImportSettings* settings, - std::function callback) override { - std::thread([this, path, settings, callback]() { - LoadResult result = Load(path, settings); - callback(result); - }).detach(); - } -}; -``` - -## 相关文档 - -- [IResourceLoader 总览](resource-loader.md) - 返回类总览 diff --git a/docs/api/resources/resource-loader/resource-loader.md b/docs/api/resources/resource-loader/resource-loader.md deleted file mode 100644 index 1a25211d..00000000 --- a/docs/api/resources/resource-loader/resource-loader.md +++ /dev/null @@ -1,119 +0,0 @@ -# IResourceLoader - -**命名空间**: `XCEngine::Resources` - -**类型**: `class` (抽象基类) - -**描述**: 资源加载器抽象接口,定义了资源加载的标准协议。每个资源类型需要提供对应的加载器实现。 - -## 概述 - -`IResourceLoader` 是资源加载系统的核心抽象接口。它定义了同步和异步加载资源的方法,以及资源类型的查询。`ResourceManager` 通过注册加载器来支持不同类型资源的加载。 - -## LoadResult 结构体 - -加载操作的返回值结构体。 - -```cpp -struct LoadResult { - IResource* resource = nullptr; - bool success = false; - Containers::String errorMessage; - LoadResult() = default; - explicit LoadResult(IResource* res) : resource(res), success(res != nullptr) {} - explicit LoadResult(const Containers::String& error) : success(false), errorMessage(error) {} - explicit LoadResult(bool inSuccess, const Containers::String& error = "") - : success(inSuccess), errorMessage(error) {} - operator bool() const { return success && resource != nullptr; } -}; -``` - -## 公共方法 - -### 资源信息 - -| 方法 | 描述 | -|------|------| -| [`GetResourceType`](getresourcetype.md) | 获取此加载器支持的资源类型 | -| [`GetSupportedExtensions`](getsupportedextensions.md) | 获取支持的文件扩展名列表 | -| [`CanLoad`](canload.md) | 检查此加载器是否能加载指定路径 | -| [`GetDefaultSettings`](getdefaultsettings.md) | 获取默认导入设置 | - -### 同步加载 - -| 方法 | 描述 | -|------|------| -| [`Load`](load.md) | 同步加载资源 | - -### 异步加载 - -| 方法 | 描述 | -|------|------| -| [`LoadAsync`](loadasync.md) | 异步加载资源(带默认实现,子类可重写) | - -### 辅助方法(受保护) - -| 方法 | 描述 | -|------|------| -| `static Containers::Array ReadFileData(const Containers::String& path)` | 读取文件数据 | -| `static Containers::String GetExtension(const Containers::String& path)` | 获取文件扩展名 | - -## 实现说明 - -**注意**: 各资源加载器的 `GetDefaultSettings()` 当前返回 `nullptr`,未返回实际的默认设置对象。 - -## 宏 - -### REGISTER_RESOURCE_LOADER - -自动注册加载器到 ResourceManager 的宏。 - -```cpp -REGISTER_RESOURCE_LOADER(TextureLoader) -``` - -## 使用示例 - -```cpp -class TextureLoader : public IResourceLoader { -public: - ResourceType GetResourceType() const override { - return ResourceType::Texture; - } - - Containers::Array GetSupportedExtensions() const override { - return {".png", ".jpg", ".jpeg", ".bmp", ".tga"}; - } - - bool CanLoad(const Containers::String& path) const override { - Containers::String ext = GetExtension(path); - return ext == ".png" || ext == ".jpg" || ext == ".bmp"; - } - - ImportSettings* GetDefaultSettings() const override { - return new TextureImportSettings(); - } - - LoadResult Load(const Containers::String& path, - const ImportSettings* settings = nullptr) override { - LoadResult result; - auto data = ReadFileData(path); - if (data.Empty()) { - return LoadResult("Failed to read file: " + path); - } - result.resource = new Texture(); - result.success = true; - return result; - } -}; - -// 注册加载器 -ResourceManager::Get().RegisterLoader(new TextureLoader()); -``` - -## 相关文档 - -- [ResourceManager](../resource-manager/resource-manager.md) - 资源管理器 -- [AsyncLoader](../asyncloader/asyncloader.md) - 异步加载器 -- [ImportSettings](../importsettings/importsettings.md) - 导入设置 -- [Resources 总览](../resources.md) - 返回模块总览 diff --git a/docs/api/resources/resource-manager/resource-manager.md b/docs/api/resources/resource-manager/resource-manager.md deleted file mode 100644 index 26297f68..00000000 --- a/docs/api/resources/resource-manager/resource-manager.md +++ /dev/null @@ -1,166 +0,0 @@ -# ResourceManager - -**命名空间**: `XCEngine::Resources` - -**类型**: `class` (singleton) - -**头文件**: `XCEngine/Core/Asset/ResourceManager.h` - -**描述**: 资源管理器单例,负责资源的注册、加载、缓存和生命周期管理。 - -## 概述 - -`ResourceManager` 是 XCEngine 资源管理系统的核心单例类。它管理所有资源加载器,维护资源缓存,处理资源的引用计数,并提供同步和异步加载接口。 - -## 单例访问 - -| 方法 | 描述 | -|------|------| -| `static ResourceManager& Get()` | 获取单例实例 | - -## 公共方法 - -### 生命周期 - -| 方法 | 描述 | -|------|------| -| `void Initialize()` | 初始化资源管理器 | -| `void Shutdown()` | 关闭资源管理器,释放所有资源 | - -### 资源根路径 - -| 方法 | 描述 | -|------|------| -| `void SetResourceRoot(const Containers::String& rootPath)` | 设置资源根目录 | -| `const Containers::String& GetResourceRoot() const` | 获取资源根目录 | - -### 同步加载 - -| 方法 | 描述 | -|------|------| -| `template ResourceHandle Load(const Containers::String& path, ImportSettings* settings = nullptr)` | 同步加载资源 | - -### 异步加载 - -| 方法 | 描述 | -|------|------| -| `void LoadAsync(const Containers::String& path, ResourceType type, std::function callback)` | 异步加载资源 | -| `void LoadAsync(const Containers::String& path, ResourceType type, ImportSettings* settings, std::function callback)` | 带设置的异步加载 | - -### 资源卸载 - -| 方法 | 描述 | -|------|------| -| `void Unload(const Containers::String& path)` | 卸载指定路径的资源 | -| `void Unload(ResourceGUID guid)` | 卸载指定 GUID 的资源 | -| `void UnloadUnused()` | 卸载所有未使用的资源 | -| `void UnloadAll()` | 卸载所有资源 | - -### 引用计数 - -| 方法 | 描述 | -|------|------| -| `void AddRef(ResourceGUID guid)` | 增加资源引用计数 | -| `void Release(ResourceGUID guid)` | 释放资源引用 | -| `Core::uint32 GetRefCount(ResourceGUID guid) const` | 获取资源引用计数 | - -### 加载器管理 - -| 方法 | 描述 | -|------|------| -| `void RegisterLoader(IResourceLoader* loader)` | 注册资源加载器 | -| `void UnregisterLoader(ResourceType type)` | 注销指定类型的加载器 | -| `IResourceLoader* GetLoader(ResourceType type) const` | 获取指定类型的加载器 | - -### 内存管理 - -| 方法 | 描述 | -|------|------| -| `void SetMemoryBudget(size_t bytes)` | 设置内存预算 | -| `size_t GetMemoryUsage() const` | 获取当前内存使用量 | -| `size_t GetMemoryBudget() const` | 获取内存预算 | -| `void FlushCache()` | 刷新缓存 | - -### 资源查询 - -| 方法 | 描述 | -|------|------| -| `IResource* Find(const Containers::String& path)` | 通过路径查找资源 | -| `IResource* Find(ResourceGUID guid)` | 通过 GUID 查找资源 | -| `bool Exists(const Containers::String& path) const` | 检查资源是否存在 | -| `bool Exists(ResourceGUID guid) const` | 检查资源是否存在 | - -### 路径解析 - -| 方法 | 描述 | -|------|------| -| `Containers::String ResolvePath(const Containers::String& relativePath) const` | 解析相对路径为绝对路径 | - -### 组加载 - -| 方法 | 描述 | -|------|------| -| `template void LoadGroup(const Containers::Array& paths, std::function)> callback)` | 批量异步加载同类型资源 | - -### 资源路径 - -| 方法 | 描述 | -|------|------| -| `Containers::Array GetResourcePaths() const` | 获取所有已加载资源的路径 | -| `void UnloadGroup(const Containers::Array& guids)` | 批量卸载资源 | - -## 实现说明 - -**注意**: `LoadGroup()` 方法通过多次调用 `LoadAsync()` 实现批量加载,所有加载请求会被提交到 `AsyncLoader` 的队列中。 - -## 使用示例 - -```cpp -#include - -// 获取单例实例 -ResourceManager& resMgr = ResourceManager::Get(); - -// 初始化 -resMgr.Initialize(); -resMgr.SetResourceRoot("resources/"); - -// 同步加载资源 -ResourceHandle tex = resMgr.Load("textures/player.png"); -ResourceHandle mesh = resMgr.Load("models/player.fbx"); -ResourceHandle mat = resMgr.Load("materials/player.mat"); - -// 检查加载结果 -if (tex.IsValid()) { - // 使用纹理 -} - -// 异步加载 -resMgr.LoadAsync("textures/terrain.png", ResourceType::Texture, - [](LoadResult result) { - if (result.success) { - ResourceHandle tex(result.resource); - // 处理加载完成的纹理 - } - }); - -// 引用计数 -ResourceGUID guid = tex.GetGUID(); -resMgr.AddRef(guid); -// ... 使用资源 ... -resMgr.Release(guid); - -// 卸载 -resMgr.UnloadUnused(); - -// 关闭 -resMgr.Shutdown(); -``` - -## 相关文档 - -- [IResourceLoader](../iloader/iloader.md) - 资源加载器接口 -- [AsyncLoader](../asyncloader/asyncloader.md) - 异步加载器 -- [ResourceCache](../resourcecache.md) - 资源缓存 -- [ResourceHandle](../resourcehandle.md) - 资源句柄 -- [Resources 总览](../resources.md) - 返回模块总览 diff --git a/docs/api/resources/resource-package/close.md b/docs/api/resources/resource-package/close.md deleted file mode 100644 index b75ef344..00000000 --- a/docs/api/resources/resource-package/close.md +++ /dev/null @@ -1,42 +0,0 @@ -# Close - -关闭资源包并释放相关资源。 - -## 方法签名 - -```cpp -void Close(); -``` - -## 详细描述 - -关闭当前打开的资源包,重置所有内部状态并释放相关资源。调用此方法后,包将变为无效状态,任何尝试读取文件的行为都将失败。 - -此方法在析构函数中会被自动调用,确保资源正确释放。 - -## 参数 - -无 - -## 返回值 - -无 - -## 示例 - -```cpp -ResourcePackage package; -if (package.Open("assets/resources.xcp")) { - // 使用包... - - // 显式关闭 - package.Close(); -} - -// 或者当 package 超出作用域时会自动关闭 -``` - -## 相关方法 - -- [Open](open.md) - 打开资源包 -- [IsValid](isvalid.md) - 检查包有效性 diff --git a/docs/api/resources/resource-package/enumerate.md b/docs/api/resources/resource-package/enumerate.md deleted file mode 100644 index 53ca5488..00000000 --- a/docs/api/resources/resource-package/enumerate.md +++ /dev/null @@ -1,56 +0,0 @@ -# Enumerate - -枚举资源包中匹配指定模式的文件。 - -## 方法签名 - -```cpp -void Enumerate(const Containers::String& pattern, Containers::Array& outFiles) const; -``` - -## 详细描述 - -枚举包内所有与给定模式匹配的文件路径,并将结果输出到 `outFiles` 数组中。当前实现会将 `outFiles` 清空后填入所有文件路径。 - -**注意**:当前实现不支持真正的通配符匹配,会返回包内所有文件的完整路径列表。 - -## 参数 - -| 参数名 | 类型 | 描述 | -|--------|------|------| -| `pattern` | `const Containers::String&` | 文件匹配模式(当前实现中未使用) | -| `outFiles` | `Containers::Array&` | 输出参数,用于存放匹配的文件路径列表 | - -## 返回值 - -无 - -## 示例 - -```cpp -ResourcePackage package; -package.Open("assets/resources.xcp"); - -Array files; - -// 枚举所有文件 -package.Enumerate("*", files); -printf("Total files: %zu\n", files.Size()); - -for (const auto& file : files) { - printf(" - %s\n", file.CStr()); -} - -// 枚举特定类型的文件 -package.Enumerate("*.png", files); -for (const auto& file : files) { - if (file.Find(".png") != String::InvalidPos) { - printf("Image: %s\n", file.CStr()); - } -} -``` - -## 相关方法 - -- [Exists](exists.md) - 检查文件存在 -- [Read](read.md) - 读取文件内容 diff --git a/docs/api/resources/resource-package/exists.md b/docs/api/resources/resource-package/exists.md deleted file mode 100644 index 0b38020b..00000000 --- a/docs/api/resources/resource-package/exists.md +++ /dev/null @@ -1,52 +0,0 @@ -# Exists - -检查指定文件是否存在于资源包中。 - -## 方法签名 - -```cpp -bool Exists(const Containers::String& relativePath) const; -``` - -## 详细描述 - -检查资源包中是否存在指定相对路径的文件。使用斜杠 `/` 作为路径分隔符,支持带或不带文件扩展名的路径。 - -## 参数 - -| 参数名 | 类型 | 描述 | -|--------|------|------| -| `relativePath` | `const Containers::String&` | 文件的相对路径,相对于包内根目录 | - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `bool` | 文件存在返回 `true`,不存在返回 `false` | - -## 示例 - -```cpp -ResourcePackage package; -package.Open("assets/resources.xcp"); - -// 检查不同类型的文件 -if (package.Exists("textures/player.png")) { - printf("Player texture exists\n"); -} - -if (package.Exists("audio/bgm_main.ogg")) { - printf("Background music exists\n"); -} - -// 使用通配符检查(当前实现会按字面量匹配) -if (package.Exists("shaders/*")) { - // 注意:当前实现不支持真正的通配符匹配 -} -``` - -## 相关方法 - -- [Read](read.md) - 读取文件内容 -- [GetSize](getsize.md) - 获取文件大小 -- [Enumerate](enumerate.md) - 枚举文件 diff --git a/docs/api/resources/resource-package/getinfo.md b/docs/api/resources/resource-package/getinfo.md deleted file mode 100644 index 89d8fd32..00000000 --- a/docs/api/resources/resource-package/getinfo.md +++ /dev/null @@ -1,50 +0,0 @@ -# GetInfo - -获取资源包的元信息。 - -## 方法签名 - -```cpp -const PackageInfo& GetInfo() const; -``` - -## 详细描述 - -返回资源包的元信息结构体引用,包含包的路径、版本号、文件数量和总大小等基本信息。 - -## 参数 - -无 - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `const PackageInfo&` | PackageInfo 结构体引用,包含包的元信息 | - -## PackageInfo 结构体 - -| 成员 | 类型 | 描述 | -|------|------|------| -| `path` | `Containers::String` | 包文件的完整路径 | -| `version` | `Core::uint16` | 包文件格式版本号 | -| `fileCount` | `size_t` | 包内包含的文件数量 | -| `totalSize` | `size_t` | 包文件的总大小(字节) | - -## 示例 - -```cpp -ResourcePackage package; -package.Open("assets/resources.xcp"); - -const auto& info = package.GetInfo(); -printf("Package Path: %s\n", info.path.CStr()); -printf("Package Version: %u\n", info.version); -printf("File Count: %zu\n", info.fileCount); -printf("Total Size: %zu bytes\n", info.totalSize); -``` - -## 相关方法 - -- [Open](open.md) - 打开资源包 -- [IsValid](isvalid.md) - 检查包有效性 diff --git a/docs/api/resources/resource-package/getsize.md b/docs/api/resources/resource-package/getsize.md deleted file mode 100644 index 478e7347..00000000 --- a/docs/api/resources/resource-package/getsize.md +++ /dev/null @@ -1,45 +0,0 @@ -# GetSize - -获取资源包中指定文件的原始大小。 - -## 方法签名 - -```cpp -size_t GetSize(const Containers::String& relativePath) const; -``` - -## 详细描述 - -返回指定文件压缩前的大小(字节数)。如果文件不存在于包中,返回 0。 - -## 参数 - -| 参数名 | 类型 | 描述 | -|--------|------|------| -| `relativePath` | `const Containers::String&` | 文件的相对路径 | - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `size_t` | 文件大小(字节),文件不存在时返回 0 | - -## 示例 - -```cpp -ResourcePackage package; -package.Open("assets/resources.xcp"); - -size_t size = package.GetSize("textures/player.png"); -if (size > 0) { - printf("Player texture size: %zu bytes\n", size); - - // 可以用来预分配缓冲区 - Array buffer(size); -} -``` - -## 相关方法 - -- [Read](read.md) - 读取文件内容 -- [Exists](exists.md) - 检查文件存在 diff --git a/docs/api/resources/resource-package/index.md b/docs/api/resources/resource-package/index.md deleted file mode 100644 index 2f4e6cd3..00000000 --- a/docs/api/resources/resource-package/index.md +++ /dev/null @@ -1,94 +0,0 @@ -# ResourcePackage 类 - -## 命名空间 - -`XCEngine::Resources` - -## 类型 - -类 (Class) - -## 描述 - -ResourcePackage 是 XCEngine 资源包的核心类,用于读取和管理 `.xcp` 格式的资源包文件。资源包是一种将多个资源文件打包成单一文件的格式,支持文件枚举、读取和校验。 - -## 概述 - -ResourcePackage 提供了一套完整的资源包读取接口,包括打开/关闭包、查询文件存在性、读取文件内容、获取文件大小以及枚举包内文件等功能。包文件格式采用二进制结构,包含文件头、清单和数据区域。 - -包文件格式: -- **文件头** (20 字节): 魔数 "XCRP" (4B) + 版本号 (2B) + 清单大小 (4B) + 文件数量 (4B) + 数据偏移 (8B) -- **清单区域**: 存储文件元数据列表 -- **数据区域**: 存储实际文件数据 - -## 公共方法表格 - -| 方法 | 签名 | 描述 | -|------|------|------| -| [Open](open.md) | `bool Open(const Containers::String& packagePath)` | 打开资源包文件 | -| [Close](close.md) | `void Close()` | 关闭资源包并释放资源 | -| [IsValid](isvalid.md) | `bool IsValid() const` | 检查包是否有效 | -| [Exists](exists.md) | `bool Exists(const Containers::String& relativePath) const` | 检查文件是否存在 | -| [Read](read.md) | `Containers::Array Read(const Containers::String& relativePath) const` | 读取文件内容 | -| [GetSize](getsize.md) | `size_t GetSize(const Containers::String& relativePath) const` | 获取文件大小 | -| [Enumerate](enumerate.md) | `void Enumerate(const Containers::String& pattern, Containers::Array& outFiles) const` | 枚举匹配的文件 | -| [GetInfo](getinfo.md) | `const PackageInfo& GetInfo() const` | 获取包信息 | - -## 嵌套类型 - -### PackageInfo - -包文件的元信息结构体。 - -| 成员 | 类型 | 描述 | -|------|------|------| -| `path` | `Containers::String` | 包文件路径 | -| `version` | `Core::uint16` | 包文件版本号 | -| `fileCount` | `size_t` | 包内文件数量 | -| `totalSize` | `size_t` | 包文件总大小 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine; -using namespace XCEngine::Containers; -using namespace XCEngine::Resources; - -// 打开资源包 -ResourcePackage package; -if (!package.Open("assets/resources.xcp")) { - // 处理打开失败 - return; -} - -// 检查文件是否存在 -if (package.Exists("textures/player.png")) { - // 读取文件 - Array data = package.Read("textures/player.png"); - // 处理数据... -} - -// 获取文件大小 -size_t size = package.GetSize("textures/player.png"); - -// 枚举所有文件 -Array files; -package.Enumerate("*", files); -for (const auto& file : files) { - printf("Found file: %s\n", file.CStr()); -} - -// 获取包信息 -const auto& info = package.GetInfo(); -printf("Package: %s, Version: %u, Files: %zu\n", - info.path.CStr(), info.version, info.fileCount); - -// 关闭资源包 -package.Close(); -``` - -## 相关文档 - -- [ResourceTypes](../resourcetypes/resourcetypes.md) - 资源类型定义 diff --git a/docs/api/resources/resource-package/isvalid.md b/docs/api/resources/resource-package/isvalid.md deleted file mode 100644 index d12065c3..00000000 --- a/docs/api/resources/resource-package/isvalid.md +++ /dev/null @@ -1,53 +0,0 @@ -# IsValid - -检查资源包当前是否有效。 - -## 方法签名 - -```cpp -bool IsValid() const; -``` - -## 详细描述 - -返回一个布尔值,表示资源包当前是否处于有效状态。当包成功打开且未被关闭时返回 `true`。 - -## 参数 - -无 - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `bool` | 包有效返回 `true`,无效返回 `false` | - -## 示例 - -```cpp -ResourcePackage package; - -// 打开前 -if (!package.IsValid()) { - printf("Package is not valid yet\n"); -} - -package.Open("assets/resources.xcp"); - -// 打开后 -if (package.IsValid()) { - printf("Package is valid and ready to use\n"); -} - -package.Close(); - -// 关闭后 -if (!package.IsValid()) { - printf("Package has been closed\n"); -} -``` - -## 相关方法 - -- [Open](open.md) - 打开资源包 -- [Close](close.md) - 关闭资源包 diff --git a/docs/api/resources/resource-package/open.md b/docs/api/resources/resource-package/open.md deleted file mode 100644 index f2cccbd1..00000000 --- a/docs/api/resources/resource-package/open.md +++ /dev/null @@ -1,51 +0,0 @@ -# Open - -打开资源包文件。 - -## 方法签名 - -```cpp -bool Open(const Containers::String& packagePath); -``` - -## 详细描述 - -尝试打开指定路径的资源包文件并解析其文件头和清单。如果文件不存在、格式无效或版本不匹配,方法将返回 `false`。 - -包文件格式验证包括: -1. 检查魔数是否为 "XCRP" -2. 验证版本号是否为支持的版本 -3. 读取并解析文件清单 - -## 参数 - -| 参数名 | 类型 | 描述 | -|--------|------|------| -| `packagePath` | `const Containers::String&` | 资源包文件的完整路径或相对路径 | - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `bool` | 成功打开返回 `true`,失败返回 `false` | - -## 示例 - -```cpp -ResourcePackage package; - -// 使用相对路径打开 -if (package.Open("assets/resources.xcp")) { - // 包已成功打开 -} - -// 使用绝对路径打开 -if (package.Open("D:/Game/assets/resources.xcp")) { - // 包已成功打开 -} -``` - -## 相关方法 - -- [Close](close.md) - 关闭资源包 -- [IsValid](isvalid.md) - 检查包有效性 diff --git a/docs/api/resources/resource-package/read.md b/docs/api/resources/resource-package/read.md deleted file mode 100644 index 124d2364..00000000 --- a/docs/api/resources/resource-package/read.md +++ /dev/null @@ -1,55 +0,0 @@ -# Read - -读取资源包中指定文件的内容。 - -## 方法签名 - -```cpp -Containers::Array Read(const Containers::String& relativePath) const; -``` - -## 详细描述 - -从资源包中读取指定文件的完整内容并返回。如果文件不存在或读取失败,返回空的数组。 - -文件内容以字节数组形式返回,适用于读取二进制资源如图像、音频、着色器等。 - -## 参数 - -| 参数名 | 类型 | 描述 | -|--------|------|------| -| `relativePath` | `const Containers::String&` | 文件的相对路径 | - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `Containers::Array` | 文件内容的字节数组,失败时返回空数组 | - -## 示例 - -```cpp -ResourcePackage package; -package.Open("assets/resources.xcp"); - -// 读取图像文件 -Array imageData = package.Read("textures/player.png"); -if (!imageData.Empty()) { - printf("Loaded image: %zu bytes\n", imageData.Size()); -} - -// 读取文本文件(需要额外处理 UTF-8 编码) -Array textData = package.Read("config/settings.txt"); -if (!textData.Empty()) { - // 转换为字符串 - String text(reinterpret_cast(textData.Data()), textData.Size()); -} - -// 读取着色器 -Array shaderData = package.Read("shaders/pbr.glsl"); -``` - -## 相关方法 - -- [Exists](exists.md) - 检查文件存在 -- [GetSize](getsize.md) - 获取文件大小 diff --git a/docs/api/resources/resourcecache.md b/docs/api/resources/resourcecache.md deleted file mode 100644 index b3565da6..00000000 --- a/docs/api/resources/resourcecache.md +++ /dev/null @@ -1,88 +0,0 @@ -# ResourceCache - -**命名空间**: `XCEngine::Resources` - -**类型**: `class` - -**头文件**: `XCEngine/Core/Asset/ResourceCache.h` - -**描述**: 资源缓存管理器,实现 LRU(最近最少使用)淘汰策略的资源缓存。 - -## 概述 - -`ResourceCache` 维护了一个内存资源缓存,使用 LRU 策略管理资源条目。当内存使用超过预算时,会自动淘汰最近最少使用的资源。 - -## 公共方法 - -### 缓存操作 - -| 方法 | 描述 | -|------|------| -| `void Add(ResourceGUID guid, IResource* resource)` | 添加资源到缓存 | -| `void Remove(ResourceGUID guid)` | 从缓存移除资源 | -| `IResource* Find(ResourceGUID guid) const` | 查找缓存中的资源 | -| `void Touch(ResourceGUID guid)` | 更新资源的访问时间 | - -### 缓存信息 - -| 方法 | 描述 | -|------|------| -| `size_t GetSize() const` | 获取缓存条目数量 | -| `size_t GetMemoryUsage() const` | 获取缓存内存使用量(字节) | - -### 内存管理 - -| 方法 | 描述 | -|------|------| -| `void SetMemoryBudget(size_t bytes)` | 设置内存预算 | -| `size_t GetMemoryBudget() const` | 获取内存预算 | -| `void OnMemoryPressure(size_t requiredBytes)` | 内存压力回调,淘汰资源释放内存 | -| `void OnZeroRefCount(ResourceGUID guid)` | 引用计数归零时的回调 | - -### 缓存刷新 - -| 方法 | 描述 | -|------|------| -| `void Flush()` | 刷新所有缓存资源 | -| `void Clear()` | 清空缓存 | - -### LRU 操作 - -| 方法 | 描述 | -|------|------| -| `Containers::Array GetLRUList(size_t count) const` | 获取最近最少使用的资源 GUID 列表 | - -## 实现说明 - -**LRU 策略**: 缓存使用 LRU(Least Recently Used)策略淘汰资源。当 `OnMemoryPressure()` 被调用时,会从最近最少使用的资源开始淘汰,直到释放足够的内存。 - -**线程安全**: 缓存操作通过互斥锁保护,部分只读操作使用读锁以提高并发性能。 - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Resources; - -// 获取缓存实例(ResourceManager 内部使用) -ResourceCache& cache = /* ... */; - -// 设置内存预算 256MB -cache.SetMemoryBudget(256 * 1024 * 1024); - -// 手动触发内存压力释放 -cache.OnMemoryPressure(50 * 1024 * 1024); // 释放 50MB - -// 获取 LRU 列表 -auto lruItems = cache.GetLRUList(10); -for (const auto& guid : lruItems) { - // 处理每个 LRU 条目 -} -``` - -## 相关文档 - -- [ResourceManager](resource-manager/resource-manager.md) - 资源管理器 -- [IResource](iresource/iresource.md) - 资源基类 -- [Resources 总览](resources.md) - 返回模块总览 diff --git a/docs/api/resources/resourcehandle.md b/docs/api/resources/resourcehandle.md deleted file mode 100644 index ce293716..00000000 --- a/docs/api/resources/resourcehandle.md +++ /dev/null @@ -1,113 +0,0 @@ -# ResourceHandle - -**命名空间**: `XCEngine::Resources` - -**类型**: `class template` - -**头文件**: `XCEngine/Core/Asset/ResourceHandle.h` - -**模板参数**: `T` - 资源类型,必须继承自 `IResource` - -**描述**: 资源句柄模板类,提供资源的类型安全引用和自动引用计数管理。 - -## 概述 - -`ResourceHandle` 是一个模板智能指针类,用于安全引用 `IResource` 子类实例。它自动管理引用计数,当句柄被销毁或重置时,相应的资源引用计数会递减。这确保了资源在其被所有句柄释放前不会被卸载。 - -## 公共方法 - -### 构造与赋值 - -| 方法 | 描述 | -|------|------| -| `ResourceHandle()` | 默认构造,创建空句柄 | -| `explicit ResourceHandle(T* resource)` | 从原始指针构造,增加引用计数 | -| `ResourceHandle(const ResourceHandle& other)` | 拷贝构造,增加引用计数 | -| `ResourceHandle(ResourceHandle&& other) noexcept` | 移动构造,不增加引用计数 | -| `ResourceHandle& operator=(const ResourceHandle& other)` | 拷贝赋值,先释放当前引用再增加新引用 | -| `ResourceHandle& operator=(ResourceHandle&& other) noexcept` | 移动赋值 | - -### 资源访问 - -| 方法 | 描述 | -|------|------| -| `T* Get() const` | 获取原始指针 | -| `T* operator->() const` | 通过箭头操作符访问资源方法 | -| `T& operator*() const` | 解引用获取资源引用 | - -### 状态查询 - -| 方法 | 描述 | -|------|------| -| `bool IsValid() const` | 检查句柄是否有效(非空且资源有效) | -| `explicit operator bool() const` | 隐式转换为 bool | - -### GUID 与类型 - -| 方法 | 描述 | -|------|------| -| `ResourceGUID GetGUID() const` | 获取资源的全局唯一标识符 | -| `ResourceType GetResourceType() const` | 获取资源类型 | - -### 句柄操作 - -| 方法 | 描述 | -|------|------| -| `void Reset()` | 释放当前引用,将句柄置为空 | -| `void Swap(ResourceHandle& other)` | 交换两个句柄的引用 | - -## 操作符重载 - -| 操作符 | 描述 | -|------|------| -| `template bool operator==(const ResourceHandle& lhs, const ResourceHandle& rhs)` | 判断两个句柄是否引用同一资源 | -| `template bool operator!=(const ResourceHandle& lhs, const ResourceHandle& rhs)` | 判断两个句柄是否引用不同资源 | - -## 实现说明 - -**引用计数**: 每次构造(拷贝或原始指针)或赋值操作都会调用 `ResourceManager::AddRef()` 增加引用计数。每次析构或 `Reset()` 调用都会调用 `ResourceManager::Release()` 减少引用计数。 - -**线程安全**: 引用计数操作在 `ResourceManager` 内部通过互斥锁保护。 - -**空句柄处理**: 对空句柄调用 `GetGUID()` 返回 `ResourceGUID(0)`,调用 `GetResourceType()` 返回 `ResourceType::Unknown`。 - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Resources; - -// 创建句柄(从加载结果) -ResourceHandle tex = ResourceManager::Get().Load("textures/player.png"); - -// 检查有效性 -if (tex.IsValid()) { - // 使用箭头操作符访问资源方法 - const Containers::String& path = tex->GetPath(); -} - -// 拷贝构造(引用计数 +1) -ResourceHandle tex2 = tex; - -// 移动构造(引用计数不变) -ResourceHandle tex3 = std::move(tex2); - -// 句柄失效,引用计数 -1 -tex.Reset(); - -// 比较操作 -ResourceHandle texA = ResourceManager::Get().Load("a.png"); -ResourceHandle texB = ResourceManager::Get().Load("b.png"); - -if (texA == texB) { - // 同一资源 -} -``` - -## 相关文档 - -- [IResource](iresource/iresource.md) - 资源基类 -- [ResourceManager](resource-manager/resource-manager.md) - 资源管理器 -- [Resources 总览](resources.md) - 返回模块总览 diff --git a/docs/api/resources/resourcepath/getdirectory.md b/docs/api/resources/resourcepath/getdirectory.md deleted file mode 100644 index 4b30d40c..00000000 --- a/docs/api/resources/resourcepath/getdirectory.md +++ /dev/null @@ -1,32 +0,0 @@ -# ResourcePath::GetDirectory - -```cpp -Containers::String GetDirectory() const -``` - -获取目录部分。 - -**详细描述:** - -返回路径中最后一个路径分隔符之前的所有内容,即目录路径。兼容 Windows (`\`) 和 Unix (`/`) 路径分隔符。 - -**返回:** `Containers::String`,目录路径 - -**复杂度:** O(n),n 为路径长度 - -**示例:** - -```cpp -ResourcePath path("textures/player.png"); -Containers::String dir = path.GetDirectory(); // "textures" - -ResourcePath path2("textures/subfolder/player.png"); -Containers::String dir2 = path2.GetDirectory(); // "textures/subfolder" - -ResourcePath path3("player.png"); -Containers::String dir3 = path3.GetDirectory(); // "" -``` - -## 相关文档 - -- [ResourcePath 总览](resourcepath.md) - 返回类总览 diff --git a/docs/api/resources/resourcepath/getextension.md b/docs/api/resources/resourcepath/getextension.md deleted file mode 100644 index 4a6c0d0d..00000000 --- a/docs/api/resources/resourcepath/getextension.md +++ /dev/null @@ -1,32 +0,0 @@ -# ResourcePath::GetExtension - -```cpp -Containers::String GetExtension() const -``` - -获取文件扩展名。 - -**详细描述:** - -返回路径字符串的文件扩展名部分,包括前缀点(`.`)。如果路径为空或不包含扩展名,返回空字符串。 - -**返回:** `Containers::String`,包含扩展名(如 `".png"`),如果无扩展名则返回空字符串 - -**复杂度:** O(n),n 为路径长度 - -**示例:** - -```cpp -ResourcePath path("textures/player.png"); -Containers::String ext = path.GetExtension(); // ".png" - -ResourcePath path2("textures/player"); -Containers::String ext2 = path2.GetExtension(); // "" - -ResourcePath path3(""); -Containers::String ext3 = path3.GetExtension(); // "" -``` - -## 相关文档 - -- [ResourcePath 总览](resourcepath.md) - 返回类总览 diff --git a/docs/api/resources/resourcepath/getfilename.md b/docs/api/resources/resourcepath/getfilename.md deleted file mode 100644 index b156f245..00000000 --- a/docs/api/resources/resourcepath/getfilename.md +++ /dev/null @@ -1,32 +0,0 @@ -# ResourcePath::GetFileName - -```cpp -Containers::String GetFileName() const -``` - -获取文件名(含扩展名)。 - -**详细描述:** - -返回路径中最后一个路径分隔符后的部分,包括文件名和扩展名。兼容 Windows (`\`) 和 Unix (`/`) 路径分隔符。 - -**返回:** `Containers::String`,文件名(含扩展名) - -**复杂度:** O(n),n 为路径长度 - -**示例:** - -```cpp -ResourcePath path("textures/player.png"); -Containers::String name = path.GetFileName(); // "player.png" - -ResourcePath path2("player.png"); -Containers::String name2 = path2.GetFileName(); // "player.png" - -ResourcePath path3("textures\\windows\\file.txt"); -Containers::String name3 = path3.GetFileName(); // "file.txt" -``` - -## 相关文档 - -- [ResourcePath 总览](resourcepath.md) - 返回类总览 diff --git a/docs/api/resources/resourcepath/getfullpath.md b/docs/api/resources/resourcepath/getfullpath.md deleted file mode 100644 index 70cb94f5..00000000 --- a/docs/api/resources/resourcepath/getfullpath.md +++ /dev/null @@ -1,26 +0,0 @@ -# ResourcePath::GetFullPath - -```cpp -Containers::String GetFullPath() const -``` - -获取完整路径。 - -**详细描述:** - -返回存储的完整路径字符串。 - -**返回:** `Containers::String`,完整路径 - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourcePath path("textures/player.png"); -Containers::String fullPath = path.GetFullPath(); // "textures/player.png" -``` - -## 相关文档 - -- [ResourcePath 总览](resourcepath.md) - 返回类总览 diff --git a/docs/api/resources/resourcepath/getpath.md b/docs/api/resources/resourcepath/getpath.md deleted file mode 100644 index 1b03ec54..00000000 --- a/docs/api/resources/resourcepath/getpath.md +++ /dev/null @@ -1,27 +0,0 @@ -# ResourcePath::GetPath - -```cpp -const Containers::String& GetPath() const -``` - -获取原始路径字符串。 - -**详细描述:** - -返回内部存储的路径字符串的常量引用。 - -**返回:** `const Containers::String&`,路径字符串的常量引用 - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourcePath path("textures/player.png"); -const Containers::String& rawPath = path.GetPath(); // "textures/player.png" -``` - -## 相关文档 - -- [ResourcePath 总览](resourcepath.md) - 返回类总览 -- [SetPath](setpath.md) - 设置路径 diff --git a/docs/api/resources/resourcepath/getrelativepath.md b/docs/api/resources/resourcepath/getrelativepath.md deleted file mode 100644 index e73d5aa7..00000000 --- a/docs/api/resources/resourcepath/getrelativepath.md +++ /dev/null @@ -1,26 +0,0 @@ -# ResourcePath::GetRelativePath - -```cpp -Containers::String GetRelativePath() const -``` - -获取相对路径。 - -**详细描述:** - -返回存储的相对路径字符串。当前实现直接返回完整路径。 - -**返回:** `Containers::String`,相对路径 - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourcePath path("textures/player.png"); -Containers::String relPath = path.GetRelativePath(); // "textures/player.png" -``` - -## 相关文档 - -- [ResourcePath 总览](resourcepath.md) - 返回类总览 diff --git a/docs/api/resources/resourcepath/getstem.md b/docs/api/resources/resourcepath/getstem.md deleted file mode 100644 index bd79004e..00000000 --- a/docs/api/resources/resourcepath/getstem.md +++ /dev/null @@ -1,32 +0,0 @@ -# ResourcePath::GetStem - -```cpp -Containers::String GetStem() const -``` - -获取文件名(不含扩展名)。 - -**详细描述:** - -返回路径中文件名部分,不包含扩展名。兼容 Windows (`\`) 和 Unix (`/`) 路径分隔符。 - -**返回:** `Containers::String`,文件名(不含扩展名) - -**复杂度:** O(n),n 为路径长度 - -**示例:** - -```cpp -ResourcePath path("textures/player.png"); -Containers::String stem = path.GetStem(); // "player" - -ResourcePath path2("textures/player.backup.png"); -Containers::String stem2 = path2.GetStem(); // "player.backup" - -ResourcePath path3("textures"); -Containers::String stem3 = path3.GetStem(); // "textures" -``` - -## 相关文档 - -- [ResourcePath 总览](resourcepath.md) - 返回类总览 diff --git a/docs/api/resources/resourcepath/hasanyextension.md b/docs/api/resources/resourcepath/hasanyextension.md deleted file mode 100644 index 77917a09..00000000 --- a/docs/api/resources/resourcepath/hasanyextension.md +++ /dev/null @@ -1,36 +0,0 @@ -# ResourcePath::HasAnyExtension - -```cpp -bool HasAnyExtension(const char* const* extensions, Core::uint32 count) const -``` - -检查是否具有任意指定扩展名。 - -**详细描述:** - -遍历扩展名数组,检查路径是否匹配其中任意一个扩展名。扩展名应包含前缀点(`.`)。 - -**参数:** -- `extensions` - 扩展名数组指针 -- `count` - 扩展名数组长度 - -**返回:** `bool`,匹配任意扩展名返回 `true`,否则返回 `false` - -**复杂度:** O(n * m),n 为路径长度,m 为扩展名数量 - -**示例:** - -```cpp -ResourcePath path("textures/player.png"); - -const char* imageExts[] = {".png", ".jpg", ".jpeg", ".bmp", ".tga"}; -bool isImage = path.HasAnyExtension(imageExts, 5); // true - -const char* videoExts[] = {".mp4", ".avi", ".mkv"}; -bool isVideo = path.HasAnyExtension(videoExts, 3); // false -``` - -## 相关文档 - -- [ResourcePath 总览](resourcepath.md) - 返回类总览 -- [HasExtension](hasextension.md) - 检查单个扩展名 diff --git a/docs/api/resources/resourcepath/hasextension.md b/docs/api/resources/resourcepath/hasextension.md deleted file mode 100644 index df694ef7..00000000 --- a/docs/api/resources/resourcepath/hasextension.md +++ /dev/null @@ -1,33 +0,0 @@ -# ResourcePath::HasExtension - -```cpp -bool HasExtension(const char* ext) const -``` - -检查是否具有指定扩展名。 - -**详细描述:** - -比较路径的扩展名与指定的扩展名。扩展名应包含前缀点(`.`)。 - -**参数:** -- `ext` - 要检查的扩展名(应包含 `.`,如 `".png"`) - -**返回:** `bool`,扩展名匹配返回 `true`,否则返回 `false` - -**复杂度:** O(n),n 为路径长度 - -**示例:** - -```cpp -ResourcePath path("textures/player.png"); - -bool isPng = path.HasExtension(".png"); // true -bool isJpg = path.HasExtension(".jpg"); // false -bool isInvalid = path.HasExtension("png"); // false (缺少前缀点) -``` - -## 相关文档 - -- [ResourcePath 总览](resourcepath.md) - 返回类总览 -- [HasAnyExtension](hasanyextension.md) - 检查多个扩展名 diff --git a/docs/api/resources/resourcepath/isvalid.md b/docs/api/resources/resourcepath/isvalid.md deleted file mode 100644 index 5830fa9f..00000000 --- a/docs/api/resources/resourcepath/isvalid.md +++ /dev/null @@ -1,33 +0,0 @@ -# ResourcePath::IsValid - -```cpp -bool IsValid() const -``` - -检查路径是否有效(非空)。 - -**详细描述:** - -判断路径是否有效,即路径字符串是否非空。 - -**返回:** `bool`,路径非空返回 `true`,否则返回 `false` - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourcePath validPath("textures/player.png"); -if (validPath.IsValid()) { - // 处理有效路径 -} - -ResourcePath emptyPath(""); -if (!emptyPath.IsValid()) { - // 处理空路径 -} -``` - -## 相关文档 - -- [ResourcePath 总览](resourcepath.md) - 返回类总览 diff --git a/docs/api/resources/resourcepath/resourcepath.md b/docs/api/resources/resourcepath/resourcepath.md deleted file mode 100644 index d40f2657..00000000 --- a/docs/api/resources/resourcepath/resourcepath.md +++ /dev/null @@ -1,89 +0,0 @@ -# ResourcePath - -**命名空间**: `XCEngine::Resources` - -**类型**: `class` - -**头文件**: `XCEngine/Core/IO/ResourcePath.h` - -**描述**: 资源路径封装类,提供路径解析、转换和 GUID 生成功能。 - -## 概述 - -`ResourcePath` 封装了资源路径字符串,提供了一系列便捷方法进行路径解析、扩展名检查和 GUID 转换。 - -## 头文件 - -```cpp -#include -``` - -## 公共方法 - -### 构造 - -| 方法 | 描述 | -|------|------| -| `ResourcePath() = default` | 默认构造空路径 | -| `ResourcePath(const char* path)` | 从 C 字符串构造 | -| `ResourcePath(const Containers::String& path)` | 从 String 构造 | - -### 路径解析 - -| 方法 | 描述 | -|------|------| -| `Containers::String GetExtension() const` | 获取文件扩展名 | -| `Containers::String GetStem() const` | 获取文件名(不含扩展名) | -| `Containers::String GetFullPath() const` | 获取完整路径 | -| `Containers::String GetFileName() const` | 获取文件名(含扩展名) | -| `Containers::String GetDirectory() const` | 获取目录部分 | -| `Containers::String GetRelativePath() const` | 获取相对路径 | - -### GUID 转换 - -| 方法 | 描述 | -|------|------| -| `ResourceGUID ToGUID() const` | 将路径转换为 GUID | - -### 扩展名检查 - -| 方法 | 描述 | -|------|------| -| `bool HasExtension(const char* ext) const` | 检查是否具有指定扩展名 | -| `bool HasAnyExtension(const char* const* extensions, Core::uint32 count) const` | 检查是否具有任意指定扩展名 | - -### 状态 - -| 方法 | 描述 | -|------|------| -| `bool IsValid() const` | 检查路径是否有效(非空) | -| `const Containers::String& GetPath() const` | 获取原始路径字符串 | -| `void SetPath(const Containers::String& path)` | 设置路径字符串 | - -## 使用示例 - -```cpp -ResourcePath path("textures/player.png"); - -// 路径解析 -Containers::String ext = path.GetExtension(); // ".png" -Containers::String name = path.GetFileName(); // "player.png" -Containers::String dir = path.GetDirectory(); // "textures" - -// 扩展名检查 -if (path.HasExtension(".png") || path.HasExtension(".jpg")) { - // 是图像文件 -} - -// 转换为 GUID -ResourceGUID guid = path.ToGUID(); - -// 在 HashMap 中作为键使用 -Containers::HashMap> textures; -``` - -## 相关文档 - -- [ResourceTypes](../resourcetypes/resourcetypes.md) - 资源类型定义 -- [ResourceManager](../resource-manager/resource-manager.md) - 资源管理器 -- [Resources 总览](../resources.md) - 返回模块总览 diff --git a/docs/api/resources/resourcepath/setpath.md b/docs/api/resources/resourcepath/setpath.md deleted file mode 100644 index 1a037660..00000000 --- a/docs/api/resources/resourcepath/setpath.md +++ /dev/null @@ -1,29 +0,0 @@ -# ResourcePath::SetPath - -```cpp -void SetPath(const Containers::String& path) -``` - -设置路径字符串。 - -**详细描述:** - -更新内部存储的路径字符串。 - -**参数:** -- `path` - 新的路径字符串 - -**复杂度:** O(n),n 为路径长度 - -**示例:** - -```cpp -ResourcePath path; -path.SetPath("textures/player.png"); -Containers::String name = path.GetFileName(); // "player.png" -``` - -## 相关文档 - -- [ResourcePath 总览](resourcepath.md) - 返回类总览 -- [GetPath](getpath.md) - 获取路径 diff --git a/docs/api/resources/resourcepath/toguid.md b/docs/api/resources/resourcepath/toguid.md deleted file mode 100644 index f0864085..00000000 --- a/docs/api/resources/resourcepath/toguid.md +++ /dev/null @@ -1,30 +0,0 @@ -# ResourcePath::ToGUID - -```cpp -ResourceGUID ToGUID() const -``` - -将路径转换为 GUID。 - -**详细描述:** - -通过 `ResourceGUID::Generate` 方法根据路径字符串生成唯一的资源标识符。 - -**返回:** `ResourceGUID`,基于路径生成的全局唯一标识符 - -**复杂度:** O(n),取决于 `ResourceGUID::Generate` 实现 - -**示例:** - -```cpp -ResourcePath path("textures/player.png"); -ResourceGUID guid = path.ToGUID(); - -// GUID 可用于资源查找、缓存键等 -ResourceHandle tex = ResourceManager::Get().Find(guid); -``` - -## 相关文档 - -- [ResourcePath 总览](resourcepath.md) - 返回类总览 -- [ResourceTypes](../resourcetypes/resourcetypes.md) - 资源类型定义 diff --git a/docs/api/resources/resources.md b/docs/api/resources/resources.md deleted file mode 100644 index 5b86a9fa..00000000 --- a/docs/api/resources/resources.md +++ /dev/null @@ -1,97 +0,0 @@ -# Resources 模块概览 - -**命名空间**: `XCEngine::Resources` - -**类型**: `module` - -**头文件**: `XCEngine/Resources/Resources.h` - -**描述**: XCEngine 的资源管理系统,提供资源的异步加载、缓存和依赖管理。 - -## 概述 - -Resources 模块提供了一套完整的资源管理解决方案,支持同步和异步加载、资源缓存、依赖图管理等功能。 - -## 模块内容 - -### 核心组件 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [IResource](iresource/iresource.md) | `IResource.h` | 资源基类 | -| [ResourceHandle](resourcehandle.md) | `ResourceHandle.h` | 资源句柄模板 | -| [IResourceLoader](iloader/iloader.md) | `IResourceLoader.h` | 资源加载器接口 | -| [ResourceManager](resource-manager/resource-manager.md) | `ResourceManager.h` | 资源管理器 | -| [ResourceCache](resourcecache.md) | `ResourceCache.h` | 资源缓存 | -| [AsyncLoader](asyncloader/asyncloader.md) | `AsyncLoader.h` | 异步加载器 | -| [ResourceDependencyGraph](resource-dependency-graph/index.md) | `ResourceDependencyGraph.h` | 依赖图 | -| [ResourceTypes](resourcetypes/resourcetypes.md) | `ResourceTypes.h` | 资源类型定义 | -| [ResourcePath](resourcepath/resourcepath.md) | `ResourcePath.h` | 资源路径封装 | -| [ResourceFileSystem](resource-file-system/index.md) | `ResourceFileSystem.h` | 虚拟文件系统 | -| [ImportSettings](importsettings/importsettings.md) | `ImportSettings.h` | 导入设置基类 | - -### 文件与打包 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [FileArchive](filearchive/filearchive.md) | `FileArchive.h` | 文件归档读取 | -| [ResourcePackage](resource-package/index.md) | `ResourcePackage.h` | 资源包打包/读取 | - -### 具体资源类型 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [Texture](texture/texture.md) | `Texture.h` | 纹理资源 | -| [Mesh](mesh/mesh.md) | `Mesh.h` | 网格资源 | -| [Material](material/material.md) | `Material.h` | 材质资源 | -| [Shader](shader/shader.md) | `Shader.h` | 着色器资源 | -| [AudioClip](audioclip/audioclip.md) | `AudioClip.h` | 音频资源 | - -## 资源类型 - -| 类型 | 描述 | -|------|------| -| `Texture` | 纹理资源 | -| `Mesh` | 网格/模型资源 | -| `Material` | 材质资源 | -| `Shader` | 着色器资源 | -| `AudioClip` | 音频资源 | -| `Binary` | 二进制数据 | -| `AnimationClip` | 动画片段 | -| `Skeleton` | 骨骼 | -| `Font` | 字体 | -| `ParticleSystem` | 粒子系统 | -| `Scene` | 场景 | -| `Prefab` | 预制体 | - -## 使用示例 - -```cpp -#include - -// 初始化资源管理器 -ResourceManager::Get().Initialize(); -ResourceManager::Get().SetResourceRoot("resources/"); - -// 同步加载资源 -ResourceHandle tex = ResourceManager::Get().Load("textures/player.png"); -ResourceHandle mesh = ResourceManager::Get().Load("models/player.fbx"); -ResourceHandle mat = ResourceManager::Get().Load("materials/player.mat"); - -// 异步加载 -ResourceManager::Get().LoadAsync("textures/terrain.png", ResourceType::Texture, - [](LoadResult result) { - if (result.success) { - ResourceHandle tex(result.resource); - // 加载完成回调 - } - }); - -// 释放资源 -tex.Reset(); -mesh.Reset(); -``` - -## 相关文档 - -- [RHI 模块](../rhi/rhi.md) - GPU 资源创建 diff --git a/docs/api/resources/resourcetypes/generate.md b/docs/api/resources/resourcetypes/generate.md deleted file mode 100644 index 23bfc1ad..00000000 --- a/docs/api/resources/resourcetypes/generate.md +++ /dev/null @@ -1,35 +0,0 @@ -# ResourceGUID::Generate - -```cpp -static ResourceGUID Generate(const char* path) -static ResourceGUID Generate(const Containers::String& path) -``` - -从资源路径生成唯一的全局标识符。内部使用 FNV-1a 哈希算法将路径字符串转换为唯一的 64 位整数。 - -**参数:** -- `path` - 资源路径(相对路径或绝对路径) - -**返回:** 生成的 `ResourceGUID`,其 `value` 为哈希结果 - -**算法细节:** -- 采用 FNV-1a 哈希算法 -- 初始哈希值:14695981039346656037 (64位 FNV_offset_basis) -- 乘数:1099511628211 (64位 FNV_prime) -- 时间复杂度:O(n),n 为路径字符串长度 - -**示例:** - -```cpp -ResourceGUID guid = ResourceGUID::Generate("textures/player.png"); -ResourceGUID guid2 = ResourceGUID::Generate("models/player.fbx"); - -// 不同路径产生不同 GUID -if (guid != guid2) { - // 路径不同,GUID 必然不同 -} -``` - -## 相关文档 - -- [ResourceTypes 总览](resourcetypes.md) - 返回类总览 diff --git a/docs/api/resources/resourcetypes/getresourcetypename.md b/docs/api/resources/resourcetypes/getresourcetypename.md deleted file mode 100644 index 08db87ec..00000000 --- a/docs/api/resources/resourcetypes/getresourcetypename.md +++ /dev/null @@ -1,26 +0,0 @@ -# GetResourceTypeName - -```cpp -constexpr const char* GetResourceTypeName(ResourceType type) -``` - -获取资源类型的字符串名称。该函数是 `constexpr`,在编译时即可确定返回值。通过 switch 语句返回对应类型名的常量字符串指针。 - -**参数:** -- `type` - `ResourceType` 枚举值 - -**返回:** 类型名字符串常量指针(如 `"Texture"`、`"Mesh"` 等),未识别的类型返回 `"Unknown"` - -**复杂度:** O(1) - -**示例:** - -```cpp -const char* name = GetResourceTypeName(ResourceType::Texture); // "Texture" -const char* name2 = GetResourceTypeName(ResourceType::Shader); // "Shader" -const char* name3 = GetResourceTypeName(ResourceType::Unknown); // "Unknown" -``` - -## 相关文档 - -- [ResourceTypes 总览](resourcetypes.md) - 返回类总览 diff --git a/docs/api/resources/resourcetypes/resourcetypes.md b/docs/api/resources/resourcetypes/resourcetypes.md deleted file mode 100644 index 777e6fe8..00000000 --- a/docs/api/resources/resourcetypes/resourcetypes.md +++ /dev/null @@ -1,183 +0,0 @@ -# ResourceTypes - -**命名空间**: `XCEngine::Resources` - -**类型**: 类/结构体/枚举定义 - -**描述**: 资源模块的基础类型定义,提供资源类型枚举、全局唯一标识符(GUID)以及模板类型查询功能。 - -## 概述 - -`ResourceTypes` 模块定义了资源系统中使用的基础类型,包括: -- `ResourceType` 枚举:标识资源的具体类型 -- `ResourceGUID` 结构体:用于唯一标识每个资源的 64 位全局唯一标识符 -- `GetResourceType()` 模板特化:在编译时获取类型对应的资源类型 -- `GetResourceTypeName()` 函数:获取资源类型的字符串表示 - ---- - -## 公共类型 - -### ResourceType - -资源类型枚举。 - -| 值 | 描述 | -|----|------| -| `Unknown` | 未知类型,默认值 | -| `Texture` | 纹理资源 | -| `Mesh` | 网格/模型资源 | -| `Material` | 材质资源 | -| `Shader` | 着色器资源 | -| `AudioClip` | 音频资源 | -| `Binary` | 二进制数据 | -| `AnimationClip` | 动画片段 | -| `Skeleton` | 骨骼 | -| `Font` | 字体 | -| `ParticleSystem` | 粒子系统 | -| `Scene` | 场景 | -| `Prefab` | 预制体 | - ---- - -### ResourceGUID - -全局唯一标识符结构体,用于唯一标识每个资源。采用 64 位无符号整数存储,内部通过 FNV-1a 哈希算法从资源路径生成。 - -```cpp -struct ResourceGUID { - Core::uint64 value; - - ResourceGUID(); - explicit ResourceGUID(Core::uint64 v); - - bool IsValid() const; - bool operator==(const ResourceGUID& other) const; - bool operator!=(const ResourceGUID& other) const; - - static ResourceGUID Generate(const char* path); - static ResourceGUID Generate(const Containers::String& path); - - Containers::String ToString() const; -}; -``` - -#### 构造方法 - -| 方法 | 描述 | -|------|------| -| `ResourceGUID()` | 默认构造,value 初始化为 0 | -| `explicit ResourceGUID(Core::uint64 v)` | 从 64 位整数构造 | - -#### 公共方法 - -| 方法 | 描述 | -|------|------| -| `bool IsValid() const` | 检查 GUID 是否有效(value != 0) | -| `Containers::String ToString() const` | 转换为十六进制字符串表示 | -| `bool operator==(const ResourceGUID& other) const` | 判断相等 | -| `bool operator!=(const ResourceGUID& other) const` | 判断不等 | - -#### 静态方法 - -| 方法 | 描述 | -|------|------| -| `static ResourceGUID Generate(const char* path)` | 从 C 字符串路径生成唯一 GUID(使用 FNV-1a 哈希算法) | -| `static ResourceGUID Generate(const Containers::String& path)` | 从 String 路径生成唯一 GUID | - -#### 哈希支持 - -`ResourceGUID` 特化了 `std::hash`,可作为 `HashMap`、`HashSet` 的键使用: - -```cpp -namespace std { -template<> -struct hash { - size_t operator()(const XCEngine::Resources::ResourceGUID& guid) const noexcept { - return static_cast(guid.value); - } -}; -} -``` - ---- - -## 模板特化 - -### GetResourceType - -模板特化函数,用于在编译时获取类型对应的 `ResourceType`。 - -```cpp -template -ResourceType GetResourceType(); - -template<> inline ResourceType GetResourceType() { return ResourceType::Texture; } -template<> inline ResourceType GetResourceType() { return ResourceType::Mesh; } -template<> inline ResourceType GetResourceType() { return ResourceType::Material; } -template<> inline ResourceType GetResourceType() { return ResourceType::Shader; } -template<> inline ResourceType GetResourceType() { return ResourceType::AudioClip; } -template<> inline ResourceType GetResourceType() { return ResourceType::Binary; } -``` - -| 类型 T | 返回值 | -|--------|--------| -| `Texture` | `ResourceType::Texture` | -| `Mesh` | `ResourceType::Mesh` | -| `Material` | `ResourceType::Material` | -| `Shader` | `ResourceType::Shader` | -| `AudioClip` | `ResourceType::AudioClip` | -| `BinaryResource` | `ResourceType::Binary` | - ---- - -## 辅助函数 - -| 函数 | 描述 | -|------|------| -| `constexpr const char* GetResourceTypeName(ResourceType type)` | 获取资源类型的字符串名称 | -| `ResourceGUID MakeResourceGUID(const char* path)` | 从路径生成 GUID 的简写函数 | - ---- - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Resources; - -// 创建 ResourceGUID -ResourceGUID texGuid = ResourceGUID::Generate("textures/player.png"); -ResourceGUID meshGuid = ResourceGUID::Generate("models/player.fbx"); - -// GUID 比较 -if (texGuid == meshGuid) { - // 相同资源 -} - -// 有效性检查 -if (texGuid.IsValid()) { - // GUID 有效(value != 0) -} - -// 转换为字符串 -Containers::String guidStr = texGuid.ToString(); // "0000163a5b4c8d9f" - -// 在 HashMap 中作为键使用 -Containers::HashMap cache; -cache[texGuid] = texture; - -// 获取类型名称 -const char* name = GetResourceTypeName(ResourceType::Texture); // "Texture" - -// 使用模板获取类型(编译时) -ResourceType type = GetResourceType(); // ResourceType::Texture -``` - ---- - -## 相关文档 - -- [IResource](../iresource/iresource.md) - 资源基类 -- [Resources 总览](../resources.md) - 返回模块总览 diff --git a/docs/api/resources/shader-loader/index.md b/docs/api/resources/shader-loader/index.md deleted file mode 100644 index f3e8381e..00000000 --- a/docs/api/resources/shader-loader/index.md +++ /dev/null @@ -1,59 +0,0 @@ -# ShaderLoader - -## 命名空间 - -`XCEngine::Resources` - -## 类型 - -类 (Class) - -## 描述 - -着色器资源加载器,负责从磁盘加载 `.vert`、`.frag`、`.geom`、`.comp`、`.glsl`、`.hlsl` 和 `.shader` 格式的着色器资源文件。 - -## 概述 - -`ShaderLoader` 继承自 `IResourceLoader`,实现了着色器资源的加载功能。它支持多种图形 API 的着色器格式,包括 GLSL(OpenGL/Vulkan)和 HLSL(DirectX)。加载过程中会根据文件扩展名自动检测着色器类型和语言,创建 `Shader` 对象并设置相应的元数据。当前实现专注于文件读取和基础资源创建,着色器编译和实际绑定由渲染层完成。 - -## 公共方法 - -| 方法 | 签名 | 描述 | -|------|------|------| -| [ShaderLoader](methods/constructor.md) | `ShaderLoader()` | 默认构造函数 | -| [~ShaderLoader](methods/destructor.md) | `virtual ~ShaderLoader()` | 析构函数 | -| [GetResourceType](methods/get-resource-type.md) | `ResourceType GetResourceType() const` | 返回资源类型为 Shader | -| [GetSupportedExtensions](methods/get-supported-extensions.md) | `Array GetSupportedExtensions() const` | 返回支持的扩展名列表 | -| [CanLoad](methods/can-load.md) | `bool CanLoad(const String& path) const` | 检查给定路径是否可被加载 | -| [Load](methods/load.md) | `LoadResult Load(const String& path, const ImportSettings* settings = nullptr)` | 加载指定路径的着色器资源 | -| [GetDefaultSettings](methods/get-default-settings.md) | `ImportSettings* GetDefaultSettings() const` | 返回默认导入设置 | - -## 使用示例 - -```cpp -#include "Resources/ShaderLoader.h" -#include "Resources/ResourceManager.h" - -using namespace XCEngine::Resources; - -// 通过 ResourceManager 加载着色器 -auto shaderHandle = ResourceManager::Get().Load("assets/shaders/pbr.vert"); -if (shaderHandle.IsValid()) { - Shader* shader = shaderHandle.Get(); - // 使用着色器... -} - -// 直接使用 ShaderLoader -ShaderLoader loader; -LoadResult result = loader.Load("assets/shaders/pbr.frag"); -if (result.IsSuccess()) { - Shader* shader = static_cast(result.GetResource()); - // 使用着色器... -} -``` - -## 相关文档 - -- [Shader](../shader/shader.md) -- [IResourceLoader](../iloader/iloader.md) -- [ResourceManager](../resource-manager/resource-manager.md) diff --git a/docs/api/resources/shader-loader/methods/can-load.md b/docs/api/resources/shader-loader/methods/can-load.md deleted file mode 100644 index 713b3139..00000000 --- a/docs/api/resources/shader-loader/methods/can-load.md +++ /dev/null @@ -1,36 +0,0 @@ -# ShaderLoader::CanLoad - -## 方法签名 - -```cpp -bool CanLoad(const Containers::String& path) const override; -``` - -## 详细描述 - -检查此加载器是否能加载指定路径的着色器文件。该方法通过获取文件扩展名并与支持列表进行匹配来判断。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| path | `const Containers::String&` | 文件路径 | - -## 返回值 - -`bool` - 如果扩展名在支持列表中则返回 `true`,否则返回 `false` - -## 示例 - -```cpp -#include "Resources/ShaderLoader.h" - -using namespace XCEngine::Resources; - -ShaderLoader loader; - -bool canLoad1 = loader.CanLoad("shaders/pbr.vert"); // true -bool canLoad2 = loader.CanLoad("shaders/pbr.frag"); // true -bool canLoad3 = loader.CanLoad("shaders/pbr.hlsl"); // true -bool canLoad4 = loader.CanLoad("textures/wood.png"); // false -``` diff --git a/docs/api/resources/shader-loader/methods/constructor.md b/docs/api/resources/shader-loader/methods/constructor.md deleted file mode 100644 index a4d2f314..00000000 --- a/docs/api/resources/shader-loader/methods/constructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# ShaderLoader::ShaderLoader - -## 方法签名 - -```cpp -ShaderLoader(); -``` - -## 详细描述 - -默认构造函数,使用默认行为构造 `ShaderLoader` 对象。该构造函数不执行任何特殊初始化操作。 - -## 参数 - -无 - -## 返回值 - -无 - -## 示例 - -```cpp -#include "Resources/ShaderLoader.h" - -using namespace XCEngine::Resources; - -ShaderLoader loader; -``` diff --git a/docs/api/resources/shader-loader/methods/destructor.md b/docs/api/resources/shader-loader/methods/destructor.md deleted file mode 100644 index 0985500b..00000000 --- a/docs/api/resources/shader-loader/methods/destructor.md +++ /dev/null @@ -1,33 +0,0 @@ -# ShaderLoader::~ShaderLoader - -## 方法签名 - -```cpp -virtual ~ShaderLoader() override; -``` - -## 详细描述 - -析构函数,用于销毁 `ShaderLoader` 对象。该析构函数不执行任何特殊清理操作。 - -## 参数 - -无 - -## 示例 - -```cpp -#include "Resources/ShaderLoader.h" - -using namespace XCEngine::Resources; - -{ - ShaderLoader loader; - // 使用 loader... -} -// loader 在此自动销毁 -``` - -## 相关文档 - -- [ShaderLoader 总览](../../../rhi/d3d12/fence/index.md) - 返回类总览 diff --git a/docs/api/resources/shader-loader/methods/get-default-settings.md b/docs/api/resources/shader-loader/methods/get-default-settings.md deleted file mode 100644 index bd096f71..00000000 --- a/docs/api/resources/shader-loader/methods/get-default-settings.md +++ /dev/null @@ -1,31 +0,0 @@ -# ShaderLoader::GetDefaultSettings - -## 方法签名 - -```cpp -ImportSettings* GetDefaultSettings() const override; -``` - -## 详细描述 - -返回默认的导入设置。当前实现返回 `nullptr`,表示没有特定的默认设置。 - -## 参数 - -无 - -## 返回值 - -`ImportSettings*` - 始终返回 `nullptr` - -## 示例 - -```cpp -#include "Resources/ShaderLoader.h" - -using namespace XCEngine::Resources; - -ShaderLoader loader; -ImportSettings* settings = loader.GetDefaultSettings(); -// settings == nullptr -``` diff --git a/docs/api/resources/shader-loader/methods/get-resource-type.md b/docs/api/resources/shader-loader/methods/get-resource-type.md deleted file mode 100644 index f6c16124..00000000 --- a/docs/api/resources/shader-loader/methods/get-resource-type.md +++ /dev/null @@ -1,31 +0,0 @@ -# ShaderLoader::GetResourceType - -## 方法签名 - -```cpp -ResourceType GetResourceType() const override; -``` - -## 详细描述 - -返回此加载器支持的资源类型。该方法继承自 `IResourceLoader` 接口,返回值为 `ResourceType::Shader`。 - -## 参数 - -无 - -## 返回值 - -`ResourceType` - 资源类型枚举值,当前返回 `ResourceType::Shader` - -## 示例 - -```cpp -#include "Resources/ShaderLoader.h" - -using namespace XCEngine::Resources; - -ShaderLoader loader; -ResourceType type = loader.GetResourceType(); -// type == ResourceType::Shader -``` diff --git a/docs/api/resources/shader-loader/methods/get-supported-extensions.md b/docs/api/resources/shader-loader/methods/get-supported-extensions.md deleted file mode 100644 index f86d1b01..00000000 --- a/docs/api/resources/shader-loader/methods/get-supported-extensions.md +++ /dev/null @@ -1,44 +0,0 @@ -# ShaderLoader::GetSupportedExtensions - -## 方法签名 - -```cpp -Containers::Array GetSupportedExtensions() const override; -``` - -## 详细描述 - -返回此加载器支持的文件扩展名列表。支持以下格式: - -| 扩展名 | 描述 | -|--------|------| -| `.vert` | 顶点着色器 (Vertex Shader) | -| `.frag` | 片段着色器 (Fragment/Pixel Shader) | -| `.geom` | 几何着色器 (Geometry Shader) | -| `.comp` | 计算着色器 (Compute Shader) | -| `.glsl` | 通用 GLSL 着色器 | -| `.hlsl` | HLSL 着色器 | -| `.shader` | 通用着色器文件 | - -## 参数 - -无 - -## 返回值 - -`Containers::Array` - 支持的文件扩展名数组 - -## 示例 - -```cpp -#include "Resources/ShaderLoader.h" - -using namespace XCEngine::Resources; - -ShaderLoader loader; -auto extensions = loader.GetSupportedExtensions(); - -for (const auto& ext : extensions) { - printf("Supported extension: %s\n", ext.CStr()); -} -``` diff --git a/docs/api/resources/shader-loader/methods/load.md b/docs/api/resources/shader-loader/methods/load.md deleted file mode 100644 index b54b86ef..00000000 --- a/docs/api/resources/shader-loader/methods/load.md +++ /dev/null @@ -1,74 +0,0 @@ -# ShaderLoader::Load - -## 方法签名 - -```cpp -LoadResult Load(const Containers::String& path, const ImportSettings* settings = nullptr) override; -``` - -## 详细描述 - -加载指定路径的着色器资源文件。加载过程包括: - -1. 读取文件数据 -2. 将二进制数据转换为字符串形式的着色器源代码 -3. 创建 `Shader` 对象并设置基本信息(路径、名称、GUID) -4. 根据文件扩展名检测着色器语言(HLSL 或 GLSL) -5. 根据文件扩展名检测着色器类型(顶点、片段、几何、计算) -6. 设置着色器源代码和有效性标志 -7. 计算并设置资源的内存占用 - -**语言检测规则:** -- `.hlsl` 扩展名 → `ShaderLanguage::HLSL` -- 其他扩展名 → `ShaderLanguage::GLSL` - -**类型检测规则:** -- `.vert` → `ShaderType::Vertex` -- `.frag` → `ShaderType::Fragment` -- `.geom` → `ShaderType::Geometry` -- `.comp` → `ShaderType::Compute` -- 其他扩展名 → `ShaderType::Fragment`(默认) - -## 参数 - -| 参数 | 类型 | 默认值 | 描述 | -|------|------|--------|------| -| path | `const Containers::String&` | - | 着色器文件路径 | -| settings | `const ImportSettings*` | `nullptr` | 导入设置(当前未使用) | - -## 返回值 - -`LoadResult` - 加载结果对象,包含成功加载的 `Shader` 指针或错误信息 - -## 示例 - -```cpp -#include "Resources/ShaderLoader.h" - -using namespace XCEngine::Resources; - -ShaderLoader loader; - -// 加载顶点着色器 -LoadResult vertResult = loader.Load("assets/shaders/pbr.vert"); -if (vertResult.IsSuccess()) { - Shader* vertShader = static_cast(vertResult.GetResource()); - printf("Loaded vertex shader: %s\n", vertShader->m_name.CStr()); -} - -// 加载片段着色器 -LoadResult fragResult = loader.Load("assets/shaders/pbr.frag"); -if (fragResult.IsSuccess()) { - Shader* fragShader = static_cast(fragResult.GetResource()); - printf("Loaded fragment shader: %s\n", fragShader->m_name.CStr()); -} else { - printf("Failed to load fragment shader: %s\n", fragResult.GetError().CStr()); -} - -// 加载 HLSL 着色器 -LoadResult hlslResult = loader.Load("assets/shaders/vertex.hlsl"); -if (hlslResult.IsSuccess()) { - Shader* hlslShader = static_cast(hlslResult.GetResource()); - // HLSL 着色器... -} -``` diff --git a/docs/api/resources/shader/addattribute.md b/docs/api/resources/shader/addattribute.md deleted file mode 100644 index 2f2ad378..00000000 --- a/docs/api/resources/shader/addattribute.md +++ /dev/null @@ -1,31 +0,0 @@ -# Shader::AddAttribute - -```cpp -void AddAttribute(const ShaderAttribute& attribute) -``` - -添加顶点属性描述。 - -**参数:** -- `attribute` - 属性描述结构体 - -**返回:** 无 - -**线程安全:** ❌ 非线程安全 - -**复杂度:** Amortized O(1) - -**示例:** - -```cpp -ShaderAttribute attr; -attr.name = "position"; -attr.location = 0; -attr.size = sizeof(float) * 3; -attr.type = 0; -vs->AddAttribute(attr); -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 diff --git a/docs/api/resources/shader/adduniform.md b/docs/api/resources/shader/adduniform.md deleted file mode 100644 index 6e4bba8b..00000000 --- a/docs/api/resources/shader/adduniform.md +++ /dev/null @@ -1,31 +0,0 @@ -# Shader::AddUniform - -```cpp -void AddUniform(const ShaderUniform& uniform) -``` - -添加 Uniform 变量描述。 - -**参数:** -- `uniform` - Uniform 描述结构体 - -**返回:** 无 - -**线程安全:** ❌ 非线程安全 - -**复杂度:** Amortized O(1) - -**示例:** - -```cpp -ShaderUniform uniform; -uniform.name = "modelMatrix"; -uniform.location = 0; -uniform.size = sizeof(float) * 16; -uniform.type = 0; -vs->AddUniform(uniform); -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 diff --git a/docs/api/resources/shader/constructor.md b/docs/api/resources/shader/constructor.md deleted file mode 100644 index 1fb4ea52..00000000 --- a/docs/api/resources/shader/constructor.md +++ /dev/null @@ -1,25 +0,0 @@ -# Shader::Shader - -```cpp -Shader() -``` - -默认构造函数,创建一个无效的 Shader 对象。 - -**返回:** 无 - -**线程安全:** ❌ 非线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -Shader vs; -vs.SetShaderType(ShaderType::Vertex); -vs.SetShaderLanguage(ShaderLanguage::GLSL); -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 diff --git a/docs/api/resources/shader/destructor.md b/docs/api/resources/shader/destructor.md deleted file mode 100644 index 5b5b1efd..00000000 --- a/docs/api/resources/shader/destructor.md +++ /dev/null @@ -1,27 +0,0 @@ -# Shader::~Shader - -```cpp -virtual ~Shader() -``` - -析构函数,释放 Shader 对象持有的所有资源。 - -**返回:** 无 - -**线程安全:** ❌ 非线程安全 - -**复杂度:** O(1) - 平凡析构函数 - -**示例:** - -```cpp -{ - Shader vs; - vs.SetShaderType(ShaderType::Vertex); - // ... -} // vs 超出作用域,自动调用析构函数 -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 diff --git a/docs/api/resources/shader/getattributes.md b/docs/api/resources/shader/getattributes.md deleted file mode 100644 index 6056fb06..00000000 --- a/docs/api/resources/shader/getattributes.md +++ /dev/null @@ -1,27 +0,0 @@ -# Shader::GetAttributes - -```cpp -const Containers::Array& GetAttributes() const -``` - -获取着色器的顶点属性列表。 - -**返回:** `const Containers::Array&` - 属性列表的引用 - -**线程安全:** ❌ 非线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle shader = ResourceManager::Get().Load("shaders/vertex.glsl"); -const Containers::Array& attrs = shader->GetAttributes(); -for (const auto& attr : attrs) { - // 处理每个 attribute -} -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 diff --git a/docs/api/resources/shader/getcompiledbinary.md b/docs/api/resources/shader/getcompiledbinary.md deleted file mode 100644 index aa86325e..00000000 --- a/docs/api/resources/shader/getcompiledbinary.md +++ /dev/null @@ -1,24 +0,0 @@ -# Shader::GetCompiledBinary - -```cpp -const Containers::Array& GetCompiledBinary() const -``` - -获取编译后的着色器二进制数据。 - -**返回:** `const Containers::Array&` - 编译后二进制数据的引用 - -**线程安全:** ❌ 非线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle shader = ResourceManager::Get().Load("shaders/vertex.glsl"); -const Containers::Array& binary = shader->GetCompiledBinary(); -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 diff --git a/docs/api/resources/shader/getguid.md b/docs/api/resources/shader/getguid.md deleted file mode 100644 index 434641ee..00000000 --- a/docs/api/resources/shader/getguid.md +++ /dev/null @@ -1,25 +0,0 @@ -# Shader::GetGUID - -```cpp -ResourceGUID GetGUID() const override -``` - -获取着色器资源的全局唯一标识符。 - -**返回:** `ResourceGUID` - 全局唯一标识符 - -**线程安全:** ✅ 线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle shader = ResourceManager::Get().Load("shaders/vertex.glsl"); -ResourceGUID guid = shader->GetGUID(); -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 -- [IResource](../iresource/iresource.md) - 资源基类 diff --git a/docs/api/resources/shader/getmemorysize.md b/docs/api/resources/shader/getmemorysize.md deleted file mode 100644 index 482a3b29..00000000 --- a/docs/api/resources/shader/getmemorysize.md +++ /dev/null @@ -1,25 +0,0 @@ -# Shader::GetMemorySize - -```cpp -size_t GetMemorySize() const override -``` - -获取着色器资源的内存大小。 - -**返回:** `size_t` - 内存大小(字节) - -**线程安全:** ✅ 线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle shader = ResourceManager::Get().Load("shaders/vertex.glsl"); -size_t memSize = shader->GetMemorySize(); -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 -- [IResource](../iresource/iresource.md) - 资源基类 diff --git a/docs/api/resources/shader/getname.md b/docs/api/resources/shader/getname.md deleted file mode 100644 index 961a1836..00000000 --- a/docs/api/resources/shader/getname.md +++ /dev/null @@ -1,25 +0,0 @@ -# Shader::GetName - -```cpp -const Containers::String& GetName() const override -``` - -获取着色器资源名称。 - -**返回:** `const Containers::String&` - 着色器名称的引用 - -**线程安全:** ✅ 线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle shader = ResourceManager::Get().Load("shaders/vertex.glsl"); -Containers::String name = shader->GetName(); -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 -- [IResource](../iresource/iresource.md) - 资源基类 diff --git a/docs/api/resources/shader/getpath.md b/docs/api/resources/shader/getpath.md deleted file mode 100644 index 7268ac18..00000000 --- a/docs/api/resources/shader/getpath.md +++ /dev/null @@ -1,25 +0,0 @@ -# Shader::GetPath - -```cpp -const Containers::String& GetPath() const override -``` - -获取着色器资源路径。 - -**返回:** `const Containers::String&` - 着色器路径的引用 - -**线程安全:** ✅ 线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle shader = ResourceManager::Get().Load("shaders/vertex.glsl"); -Containers::String path = shader->GetPath(); -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 -- [IResource](../iresource/iresource.md) - 资源基类 diff --git a/docs/api/resources/shader/getrhi.md b/docs/api/resources/shader/getrhi.md deleted file mode 100644 index 0b08ba55..00000000 --- a/docs/api/resources/shader/getrhi.md +++ /dev/null @@ -1,28 +0,0 @@ -# Shader::GetRHIResource - -```cpp -class IRHIShader* GetRHIResource() const -``` - -获取 RHI 着色器资源指针。 - -**返回:** `class IRHIShader*` - RHI 着色器资源指针,可能为 `nullptr` - -**线程安全:** ❌ 非线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle shader = ResourceManager::Get().Load("shaders/vertex.glsl"); -class IRHIShader* rhiShader = shader->GetRHIResource(); -if (rhiShader != nullptr) { - // RHI 着色器已设置 -} -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 -- [RHIShader](../../rhi/shader/shader.md) - RHI 着色器接口 diff --git a/docs/api/resources/shader/getshaderlanguage.md b/docs/api/resources/shader/getshaderlanguage.md deleted file mode 100644 index 9cac45f0..00000000 --- a/docs/api/resources/shader/getshaderlanguage.md +++ /dev/null @@ -1,27 +0,0 @@ -# Shader::GetShaderLanguage - -```cpp -ShaderLanguage GetShaderLanguage() const -``` - -获取着色器语言。 - -**返回:** `ShaderLanguage` - 着色器语言枚举值 - -**线程安全:** ❌ 非线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle shader = ResourceManager::Get().Load("shaders/vertex.glsl"); -ShaderLanguage lang = shader->GetShaderLanguage(); -if (lang == ShaderLanguage::GLSL) { - // 这是 GLSL 着色器 -} -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 diff --git a/docs/api/resources/shader/getshadertype.md b/docs/api/resources/shader/getshadertype.md deleted file mode 100644 index 3e337905..00000000 --- a/docs/api/resources/shader/getshadertype.md +++ /dev/null @@ -1,27 +0,0 @@ -# Shader::GetShaderType - -```cpp -ShaderType GetShaderType() const -``` - -获取着色器类型。 - -**返回:** `ShaderType` - 着色器类型枚举值 - -**线程安全:** ❌ 非线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle shader = ResourceManager::Get().Load("shaders/vertex.glsl"); -ShaderType type = shader->GetShaderType(); -if (type == ShaderType::Vertex) { - // 这是一个顶点着色器 -} -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 diff --git a/docs/api/resources/shader/getsourcecode.md b/docs/api/resources/shader/getsourcecode.md deleted file mode 100644 index 0675dd71..00000000 --- a/docs/api/resources/shader/getsourcecode.md +++ /dev/null @@ -1,24 +0,0 @@ -# Shader::GetSourceCode - -```cpp -const Containers::String& GetSourceCode() const -``` - -获取着色器源码。 - -**返回:** `const Containers::String&` - 着色器源码的引用 - -**线程安全:** ❌ 非线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle shader = ResourceManager::Get().Load("shaders/vertex.glsl"); -const Containers::String& source = shader->GetSourceCode(); -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 diff --git a/docs/api/resources/shader/gettype.md b/docs/api/resources/shader/gettype.md deleted file mode 100644 index 63b64102..00000000 --- a/docs/api/resources/shader/gettype.md +++ /dev/null @@ -1,27 +0,0 @@ -# Shader::GetType - -```cpp -ResourceType GetType() const override -``` - -返回资源类型为 `ResourceType::Shader`。 - -**返回:** `ResourceType` - 资源类型枚举值 `ResourceType::Shader` - -**线程安全:** ✅ 线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle shader = ResourceManager::Get().Load("shaders/vertex.glsl"); -if (shader->GetType() == ResourceType::Shader) { - // 这是一个着色器资源 -} -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 -- [IResource](../iresource/iresource.md) - 资源基类 diff --git a/docs/api/resources/shader/getuniforms.md b/docs/api/resources/shader/getuniforms.md deleted file mode 100644 index 2339495c..00000000 --- a/docs/api/resources/shader/getuniforms.md +++ /dev/null @@ -1,27 +0,0 @@ -# Shader::GetUniforms - -```cpp -const Containers::Array& GetUniforms() const -``` - -获取着色器的 Uniform 变量列表。 - -**返回:** `const Containers::Array&` - Uniform 列表的引用 - -**线程安全:** ❌ 非线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle shader = ResourceManager::Get().Load("shaders/vertex.glsl"); -const Containers::Array& uniforms = shader->GetUniforms(); -for (const auto& uniform : uniforms) { - // 处理每个 uniform -} -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 diff --git a/docs/api/resources/shader/isvalid.md b/docs/api/resources/shader/isvalid.md deleted file mode 100644 index 5a197c3e..00000000 --- a/docs/api/resources/shader/isvalid.md +++ /dev/null @@ -1,29 +0,0 @@ -# Shader::IsValid - -```cpp -bool IsValid() const override -``` - -检查着色器资源是否有效。 - -**返回:** `bool` - 资源有效返回 `true`,否则返回 `false` - -**线程安全:** ✅ 线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceHandle shader = ResourceManager::Get().Load("shaders/vertex.glsl"); -if (shader->IsValid()) { - // 着色器资源有效 -} else { - // 着色器资源无效 -} -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 -- [IResource](../iresource/iresource.md) - 资源基类 diff --git a/docs/api/resources/shader/release.md b/docs/api/resources/shader/release.md deleted file mode 100644 index fc2266c8..00000000 --- a/docs/api/resources/shader/release.md +++ /dev/null @@ -1,34 +0,0 @@ -# Shader::Release - -```cpp -void Release() -``` - -释放着色器持有的所有资源。 - -此方法继承自 `IResource` 接口。调用后: -- 清空源码字符串 (`m_sourceCode`) -- 清空编译后的二进制数据 (`m_compiledBinary`) -- 清空 Uniform 列表 (`m_uniforms`) -- 清空 Attribute 列表 (`m_attributes`) -- 释放 RHI 着色器资源指针 (`m_rhiResource`) -- 将 `m_isValid` 标记为 `false` - -**返回:** 无 - -**线程安全:** ❌ 非线程安全 - -**复杂度:** O(n) - 取决于列表中元素数量 - -**示例:** - -```cpp -// 使用完 shader 后释放 -ResourceHandle vs = ResourceManager::Get().Load("shaders/vertex.glsl"); -// ... 使用着色器 ... -vs->Release(); -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 diff --git a/docs/api/resources/shader/setbinary.md b/docs/api/resources/shader/setbinary.md deleted file mode 100644 index b1171074..00000000 --- a/docs/api/resources/shader/setbinary.md +++ /dev/null @@ -1,28 +0,0 @@ -# Shader::SetCompiledBinary - -```cpp -void SetCompiledBinary(const Containers::Array& binary) -``` - -设置编译后的着色器二进制数据。 - -**参数:** -- `binary` - 编译后的二进制数据数组 - -**返回:** 无 - -**线程安全:** ❌ 非线程安全 - -**复杂度:** O(n) - 复制二进制数据 - -**示例:** - -```cpp -// 假设 compiler 是外部着色器编译器 -Containers::Array compiledSpirv = compiler.Compile(sourceCode); -shader.SetCompiledBinary(compiledSpirv); -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 diff --git a/docs/api/resources/shader/setrhi.md b/docs/api/resources/shader/setrhi.md deleted file mode 100644 index c5eb9c70..00000000 --- a/docs/api/resources/shader/setrhi.md +++ /dev/null @@ -1,34 +0,0 @@ -# Shader::SetRHIResource - -```cpp -void SetRHIResource(class IRHIShader* resource) -``` - -设置 RHI 着色器资源指针。 - -**参数:** -- `resource` - RHI 着色器资源指针 - -**返回:** 无 - -**线程安全:** ❌ 非线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -// 创建 RHI 着色器资源 -RHIShaderDesc desc; -desc.type = RHIShaderType::Vertex; -desc.binary = compiledBinary; -class IRHIShader* rhiShader = RHIDevice::Get().CreateShader(desc); - -// 设置到 Shader 对象 -shader.SetRHIResource(rhiShader); -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 -- [RHIShader](../../rhi/shader/shader.md) - RHI 着色器接口 diff --git a/docs/api/resources/shader/setshaderlanguage.md b/docs/api/resources/shader/setshaderlanguage.md deleted file mode 100644 index 49e3a7f7..00000000 --- a/docs/api/resources/shader/setshaderlanguage.md +++ /dev/null @@ -1,28 +0,0 @@ -# Shader::SetShaderLanguage - -```cpp -void SetShaderLanguage(ShaderLanguage lang) -``` - -设置着色器语言。 - -**参数:** -- `lang` - 着色器语言枚举值 - -**返回:** 无 - -**线程安全:** ❌ 非线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -Shader vs; -vs.SetShaderLanguage(ShaderLanguage::GLSL); -vs.SetShaderLanguage(ShaderLanguage::HLSL); -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 diff --git a/docs/api/resources/shader/setshadertype.md b/docs/api/resources/shader/setshadertype.md deleted file mode 100644 index ef078a6d..00000000 --- a/docs/api/resources/shader/setshadertype.md +++ /dev/null @@ -1,28 +0,0 @@ -# Shader::SetShaderType - -```cpp -void SetShaderType(ShaderType type) -``` - -设置着色器类型。 - -**参数:** -- `type` - 着色器类型枚举值 - -**返回:** 无 - -**线程安全:** ❌ 非线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -Shader vs; -vs.SetShaderType(ShaderType::Vertex); -vs.SetShaderType(ShaderType::Fragment); -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 diff --git a/docs/api/resources/shader/setsourcecode.md b/docs/api/resources/shader/setsourcecode.md deleted file mode 100644 index dd99ff3a..00000000 --- a/docs/api/resources/shader/setsourcecode.md +++ /dev/null @@ -1,35 +0,0 @@ -# Shader::SetSourceCode - -```cpp -void SetSourceCode(const Containers::String& source) -``` - -设置着色器源码。 - -**参数:** -- `source` - 着色器源码字符串 - -**返回:** 无 - -**线程安全:** ❌ 非线程安全 - -**复杂度:** O(n) - 复制源码字符串 - -**示例:** - -```cpp -Shader vs; -vs.SetShaderType(ShaderType::Vertex); -vs.SetShaderLanguage(ShaderLanguage::GLSL); -vs.SetSourceCode(R"( -#version 450 -layout(location = 0) in vec3 aPosition; -void main() { - gl_Position = vec4(aPosition, 1.0); -} -)"); -``` - -## 相关文档 - -- [Shader 总览](shader.md) - 返回类总览 diff --git a/docs/api/resources/shader/shader.md b/docs/api/resources/shader/shader.md deleted file mode 100644 index 6cdbf584..00000000 --- a/docs/api/resources/shader/shader.md +++ /dev/null @@ -1,166 +0,0 @@ -# Shader - -**命名空间**: `XCEngine::Resources` - -**类型**: `class` - -**头文件**: `XCEngine/Resources/Shader/Shader.h` - -**描述**: 着色器资源类,管理着色器源码、编译后的二进制和 uniform/attribute 信息。 - -## 概述 - -`Shader` 是 XCEngine 中的着色器资源类,继承自 `IResource`。它管理着色器源码、编译后的二进制数据、着色器类型、语言类型、uniform 列表和 attribute 列表,并持有对应的 RHI 着色器资源指针。 - -## 头文件 - -```cpp -#include -``` - -## 枚举类型 - -### ShaderType - -着色器类型枚举。 - -| 值 | 描述 | -|----|------| -| `Vertex` | 顶点着色器 | -| `Fragment` | 片元着色器 | -| `Geometry` | 几何着色器 | -| `Compute` | 计算着色器 | -| `Hull` | Hull 着色器(曲面细分控制) | -| `Domain` | Domain 着色器(曲面细分评估) | - -### ShaderLanguage - -着色器语言枚举。 - -| 值 | 描述 | -|----|------| -| `GLSL` | OpenGL Shading Language | -| `HLSL` | High-Level Shading Language | -| `SPIRV` | SPIR-V 二进制格式 | - -## 结构体 - -### ShaderUniform - -Uniform 变量描述。 - -| 成员 | 类型 | 描述 | -|------|------|------| -| `name` | `Containers::String` | Uniform 名称 | -| `location` | `Core::uint32` | 位置/绑定点 | -| `size` | `Core::uint32` | 大小(字节) | -| `type` | `Core::uint32` | 类型标识 | - -### ShaderAttribute - -顶点属性描述。 - -| 成员 | 类型 | 描述 | -|------|------|------| -| `name` | `Containers::String` | 属性名称 | -| `location` | `Core::uint32` | 位置索引 | -| `size` | `Core::uint32` | 大小(字节) | -| `type` | `Core::uint32` | 类型标识 | - -## 公共方法 - -### 基础属性 - -| 方法 | 描述 | -|------|------| -| `Shader()` | 默认构造函数 | -| `virtual ~Shader()` | 析构函数 | -| `ResourceType GetType() const` | 返回 `ResourceType::Shader` | -| `const Containers::String& GetName() const` | 获取着色器名称 | -| `const Containers::String& GetPath() const` | 获取着色器路径 | -| `ResourceGUID GetGUID() const` | 获取全局唯一标识符 | -| `bool IsValid() const` | 检查着色器是否有效 | -| `size_t GetMemorySize() const` | 获取内存大小 | -| `void Release()` | 释放着色器资源 | - -### Release 详细说明 - -`Release()` 方法释放 Shader 实例持有的所有资源,包括: -- 清空源码字符串 (`m_sourceCode`) -- 清空编译后的二进制数据 (`m_compiledBinary`) -- 清空 Uniform 列表 (`m_uniforms`) -- 清空 Attribute 列表 (`m_attributes`) -- 释放 RHI 着色器资源指针 (`m_rhiResource`) -- 将 `m_isValid` 标记为 `false` - -调用此方法后,Shader 对象回到无效状态,可被 ResourceManager 回收。 - -### 类型与语言 - -| 方法 | 描述 | -|------|------| -| `void SetShaderType(ShaderType type)` | 设置着色器类型 | -| `ShaderType GetShaderType() const` | 获取着色器类型 | -| `void SetShaderLanguage(ShaderLanguage lang)` | 设置着色器语言 | -| `ShaderLanguage GetShaderLanguage() const` | 获取着色器语言 | - -### 源码与编译 - -| 方法 | 描述 | -|------|------| -| `void SetSourceCode(const Containers::String& source)` | 设置源码 | -| `const Containers::String& GetSourceCode() const` | 获取源码 | -| `void SetCompiledBinary(const Containers::Array& binary)` | 设置编译后二进制 | -| `const Containers::Array& GetCompiledBinary() const` | 获取编译后二进制 | - -### Uniform 和 Attribute - -| 方法 | 描述 | -|------|------| -| `void AddUniform(const ShaderUniform& uniform)` | 添加 Uniform 描述 | -| `const Containers::Array& GetUniforms() const` | 获取 Uniform 列表 | -| `void AddAttribute(const ShaderAttribute& attribute)` | 添加 Attribute 描述 | -| `const Containers::Array& GetAttributes() const` | 获取 Attribute 列表 | - -### RHI 资源 - -| 方法 | 描述 | -|------|------| -| `class IRHIShader* GetRHIResource() const` | 获取 RHI 着色器资源 | -| `void SetRHIResource(class IRHIShader* resource)` | 设置 RHI 着色器资源 | - -## 使用示例 - -```cpp -// 加载着色器 -ResourceHandle vs = ResourceManager::Get().Load("shaders/vertex.glsl"); -ResourceHandle fs = ResourceManager::Get().Load("shaders/fragment.glsl"); - -// 设置类型 -vs->SetShaderType(ShaderType::Vertex); -fs->SetShaderType(ShaderType::Fragment); - -// 设置语言 -vs->SetShaderLanguage(ShaderLanguage::GLSL); - -// 设置编译后二进制 -vs->SetCompiledBinary(compiledSpirv); - -// 添加 Uniform -ShaderUniform uniform; -uniform.name = "modelMatrix"; -uniform.location = 0; -uniform.size = sizeof(float) * 16; -uniform.type = 0; -vs->AddUniform(uniform); - -// 访问 RHI 资源 -RHIShader* rhiShader = vs->GetRHIResource(); -``` - -## 相关文档 - -- [IResource](../iresource/iresource.md) - 资源基类 -- [RHIShader](../../rhi/shader/shader.md) - RHI 着色器接口 -- [Material](../material/material.md) - 材质资源 -- [Resources 总览](../resources.md) - 返回模块总览 diff --git a/docs/api/resources/texture-import-settings/clone.md b/docs/api/resources/texture-import-settings/clone.md deleted file mode 100644 index eed28b9c..00000000 --- a/docs/api/resources/texture-import-settings/clone.md +++ /dev/null @@ -1,25 +0,0 @@ -# TextureImportSettings::Clone - -```cpp -Core::UniqueRef Clone() const override; -``` - -创建并返回一份当前设置的深拷贝。 - -**返回:** `Core::UniqueRef` - 新的 `TextureImportSettings` 克隆 - -**线程安全:** ✅ - -**示例:** - -```cpp -TextureImportSettings settings; -settings.SetTextureType(TextureType::Texture2D); - -auto cloned = settings.Clone(); -// cloned 是独立的副本,修改不影响原对象 -``` - -## 相关文档 - -- [TextureImportSettings 总览](texture-import-settings.md) - 返回类总览 diff --git a/docs/api/resources/texture-import-settings/getbordercolor.md b/docs/api/resources/texture-import-settings/getbordercolor.md deleted file mode 100644 index 6a5c400d..00000000 --- a/docs/api/resources/texture-import-settings/getbordercolor.md +++ /dev/null @@ -1,3 +0,0 @@ -# TextureImportSettings::GetBorderColor - -参见 [`SetBorderColor`](setbordercolor.md) diff --git a/docs/api/resources/texture-import-settings/getcompressionquality.md b/docs/api/resources/texture-import-settings/getcompressionquality.md deleted file mode 100644 index 6a25c1f2..00000000 --- a/docs/api/resources/texture-import-settings/getcompressionquality.md +++ /dev/null @@ -1,3 +0,0 @@ -# TextureImportSettings::GetCompressionQuality - -参见 [`SetCompressionQuality`](setcompressionquality.md) diff --git a/docs/api/resources/texture-import-settings/getfliphhorizontal.md b/docs/api/resources/texture-import-settings/getfliphhorizontal.md deleted file mode 100644 index 4ff040d7..00000000 --- a/docs/api/resources/texture-import-settings/getfliphhorizontal.md +++ /dev/null @@ -1,3 +0,0 @@ -# TextureImportSettings::GetFlipHorizontal - -参见 [`SetFlipHorizontal`](setfliphhorizontal.md) diff --git a/docs/api/resources/texture-import-settings/getflipvertical.md b/docs/api/resources/texture-import-settings/getflipvertical.md deleted file mode 100644 index d9ff83f2..00000000 --- a/docs/api/resources/texture-import-settings/getflipvertical.md +++ /dev/null @@ -1,3 +0,0 @@ -# TextureImportSettings::GetFlipVertical - -参见 [`SetFlipVertical`](setflipvertical.md) diff --git a/docs/api/resources/texture-import-settings/getgeneratemipmaps.md b/docs/api/resources/texture-import-settings/getgeneratemipmaps.md deleted file mode 100644 index 26171747..00000000 --- a/docs/api/resources/texture-import-settings/getgeneratemipmaps.md +++ /dev/null @@ -1,3 +0,0 @@ -# TextureImportSettings::GetGenerateMipmaps - -参见 [`SetGenerateMipmaps`](setgeneratemipmaps.md) diff --git a/docs/api/resources/texture-import-settings/getgeneratenormalmap.md b/docs/api/resources/texture-import-settings/getgeneratenormalmap.md deleted file mode 100644 index 2e34239e..00000000 --- a/docs/api/resources/texture-import-settings/getgeneratenormalmap.md +++ /dev/null @@ -1,3 +0,0 @@ -# TextureImportSettings::GetGenerateNormalMap - -参见 [`SetGenerateNormalMap`](setgeneratenormalmap.md) diff --git a/docs/api/resources/texture-import-settings/getmaxanisotropy.md b/docs/api/resources/texture-import-settings/getmaxanisotropy.md deleted file mode 100644 index ed878d34..00000000 --- a/docs/api/resources/texture-import-settings/getmaxanisotropy.md +++ /dev/null @@ -1,3 +0,0 @@ -# TextureImportSettings::GetMaxAnisotropy - -参见 [`SetMaxAnisotropy`](setmaxanisotropy.md) diff --git a/docs/api/resources/texture-import-settings/getmaxsize.md b/docs/api/resources/texture-import-settings/getmaxsize.md deleted file mode 100644 index 1e83dcc5..00000000 --- a/docs/api/resources/texture-import-settings/getmaxsize.md +++ /dev/null @@ -1,3 +0,0 @@ -# TextureImportSettings::GetMaxSize - -参见 [`SetMaxSize`](setmaxsize.md) diff --git a/docs/api/resources/texture-import-settings/getmipmapfilter.md b/docs/api/resources/texture-import-settings/getmipmapfilter.md deleted file mode 100644 index 650ef7dc..00000000 --- a/docs/api/resources/texture-import-settings/getmipmapfilter.md +++ /dev/null @@ -1,3 +0,0 @@ -# TextureImportSettings::GetMipmapFilter - -参见 [`SetMipmapFilter`](setmipmapfilter.md) diff --git a/docs/api/resources/texture-import-settings/getnormalmapstrength.md b/docs/api/resources/texture-import-settings/getnormalmapstrength.md deleted file mode 100644 index b844d9cb..00000000 --- a/docs/api/resources/texture-import-settings/getnormalmapstrength.md +++ /dev/null @@ -1,3 +0,0 @@ -# TextureImportSettings::GetNormalMapStrength - -参见 [`SetNormalMapStrength`](setnormalmapstrength.md) diff --git a/docs/api/resources/texture-import-settings/getsrgb.md b/docs/api/resources/texture-import-settings/getsrgb.md deleted file mode 100644 index 15f4721a..00000000 --- a/docs/api/resources/texture-import-settings/getsrgb.md +++ /dev/null @@ -1,3 +0,0 @@ -# TextureImportSettings::GetSRGB - -参见 [`SetSRGB`](setsrgb.md) diff --git a/docs/api/resources/texture-import-settings/gettargetformat.md b/docs/api/resources/texture-import-settings/gettargetformat.md deleted file mode 100644 index e71dbb23..00000000 --- a/docs/api/resources/texture-import-settings/gettargetformat.md +++ /dev/null @@ -1,3 +0,0 @@ -# TextureImportSettings::GetTargetFormat - -参见 [`SetTargetFormat`](settargetformat.md) diff --git a/docs/api/resources/texture-import-settings/gettexturetype.md b/docs/api/resources/texture-import-settings/gettexturetype.md deleted file mode 100644 index 03b8f98a..00000000 --- a/docs/api/resources/texture-import-settings/gettexturetype.md +++ /dev/null @@ -1,3 +0,0 @@ -# TextureImportSettings::GetTextureType - -参见 [`SetTextureType`](settexturetype.md) diff --git a/docs/api/resources/texture-import-settings/getusehardwarecompression.md b/docs/api/resources/texture-import-settings/getusehardwarecompression.md deleted file mode 100644 index 0d0be77b..00000000 --- a/docs/api/resources/texture-import-settings/getusehardwarecompression.md +++ /dev/null @@ -1,3 +0,0 @@ -# TextureImportSettings::GetUseHardwareCompression - -参见 [`SetUseHardwareCompression`](setusehardwarecompression.md) diff --git a/docs/api/resources/texture-import-settings/loadfromjson.md b/docs/api/resources/texture-import-settings/loadfromjson.md deleted file mode 100644 index f09f5ad4..00000000 --- a/docs/api/resources/texture-import-settings/loadfromjson.md +++ /dev/null @@ -1,28 +0,0 @@ -# TextureImportSettings::LoadFromJSON - -```cpp -bool LoadFromJSON(const Containers::String& json) override; -``` - -从 JSON 字符串加载导入设置。 - -**参数:** -- `json` - JSON 格式的设置字符串 - -**返回:** `bool` - 加载是否成功 - -**注意:** 当前为 stub 实现,始终返回 `false`。 - -**线程安全:** ✅ - -**示例:** - -```cpp -TextureImportSettings settings; -bool success = settings.LoadFromJSON(R"({"textureType":1,"sRGB":true})"); -// 当前实现返回 false -``` - -## 相关文档 - -- [TextureImportSettings 总览](texture-import-settings.md) - 返回类总览 diff --git a/docs/api/resources/texture-import-settings/savetojson.md b/docs/api/resources/texture-import-settings/savetojson.md deleted file mode 100644 index 3efce2cb..00000000 --- a/docs/api/resources/texture-import-settings/savetojson.md +++ /dev/null @@ -1,26 +0,0 @@ -# TextureImportSettings::SaveToJSON - -```cpp -Containers::String SaveToJSON() const override; -``` - -将当前设置序列化为 JSON 字符串。 - -**返回:** `Containers::String` - JSON 格式的设置字符串 - -**注意:** 当前为 stub 实现,始终返回空字符串。 - -**线程安全:** ✅ - -**示例:** - -```cpp -TextureImportSettings settings; -settings.SetSRGB(true); -Containers::String json = settings.SaveToJSON(); -// 当前实现返回空字符串 -``` - -## 相关文档 - -- [TextureImportSettings 总览](texture-import-settings.md) - 返回类总览 diff --git a/docs/api/resources/texture-import-settings/setbordercolor.md b/docs/api/resources/texture-import-settings/setbordercolor.md deleted file mode 100644 index db746d85..00000000 --- a/docs/api/resources/texture-import-settings/setbordercolor.md +++ /dev/null @@ -1,27 +0,0 @@ -# TextureImportSettings::SetBorderColor / GetBorderColor - -```cpp -void SetBorderColor(const Math::Vector3& color); -const Math::Vector3& GetBorderColor() const; -``` - -设置或获取纹理边框颜色。 - -**参数:** -- `color` - 边框颜色(RGB) - -**返回:** `const Math::Vector3&` / `void` - -**线程安全:** ✅ - -**示例:** - -```cpp -TextureImportSettings settings; -settings.SetBorderColor(Math::Vector3(1.0f, 0.0f, 0.0f)); // 红色边框 -const Math::Vector3& color = settings.GetBorderColor(); -``` - -## 相关文档 - -- [TextureImportSettings 总览](texture-import-settings.md) - 返回类总览 diff --git a/docs/api/resources/texture-import-settings/setcompressionquality.md b/docs/api/resources/texture-import-settings/setcompressionquality.md deleted file mode 100644 index 0e008cd3..00000000 --- a/docs/api/resources/texture-import-settings/setcompressionquality.md +++ /dev/null @@ -1,27 +0,0 @@ -# TextureImportSettings::SetCompressionQuality / GetCompressionQuality - -```cpp -void SetCompressionQuality(CompressionQuality quality); -CompressionQuality GetCompressionQuality() const; -``` - -设置或获取纹理压缩质量级别。 - -**参数:** -- `quality` - 压缩质量(`Low`、`Medium`、`High`、`Ultra`) - -**返回:** `CompressionQuality` / `void` - -**线程安全:** ✅ - -**示例:** - -```cpp -TextureImportSettings settings; -settings.SetCompressionQuality(CompressionQuality::High); -CompressionQuality quality = settings.GetCompressionQuality(); // CompressionQuality::High -``` - -## 相关文档 - -- [TextureImportSettings 总览](texture-import-settings.md) - 返回类总览 diff --git a/docs/api/resources/texture-import-settings/setfliphhorizontal.md b/docs/api/resources/texture-import-settings/setfliphhorizontal.md deleted file mode 100644 index c04fdf5c..00000000 --- a/docs/api/resources/texture-import-settings/setfliphhorizontal.md +++ /dev/null @@ -1,27 +0,0 @@ -# TextureImportSettings::SetFlipHorizontal / GetFlipHorizontal - -```cpp -void SetFlipHorizontal(bool flip); -bool GetFlipHorizontal() const; -``` - -设置或获取是否在导入时水平翻转纹理。 - -**参数:** -- `flip` - 是否水平翻转 - -**返回:** `bool` / `void` - -**线程安全:** ✅ - -**示例:** - -```cpp -TextureImportSettings settings; -settings.SetFlipHorizontal(true); -bool flip = settings.GetFlipHorizontal(); // true -``` - -## 相关文档 - -- [TextureImportSettings 总览](texture-import-settings.md) - 返回类总览 diff --git a/docs/api/resources/texture-import-settings/setflipvertical.md b/docs/api/resources/texture-import-settings/setflipvertical.md deleted file mode 100644 index 598a6e92..00000000 --- a/docs/api/resources/texture-import-settings/setflipvertical.md +++ /dev/null @@ -1,27 +0,0 @@ -# TextureImportSettings::SetFlipVertical / GetFlipVertical - -```cpp -void SetFlipVertical(bool flip); -bool GetFlipVertical() const; -``` - -设置或获取是否在导入时垂直翻转纹理。 - -**参数:** -- `flip` - 是否垂直翻转 - -**返回:** `bool` / `void` - -**线程安全:** ✅ - -**示例:** - -```cpp -TextureImportSettings settings; -settings.SetFlipVertical(true); -bool flip = settings.GetFlipVertical(); // true -``` - -## 相关文档 - -- [TextureImportSettings 总览](texture-import-settings.md) - 返回类总览 diff --git a/docs/api/resources/texture-import-settings/setgeneratemipmaps.md b/docs/api/resources/texture-import-settings/setgeneratemipmaps.md deleted file mode 100644 index 2b2d4b2e..00000000 --- a/docs/api/resources/texture-import-settings/setgeneratemipmaps.md +++ /dev/null @@ -1,27 +0,0 @@ -# TextureImportSettings::SetGenerateMipmaps / GetGenerateMipmaps - -```cpp -void SetGenerateMipmaps(bool generate); -bool GetGenerateMipmaps() const; -``` - -设置或获取是否生成 Mipmap。 - -**参数:** -- `generate` - 是否生成 Mipmap - -**返回:** `bool` / `void` - -**线程安全:** ✅ - -**示例:** - -```cpp -TextureImportSettings settings; -settings.SetGenerateMipmaps(true); -bool generate = settings.GetGenerateMipmaps(); // true -``` - -## 相关文档 - -- [TextureImportSettings 总览](texture-import-settings.md) - 返回类总览 diff --git a/docs/api/resources/texture-import-settings/setgeneratenormalmap.md b/docs/api/resources/texture-import-settings/setgeneratenormalmap.md deleted file mode 100644 index 437665e8..00000000 --- a/docs/api/resources/texture-import-settings/setgeneratenormalmap.md +++ /dev/null @@ -1,27 +0,0 @@ -# TextureImportSettings::SetGenerateNormalMap / GetGenerateNormalMap - -```cpp -void SetGenerateNormalMap(bool generate); -bool GetGenerateNormalMap() const; -``` - -设置或获取是否在导入时生成法线贴图。 - -**参数:** -- `generate` - 是否生成法线贴图 - -**返回:** `bool` / `void` - -**线程安全:** ✅ - -**示例:** - -```cpp -TextureImportSettings settings; -settings.SetGenerateNormalMap(true); -bool generate = settings.GetGenerateNormalMap(); // true -``` - -## 相关文档 - -- [TextureImportSettings 总览](texture-import-settings.md) - 返回类总览 diff --git a/docs/api/resources/texture-import-settings/setmaxanisotropy.md b/docs/api/resources/texture-import-settings/setmaxanisotropy.md deleted file mode 100644 index eb68c897..00000000 --- a/docs/api/resources/texture-import-settings/setmaxanisotropy.md +++ /dev/null @@ -1,27 +0,0 @@ -# TextureImportSettings::SetMaxAnisotropy / GetMaxAnisotropy - -```cpp -void SetMaxAnisotropy(Core::uint32 anisotropy); -Core::uint32 GetMaxAnisotropy() const; -``` - -设置或获取最大各向异性过滤级别。 - -**参数:** -- `anisotropy` - 各向异性级别(通常为 1, 2, 4, 8, 16) - -**返回:** `Core::uint32` / `void` - -**线程安全:** ✅ - -**示例:** - -```cpp -TextureImportSettings settings; -settings.SetMaxAnisotropy(16); -Core::uint32 anisotropy = settings.GetMaxAnisotropy(); // 16 -``` - -## 相关文档 - -- [TextureImportSettings 总览](texture-import-settings.md) - 返回类总览 diff --git a/docs/api/resources/texture-import-settings/setmaxsize.md b/docs/api/resources/texture-import-settings/setmaxsize.md deleted file mode 100644 index 985cf20e..00000000 --- a/docs/api/resources/texture-import-settings/setmaxsize.md +++ /dev/null @@ -1,27 +0,0 @@ -# TextureImportSettings::SetMaxSize / GetMaxSize - -```cpp -void SetMaxSize(Core::uint32 size); -Core::uint32 GetMaxSize() const; -``` - -设置或获取最大纹理尺寸。纹理将被缩放以适应此尺寸。 - -**参数:** -- `size` - 最大边长(像素) - -**返回:** `Core::uint32` / `void` - -**线程安全:** ✅ - -**示例:** - -```cpp -TextureImportSettings settings; -settings.SetMaxSize(2048); -Core::uint32 size = settings.GetMaxSize(); // 2048 -``` - -## 相关文档 - -- [TextureImportSettings 总览](texture-import-settings.md) - 返回类总览 diff --git a/docs/api/resources/texture-import-settings/setmipmapfilter.md b/docs/api/resources/texture-import-settings/setmipmapfilter.md deleted file mode 100644 index 9be6faa5..00000000 --- a/docs/api/resources/texture-import-settings/setmipmapfilter.md +++ /dev/null @@ -1,27 +0,0 @@ -# TextureImportSettings::SetMipmapFilter / GetMipmapFilter - -```cpp -void SetMipmapFilter(MipmapFilter filter); -MipmapFilter GetMipmapFilter() const; -``` - -设置或获取 Mipmap 滤波算法。 - -**参数:** -- `filter` - Mipmap 滤波器类型(`MipmapFilter::Box` 或 `MipmapFilter::Kaiser`) - -**返回:** `MipmapFilter` / `void` - -**线程安全:** ✅ - -**示例:** - -```cpp -TextureImportSettings settings; -settings.SetMipmapFilter(MipmapFilter::Kaiser); -MipmapFilter filter = settings.GetMipmapFilter(); // MipmapFilter::Kaiser -``` - -## 相关文档 - -- [TextureImportSettings 总览](texture-import-settings.md) - 返回类总览 diff --git a/docs/api/resources/texture-import-settings/setnormalmapstrength.md b/docs/api/resources/texture-import-settings/setnormalmapstrength.md deleted file mode 100644 index 8561139e..00000000 --- a/docs/api/resources/texture-import-settings/setnormalmapstrength.md +++ /dev/null @@ -1,27 +0,0 @@ -# TextureImportSettings::SetNormalMapStrength / GetNormalMapStrength - -```cpp -void SetNormalMapStrength(float strength); -float GetNormalMapStrength() const; -``` - -设置或获取法线贴图强度。 - -**参数:** -- `strength` - 法线贴图强度系数 - -**返回:** `float` / `void` - -**线程安全:** ✅ - -**示例:** - -```cpp -TextureImportSettings settings; -settings.SetNormalMapStrength(2.0f); -float strength = settings.GetNormalMapStrength(); // 2.0f -``` - -## 相关文档 - -- [TextureImportSettings 总览](texture-import-settings.md) - 返回类总览 diff --git a/docs/api/resources/texture-import-settings/setsrgb.md b/docs/api/resources/texture-import-settings/setsrgb.md deleted file mode 100644 index fa74c87d..00000000 --- a/docs/api/resources/texture-import-settings/setsrgb.md +++ /dev/null @@ -1,27 +0,0 @@ -# TextureImportSettings::SetSRGB / GetSRGB - -```cpp -void SetSRGB(bool srgb); -bool GetSRGB() const; -``` - -设置或获取 sRGB 颜色空间标记。 - -**参数:** -- `srgb` - 是否使用 sRGB 颜色空间 - -**返回:** `bool` / `void` - -**线程安全:** ✅ - -**示例:** - -```cpp -TextureImportSettings settings; -settings.SetSRGB(true); -bool srgb = settings.GetSRGB(); // true -``` - -## 相关文档 - -- [TextureImportSettings 总览](texture-import-settings.md) - 返回类总览 diff --git a/docs/api/resources/texture-import-settings/settargetformat.md b/docs/api/resources/texture-import-settings/settargetformat.md deleted file mode 100644 index 51e28cb8..00000000 --- a/docs/api/resources/texture-import-settings/settargetformat.md +++ /dev/null @@ -1,28 +0,0 @@ -# TextureImportSettings::SetTargetFormat / GetTargetFormat - -```cpp -void SetTargetFormat(TextureFormat format); -TextureFormat GetTargetFormat() const; -``` - -设置或获取目标纹理格式。 - -**参数:** -- `format` - 目标格式(参见 `TextureFormat` 枚举) - -**返回:** `TextureFormat` / `void` - -**线程安全:** ✅ - -**示例:** - -```cpp -TextureImportSettings settings; -settings.SetTargetFormat(TextureFormat::RGBA8); -TextureFormat format = settings.GetTargetFormat(); // TextureFormat::RGBA8 -``` - -## 相关文档 - -- [TextureImportSettings 总览](texture-import-settings.md) - 返回类总览 -- [Texture](../texture/texture.md) - 纹理格式定义 diff --git a/docs/api/resources/texture-import-settings/settexturetype.md b/docs/api/resources/texture-import-settings/settexturetype.md deleted file mode 100644 index 9ee480fc..00000000 --- a/docs/api/resources/texture-import-settings/settexturetype.md +++ /dev/null @@ -1,28 +0,0 @@ -# TextureImportSettings::SetTextureType / GetTextureType - -```cpp -void SetTextureType(TextureType type); -TextureType GetTextureType() const; -``` - -设置或获取纹理类型。 - -**参数:** -- `type` - 纹理类型(参见 `TextureType` 枚举) - -**返回:** `TextureType` / `void` - -**线程安全:** ✅ - -**示例:** - -```cpp -TextureImportSettings settings; -settings.SetTextureType(TextureType::Texture2D); -TextureType type = settings.GetTextureType(); // TextureType::Texture2D -``` - -## 相关文档 - -- [TextureImportSettings 总览](texture-import-settings.md) - 返回类总览 -- [Texture](../texture/texture.md) - 纹理类型定义 diff --git a/docs/api/resources/texture-import-settings/setusehardwarecompression.md b/docs/api/resources/texture-import-settings/setusehardwarecompression.md deleted file mode 100644 index 658b430e..00000000 --- a/docs/api/resources/texture-import-settings/setusehardwarecompression.md +++ /dev/null @@ -1,27 +0,0 @@ -# TextureImportSettings::SetUseHardwareCompression / GetUseHardwareCompression - -```cpp -void SetUseHardwareCompression(bool use); -bool GetUseHardwareCompression() const; -``` - -设置或获取是否使用硬件压缩(GPU 压缩格式)。 - -**参数:** -- `use` - 是否使用硬件压缩 - -**返回:** `bool` / `void` - -**线程安全:** ✅ - -**示例:** - -```cpp -TextureImportSettings settings; -settings.SetUseHardwareCompression(true); -bool use = settings.GetUseHardwareCompression(); // true -``` - -## 相关文档 - -- [TextureImportSettings 总览](texture-import-settings.md) - 返回类总览 diff --git a/docs/api/resources/texture-import-settings/texture-import-settings.md b/docs/api/resources/texture-import-settings/texture-import-settings.md deleted file mode 100644 index d229ca76..00000000 --- a/docs/api/resources/texture-import-settings/texture-import-settings.md +++ /dev/null @@ -1,119 +0,0 @@ -# TextureImportSettings - -**命名空间**: `XCEngine::Resources` - -**类型**: `class` - -**继承**: `ImportSettings` - -**头文件**: `XCEngine/Resources/TextureImportSettings.h` - -**描述**: 纹理资源导入设置类,定义从外部图像文件导入纹理时的配置选项。 - ---- - -## 概述 - -`TextureImportSettings` 继承自 `ImportSettings`,提供纹理导入时的完整配置能力。支持纹理类型、目标格式、Mipmap 生成、各项异性过滤、sRGB 转换、图像翻转、边框颜色、压缩质量、硬件压缩、纹理最大尺寸、法线贴图生成等选项。`LoadFromJSON()` 和 `SaveToJSON()` 当前为 stub 实现。 - ---- - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `TextureImportSettings()` | 构造函数 | -| `virtual ~TextureImportSettings() override` | 析构函数 | -| [Clone](clone.md) | 克隆设置对象 | -| [LoadFromJSON](loadfromjson.md) | 从 JSON 加载设置(stub) | -| [SaveToJSON](savetojson.md) | 保存为 JSON(stub) | -| [SetTextureType](settexturetype.md) | 设置纹理类型 | -| [GetTextureType](gettexturetype.md) | 获取纹理类型 | -| [SetTargetFormat](settargetformat.md) | 设置目标格式 | -| [GetTargetFormat](gettargetformat.md) | 获取目标格式 | -| [SetGenerateMipmaps](setgeneratemipmaps.md) | 设置是否生成 Mipmap | -| [GetGenerateMipmaps](getgeneratemipmaps.md) | 获取是否生成 Mipmap | -| [SetMipmapFilter](setmipmapfilter.md) | 设置 Mipmap 滤波器 | -| [GetMipmapFilter](getmipmapfilter.md) | 获取 Mipmap 滤波器 | -| [SetMaxAnisotropy](setmaxanisotropy.md) | 设置最大各向异性级别 | -| [GetMaxAnisotropy](getmaxanisotropy.md) | 获取最大各向异性级别 | -| [SetSRGB](setsrgb.md) | 设置是否 sRGB | -| [GetSRGB](getsrgb.md) | 获取 sRGB 设置 | -| [SetFlipVertical](setflipvertical.md) | 设置是否垂直翻转 | -| [GetFlipVertical](getflipvertical.md) | 获取垂直翻转设置 | -| [SetFlipHorizontal](setfliphhorizontal.md) | 设置是否水平翻转 | -| [GetFlipHorizontal](getfliphhorizontal.md) | 获取水平翻转设置 | -| [SetBorderColor](setbordercolor.md) | 设置边框颜色 | -| [GetBorderColor](getbordercolor.md) | 获取边框颜色 | -| [SetCompressionQuality](setcompressionquality.md) | 设置压缩质量 | -| [GetCompressionQuality](getcompressionquality.md) | 获取压缩质量 | -| [SetUseHardwareCompression](setusehardwarecompression.md) | 设置是否使用硬件压缩 | -| [GetUseHardwareCompression](getusehardwarecompression.md) | 获取硬件压缩设置 | -| [SetMaxSize](setmaxsize.md) | 设置最大纹理尺寸 | -| [GetMaxSize](getmaxsize.md) | 获取最大纹理尺寸 | -| [SetGenerateNormalMap](setgeneratenormalmap.md) | 设置是否生成法线贴图 | -| [GetGenerateNormalMap](getgeneratenormalmap.md) | 获取法线贴图生成设置 | -| [SetNormalMapStrength](setnormalmapstrength.md) | 设置法线贴图强度 | -| [GetNormalMapStrength](getnormalmapstrength.md) | 获取法线贴图强度 | - ---- - -## MipmapFilter 枚举 - -| 值 | 描述 | -|------|------| -| `Box` | Box 滤波器 | -| `Kaiser` | Kaiser 滤波器 | - ---- - -## CompressionQuality 枚举 - -| 值 | 描述 | -|------|------| -| `Low` | 低质量 | -| `Medium` | 中等质量 | -| `High` | 高质量 | -| `Ultra` | 超高质量 | - ---- - -## 使用示例 - -```cpp -#include -#include - -// 创建导入设置 -TextureImportSettings settings; -settings.SetTextureType(TextureType::Texture2D); -settings.SetTargetFormat(TextureFormat::RGBA8); -settings.SetGenerateMipmaps(true); -settings.SetMipmapFilter(MipmapFilter::Kaiser); -settings.SetMaxAnisotropy(16); -settings.SetSRGB(true); -settings.SetFlipVertical(false); -settings.SetFlipHorizontal(false); -settings.SetBorderColor(Math::Vector3::Zero()); -settings.SetCompressionQuality(CompressionQuality::High); -settings.SetUseHardwareCompression(true); -settings.SetMaxSize(2048); -settings.SetGenerateNormalMap(false); -settings.SetNormalMapStrength(1.0f); - -// 克隆设置 -auto cloned = settings.Clone(); - -// 加载纹理资源 -ResourceHandle tex = ResourceManager::Get().Load("textures/diffuse.png", &settings); -``` - ---- - -## 相关文档 - -- [ImportSettings](../importsettings/importsettings.md) - 导入设置基类 -- [IResourceLoader](../iloader/iloader.md) - 资源加载器接口 -- [ResourceManager](../resource-manager/resource-manager.md) - 资源管理器 -- [Texture](../texture/texture.md) - 纹理资源类 -- [Resources 总览](../resources.md) - 资源模块总览 diff --git a/docs/api/resources/texture-loader/constructor.md b/docs/api/resources/texture-loader/constructor.md deleted file mode 100644 index 6af3425a..00000000 --- a/docs/api/resources/texture-loader/constructor.md +++ /dev/null @@ -1,27 +0,0 @@ -# TextureLoader::TextureLoader - -```cpp -TextureLoader(); -``` - -默认构造函数,创建一个 `TextureLoader` 实例。该加载器负责管理纹理资源的加载流程。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**示例:** - -```cpp -#include "Resources/TextureLoader.h" - -using namespace XCEngine::Resources; - -TextureLoader loader; -``` - -## 相关文档 - -- [TextureLoader 总览](index.md) - 返回类总览 diff --git a/docs/api/resources/texture-loader/destructor.md b/docs/api/resources/texture-loader/destructor.md deleted file mode 100644 index 074ef98d..00000000 --- a/docs/api/resources/texture-loader/destructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# TextureLoader::~TextureLoader - -```cpp -virtual ~TextureLoader() override; -``` - -析构函数,用于销毁 `TextureLoader` 对象。该析构函数不执行任何特殊清理操作。 - -**参数:** 无 - -**返回:** 无 - -**示例:** - -```cpp -#include "Resources/TextureLoader.h" - -using namespace XCEngine::Resources; - -{ - TextureLoader loader; - // 使用 loader... -} -// loader 在此自动销毁 -``` - -## 相关文档 - -- [TextureLoader 总览](index.md) - 返回类总览 diff --git a/docs/api/resources/texture-loader/index.md b/docs/api/resources/texture-loader/index.md deleted file mode 100644 index d4e249ce..00000000 --- a/docs/api/resources/texture-loader/index.md +++ /dev/null @@ -1,141 +0,0 @@ -# TextureLoader - -**命名空间**: `XCEngine::Resources` - -**类型**: `class` - -**描述**: 纹理资源加载器,负责从文件加载纹理资源。 - -**继承自**: `IResourceLoader` - -## 概述 - -`TextureLoader` 是 XCEngine 中的纹理资源加载器实现类,继承自 `IResourceLoader`。它支持从多种图像格式加载纹理数据,包括 PNG、JPG、TGA、BMP、GIF、HDR 和 DDS。 - -## 头文件 - -```cpp -#include -``` - -## 支持的格式 - -| 扩展名 | 描述 | -|--------|------| -| `png` | PNG 图像 | -| `jpg` / `jpeg` | JPEG 图像 | -| `tga` | TGA 图像 | -| `bmp` | BMP 图像 | -| `gif` | GIF 图像 | -| `hdr` | HDR 图像 | -| `dds` | DDS 压缩纹理 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [TextureLoader](constructor.md) | 构造函数 | -| [~TextureLoader](destructor.md) | 析构函数 | -| `GetResourceType()` | 返回 `ResourceType::Texture` | -| `GetSupportedExtensions()` | 获取支持的扩展名列表 | -| `CanLoad()` | 检查是否支持加载指定路径的纹理 | -| `Load()` | 加载纹理资源 | -| `GetDefaultSettings()` | 获取默认导入设置 | - -### GetResourceType - -```cpp -ResourceType GetResourceType() const override -``` - -返回资源的类型标识。 - -**返回值**: `ResourceType::Texture` - ---- - -### GetSupportedExtensions - -```cpp -Containers::Array GetSupportedExtensions() const override -``` - -返回所有支持的纹理文件扩展名列表。 - -**返回值**: 包含所有支持扩展名的字符串数组。 - -**支持的扩展名**: `png`, `jpg`, `jpeg`, `tga`, `bmp`, `gif`, `hdr`, `dds` - ---- - -### CanLoad - -```cpp -bool CanLoad(const Containers::String& path) const override -``` - -检查指定的文件路径是否可以被此加载器处理。 - -**参数**: -- `path`: 文件路径 - -**返回值**: 如果文件扩展名受支持返回 `true`,否则返回 `false`。 - ---- - -### Load - -```cpp -LoadResult Load(const Containers::String& path, const ImportSettings* settings = nullptr) override -``` - -从指定路径加载纹理资源。 - -**参数**: -- `path`: 纹理文件路径 -- `settings`: 导入设置(可选,当前未使用) - -**返回值**: 加载成功返回包含 `Texture` 指针的 `LoadResult`;失败返回包含错误信息的 `LoadResult`。 - -**实现说明**: 当前实现仅读取文件数据和创建基础 `Texture` 对象,不解析实际的图像格式数据。 - ---- - -### GetDefaultSettings - -```cpp -ImportSettings* GetDefaultSettings() const override -``` - -获取默认的纹理导入设置。 - -**返回值**: `nullptr`(当前无默认设置) - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Resources; - -// 通过 ResourceManager 加载纹理 -ResourceHandle tex = ResourceManager::Get().Load("textures/player.png"); - -// 检查加载器是否支持特定格式 -TextureLoader loader; -if (loader.CanLoad("assets/image.dds")) { - // 可以加载 DDS 格式 -} -``` - -## 相关文档 - -- [Texture](../texture/texture.md) - 纹理资源类 -- [IResourceLoader](../iloader/iloader.md) - 资源加载器基类 -- [ResourceManager](../resource-manager/resource-manager.md) - 资源管理器 -- [Resources 总览](../resources.md) - 返回模块总览 - -## 实现说明 - -**注意**: `Load()` 方法当前为示例实现,不解析 PNG/JPG 等格式的实际图像像素数据,仅创建空 `Texture` 对象并设置基础资源参数(name、path、guid、memorySize)。实际图像数据解析需要在后续版本中实现。 diff --git a/docs/api/resources/texture/constructor.md b/docs/api/resources/texture/constructor.md deleted file mode 100644 index 62e1e4d4..00000000 --- a/docs/api/resources/texture/constructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# Texture::Texture - -```cpp -Texture() -``` - -默认构造函数。创建一个无效的 Texture 对象,需要调用 `Create` 方法进行初始化。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ❌ - -**示例:** - -```cpp -Texture tex; -// tex 此时无效,需要调用 Create 方法 -bool ok = tex.Create(1024, 1024, 1, 1, - TextureType::Texture2D, - TextureFormat::RGBA8_UNORM, - nullptr, 0); -``` - -## 相关文档 - -- [Texture 总览](texture.md) - 返回类总览 -- [Create](create.md) - 创建纹理方法 \ No newline at end of file diff --git a/docs/api/resources/texture/create.md b/docs/api/resources/texture/create.md deleted file mode 100644 index d7fdc743..00000000 --- a/docs/api/resources/texture/create.md +++ /dev/null @@ -1,46 +0,0 @@ -# Texture::Create - -```cpp -bool Create(Core::uint32 width, Core::uint32 height, Core::uint32 depth, - Core::uint32 mipLevels, TextureType type, TextureFormat format, - const void* data, size_t dataSize) -``` - -创建纹理资源。设置纹理的尺寸、格式和像素数据。 - -**参数:** - -| 参数 | 类型 | 描述 | -|------|------|------| -| `width` | `Core::uint32` | 纹理宽度(像素) | -| `height` | `Core::uint32` | 纹理高度(像素) | -| `depth` | `Core::uint32` | 纹理深度(3D 纹理设为 1) | -| `mipLevels` | `Core::uint32` | Mipmap 级别数 | -| `type` | `TextureType` | 纹理类型 | -| `format` | `TextureFormat` | 纹理格式 | -| `data` | `const void*` | 像素数据指针(可为 nullptr) | -| `dataSize` | `size_t` | 像素数据大小 | - -**返回:** 创建成功返回 true - -**复杂度:** O(n),n 为像素数据大小 - -**示例:** - -```cpp -Texture tex; -bool ok = tex.Create( - 1024, 1024, 1, 1, - TextureType::Texture2D, - TextureFormat::RGBA8_UNORM, - pixelData, pixelDataSize -); - -if (ok) { - // 纹理创建成功 -} -``` - -## 相关文档 - -- [Texture 总览](texture.md) - 返回类总览 diff --git a/docs/api/resources/texture/destructor.md b/docs/api/resources/texture/destructor.md deleted file mode 100644 index fb6decb5..00000000 --- a/docs/api/resources/texture/destructor.md +++ /dev/null @@ -1,31 +0,0 @@ -# Texture::~Texture - -```cpp -virtual ~Texture() -``` - -析构函数。释放纹理占用的资源。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ❌ - -**示例:** - -```cpp -{ - Texture tex; - tex.Create(1024, 1024, 1, 1, - TextureType::Texture2D, - TextureFormat::RGBA8_UNORM, - nullptr, 0); - // tex 超出作用域时自动调用析构函数释放资源 -} -``` - -## 相关文档 - -- [Texture 总览](texture.md) - 返回类总览 -- [Release](../iresource/release.md) - 手动释放资源方法 \ No newline at end of file diff --git a/docs/api/resources/texture/generatemipmaps.md b/docs/api/resources/texture/generatemipmaps.md deleted file mode 100644 index 4de75d5d..00000000 --- a/docs/api/resources/texture/generatemipmaps.md +++ /dev/null @@ -1,27 +0,0 @@ -# Texture::GenerateMipmaps - -```cpp -bool GenerateMipmaps() -``` - -生成纹理的 Mipmap 链。根据基础级别纹理自动生成所有下采样级别,用于纹理在缩小渲染时避免闪烁。 - -**参数:** 无 - -**返回:** 生成成功返回 true;当前始终返回 false(stub 实现) - -**复杂度:** O(n) - -**示例:** - -```cpp -Texture tex; -tex.Create(1024, 1024, 1, 1, TextureType::Texture2D, TextureFormat::RGBA8_UNORM, data, size); - -// 注意:当前实现返回 false,Mipmap 生成功能尚未完成 -bool success = tex.GenerateMipmaps(); -``` - -## 相关文档 - -- [Texture 总览](texture.md) - 返回类总览 diff --git a/docs/api/resources/texture/getarraysize.md b/docs/api/resources/texture/getarraysize.md deleted file mode 100644 index d645eb3c..00000000 --- a/docs/api/resources/texture/getarraysize.md +++ /dev/null @@ -1,36 +0,0 @@ -# Texture::GetArraySize - -```cpp -Core::uint32 GetArraySize() const -``` - -获取纹理数组大小。对于非数组纹理返回 1。 - -**参数:** 无 - -**返回:** 纹理数组大小 - -**线程安全:** ✅ - -**示例:** - -```cpp -Texture tex; -tex.Create(1024, 1024, 1, 1, - TextureType::Texture2D, - TextureFormat::RGBA8_UNORM, - nullptr, 0); -Core::uint32 arraySize = tex.GetArraySize(); // 返回 1 - -Texture texArray; -texArray.Create(1024, 1024, 1, 1, - TextureType::Texture2DArray, - TextureFormat::RGBA8_UNORM, - nullptr, 0); -Core::uint32 arraySizeArray = texArray.GetArraySize(); // 返回数组长度 -``` - -## 相关文档 - -- [Texture 总览](texture.md) - 返回类总览 -- [GetTextureType](gettexturetype.md) - 获取纹理类型 \ No newline at end of file diff --git a/docs/api/resources/texture/getdepth.md b/docs/api/resources/texture/getdepth.md deleted file mode 100644 index 925a6122..00000000 --- a/docs/api/resources/texture/getdepth.md +++ /dev/null @@ -1,37 +0,0 @@ -# Texture::GetDepth - -```cpp -Core::uint32 GetDepth() const -``` - -获取纹理深度。对于 3D 纹理返回体积深度,对于 2D 纹理返回 1。 - -**参数:** 无 - -**返回:** 纹理深度(像素) - -**线程安全:** ✅ - -**示例:** - -```cpp -Texture tex2D; -tex2D.Create(1024, 1024, 1, 1, - TextureType::Texture2D, - TextureFormat::RGBA8_UNORM, - nullptr, 0); -Core::uint32 depth2D = tex2D.GetDepth(); // 返回 1 - -Texture tex3D; -tex3D.Create(64, 64, 32, 1, - TextureType::Texture3D, - TextureFormat::RGBA8_UNORM, - nullptr, 0); -Core::uint32 depth3D = tex3D.GetDepth(); // 返回 32 -``` - -## 相关文档 - -- [Texture 总览](texture.md) - 返回类总览 -- [GetWidth](getwidth.md) - 获取纹理宽度 -- [GetHeight](getheight.md) - 获取纹理高度 \ No newline at end of file diff --git a/docs/api/resources/texture/getformat.md b/docs/api/resources/texture/getformat.md deleted file mode 100644 index 1cc78fe5..00000000 --- a/docs/api/resources/texture/getformat.md +++ /dev/null @@ -1,29 +0,0 @@ -# Texture::GetFormat - -```cpp -TextureFormat GetFormat() const -``` - -获取纹理像素格式。 - -**参数:** 无 - -**返回:** `TextureFormat` 枚举值 - -**线程安全:** ✅ - -**示例:** - -```cpp -Texture tex; -tex.Create(1024, 1024, 1, 1, - TextureType::Texture2D, - TextureFormat::RGBA8_UNORM, - nullptr, 0); -TextureFormat format = tex.GetFormat(); // 返回 TextureFormat::RGBA8_UNORM -``` - -## 相关文档 - -- [Texture 总览](texture.md) - 返回类总览 -- [TextureFormat 枚举](./texture.md#textureformat) - 格式枚举说明 \ No newline at end of file diff --git a/docs/api/resources/texture/getheight.md b/docs/api/resources/texture/getheight.md deleted file mode 100644 index 1fb44869..00000000 --- a/docs/api/resources/texture/getheight.md +++ /dev/null @@ -1,30 +0,0 @@ -# Texture::GetHeight - -```cpp -Core::uint32 GetHeight() const -``` - -获取纹理高度。 - -**参数:** 无 - -**返回:** 纹理高度(像素) - -**线程安全:** ✅ - -**示例:** - -```cpp -Texture tex; -tex.Create(1024, 512, 1, 1, - TextureType::Texture2D, - TextureFormat::RGBA8_UNORM, - nullptr, 0); - -Core::uint32 height = tex.GetHeight(); // 返回 512 -``` - -## 相关文档 - -- [Texture 总览](texture.md) - 返回类总览 -- [GetWidth](getwidth.md) - 获取纹理宽度 \ No newline at end of file diff --git a/docs/api/resources/texture/getmiplevels.md b/docs/api/resources/texture/getmiplevels.md deleted file mode 100644 index 19cd056e..00000000 --- a/docs/api/resources/texture/getmiplevels.md +++ /dev/null @@ -1,32 +0,0 @@ -# Texture::GetMipLevels - -```cpp -Core::uint32 GetMipLevels() const -``` - -获取 Mipmap 级别数。Mipmap 是纹理的多级渐远表示,用于在不同距离时提供合适的细节级别。 - -**参数:** 无 - -**返回:** Mipmap 级别数 - -**线程安全:** ✅ - -**示例:** - -```cpp -Texture tex; -tex.Create(1024, 1024, 1, 1, - TextureType::Texture2D, - TextureFormat::RGBA8_UNORM, - nullptr, 0); -Core::uint32 mips = tex.GetMipLevels(); // 返回 1 - -tex.GenerateMipmaps(); // 如果实现生成多级 mipmap -Core::uint32 mipsAfter = tex.GetMipLevels(); // 可能返回 > 1 -``` - -## 相关文档 - -- [Texture 总览](texture.md) - 返回类总览 -- [GenerateMipmaps](generatemipmaps.md) - 生成 Mipmap 链 \ No newline at end of file diff --git a/docs/api/resources/texture/getpixeldata.md b/docs/api/resources/texture/getpixeldata.md deleted file mode 100644 index ce38c022..00000000 --- a/docs/api/resources/texture/getpixeldata.md +++ /dev/null @@ -1,36 +0,0 @@ -# Texture::GetPixelData - -```cpp -const void* GetPixelData() const -``` - -获取纹理像素数据指针。 - -**参数:** 无 - -**返回:** 像素数据指针,如果纹理未创建或无效返回 `nullptr` - -**线程安全:** ✅ - -**示例:** - -```cpp -// 假设已有像素数据 -std::vector pixels(1024 * 1024 * 4, 255); - -Texture tex; -tex.Create(1024, 1024, 1, 1, - TextureType::Texture2D, - TextureFormat::RGBA8_UNORM, - pixels.data(), pixels.size()); - -const void* data = tex.GetPixelData(); -if (data != nullptr) { - // 可以读取像素数据 -} -``` - -## 相关文档 - -- [Texture 总览](texture.md) - 返回类总览 -- [GetPixelDataSize](getpixeldatasize.md) - 获取像素数据大小 \ No newline at end of file diff --git a/docs/api/resources/texture/getpixeldatasize.md b/docs/api/resources/texture/getpixeldatasize.md deleted file mode 100644 index cef0e47a..00000000 --- a/docs/api/resources/texture/getpixeldatasize.md +++ /dev/null @@ -1,32 +0,0 @@ -# Texture::GetPixelDataSize - -```cpp -size_t GetPixelDataSize() const -``` - -获取纹理像素数据大小(字节)。 - -**参数:** 无 - -**返回:** 像素数据大小(字节) - -**线程安全:** ✅ - -**示例:** - -```cpp -std::vector pixels(1024 * 1024 * 4, 255); - -Texture tex; -tex.Create(1024, 1024, 1, 1, - TextureType::Texture2D, - TextureFormat::RGBA8_UNORM, - pixels.data(), pixels.size()); - -size_t size = tex.GetPixelDataSize(); // 返回 4194304 (1024*1024*4) -``` - -## 相关文档 - -- [Texture 总览](texture.md) - 返回类总览 -- [GetPixelData](getpixeldata.md) - 获取像素数据指针 \ No newline at end of file diff --git a/docs/api/resources/texture/gettexturetype.md b/docs/api/resources/texture/gettexturetype.md deleted file mode 100644 index 9bd95a33..00000000 --- a/docs/api/resources/texture/gettexturetype.md +++ /dev/null @@ -1,29 +0,0 @@ -# Texture::GetTextureType - -```cpp -TextureType GetTextureType() const -``` - -获取纹理类型。 - -**参数:** 无 - -**返回:** `TextureType` 枚举值 - -**线程安全:** ✅ - -**示例:** - -```cpp -Texture tex; -tex.Create(1024, 1024, 1, 1, - TextureType::Texture2D, - TextureFormat::RGBA8_UNORM, - nullptr, 0); -TextureType type = tex.GetTextureType(); // 返回 TextureType::Texture2D -``` - -## 相关文档 - -- [Texture 总览](texture.md) - 返回类总览 -- [GetArraySize](getarraysize.md) - 获取数组大小 \ No newline at end of file diff --git a/docs/api/resources/texture/getusage.md b/docs/api/resources/texture/getusage.md deleted file mode 100644 index ad759ad3..00000000 --- a/docs/api/resources/texture/getusage.md +++ /dev/null @@ -1,29 +0,0 @@ -# Texture::GetUsage - -```cpp -TextureUsage GetUsage() const -``` - -获取纹理用途标志。用途标志可组合使用。 - -**参数:** 无 - -**返回:** `TextureUsage` 枚举值 - -**线程安全:** ✅ - -**示例:** - -```cpp -Texture tex; -tex.Create(1024, 1024, 1, 1, - TextureType::Texture2D, - TextureFormat::RGBA8_UNORM, - nullptr, 0); -TextureUsage usage = tex.GetUsage(); // 返回 TextureUsage::ShaderResource -``` - -## 相关文档 - -- [Texture 总览](texture.md) - 返回类总览 -- [TextureUsage 枚举](./texture.md#textureusage) - 用途枚举说明 \ No newline at end of file diff --git a/docs/api/resources/texture/getwidth.md b/docs/api/resources/texture/getwidth.md deleted file mode 100644 index c9a5797f..00000000 --- a/docs/api/resources/texture/getwidth.md +++ /dev/null @@ -1,30 +0,0 @@ -# Texture::GetWidth - -```cpp -Core::uint32 GetWidth() const -``` - -获取纹理宽度。 - -**参数:** 无 - -**返回:** 纹理宽度(像素) - -**线程安全:** ✅ - -**示例:** - -```cpp -Texture tex; -tex.Create(1024, 512, 1, 1, - TextureType::Texture2D, - TextureFormat::RGBA8_UNORM, - nullptr, 0); - -Core::uint32 width = tex.GetWidth(); // 返回 1024 -``` - -## 相关文档 - -- [Texture 总览](texture.md) - 返回类总览 -- [GetHeight](getheight.md) - 获取纹理高度 \ No newline at end of file diff --git a/docs/api/resources/texture/texture.md b/docs/api/resources/texture/texture.md deleted file mode 100644 index 60ade54e..00000000 --- a/docs/api/resources/texture/texture.md +++ /dev/null @@ -1,159 +0,0 @@ -# Texture - -**命名空间**: `XCEngine::Resources` - -**类型**: `class` (inherits from `IResource`) - -**头文件**: `XCEngine/Resources/Texture/Texture.h` - -**描述**: 纹理资源类,管理 2D/3D 纹理和立方体贴图的像素数据。 - -## 概述 - -`Texture` 是 XCEngine 中的纹理资源类,继承自 `IResource`。它管理纹理的尺寸、格式、像素数据,并支持 mipmap 生成等功能。 - -## 头文件 - -```cpp -#include -``` - -## 枚举类型 - -### TextureType - -纹理类型枚举。 - -| 值 | 描述 | -|----|------| -| `Texture2D` | 2D 纹理 | -| `Texture3D` | 3D 体积纹理 | -| `TextureCube` | 立方体贴图 | -| `Texture2DArray` | 2D 纹理数组 | -| `TextureCubeArray` | 立方体贴图数组 | - -### TextureFormat - -纹理像素格式枚举。 - -| 值 | 描述 | -|----|------| -| `Unknown` | 未知格式 | -| `R8_UNORM` | 单通道 8 位归一化 | -| `RG8_UNORM` | 双通道 8 位归一化 | -| `RGBA8_UNORM` | 四通道 8 位归一化 | -| `RGBA8_SRGB` | 四通道 8 位 sRGB | -| `R16_FLOAT` | 单通道 16 位浮点 | -| `RG16_FLOAT` | 双通道 16 位浮点 | -| `RGBA16_FLOAT` | 四通道 16 位浮点 | -| `R32_FLOAT` | 单通道 32 位浮点 | -| `RG32_FLOAT` | 双通道 32 位浮点 | -| `RGBA32_FLOAT` | 四通道 32 位浮点 | -| `D16_UNORM` | 16 位深度 | -| `D24_UNORM_S8_UINT` | 24 位深度 + 8 位模板 | -| `D32_FLOAT` | 32 位深度 | -| `D32_FLOAT_S8_X24_UINT` | 32 位深度 + 8+24 位模板 | -| `BC1_UNORM` | BC1 压缩 (DXT1) | -| `BC1_UNORM_SRGB` | BC1 sRGB | -| `BC2_UNORM` | BC2 压缩 (DXT3) | -| `BC2_UNORM_SRGB` | BC2 sRGB | -| `BC3_UNORM` | BC3 压缩 (DXT5) | -| `BC3_UNORM_SRGB` | BC3 sRGB | -| `BC4_UNORM` | BC4 压缩 | -| `BC5_UNORM` | BC5 压缩 | -| `BC6H_UF16` | BC6H 压缩 | -| `BC7_UNORM` | BC7 压缩 | -| `BC7_UNORM_SRGB` | BC7 sRGB | - -### TextureUsage - -纹理用途标志枚举(可组合)。 - -| 值 | 描述 | -|----|------| -| `None` | 无特殊用途 | -| `ShaderResource` | 着色器资源 | -| `RenderTarget` | 渲染目标 | -| `DepthStencil` | 深度模板 | -| `UnorderedAccess` | 无序访问 | -| `TransferSrc` | 传输源 | -| `TransferDst` | 传输目标 | - -## 公共方法 - -### 构造与析构 - -| 方法 | 描述 | -|------|------| -| [`Texture`](constructor.md) | 默认构造函数 | -| [`~Texture`](destructor.md) | 析构函数 | - -### IResource 实现 - -继承自 `IResource` 接口。 - -| 方法 | 描述 | -|------|------| -| [`GetType`](../iresource/gettype.md) | 返回 `ResourceType::Texture` | -| [`GetName`](../iresource/getname.md) | 获取纹理名称 | -| [`GetPath`](../iresource/getpath.md) | 获取纹理路径 | -| [`GetGUID`](../iresource/getguid.md) | 获取全局唯一标识符 | -| [`IsValid`](../iresource/isvalid.md) | 检查纹理是否有效 | -| [`GetMemorySize`](../iresource/getmemorysize.md) | 获取内存大小 | -| [`Release`](../iresource/release.md) | 释放纹理引用 | - -### 纹理属性 - -| 方法 | 描述 | -|------|------| -| [`GetWidth`](getwidth.md) | 获取纹理宽度(像素) | -| [`GetHeight`](getheight.md) | 获取纹理高度(像素) | -| [`GetDepth`](getdepth.md) | 获取纹理深度(3D 纹理) | -| [`GetMipLevels`](getmiplevels.md) | 获取 Mipmap 级别数 | -| [`GetArraySize`](getarraysize.md) | 获取数组大小 | -| [`GetTextureType`](gettexturetype.md) | 获取纹理类型 | -| [`GetFormat`](getformat.md) | 获取纹理格式 | -| [`GetUsage`](getusage.md) | 获取纹理用途标志 | - -### 像素数据 - -| 方法 | 描述 | -|------|------| -| [`GetPixelData`](getpixeldata.md) | 获取像素数据指针 | -| [`GetPixelDataSize`](getpixeldatasize.md) | 获取像素数据大小 | - -### 创建与操作 - -| 方法 | 描述 | -|------|------| -| [`Create`](create.md) | 创建纹理 | -| [`GenerateMipmaps`](generatemipmaps.md) | 生成 Mipmap 链 | - -## 使用示例 - -```cpp -// 手动创建纹理 -Texture tex; -bool created = tex.Create( - 1024, // 宽度 - 1024, // 高度 - 1, // 深度 - 1, // Mipmap 级别数 - TextureType::Texture2D, // 类型 - TextureFormat::RGBA8_UNORM, // 格式 - pixelData, // 像素数据 - pixelDataSize // 数据大小 -); - -// 访问纹理属性 -uint32_t w = tex.GetWidth(); -uint32_t h = tex.GetHeight(); -auto format = tex.GetFormat(); -``` - -## 相关文档 - -- [IResource](../iresource/iresource.md) - 资源基类 -- [ResourceManager](../resource-manager/resource-manager.md) - 资源管理器 -- [RHITexture](../../rhi/texture/texture.md) - RHI 纹理接口 -- [Resources 总览](../resources.md) - 返回模块总览 \ No newline at end of file diff --git a/docs/api/rhi/buffer/buffer.md b/docs/api/rhi/buffer/buffer.md deleted file mode 100644 index dde84254..00000000 --- a/docs/api/rhi/buffer/buffer.md +++ /dev/null @@ -1,90 +0,0 @@ -# RHIBuffer - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` (abstract) - -**头文件**: `XCEngine/RHI/RHIBuffer.h` - -**描述**: GPU 缓冲区资源抽象接口,用于管理顶点缓冲、索引缓冲、常量缓冲等 GPU 内存资源。 - -## 概述 - -`RHIBuffer` 封装了 GPU 缓冲区的创建、数据上传、状态管理等操作。支持多种缓冲区类型,包括顶点缓冲、索引缓冲、常量缓冲等。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`RHIBuffer`](constructor.md) | 默认构造函数 | -| [`~RHIBuffer`](destructor.md) | 虚析构函数 | -| [`Map`](map.md) | 映射缓冲区到 CPU 可访问内存 | -| [`Unmap`](unmap.md) | 取消映射 | -| [`SetData`](set-data.md) | 设置缓冲区数据 | -| [`GetSize`](get-size.md) | 获取缓冲区大小 | -| [`GetBufferType`](get-buffer-type.md) | 获取缓冲区类型 | -| [`SetBufferType`](set-buffer-type.md) | 设置缓冲区类型 | -| [`GetStride`](get-stride.md) | 获取缓冲区步长 | -| [`SetStride`](set-stride.md) | 设置缓冲区步长 | -| [`GetState`](get-state.md) | 获取资源状态 | -| [`SetState`](set-state.md) | 设置资源状态 | -| [`Shutdown`](shutdown.md) | 关闭并释放资源 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | -| [`GetName`](get-name.md) | 获取资源名称 | -| [`SetName`](set-name.md) | 设置资源名称 | - -## 缓冲区类型 (BufferType) - -| 枚举值 | 描述 | -|--------|------| -| `BufferType::Vertex` | 顶点缓冲 | -| `BufferType::Index` | 索引缓冲 | -| `BufferType::Constant` | 常量缓冲 (Constant Buffer) | -| `BufferType::ReadBack` | 回读缓冲(用于 CPU 读取 GPU 数据) | -| `BufferType::Indirect` | 间接执行缓冲 | -| `BufferType::RaytracingAccelerationStructure` | 光线追踪加速结构 | -| `BufferType::ShaderBindingTable` | 光线追踪着色器绑定表 | - -## 资源状态 (ResourceStates) - -| 状态 | 描述 | -|------|------| -| `Common` | 默认状态 | -| `VertexAndConstantBuffer` | 顶点/常量缓冲 | -| `IndexBuffer` | 索引缓冲 | -| `RenderTarget` | 渲染目标 | -| `UnorderedAccess` | 无序访问 | -| `DepthWrite` | 深度写入 | -| `DepthRead` | 深度读取 | -| `NonPixelShaderResource` | 非像素着色器资源 | -| `PixelShaderResource` | 像素着色器资源 | -| `CopySrc` | 复制源 | -| `CopyDst` | 复制目标 | -| `Present` | 呈现状态 | -| `GenericRead` | 通用读取 | - -## 使用示例 - -```cpp -BufferDesc desc; -desc.size = sizeof(Vertex) * vertexCount; -desc.stride = sizeof(Vertex); -desc.bufferType = (uint32_t)BufferType::Vertex; -desc.flags = 0; - -RHIBuffer* vertexBuffer = device->CreateBuffer(desc); - -void* mapped = vertexBuffer->Map(); -memcpy(mapped, vertexData, desc.size); -vertexBuffer->Unmap(); - -vertexBuffer->SetState(ResourceStates::VertexAndConstantBuffer); -vertexBuffer->Shutdown(); -``` - -## 相关文档 - -- [../rhi/rhi.md](../rhi.md) - RHI 模块总览 -- [RHIDevice](../device/device.md) - 创建设备 -- [RHITexture](../texture/texture.md) - 纹理资源 -- [RHICommandList](../command-list/command-list.md) - 命令列表 diff --git a/docs/api/rhi/buffer/constructor.md b/docs/api/rhi/buffer/constructor.md deleted file mode 100644 index 6cdae526..00000000 --- a/docs/api/rhi/buffer/constructor.md +++ /dev/null @@ -1,28 +0,0 @@ -# RHIBuffer::RHIBuffer - -```cpp -RHIBuffer() = default; -``` - -默认构造函数,创建空的 RHIBuffer 对象。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 创建空的缓冲区对象 -RHIBuffer* buffer = device->CreateBuffer(desc); -// buffer 现在是一个有效的缓冲区引用 -``` - -## 相关文档 - -- [RHIBuffer 总览](buffer.md) - 返回类总览 -- [CreateBuffer](../device/create-buffer.md) - 创建设备 diff --git a/docs/api/rhi/buffer/destructor.md b/docs/api/rhi/buffer/destructor.md deleted file mode 100644 index 526fcb09..00000000 --- a/docs/api/rhi/buffer/destructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHIBuffer::~RHIBuffer - -```cpp -virtual ~RHIBuffer() = default; -``` - -虚析构函数,确保派生类对象通过基类指针删除时能正确调用析构函数。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过基类指针销毁缓冲区对象 -RHIBuffer* buffer = device->CreateBuffer(desc); -// ... 使用 buffer ... -delete buffer; // 自动调用派生类析构函数 -``` - -## 相关文档 - -- [RHIBuffer 总览](buffer.md) - 返回类总览 -- [Shutdown](shutdown.md) - 关闭缓冲区 diff --git a/docs/api/rhi/buffer/get-buffer-type.md b/docs/api/rhi/buffer/get-buffer-type.md deleted file mode 100644 index 863c3a81..00000000 --- a/docs/api/rhi/buffer/get-buffer-type.md +++ /dev/null @@ -1,28 +0,0 @@ -# RHIBuffer::GetBufferType - -```cpp -virtual BufferType GetBufferType() const = 0; -``` - -获取缓冲区的类型,用于区分顶点缓冲、索引缓冲、常量缓冲等。 - -**返回:** `BufferType` 枚举值 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -BufferType type = buffer->GetBufferType(); -if (type == BufferType::Vertex) { - printf("This is a vertex buffer\n"); -} else if (type == BufferType::Index) { - printf("This is an index buffer\n"); -} -``` - -## 相关文档 - -- [RHIBuffer 总览](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/buffer/get-name.md b/docs/api/rhi/buffer/get-name.md deleted file mode 100644 index 98f2eead..00000000 --- a/docs/api/rhi/buffer/get-name.md +++ /dev/null @@ -1,24 +0,0 @@ -# RHIBuffer::GetName - -```cpp -virtual const std::string& GetName() const = 0; -``` - -获取缓冲区名称(用于调试和诊断)。名称通常在图形调试器(如 RenderDoc、PIX)中显示。 - -**返回:** 缓冲区名称字符串 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -const std::string& name = buffer->GetName(); -printf("Buffer name: %s\n", name.c_str()); -``` - -## 相关文档 - -- [RHIBuffer 总览](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/buffer/get-native-handle.md b/docs/api/rhi/buffer/get-native-handle.md deleted file mode 100644 index e96eb90f..00000000 --- a/docs/api/rhi/buffer/get-native-handle.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHIBuffer::GetNativeHandle - -```cpp -virtual void* GetNativeHandle() = 0; -``` - -获取底层图形 API 的原生资源句柄,用于平台特定操作或调试。 - -**返回:** -- D3D12: `ID3D12Resource*` -- Vulkan: `VkBuffer` -- OpenGL: `GLuint` - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -void* handle = buffer->GetNativeHandle(); -#ifdef _WIN32 - ID3D12Resource* d3d12Resource = static_cast(handle); -#endif -``` - -## 相关文档 - -- [RHIBuffer 总览](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/buffer/get-size.md b/docs/api/rhi/buffer/get-size.md deleted file mode 100644 index 2a413ed4..00000000 --- a/docs/api/rhi/buffer/get-size.md +++ /dev/null @@ -1,24 +0,0 @@ -# RHIBuffer::GetSize - -```cpp -virtual uint64_t GetSize() const = 0; -``` - -获取缓冲区总大小(字节)。 - -**返回:** 缓冲区大小(字节) - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -uint64_t size = buffer->GetSize(); -printf("Buffer size: %llu bytes\n", (unsigned long long)size); -``` - -## 相关文档 - -- [RHIBuffer 总览](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/buffer/get-state.md b/docs/api/rhi/buffer/get-state.md deleted file mode 100644 index f46e9993..00000000 --- a/docs/api/rhi/buffer/get-state.md +++ /dev/null @@ -1,26 +0,0 @@ -# RHIBuffer::GetState - -```cpp -virtual ResourceStates GetState() const = 0; -``` - -获取缓冲区当前所处的资源状态。资源状态决定缓冲区可以用于哪些 GPU 操作。 - -**返回:** `ResourceStates` 枚举值 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceStates state = buffer->GetState(); -if (state == ResourceStates::VertexAndConstantBuffer) { - printf("Buffer is ready for vertex binding\n"); -} -``` - -## 相关文档 - -- [RHIBuffer 总览](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/buffer/get-stride.md b/docs/api/rhi/buffer/get-stride.md deleted file mode 100644 index 88c59ca0..00000000 --- a/docs/api/rhi/buffer/get-stride.md +++ /dev/null @@ -1,24 +0,0 @@ -# RHIBuffer::GetStride - -```cpp -virtual uint32_t GetStride() const = 0; -``` - -获取单个元素的字节大小(步长)。对于顶点缓冲是单个顶点的字节大小,对于索引缓冲是单个索引的字节大小。 - -**返回:** 元素步长(字节) - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -uint32_t stride = buffer->GetStride(); -printf("Element stride: %u bytes\n", stride); -``` - -## 相关文档 - -- [RHIBuffer 总览](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/buffer/map.md b/docs/api/rhi/buffer/map.md deleted file mode 100644 index 8e3c59dc..00000000 --- a/docs/api/rhi/buffer/map.md +++ /dev/null @@ -1,27 +0,0 @@ -# RHIBuffer::Map - -```cpp -virtual void* Map() = 0; -``` - -将缓冲区 GPU 内存映射到 CPU 可访问的虚拟地址空间。映射后可直接使用 memcpy 等 CPU 内存操作函数写入数据。 - -**返回:** 指向缓冲区数据的指针,映射失败返回 `nullptr` - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -void* data = buffer->Map(); -if (data) { - memcpy(data, vertexData, bufferSize); - buffer->Unmap(); -} -``` - -## 相关文档 - -- [RHIBuffer 总览](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/buffer/set-buffer-type.md b/docs/api/rhi/buffer/set-buffer-type.md deleted file mode 100644 index ebd56a54..00000000 --- a/docs/api/rhi/buffer/set-buffer-type.md +++ /dev/null @@ -1,24 +0,0 @@ -# RHIBuffer::SetBufferType - -```cpp -virtual void SetBufferType(BufferType type) = 0; -``` - -设置缓冲区的类型。应在缓冲区创建后立即设置,确保后续绑定到渲染管线时使用正确的类型。 - -**参数:** -- `type` - 缓冲区类型(`Vertex`、`Index`、`Constant` 等) - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -buffer->SetBufferType(BufferType::Vertex); -``` - -## 相关文档 - -- [RHIBuffer 总览](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/buffer/set-data.md b/docs/api/rhi/buffer/set-data.md deleted file mode 100644 index 4c390b57..00000000 --- a/docs/api/rhi/buffer/set-data.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHIBuffer::SetData - -```cpp -virtual void SetData(const void* data, size_t size, size_t offset = 0) = 0; -``` - -设置缓冲区数据。 - -**参数:** -- `data` - 源数据指针 -- `size` - 数据大小(字节) -- `offset` - 缓冲区内的偏移量 - -**复杂度:** O(n) - -**示例:** - -```cpp -Vertex vertices[] = { - {0.0f, 0.5f, 0.0f}, - {0.5f, -0.5f, 0.0f}, - {-0.5f, -0.5f, 0.0f} -}; -buffer->SetData(vertices, sizeof(vertices), 0); -``` - -## 相关文档 - -- [RHIBuffer 总览](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/buffer/set-name.md b/docs/api/rhi/buffer/set-name.md deleted file mode 100644 index 62d6a46c..00000000 --- a/docs/api/rhi/buffer/set-name.md +++ /dev/null @@ -1,22 +0,0 @@ -# RHIBuffer::SetName - -```cpp -virtual void SetName(const std::string& name) = 0; -``` - -设置缓冲区名称(用于调试)。 - -**参数:** -- `name` - 新名称 - -**复杂度:** O(1) - -**示例:** - -```cpp -buffer->SetName("VertexBuffer_Main"); -``` - -## 相关文档 - -- [RHIBuffer 总览](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/buffer/set-state.md b/docs/api/rhi/buffer/set-state.md deleted file mode 100644 index 6bc3eaaa..00000000 --- a/docs/api/rhi/buffer/set-state.md +++ /dev/null @@ -1,22 +0,0 @@ -# RHIBuffer::SetState - -```cpp -virtual void SetState(ResourceStates state) = 0; -``` - -设置资源状态。 - -**参数:** -- `state` - 新的资源状态 - -**复杂度:** O(1) - -**示例:** - -```cpp -buffer->SetState(ResourceStates::VertexAndConstantBuffer); -``` - -## 相关文档 - -- [RHIBuffer 总览](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/buffer/set-stride.md b/docs/api/rhi/buffer/set-stride.md deleted file mode 100644 index 0175fe08..00000000 --- a/docs/api/rhi/buffer/set-stride.md +++ /dev/null @@ -1,24 +0,0 @@ -# RHIBuffer::SetStride - -```cpp -virtual void SetStride(uint32_t stride) = 0; -``` - -设置单个元素的字节大小(步长)。 - -**参数:** -- `stride` - 新的步长值(字节) - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -buffer->SetStride(sizeof(Vertex)); -``` - -## 相关文档 - -- [RHIBuffer 总览](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/buffer/shutdown.md b/docs/api/rhi/buffer/shutdown.md deleted file mode 100644 index 0ec29257..00000000 --- a/docs/api/rhi/buffer/shutdown.md +++ /dev/null @@ -1,23 +0,0 @@ -# RHIBuffer::Shutdown - -```cpp -virtual void Shutdown() = 0; -``` - -关闭并释放缓冲区资源。调用后缓冲区不再可用,所有已绑定的命令列表中的引用将失效。 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -buffer->Shutdown(); -// buffer is now invalid -delete buffer; -``` - -## 相关文档 - -- [RHIBuffer 总览](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/buffer/unmap.md b/docs/api/rhi/buffer/unmap.md deleted file mode 100644 index 0cbcab49..00000000 --- a/docs/api/rhi/buffer/unmap.md +++ /dev/null @@ -1,23 +0,0 @@ -# RHIBuffer::Unmap - -```cpp -virtual void Unmap() = 0; -``` - -取消缓冲区内存映射,使 GPU 可以继续访问该内存。在调用 `Map()` 后必须调用此方法。 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -void* data = buffer->Map(); -memcpy(data, sourceData, size); -buffer->Unmap(); -``` - -## 相关文档 - -- [RHIBuffer 总览](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/capabilities/capabilities.md b/docs/api/rhi/capabilities/capabilities.md deleted file mode 100644 index a8e309c7..00000000 --- a/docs/api/rhi/capabilities/capabilities.md +++ /dev/null @@ -1,86 +0,0 @@ -# RHICapabilities - -**命名空间**: `XCEngine::RHI` - -**类型**: `struct` - -**头文件**: `XCEngine/RHI/RHICapabilities.h` - -**描述**: GPU 设备能力结构体,描述了当前图形设备支持的各种功能和限制。 - -## 概述 - -`RHICapabilities` 是一个纯数据结构的 struct,用于在运行时查询当前 GPU 设备的能力和限制。开发者可以通过 `RHIDevice::GetCapabilities()` 获取设备能力信息,据此决定是否启用特定图形特性(如光线追踪、网格着色器等),或在进行资源创建时确保不超过设备支持的范围。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| `bSupportsRayTracing` | `bool` | 支持光线追踪 | - | -| `bSupportsMeshShaders` | `bool` | 支持 Mesh 着色器 | - | -| `bSupportsExplicitMultiThreading` | `bool` | 支持显式多线程 | - | -| `bSupportsGeometryShaders` | `bool` | 支持几何着色器 | - | -| `bSupportsTessellation` | `bool` | 支持曲面细分 | - | -| `bSupportsComputeShaders` | `bool` | 支持计算着色器 | - | -| `bSupportsDepthBoundsTest` | `bool` | 支持深度范围测试 | - | -| `bSupportsAlphaToCoverage` | `bool` | 支持 Alpha 到覆盖 | - | -| `bSupportsIndependentBlend` | `bool` | 支持独立混合 | - | -| `bSupportsLogicOps` | `bool` | 支持逻辑操作 | - | -| `bSupportsMultiViewport` | `bool` | 支持多视口 | - | -| `bSupportsConservativeRasterization` | `bool` | 支持保守光栅化 | - | -| `bSupportsProgrammableSamplePositions` | `bool` | 支持可编程采样位置 | - | - -### 资源限制 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| `maxTexture2DSize` | `uint32_t` | 最大 2D 纹理尺寸 | - | -| `maxTexture3DSize` | `uint32_t` | 最大 3D 纹理尺寸 | - | -| `maxTextureCubeSize` | `uint32_t` | 最大立方体贴图尺寸 | - | -| `maxRenderTargets` | `uint32_t` | 最大渲染目标数量 | - | -| `maxViewports` | `uint32_t` | 最大视口数量 | - | -| `maxVertexAttribs` | `uint32_t` | 最大顶点属性数量 | - | -| `maxConstantBufferSize` | `uint32_t` | 最大常量缓冲大小 | - | -| `maxAnisotropy` | `uint32_t` | 最大各向异性级别 | - | -| `maxColorAttachments` | `uint32_t` | 最大颜色附件数量 | - | - -### 线宽和点大小 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| `minSmoothedLineWidth` | `float` | 最小平滑线宽 | - | -| `maxSmoothedLineWidth` | `float` | 最大平滑线宽 | - | -| `minPointSize` | `float` | 最小点大小 | - | -| `maxPointSize` | `float` | 最大点大小 | - | -| `maxPointSizeAA` | `float` | 抗锯齿最大点大小 | - | -| `maxLineWidth` | `float` | 最大线宽 | - | -| `maxLineWidthAA` | `float` | 抗锯齿最大线宽 | - | - -### 版本信息 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| `majorVersion` | `int` | 主版本号 | - | -| `minorVersion` | `int` | 次版本号 | - | -| `shaderModel` | `std::string` | 着色器模型版本 | - | - -## 使用示例 - -```cpp -const RHICapabilities& caps = device->GetCapabilities(); - -if (caps.bSupportsRayTracing) { - // 启用光线追踪功能 -} - -if (caps.bSupportsComputeShaders) { - // 启用计算着色器 -} - -uint32_t textureSize = std::min(requestedSize, caps.maxTexture2DSize); -``` - -## 相关文档 - -- [RHI 模块](../rhi.md) - RHI 模块总览 -- [RHIDevice](../device/device.md) - 设备对象 diff --git a/docs/api/rhi/command-list/clear-depth-stencil.md b/docs/api/rhi/command-list/clear-depth-stencil.md deleted file mode 100644 index 5fa9055d..00000000 --- a/docs/api/rhi/command-list/clear-depth-stencil.md +++ /dev/null @@ -1,32 +0,0 @@ -# RHICommandList::ClearDepthStencil - -```cpp -virtual void ClearDepthStencil(void* depthStencil, float depth, uint8_t stencil) = 0; -``` - -清除深度模板视图。可同时清除深度值和模板值。 - -**参数:** -- `depthStencil` - 深度模板视图指针 -- `depth` - 清除深度值(通常为 1.0) -- `stencil` - 清除模板值(范围 0-255) - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -cmdList->ClearDepthStencil(depthStencil, 1.0f, 0); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [Clear](clear.md) - 清除多个渲染目标 -- [SetRenderTargets](set-render-targets.md) - 设置渲染目标 \ No newline at end of file diff --git a/docs/api/rhi/command-list/clear-render-target.md b/docs/api/rhi/command-list/clear-render-target.md deleted file mode 100644 index 979cec6e..00000000 --- a/docs/api/rhi/command-list/clear-render-target.md +++ /dev/null @@ -1,32 +0,0 @@ -# RHICommandList::ClearRenderTarget - -```cpp -virtual void ClearRenderTarget(void* renderTarget, const float color[4]) = 0; -``` - -清除指定的渲染目标视图。用给定的颜色值填充整个渲染目标。 - -**参数:** -- `renderTarget` - 渲染目标视图指针 -- `color` - 4 元素浮点数数组,表示 RGBA 清除颜色(范围 0.0-1.0) - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -float color[4] = {0.0f, 0.0f, 0.0f, 1.0f}; -cmdList->ClearRenderTarget(renderTarget, color); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [Clear](clear.md) - 清除多个渲染目标 -- [SetRenderTargets](set-render-targets.md) - 设置渲染目标 \ No newline at end of file diff --git a/docs/api/rhi/command-list/clear.md b/docs/api/rhi/command-list/clear.md deleted file mode 100644 index 229f28f2..00000000 --- a/docs/api/rhi/command-list/clear.md +++ /dev/null @@ -1,34 +0,0 @@ -# RHICommandList::Clear - -```cpp -virtual void Clear(float r, float g, float b, float a, uint32_t buffers) = 0; -``` - -清除多个渲染目标。可同时清除颜色、深度和模板缓冲区。 - -**参数:** -- `r` - 清除颜色红色分量(范围 0.0-1.0) -- `g` - 清除颜色绿色分量(范围 0.0-1.0) -- `b` - 清除颜色蓝色分量(范围 0.0-1.0) -- `a` - 清除颜色 Alpha 分量(范围 0.0-1.0) -- `buffers` - 要清除的缓冲区标志位(ClearFlags 枚举组合) - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(n) - -**示例:** - -```cpp -cmdList->Clear(0.0f, 0.0f, 0.0f, 1.0f, 0x1); // 清除颜色缓冲 -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [ClearRenderTarget](clear-render-target.md) - 清除渲染目标 -- [ClearDepthStencil](clear-depth-stencil.md) - 清除深度模板 \ No newline at end of file diff --git a/docs/api/rhi/command-list/close.md b/docs/api/rhi/command-list/close.md deleted file mode 100644 index 1ee4390f..00000000 --- a/docs/api/rhi/command-list/close.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHICommandList::Close - -```cpp -virtual void Close() = 0; -``` - -关闭命令列表以执行。调用此方法后,命令列表中的命令无法再被修改,可以提交给图形设备执行。 - -**参数:** 无 - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -commandList->Close(); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [Reset](reset.md) - 重置命令列表 -- [Shutdown](shutdown.md) - 关闭命令列表 \ No newline at end of file diff --git a/docs/api/rhi/command-list/command-list.md b/docs/api/rhi/command-list/command-list.md deleted file mode 100644 index 2ffcb6f8..00000000 --- a/docs/api/rhi/command-list/command-list.md +++ /dev/null @@ -1,70 +0,0 @@ -# RHICommandList - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` (abstract) - -**头文件**: `XCEngine/RHI/RHICommandList.h` - -**描述**: GPU 命令列表抽象接口,用于录制和执行 GPU 渲染命令 - -## 概述 - -`RHICommandList` 是渲染硬件接口(RHI)层提供的抽象命令列表类,用于录制 GPU 命令并提交执行。该类是纯虚接口,具体实现由各图形 API(D3D12、Vulkan 等)提供。 - -主要功能包括: -- 状态设置(管线、视口、裁剪、渲染目标等) -- 资源绑定(顶点缓冲、索引缓冲等) -- 绘制调用(Draw、DrawIndexed) -- 资源操作(复制、转换状态) -- 计算着色器分发 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`RHICommandList`](constructor.md) | 默认构造函数 | -| [`~RHICommandList`](destructor.md) | 虚析构函数 | -| [`Shutdown`](shutdown.md) | 关闭命令列表并释放资源 | -| [`Reset`](reset.md) | 重置命令列表 | -| [`Close`](close.md) | 关闭命令列表 | -| [`TransitionBarrier`](transition-barrier.md) | 资源状态转换 | -| [`SetPipelineState`](set-pipeline-state.md) | 设置管线状态 | -| [`SetPrimitiveTopology`](set-primitive-topology.md) | 设置图元拓扑 | -| [`SetViewport`](set-viewport.md) | 设置视口 | -| [`SetViewports`](set-viewports.md) | 设置多个视口 | -| [`SetScissorRect`](set-scissor-rect.md) | 设置裁剪矩形 | -| [`SetScissorRects`](set-scissor-rects.md) | 设置多个裁剪矩形 | -| [`SetRenderTargets`](set-render-targets.md) | 设置渲染目标 | -| [`SetDepthStencilState`](set-depth-stencil-state.md) | 设置深度模板状态 | -| [`SetStencilRef`](set-stencil-ref.md) | 设置模板参考值 | -| [`SetBlendState`](set-blend-state.md) | 设置混合状态 | -| [`SetBlendFactor`](set-blend-factor.md) | 设置混合因子 | -| [`SetVertexBuffer`](set-vertex-buffer.md) | 设置顶点缓冲 | -| [`SetVertexBuffers`](set-vertex-buffers.md) | 设置多个顶点缓冲 | -| [`SetIndexBuffer`](set-index-buffer.md) | 设置索引缓冲 | -| [`Draw`](draw.md) | 绘制 | -| [`DrawIndexed`](draw-indexed.md) | 索引绘制 | -| [`Clear`](clear.md) | 清除 | -| [`ClearRenderTarget`](clear-render-target.md) | 清除渲染目标 | -| [`ClearDepthStencil`](clear-depth-stencil.md) | 清除深度模板 | -| [`CopyResource`](copy-resource.md) | 复制资源 | -| [`Dispatch`](dispatch.md) | 分发计算任务 | - -## 使用示例 - -```cpp -commandList->Reset(); -commandList->SetPipelineState(pipelineState); -commandList->SetPrimitiveTopology(PrimitiveTopology::TriangleList); -commandList->SetViewport(viewport); -commandList->SetRenderTargets(1, &renderTarget, depthStencil); -commandList->DrawIndexed(indexCount, 1, 0, 0, 0); -commandList->Close(); -commandQueue->ExecuteCommandLists(1, (void**)&commandList); -``` - -## 相关文档 - -- [RHI 模块总览](../rhi.md) - RHI 模块总览 -- [RHICommandQueue](../command-queue/command-queue.md) - 命令队列 \ No newline at end of file diff --git a/docs/api/rhi/command-list/constructor.md b/docs/api/rhi/command-list/constructor.md deleted file mode 100644 index c501d598..00000000 --- a/docs/api/rhi/command-list/constructor.md +++ /dev/null @@ -1,28 +0,0 @@ -# RHICommandList::RHICommandList - -```cpp -RHICommandList() = default; -``` - -默认构造函数,创建空的 RHICommandList 对象。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过设备创建命令列表 -RHICommandList* cmdList = device->CreateCommandList(desc); -// cmdList 现在是一个有效的命令列表引用 -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [CreateCommandList](../device/create-command-list.md) - 创建命令列表 diff --git a/docs/api/rhi/command-list/copy-resource.md b/docs/api/rhi/command-list/copy-resource.md deleted file mode 100644 index 96c5eea2..00000000 --- a/docs/api/rhi/command-list/copy-resource.md +++ /dev/null @@ -1,30 +0,0 @@ -# RHICommandList::CopyResource - -```cpp -virtual void CopyResource(void* dst, void* src) = 0; -``` - -复制整个资源的内容。源资源和目标资源必须类型相同且大小相等。 - -**参数:** -- `dst` - 目标资源指针 -- `src` - 源资源指针 - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(n),n 为资源大小 - -**示例:** - -```cpp -cmdList->CopyResource(dstTexture, srcTexture); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [TransitionBarrier](transition-barrier.md) - 设置资源状态转换 \ No newline at end of file diff --git a/docs/api/rhi/command-list/destructor.md b/docs/api/rhi/command-list/destructor.md deleted file mode 100644 index 906ee6f5..00000000 --- a/docs/api/rhi/command-list/destructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHICommandList::~RHICommandList - -```cpp -virtual ~RHICommandList() = default; -``` - -虚析构函数,确保派生类对象通过基类指针删除时能正确调用析构函数。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过基类指针销毁命令列表对象 -RHICommandList* cmdList = device->CreateCommandList(desc); -// ... 使用 cmdList ... -delete cmdList; // 自动调用派生类析构函数 -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [Shutdown](shutdown.md) - 关闭命令列表 diff --git a/docs/api/rhi/command-list/dispatch.md b/docs/api/rhi/command-list/dispatch.md deleted file mode 100644 index 9a0ee696..00000000 --- a/docs/api/rhi/command-list/dispatch.md +++ /dev/null @@ -1,32 +0,0 @@ -# RHICommandList::Dispatch - -```cpp -virtual void Dispatch(uint32_t x, uint32_t y, uint32_t z) = 0; -``` - -分发计算着色器线程组。用于执行计算着色器(Compute Shader),将工作分配到三维线程网格中。 - -**参数:** -- `x` - X 方向线程组数量 -- `y` - Y 方向线程组数量 -- `z` - Z 方向线程组数量 - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(x * y * z) - -**示例:** - -```cpp -cmdList->Dispatch(8, 8, 1); // 分发 8x8x1 线程组 -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [SetPipelineState](set-pipeline-state.md) - 设置管线状态 -- [Draw](draw.md) - 绘制 \ No newline at end of file diff --git a/docs/api/rhi/command-list/draw-indexed.md b/docs/api/rhi/command-list/draw-indexed.md deleted file mode 100644 index 151ab67e..00000000 --- a/docs/api/rhi/command-list/draw-indexed.md +++ /dev/null @@ -1,34 +0,0 @@ -# RHICommandList::DrawIndexed - -```cpp -virtual void DrawIndexed(uint32_t indexCount, uint32_t instanceCount = 1, uint32_t startIndex = 0, int32_t baseVertex = 0, uint32_t startInstance = 0) = 0; -``` - -执行索引绘制调用。通过索引缓冲区从顶点缓冲区中选择顶点绘制图元,允许顶点复用。 - -**参数:** -- `indexCount` - 索引数量 -- `instanceCount` - 实例数量(默认 1) -- `startIndex` - 起始索引偏移(默认 0) -- `baseVertex` - 基础顶点偏移(默认 0) -- `startInstance` - 起始实例偏移(默认 0) - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(indexCount * instanceCount) - -**示例:** - -```cpp -cmdList->DrawIndexed(36); // 绘制36个索引 -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [Draw](draw.md) - 绘制 -- [SetIndexBuffer](set-index-buffer.md) - 设置索引缓冲 \ No newline at end of file diff --git a/docs/api/rhi/command-list/draw.md b/docs/api/rhi/command-list/draw.md deleted file mode 100644 index a5a07013..00000000 --- a/docs/api/rhi/command-list/draw.md +++ /dev/null @@ -1,33 +0,0 @@ -# RHICommandList::Draw - -```cpp -virtual void Draw(uint32_t vertexCount, uint32_t instanceCount = 1, uint32_t startVertex = 0, uint32_t startInstance = 0) = 0; -``` - -执行非索引绘制调用。从顶点缓冲区按顺序读取顶点数据绘制图元。 - -**参数:** -- `vertexCount` - 顶点数量 -- `instanceCount` - 实例数量(默认 1) -- `startVertex` - 起始顶点偏移(默认 0) -- `startInstance` - 起始实例偏移(默认 0) - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(vertexCount * instanceCount) - -**示例:** - -```cpp -cmdList->Draw(36); // 绘制36个顶点 -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [DrawIndexed](draw-indexed.md) - 索引绘制 -- [SetVertexBuffer](set-vertex-buffer.md) - 设置顶点缓冲 \ No newline at end of file diff --git a/docs/api/rhi/command-list/reset.md b/docs/api/rhi/command-list/reset.md deleted file mode 100644 index 294913d4..00000000 --- a/docs/api/rhi/command-list/reset.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHICommandList::Reset - -```cpp -virtual void Reset() = 0; -``` - -重置命令列表以重新录制。调用此方法后,可以重新开始向命令列表添加命令。 - -**参数:** 无 - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -commandList->Reset(); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [Close](close.md) - 关闭命令列表 -- [Shutdown](shutdown.md) - 关闭命令列表 \ No newline at end of file diff --git a/docs/api/rhi/command-list/set-blend-factor.md b/docs/api/rhi/command-list/set-blend-factor.md deleted file mode 100644 index 63ffc266..00000000 --- a/docs/api/rhi/command-list/set-blend-factor.md +++ /dev/null @@ -1,30 +0,0 @@ -# RHICommandList::SetBlendFactor - -```cpp -virtual void SetBlendFactor(const float factor[4]) = 0; -``` - -设置混合因子数组。当混合函数使用可编程混合因子时,使用此方法设置 RGBA 四个通道的混合因子。 - -**参数:** -- `factor` - 4 元素浮点数数组,表示 RGBA 混合因子(范围 0.0-1.0) - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -float factor[4] = {0.5f, 0.5f, 0.5f, 1.0f}; -cmdList->SetBlendFactor(factor); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [SetBlendState](set-blend-state.md) - 设置混合状态 \ No newline at end of file diff --git a/docs/api/rhi/command-list/set-blend-state.md b/docs/api/rhi/command-list/set-blend-state.md deleted file mode 100644 index fd71b413..00000000 --- a/docs/api/rhi/command-list/set-blend-state.md +++ /dev/null @@ -1,37 +0,0 @@ -# RHICommandList::SetBlendState - -```cpp -virtual void SetBlendState(const BlendState& state) = 0; -``` - -设置颜色混合状态。控制源颜色和目标颜色如何混合,影响最终输出像素的颜色值。 - -**参数:** -- `state` - 混合状态结构体(包含 alphaToCoverageEnable、independentBlendEnable、renderTargets[] 等) - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -BlendState blendState; -blendState.alphaToCoverageEnable = false; -blendState.independentBlendEnable = false; -blendState.renderTargets[0].blendEnable = true; -blendState.renderTargets[0].srcBlend = BlendFactor::SrcAlpha; -blendState.renderTargets[0].dstBlend = BlendFactor::InvSrcAlpha; -blendState.renderTargets[0].blendOp = BlendOp::Add; -cmdList->SetBlendState(blendState); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [SetBlendFactor](set-blend-factor.md) - 设置混合因子 -- [SetPipelineState](set-pipeline-state.md) - 设置管线状态 \ No newline at end of file diff --git a/docs/api/rhi/command-list/set-depth-stencil-state.md b/docs/api/rhi/command-list/set-depth-stencil-state.md deleted file mode 100644 index dd228f83..00000000 --- a/docs/api/rhi/command-list/set-depth-stencil-state.md +++ /dev/null @@ -1,35 +0,0 @@ -# RHICommandList::SetDepthStencilState - -```cpp -virtual void SetDepthStencilState(const DepthStencilState& state) = 0; -``` - -设置深度测试和模板测试的状态配置。控制像素是否根据深度值和模板值被丢弃。 - -**参数:** -- `state` - 深度模板状态结构体(包含 depthEnable、depthWriteMask、depthFunc、stencilEnable 等) - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -DepthStencilState dsState; -dsState.depthEnable = true; -dsState.depthWriteMask = true; -dsState.depthFunc = ComparisonFunc::Less; -dsState.stencilEnable = false; -cmdList->SetDepthStencilState(dsState); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [SetStencilRef](set-stencil-ref.md) - 设置模板参考值 -- [SetPipelineState](set-pipeline-state.md) - 设置管线状态 \ No newline at end of file diff --git a/docs/api/rhi/command-list/set-index-buffer.md b/docs/api/rhi/command-list/set-index-buffer.md deleted file mode 100644 index 746118ed..00000000 --- a/docs/api/rhi/command-list/set-index-buffer.md +++ /dev/null @@ -1,32 +0,0 @@ -# RHICommandList::SetIndexBuffer - -```cpp -virtual void SetIndexBuffer(void* buffer, uint64_t offset, Format format) = 0; -``` - -绑定索引缓冲区。索引缓冲区存储顶点索引,用于 `DrawIndexed` 调用,从顶点缓冲区中选择顶点组成图元。 - -**参数:** -- `buffer` - 索引缓冲区指针 -- `offset` - 缓冲区内的起始偏移量(字节) -- `format` - 索引格式(Format::R16_UINT 或 Format::R32_UINT) - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -cmdList->SetIndexBuffer(indexBuffer, 0, Format::R16_UINT); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [DrawIndexed](draw-indexed.md) - 索引绘制 -- [SetVertexBuffer](set-vertex-buffer.md) - 设置顶点缓冲 \ No newline at end of file diff --git a/docs/api/rhi/command-list/set-pipeline-state.md b/docs/api/rhi/command-list/set-pipeline-state.md deleted file mode 100644 index 67486e91..00000000 --- a/docs/api/rhi/command-list/set-pipeline-state.md +++ /dev/null @@ -1,30 +0,0 @@ -# RHICommandList::SetPipelineState - -```cpp -virtual void SetPipelineState(void* pso) = 0; -``` - -设置渲染管线状态对象。管线状态包含着色器、混合模式、深度模板设置等所有影响渲染的固定功能配置。 - -**参数:** -- `pso` - 管线状态对象指针 - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -cmdList->SetPipelineState(pipelineState); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [SetPrimitiveTopology](set-primitive-topology.md) - 设置图元拓扑 -- [SetDepthStencilState](set-depth-stencil-state.md) - 设置深度模板状态 \ No newline at end of file diff --git a/docs/api/rhi/command-list/set-primitive-topology.md b/docs/api/rhi/command-list/set-primitive-topology.md deleted file mode 100644 index 7d8c5749..00000000 --- a/docs/api/rhi/command-list/set-primitive-topology.md +++ /dev/null @@ -1,30 +0,0 @@ -# RHICommandList::SetPrimitiveTopology - -```cpp -virtual void SetPrimitiveTopology(PrimitiveTopology topology) = 0; -``` - -设置图元拓扑类型。拓扑类型决定了顶点如何被解释为几何图元,如点列表、线段列表、三角形列表等。 - -**参数:** -- `topology` - 图元拓扑类型(枚举值:PointList、LineList、TriangleList 等) - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -cmdList->SetPrimitiveTopology(PrimitiveTopology::TriangleList); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [Draw](draw.md) - 绘制 -- [DrawIndexed](draw-indexed.md) - 索引绘制 \ No newline at end of file diff --git a/docs/api/rhi/command-list/set-render-targets.md b/docs/api/rhi/command-list/set-render-targets.md deleted file mode 100644 index 826db5b7..00000000 --- a/docs/api/rhi/command-list/set-render-targets.md +++ /dev/null @@ -1,33 +0,0 @@ -# RHICommandList::SetRenderTargets - -```cpp -virtual void SetRenderTargets(uint32_t count, void** renderTargets, void* depthStencil = nullptr) = 0; -``` - -设置渲染目标和深度模板缓冲区。指定着色器将输出到的颜色缓冲区和深度模板缓冲区。 - -**参数:** -- `count` - 渲染目标数量(最多 8 个) -- `renderTargets` - 渲染目标数组指针 -- `depthStencil` - 深度模板缓冲区指针(可选,默认为 nullptr) - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -void* targets[1] = {renderTarget}; -cmdList->SetRenderTargets(1, targets, depthStencil); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [ClearRenderTarget](clear-render-target.md) - 清除渲染目标 -- [ClearDepthStencil](clear-depth-stencil.md) - 清除深度模板 \ No newline at end of file diff --git a/docs/api/rhi/command-list/set-scissor-rect.md b/docs/api/rhi/command-list/set-scissor-rect.md deleted file mode 100644 index 973b06f0..00000000 --- a/docs/api/rhi/command-list/set-scissor-rect.md +++ /dev/null @@ -1,35 +0,0 @@ -# RHICommandList::SetScissorRect - -```cpp -virtual void SetScissorRect(const Rect& rect) = 0; -``` - -设置裁剪矩形。超出该矩形区域的像素将被丢弃。此操作用于实现遮罩、屏幕空间裁剪等效果。 - -**参数:** -- `rect` - 裁剪矩形结构体(包含 left、top、right、bottom,单位为像素) - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -Rect rect; -rect.left = 0; -rect.top = 0; -rect.right = 640; -rect.bottom = 480; -cmdList->SetScissorRect(rect); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [SetScissorRects](set-scissor-rects.md) - 设置多个裁剪矩形 -- [SetViewport](set-viewport.md) - 设置视口 \ No newline at end of file diff --git a/docs/api/rhi/command-list/set-scissor-rects.md b/docs/api/rhi/command-list/set-scissor-rects.md deleted file mode 100644 index 3d2dad33..00000000 --- a/docs/api/rhi/command-list/set-scissor-rects.md +++ /dev/null @@ -1,34 +0,0 @@ -# RHICommandList::SetScissorRects - -```cpp -virtual void SetScissorRects(uint32_t count, const Rect* rects) = 0; -``` - -批量设置多个裁剪矩形。与 `SetViewports` 类似,用于多重渲染场景,每个视口对应一个裁剪矩形。 - -**参数:** -- `count` - 裁剪矩形数量(最大 16) -- `rects` - 裁剪矩形数组指针 - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(n),n 为矩形数量 - -**示例:** - -```cpp -Rect rects[2]; -rects[0] = {0, 0, 640, 480}; -rects[1] = {640, 0, 640, 480}; -cmdList->SetScissorRects(2, rects); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [SetScissorRect](set-scissor-rect.md) - 设置单个裁剪矩形 -- [SetViewports](set-viewports.md) - 设置多个视口 \ No newline at end of file diff --git a/docs/api/rhi/command-list/set-stencil-ref.md b/docs/api/rhi/command-list/set-stencil-ref.md deleted file mode 100644 index d09d78d4..00000000 --- a/docs/api/rhi/command-list/set-stencil-ref.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHICommandList::SetStencilRef - -```cpp -virtual void SetStencilRef(uint8_t ref) = 0; -``` - -设置模板测试的参考值。模板测试将每个像素的模板值与此参考值进行比较,决定像素是否被写入。 - -**参数:** -- `ref` - 模板参考值(范围 0-255) - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -cmdList->SetStencilRef(0xFF); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [SetDepthStencilState](set-depth-stencil-state.md) - 设置深度模板状态 \ No newline at end of file diff --git a/docs/api/rhi/command-list/set-vertex-buffer.md b/docs/api/rhi/command-list/set-vertex-buffer.md deleted file mode 100644 index 84273a21..00000000 --- a/docs/api/rhi/command-list/set-vertex-buffer.md +++ /dev/null @@ -1,33 +0,0 @@ -# RHICommandList::SetVertexBuffer - -```cpp -virtual void SetVertexBuffer(uint32_t slot, void* buffer, uint64_t offset, uint32_t stride) = 0; -``` - -绑定单个顶点缓冲区到指定的槽位。顶点缓冲区包含绘制所需的顶点数据。 - -**参数:** -- `slot` - 顶点缓冲区槽位索引(范围 0-15) -- `buffer` - 顶点缓冲区指针 -- `offset` - 缓冲区内的起始偏移量(字节) -- `stride` - 每个顶点的字节大小 - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -cmdList->SetVertexBuffer(0, vertexBuffer, 0, sizeof(Vertex)); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [SetVertexBuffers](set-vertex-buffers.md) - 设置多个顶点缓冲 -- [SetIndexBuffer](set-index-buffer.md) - 设置索引缓冲 \ No newline at end of file diff --git a/docs/api/rhi/command-list/set-vertex-buffers.md b/docs/api/rhi/command-list/set-vertex-buffers.md deleted file mode 100644 index ec8a7d14..00000000 --- a/docs/api/rhi/command-list/set-vertex-buffers.md +++ /dev/null @@ -1,36 +0,0 @@ -# RHICommandList::SetVertexBuffers - -```cpp -virtual void SetVertexBuffers(uint32_t startSlot, uint32_t count, const uint64_t* buffers, const uint64_t* offsets, const uint32_t* strides) = 0; -``` - -批量绑定多个顶点缓冲区到连续的槽位。用于需要多个顶点流的高级渲染场景。 - -**参数:** -- `startSlot` - 起始槽位索引(范围 0-15) -- `count` - 顶点缓冲区数量 -- `buffers` - 顶点缓冲区指针数组 -- `offsets` - 偏移量数组(字节) -- `strides` - 步长数组(每个顶点的字节大小) - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(n),n 为缓冲区数量 - -**示例:** - -```cpp -uint64_t buffers[2] = {(uint64_t)vb1, (uint64_t)vb2}; -uint64_t offsets[2] = {0, 0}; -uint32_t strides[2] = {sizeof(Vertex), sizeof(Vertex)}; -cmdList->SetVertexBuffers(0, 2, buffers, offsets, strides); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [SetVertexBuffer](set-vertex-buffer.md) - 设置单个顶点缓冲 \ No newline at end of file diff --git a/docs/api/rhi/command-list/set-viewport.md b/docs/api/rhi/command-list/set-viewport.md deleted file mode 100644 index 73c8e2bf..00000000 --- a/docs/api/rhi/command-list/set-viewport.md +++ /dev/null @@ -1,37 +0,0 @@ -# RHICommandList::SetViewport - -```cpp -virtual void SetViewport(const Viewport& viewport) = 0; -``` - -设置渲染区域视口。视口定义了渲染输出到目标区域的映射变换。 - -**参数:** -- `viewport` - 视口结构体(包含 topLeftX、topLeftY、width、height、minDepth、maxDepth) - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -Viewport vp; -vp.topLeftX = 0; -vp.topLeftY = 0; -vp.width = 1280; -vp.height = 720; -vp.minDepth = 0.0f; -vp.maxDepth = 1.0f; -cmdList->SetViewport(vp); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [SetViewports](set-viewports.md) - 设置多个视口 -- [SetScissorRect](set-scissor-rect.md) - 设置裁剪矩形 \ No newline at end of file diff --git a/docs/api/rhi/command-list/set-viewports.md b/docs/api/rhi/command-list/set-viewports.md deleted file mode 100644 index c9547858..00000000 --- a/docs/api/rhi/command-list/set-viewports.md +++ /dev/null @@ -1,34 +0,0 @@ -# RHICommandList::SetViewports - -```cpp -virtual void SetViewports(uint32_t count, const Viewport* viewports) = 0; -``` - -批量设置多个渲染视口。用于需要多重渲染(Multi-Rendering)的场景,如立体渲染或分屏渲染。 - -**参数:** -- `count` - 视口数量(最大 16) -- `viewports` - 视口数组指针 - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(n),n 为视口数量 - -**示例:** - -```cpp -Viewport viewports[2]; -viewports[0] = {0, 0, 640, 720, 0.0f, 1.0f}; -viewports[1] = {640, 0, 640, 720, 0.0f, 1.0f}; -cmdList->SetViewports(2, viewports); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [SetViewport](set-viewport.md) - 设置单个视口 -- [SetScissorRects](set-scissor-rects.md) - 设置多个裁剪矩形 \ No newline at end of file diff --git a/docs/api/rhi/command-list/shutdown.md b/docs/api/rhi/command-list/shutdown.md deleted file mode 100644 index 67f9cc02..00000000 --- a/docs/api/rhi/command-list/shutdown.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHICommandList::Shutdown - -```cpp -virtual void Shutdown() = 0; -``` - -关闭命令列表,释放所有相关资源。此方法将命令列表置于不可用状态。 - -**参数:** 无 - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -commandList->Shutdown(); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [Reset](reset.md) - 重置命令列表 -- [Close](close.md) - 关闭命令列表 \ No newline at end of file diff --git a/docs/api/rhi/command-list/transition-barrier.md b/docs/api/rhi/command-list/transition-barrier.md deleted file mode 100644 index a4652723..00000000 --- a/docs/api/rhi/command-list/transition-barrier.md +++ /dev/null @@ -1,33 +0,0 @@ -# RHICommandList::TransitionBarrier - -```cpp -virtual void TransitionBarrier(void* resource, ResourceStates stateBefore, ResourceStates stateAfter) = 0; -``` - -设置资源状态转换屏障,确保 GPU 资源在状态转换前完成所有操作。资源在 GPU 不同的使用方式之间切换时需要通过此方法进行状态转换。 - -**参数:** -- `resource` - 目标资源指针 -- `stateBefore` - 转换前的资源状态(枚举值) -- `stateAfter` - 转换后的资源状态(枚举值) - -**返回:** `void` - -**异常:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 将纹理从渲染目标状态转换到着色器读取状态 -cmdList->TransitionBarrier(texture, ResourceStates::RenderTarget, ResourceStates::ShaderResource); -``` - -## 相关文档 - -- [RHICommandList 总览](command-list.md) - 返回类总览 -- [CopyResource](copy-resource.md) - 复制资源 -- [SetRenderTargets](set-render-targets.md) - 设置渲染目标 \ No newline at end of file diff --git a/docs/api/rhi/command-queue/command-queue.md b/docs/api/rhi/command-queue/command-queue.md deleted file mode 100644 index 4f84c536..00000000 --- a/docs/api/rhi/command-queue/command-queue.md +++ /dev/null @@ -1,76 +0,0 @@ -# RHICommandQueue - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` (abstract) - -**头文件**: `XCEngine/RHI/RHICommandQueue.h` - -**描述**: GPU 命令队列抽象接口,负责提交和执行命令列表,以及 GPU/CPU 同步。 - -## 概述 - -`RHICommandQueue` 是 RHI(Render Hardware Interface)系统中的核心抽象接口之一,封装了底层图形 API(D3D12/Vulkan/Metal 等)的命令队列功能。 - -主要职责: -- **命令提交**:将准备好的命令列表提交到 GPU 执行 -- **GPU/CPU 同步**:通过栅栏(Fence)机制协调 CPU 和 GPU 的执行顺序 -- **队列类型管理**:区分直接队列、计算队列和复制队列 - -使用场景: -- 渲染循环中提交绘制命令 -- 资源在 GPU 和 CPU 之间传输时的同步 -- 多线程渲染时的命令生成和提交 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`RHICommandQueue`](constructor.md) | 默认构造函数 | -| [`~RHICommandQueue`](destructor.md) | 虚析构函数 | -| [`Shutdown`](shutdown.md) | 关闭并释放资源 | -| [`ExecuteCommandLists`](execute-command-lists.md) | 执行命令列表 | -| [`Signal`](signal.md) | 向栅栏发送信号 | -| [`Wait`](wait.md) | 等待栅栏达到指定值 | -| [`GetCompletedValue`](get-completed-value.md) | 获取栅栏已完成的值 | -| [`WaitForIdle`](wait-for-idle.md) | 等待队列所有操作完成 | -| [`GetType`](get-type.md) | 获取队列类型 | -| [`GetTimestampFrequency`](get-timestamp-frequency.md) | 获取时间戳频率 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | - -## 使用示例 - -```cpp -#include -#include -#include -#include - -void RenderLoop(RHIDevice* device, RHICommandQueue* cmdQueue) { - CommandQueueDesc queueDesc; - queueDesc.queueType = (uint32_t)CommandQueueType::Direct; - RHICommandQueue* commandQueue = device->CreateCommandQueue(queueDesc); - - FenceDesc fenceDesc; - RHIFence* fence = device->CreateFence(fenceDesc); - - RHICommandList* commandList = device->CreateCommandList(); - commandList->Begin(); - commandList->DrawInstanced(vertices, vertexCount, 0); - commandList->End(); - - void* lists[1] = { commandList }; - commandQueue->ExecuteCommandLists(1, lists); - commandQueue->Signal(fence, 1); - fence->Wait(1); - - commandQueue->WaitForIdle(); - commandQueue->Shutdown(); -} -``` - -## 相关文档 - -- [RHI 模块](../rhi.md) - RHI 模块总览 -- [RHICommandList](../command-list/command-list.md) - 命令列表 -- [RHIFence](../fence/fence.md) - 同步栅栏 diff --git a/docs/api/rhi/command-queue/constructor.md b/docs/api/rhi/command-queue/constructor.md deleted file mode 100644 index 5768cfd4..00000000 --- a/docs/api/rhi/command-queue/constructor.md +++ /dev/null @@ -1,28 +0,0 @@ -# RHICommandQueue::RHICommandQueue - -```cpp -RHICommandQueue() = default; -``` - -默认构造函数,创建空的 RHICommandQueue 对象。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过设备创建命令队列 -RHICommandQueue* cmdQueue = device->CreateCommandQueue(desc); -// cmdQueue 现在是一个有效的命令队列引用 -``` - -## 相关文档 - -- [RHICommandQueue 总览](command-queue.md) - 返回类总览 -- [CreateCommandQueue](../device/create-command-queue.md) - 创建命令队列 diff --git a/docs/api/rhi/command-queue/destructor.md b/docs/api/rhi/command-queue/destructor.md deleted file mode 100644 index d730bf23..00000000 --- a/docs/api/rhi/command-queue/destructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHICommandQueue::~RHICommandQueue - -```cpp -virtual ~RHICommandQueue() = default; -``` - -虚析构函数,确保派生类对象通过基类指针删除时能正确调用析构函数。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过基类指针销毁命令队列对象 -RHICommandQueue* cmdQueue = device->CreateCommandQueue(desc); -// ... 使用 cmdQueue ... -delete cmdQueue; // 自动调用派生类析构函数 -``` - -## 相关文档 - -- [RHICommandQueue 总览](command-queue.md) - 返回类总览 -- [Shutdown](shutdown.md) - 关闭命令队列 diff --git a/docs/api/rhi/command-queue/execute-command-lists.md b/docs/api/rhi/command-queue/execute-command-lists.md deleted file mode 100644 index ded82a2a..00000000 --- a/docs/api/rhi/command-queue/execute-command-lists.md +++ /dev/null @@ -1,39 +0,0 @@ -# RHICommandQueue::ExecuteCommandLists - -```cpp -virtual void ExecuteCommandLists(uint32_t count, void** lists) = 0; -``` - -将一个或多个命令列表提交到 GPU 执行。命令列表会在 GPU 上异步执行,具体执行时机取决于底层图形 API 的调度策略。 - -**参数:** -- `count` - 命令列表数量,指定 `lists` 数组中的有效元素个数 -- `lists` - 命令列表指针数组,每个元素必须是一个已完成的 `RHICommandList` 对象 - -**返回:** 无 - -**线程安全:** ❌ 非线程安全,应在渲染线程中调用 - -**复杂度:** O(n) - n 为命令列表中的命令数量 - -**示例:** - -```cpp -#include "RHICommandQueue.h" -#include "RHICommandList.h" - -void SubmitDrawCommands(RHICommandQueue* cmdQueue, RHICommandList* cmdList) { - RHICommandList* lists[1] = { cmdList }; - cmdList->Begin(); - cmdList->SetPipelineState(pipelineState); - cmdList->SetVertexBuffer(vertexBuffer); - cmdList->DrawInstanced(vertices, vertexCount, 0); - cmdList->End(); - cmdQueue->ExecuteCommandLists(1, (void**)lists); -} -``` - -## 相关文档 - -- [RHICommandQueue 总览](command-queue.md) - 返回类总览 -- [RHICommandList](../command-list/command-list.md) - 命令列表 diff --git a/docs/api/rhi/command-queue/get-completed-value.md b/docs/api/rhi/command-queue/get-completed-value.md deleted file mode 100644 index 29680e13..00000000 --- a/docs/api/rhi/command-queue/get-completed-value.md +++ /dev/null @@ -1,34 +0,0 @@ -# RHICommandQueue::GetCompletedValue - -```cpp -virtual uint64_t GetCompletedValue() = 0; -``` - -查询栅栏的当前完成值。返回值表示栅栏已被 GPU 完成的最新信号值。如果返回的值小于等待的值,则表示 GPU 尚未完成到该点的所有操作。 - -**参数:** 无 - -**返回:** 栅栏已完成的最大信号值(uint64_t) - -**线程安全:** ✅ 线程安全,可以从任意线程调用 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "RHICommandQueue.h" -#include "RHIFence.h" - -void CheckFenceStatus(RHICommandQueue* cmdQueue, RHIFence* fence) { - uint64_t completed = cmdQueue->GetCompletedValue(); - if (completed >= fence->GetCurrentValue()) { - } -} -``` - -## 相关文档 - -- [RHICommandQueue 总览](command-queue.md) - 返回类总览 -- [Signal](signal.md) - 信号栅栏 -- [Wait](wait.md) - 等待栅栏 diff --git a/docs/api/rhi/command-queue/get-native-handle.md b/docs/api/rhi/command-queue/get-native-handle.md deleted file mode 100644 index d599685c..00000000 --- a/docs/api/rhi/command-queue/get-native-handle.md +++ /dev/null @@ -1,30 +0,0 @@ -# RHICommandQueue::GetNativeHandle - -```cpp -virtual void* GetNativeHandle() = 0; -``` - -获取底层图形 API 的原生命令队列句柄。返回类型为 `void*`,具体类型取决于使用的图形 API(D3D12 ID3D12CommandQueue*、Vulkan VkQueue 等)。 - -**参数:** 无 - -**返回:** 原生命令队列句柄(void*),可用于平台特定的互操作操作 - -**线程安全:** ✅ 线程安全,可以从任意线程调用 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "RHICommandQueue.h" - -void* GetNativeQueue(RHICommandQueue* cmdQueue) { - void* handle = cmdQueue->GetNativeHandle(); - return handle; -} -``` - -## 相关文档 - -- [RHICommandQueue 总览](command-queue.md) - 返回类总览 diff --git a/docs/api/rhi/command-queue/get-timestamp-frequency.md b/docs/api/rhi/command-queue/get-timestamp-frequency.md deleted file mode 100644 index b613d064..00000000 --- a/docs/api/rhi/command-queue/get-timestamp-frequency.md +++ /dev/null @@ -1,30 +0,0 @@ -# RHICommandQueue::GetTimestampFrequency - -```cpp -virtual uint64_t GetTimestampFrequency() const = 0; -``` - -获取命令队列的时间戳频率,即每秒计时计数次数。该频率用于解析时间戳查询结果,计算 GPU 操作的耗时。 - -**参数:** 无 - -**返回:** 时间戳频率(每秒计数次数,uint64_t) - -**线程安全:** ✅ 线程安全,可以从任意线程调用 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "RHICommandQueue.h" - -void CalculateGPUTime(RHICommandQueue* cmdQueue, uint64_t start, uint64_t end) { - uint64_t frequency = cmdQueue->GetTimestampFrequency(); - double elapsedSeconds = static_cast(end - start) / static_cast(frequency); -} -``` - -## 相关文档 - -- [RHICommandQueue 总览](command-queue.md) - 返回类总览 diff --git a/docs/api/rhi/command-queue/get-type.md b/docs/api/rhi/command-queue/get-type.md deleted file mode 100644 index 245b21e2..00000000 --- a/docs/api/rhi/command-queue/get-type.md +++ /dev/null @@ -1,39 +0,0 @@ -# RHICommandQueue::GetType - -```cpp -virtual CommandQueueType GetType() const = 0; -``` - -获取命令队列的类型。命令队列类型决定了它能执行的操作类型。 - -**参数:** 无 - -**返回:** `CommandQueueType` 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Direct` | 直接队列,用于图形和计算命令 | -| `Compute` | 计算队列,专门用于计算着色器 | -| `Copy` | 复制队列,专门用于资源复制 | - -**线程安全:** ✅ 线程安全,可以从任意线程调用 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "RHICommandQueue.h" - -void CheckQueueType(RHICommandQueue* cmdQueue) { - CommandQueueType type = cmdQueue->GetType(); - if (type == CommandQueueType::Direct) { - } else if (type == CommandQueueType::Compute) { - } else if (type == CommandQueueType::Copy) { - } -} -``` - -## 相关文档 - -- [RHICommandQueue 总览](command-queue.md) - 返回类总览 diff --git a/docs/api/rhi/command-queue/shutdown.md b/docs/api/rhi/command-queue/shutdown.md deleted file mode 100644 index efea4521..00000000 --- a/docs/api/rhi/command-queue/shutdown.md +++ /dev/null @@ -1,31 +0,0 @@ -# RHICommandQueue::Shutdown - -```cpp -virtual void Shutdown() = 0; -``` - -关闭命令队列,释放所有相关资源。调用此方法后,命令队列将不再可用,必须重新创建才能继续使用。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ❌ 非线程安全,应在确保没有其他线程访问该队列时调用 - -**复杂度:** O(n) - 取决于管理的命令列表数量和待处理的 GPU 操作 - -**示例:** - -```cpp -#include "RHICommandQueue.h" -#include "RHIDevice.h" - -void CleanupQueue(RHICommandQueue* cmdQueue, RHIDevice* device) { - cmdQueue->WaitForIdle(); - cmdQueue->Shutdown(); -} -``` - -## 相关文档 - -- [RHICommandQueue 总览](command-queue.md) - 返回类总览 diff --git a/docs/api/rhi/command-queue/signal.md b/docs/api/rhi/command-queue/signal.md deleted file mode 100644 index eeab53b5..00000000 --- a/docs/api/rhi/command-queue/signal.md +++ /dev/null @@ -1,36 +0,0 @@ -# RHICommandQueue::Signal - -```cpp -virtual void Signal(RHIFence* fence, uint64_t value) = 0; -``` - -向指定的栅栏发送信号,将栅栏的当前值设置为 `value`。当 GPU 执行到此信号操作时,栅栏值会被更新。该方法用于 GPU 到 CPU 同步。 - -**参数:** -- `fence` - 目标栅栏对象,不能为 `nullptr` -- `value` - 信号值,一个 64 位无符号整数 - -**返回:** 无 - -**线程安全:** ❌ 非线程安全,应在渲染线程中调用 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "RHICommandQueue.h" -#include "RHIFence.h" - -void GPUToCPUSync(RHICommandQueue* cmdQueue, RHIFence* fence) { - cmdQueue->ExecuteCommandLists(1, (void**)&cmdList); - cmdQueue->Signal(fence, 1); - fence->Wait(1); -} -``` - -## 相关文档 - -- [RHICommandQueue 总览](command-queue.md) - 返回类总览 -- [Wait](wait.md) - 等待栅栏 -- [RHIFence](../fence/fence.md) - 同步栅栏 diff --git a/docs/api/rhi/command-queue/wait-for-idle.md b/docs/api/rhi/command-queue/wait-for-idle.md deleted file mode 100644 index 6b98de6d..00000000 --- a/docs/api/rhi/command-queue/wait-for-idle.md +++ /dev/null @@ -1,31 +0,0 @@ -# RHICommandQueue::WaitForIdle - -```cpp -virtual void WaitForIdle() = 0; -``` - -等待命令队列完成所有已提交的操作。这是确保 GPU 执行完所有待处理命令的最简单方法,适用于需要完全同步的场景(如资源销毁前)。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ❌ 非线程安全,应在渲染线程中调用 - -**复杂度:** O(n) - 取决于待处理命令的数量 - -**示例:** - -```cpp -#include "RHICommandQueue.h" - -void EnsureGPUIdle(RHICommandQueue* cmdQueue) { - cmdQueue->ExecuteCommandLists(1, (void**)&cmdList); - cmdQueue->WaitForIdle(); -} -``` - -## 相关文档 - -- [RHICommandQueue 总览](command-queue.md) - 返回类总览 -- [Wait](wait.md) - 等待栅栏 diff --git a/docs/api/rhi/command-queue/wait.md b/docs/api/rhi/command-queue/wait.md deleted file mode 100644 index ecb84044..00000000 --- a/docs/api/rhi/command-queue/wait.md +++ /dev/null @@ -1,36 +0,0 @@ -# RHICommandQueue::Wait - -```cpp -virtual void Wait(RHIFence* fence, uint64_t value) = 0; -``` - -等待指定栅栏达到或超过 `value` 值。在栅栏值未达到指定值之前,命令队列的所有后续操作都不会开始执行。该方法用于 CPU 到 GPU 同步。 - -**参数:** -- `fence` - 目标栅栏对象,不能为 `nullptr` -- `value` - 等待的信号值,一个 64 位无符号整数 - -**返回:** 无 - -**线程安全:** ❌ 非线程安全,应在渲染线程中调用 - -**复杂度:** O(1) - 实际操作取决于底层同步机制 - -**示例:** - -```cpp -#include "RHICommandQueue.h" -#include "RHIFence.h" - -void CPUTO GPUSync(RHICommandQueue* cmdQueue, RHIFence* fence) { - cmdQueue->Signal(fence, 1); - cmdQueue->Wait(fence, 1); -} -``` - -## 相关文档 - -- [RHICommandQueue 总览](command-queue.md) - 返回类总览 -- [Signal](signal.md) - 信号栅栏 -- [GetCompletedValue](get-completed-value.md) - 获取完成值 -- [RHIFence](../fence/fence.md) - 同步栅栏 diff --git a/docs/api/rhi/d3d12/buffer/buffer.md b/docs/api/rhi/d3d12/buffer/buffer.md deleted file mode 100644 index 31d4bfae..00000000 --- a/docs/api/rhi/d3d12/buffer/buffer.md +++ /dev/null @@ -1,80 +0,0 @@ -# D3D12Buffer - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` (继承自 `RHIBuffer`) - -**描述**: DirectX 12 缓冲区的 D3D12 实现,继承自 `RHIBuffer`。 - -## 概述 - -`D3D12Buffer` 是 RHI 缓冲区接口的 DirectX 12 后端实现。该类封装了 `ID3D12Resource` 对象,提供缓冲区的创建、初始化、数据更新和状态管理功能。支持顶点缓冲区、索引缓冲区、常量缓冲区等多种缓冲区类型。 - -## 公共方法 - -### D3D12 特有方法 - -| 方法 | 描述 | -|------|------| -| [`Initialize`](initialize.md) | 初始化缓冲区 | -| [`InitializeFromExisting`](initialize-from-existing.md) | 从现有资源初始化 | -| [`InitializeWithData`](initialize-with-data.md) | 初始化并写入数据 | -| [`UpdateData`](update-data.md) | 更新数据 | -| [`GetResource`](get-resource.md) | 获取 D3D12 资源 | -| [`GetDesc`](get-desc.md) | 获取描述符 | -| [`GetGPUVirtualAddress`](get-gpu-virtual-address.md) | 获取 GPU 虚拟地址 | -| [`GetGPUAddress`](get-gpu-address.md) | 获取 GPU 地址 | - -### 继承自 RHIBuffer 的方法 - -| 方法 | 描述 | -|------|------| -| [`Shutdown`](../../buffer/shutdown.md) | 关闭缓冲区 | -| [`Map`](../../buffer/map.md) | 映射缓冲区 | -| [`Unmap`](../../buffer/unmap.md) | 取消映射 | -| [`SetData`](../../buffer/set-data.md) | 设置数据 | -| [`GetSize`](../../buffer/get-size.md) | 获取缓冲区大小 | -| [`GetState`](../../buffer/get-state.md) | 获取资源状态 | -| [`SetState`](../../buffer/set-state.md) | 设置资源状态 | -| [`GetName`](../../buffer/get-name.md) | 获取资源名称 | -| [`SetName`](../../buffer/set-name.md) | 设置资源名称 | -| [`GetStride`](../../buffer/get-stride.md) | 获取步长 | -| [`SetStride`](../../buffer/set-stride.md) | 设置步长 | -| [`GetBufferType`](../../buffer/get-buffer-type.md) | 获取缓冲区类型 | -| [`SetBufferType`](../../buffer/set-buffer-type.md) | 设置缓冲区类型 | -| [`GetNativeHandle`](../../buffer/get-native-handle.md) | 获取原生句柄 | - -## 使用示例 - -```cpp -// 创建顶点缓冲区 -D3D12Buffer vertexBuffer; -vertexBuffer.Initialize( - device, - sizeof(Vertex) * vertexCount, - D3D12_RESOURCE_STATE_VERTEX_AND_CONSTANT_BUFFER, - D3D12_HEAP_TYPE_DEFAULT); -vertexBuffer.SetName(L"VertexBuffer"); -vertexBuffer.SetBufferType(BufferType::Vertex); -vertexBuffer.SetStride(sizeof(Vertex)); - -// 创建索引缓冲区(带初始数据) -D3D12Buffer indexBuffer; -uint16_t indices[] = { 0, 1, 2, 1, 3, 2 }; -indexBuffer.InitializeWithData( - device, - commandList, - indices, - sizeof(indices), - D3D12_RESOURCE_STATE_INDEX_BUFFER); - -// 使用 UPLOAD 堆更新数据 -D3D12Buffer uploadBuffer; -uploadBuffer.Initialize(device, uploadSize, D3D12_RESOURCE_STATE_GENERIC_READ, D3D12_HEAP_TYPE_UPLOAD); -uploadBuffer.UpdateData(newData, dataSize); -``` - -## 相关文档 - -- [D3D12 后端总览](../../d3d12/d3d12.md) -- [RHIBuffer](../../buffer/buffer.md) - 抽象缓冲区接口 diff --git a/docs/api/rhi/d3d12/buffer/get-desc.md b/docs/api/rhi/d3d12/buffer/get-desc.md deleted file mode 100644 index 49bfeab1..00000000 --- a/docs/api/rhi/d3d12/buffer/get-desc.md +++ /dev/null @@ -1,19 +0,0 @@ -# D3D12Buffer::GetDesc - -## 函数签名 - -```cpp -D3D12_RESOURCE_DESC GetDesc() const -``` - -## 中文描述 - -获取 D3D12 资源描述结构。 - -## 返回值 - -`D3D12_RESOURCE_DESC` - 资源描述 - -## 复杂度 - -O(1) diff --git a/docs/api/rhi/d3d12/buffer/get-gpu-address.md b/docs/api/rhi/d3d12/buffer/get-gpu-address.md deleted file mode 100644 index e8c6468b..00000000 --- a/docs/api/rhi/d3d12/buffer/get-gpu-address.md +++ /dev/null @@ -1,19 +0,0 @@ -# D3D12Buffer::GetGPUAddress - -## 函数签名 - -```cpp -uint64_t GetGPUAddress() const -``` - -## 中文描述 - -获取 GPU 地址(等同于 `GetGPUVirtualAddress`)。 - -## 返回值 - -`uint64_t` - GPU 地址 - -## 复杂度 - -O(1) diff --git a/docs/api/rhi/d3d12/buffer/get-gpu-virtual-address.md b/docs/api/rhi/d3d12/buffer/get-gpu-virtual-address.md deleted file mode 100644 index 746d44b7..00000000 --- a/docs/api/rhi/d3d12/buffer/get-gpu-virtual-address.md +++ /dev/null @@ -1,19 +0,0 @@ -# D3D12Buffer::GetGPUVirtualAddress - -## 函数签名 - -```cpp -D3D12_GPU_VIRTUAL_ADDRESS GetGPUVirtualAddress() const -``` - -## 中文描述 - -获取 GPU 虚拟地址,用于根签名绑定。 - -## 返回值 - -`D3D12_GPU_VIRTUAL_ADDRESS` - GPU 虚拟地址 - -## 复杂度 - -O(1) diff --git a/docs/api/rhi/d3d12/buffer/get-resource.md b/docs/api/rhi/d3d12/buffer/get-resource.md deleted file mode 100644 index b7570306..00000000 --- a/docs/api/rhi/d3d12/buffer/get-resource.md +++ /dev/null @@ -1,19 +0,0 @@ -# D3D12Buffer::GetResource - -## 函数签名 - -```cpp -ID3D12Resource* GetResource() const -``` - -## 中文描述 - -获取底层 `ID3D12Resource` 指针。 - -## 返回值 - -`ID3D12Resource*` - D3D12 资源指针 - -## 复杂度 - -O(1) diff --git a/docs/api/rhi/d3d12/buffer/initialize-from-existing.md b/docs/api/rhi/d3d12/buffer/initialize-from-existing.md deleted file mode 100644 index d8eb37c0..00000000 --- a/docs/api/rhi/d3d12/buffer/initialize-from-existing.md +++ /dev/null @@ -1,35 +0,0 @@ -# D3D12Buffer::InitializeFromExisting - -## 函数签名 - -```cpp -bool InitializeFromExisting(ID3D12Resource* resource) -``` - -## 中文描述 - -从已存在的 D3D12 资源对象初始化缓冲区包装类,不分配新资源。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `resource` | `ID3D12Resource*` | 已存在的 D3D12 资源指针 | - -## 返回值 - -`bool` - 初始化是否成功 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -ComPtr existingResource; -device->CreateReservedResource(&desc, state, nullptr, IID_PPV_ARGS(&existingResource)); - -D3D12Buffer buffer; -buffer.InitializeFromExisting(existingResource.Get()); -``` diff --git a/docs/api/rhi/d3d12/buffer/initialize-with-data.md b/docs/api/rhi/d3d12/buffer/initialize-with-data.md deleted file mode 100644 index 2260a75c..00000000 --- a/docs/api/rhi/d3d12/buffer/initialize-with-data.md +++ /dev/null @@ -1,42 +0,0 @@ -# D3D12Buffer::InitializeWithData - -## 函数签名 - -```cpp -bool InitializeWithData(ID3D12Device* device, ID3D12GraphicsCommandList* commandList, const void* data, uint64_t size, D3D12_RESOURCE_STATES finalState) -``` - -## 中文描述 - -创建缓冲区并通过命令列表从内存数据初始化内容。内部会自动创建上传堆、复制数据、转换状态。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `device` | `ID3D12Device*` | D3D12 设备指针 | -| `commandList` | `ID3D12GraphicsCommandList*` | 命令列表(用于复制操作) | -| `data` | `const void*` | 初始数据指针 | -| `size` | `uint64_t` | 数据大小(字节) | -| `finalState` | `D3D12_RESOURCE_STATES` | 数据复制完成后的目标状态 | - -## 返回值 - -`bool` - 初始化是否成功 - -## 复杂度 - -O(n) - 取决于数据大小,内部创建临时上传堆 - -## 示例 - -```cpp -uint16_t indices[] = { 0, 1, 2, 1, 3, 2 }; -D3D12Buffer indexBuffer; -indexBuffer.InitializeWithData( - device, - commandList, - indices, - sizeof(indices), - D3D12_RESOURCE_STATE_INDEX_BUFFER); -``` diff --git a/docs/api/rhi/d3d12/buffer/initialize.md b/docs/api/rhi/d3d12/buffer/initialize.md deleted file mode 100644 index 94ef4131..00000000 --- a/docs/api/rhi/d3d12/buffer/initialize.md +++ /dev/null @@ -1,39 +0,0 @@ -# D3D12Buffer::Initialize - -## 函数签名 - -```cpp -bool Initialize(ID3D12Device* device, uint64_t size, D3D12_RESOURCE_STATES initialState = D3D12_RESOURCE_STATE_COMMON, D3D12_HEAP_TYPE heapType = D3D12_HEAP_TYPE_DEFAULT) -``` - -## 中文描述 - -创建新缓冲区,分配 D3D12 显存资源。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `device` | `ID3D12Device*` | D3D12 设备指针 | -| `size` | `uint64_t` | 缓冲区大小(字节) | -| `initialState` | `D3D12_RESOURCE_STATES` | 初始资源状态(默认 COMMON) | -| `heapType` | `D3D12_HEAP_TYPE` | 堆类型:DEFAULT(默认)、UPLOAD(上传)、READBACK(回读) | - -## 返回值 - -`bool` - 初始化是否成功 - -## 复杂度 - -O(n) - 取决于缓冲区大小 - -## 示例 - -```cpp -D3D12Buffer vertexBuffer; -vertexBuffer.Initialize( - device->GetDevice(), - sizeof(Vertex) * vertexCount, - D3D12_RESOURCE_STATE_VERTEX_AND_CONSTANT_BUFFER, - D3D12_HEAP_TYPE_DEFAULT); -``` diff --git a/docs/api/rhi/d3d12/buffer/update-data.md b/docs/api/rhi/d3d12/buffer/update-data.md deleted file mode 100644 index e2d3d711..00000000 --- a/docs/api/rhi/d3d12/buffer/update-data.md +++ /dev/null @@ -1,32 +0,0 @@ -# D3D12Buffer::UpdateData - -## 函数签名 - -```cpp -void UpdateData(const void* data, uint64_t size) -``` - -## 中文描述 - -更新缓冲区数据。要求缓冲区使用 UPLOAD 堆类型,否则行为未定义。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `data` | `const void*` | 新数据指针 | -| `size` | `uint64_t` | 数据大小 | - -## 返回值 - -无 - -## 复杂度 - -O(n) - -## 示例 - -```cpp -uploadBuffer.UpdateData(newData, dataSize); -``` diff --git a/docs/api/rhi/d3d12/command-allocator/command-allocator.md b/docs/api/rhi/d3d12/command-allocator/command-allocator.md deleted file mode 100644 index a350e87a..00000000 --- a/docs/api/rhi/d3d12/command-allocator/command-allocator.md +++ /dev/null @@ -1,50 +0,0 @@ -# D3D12CommandAllocator - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` (standalone, does not inherit from base) - -**描述**: DirectX 12 命令分配器的 D3D12 实现,用于管理 GPU 命令分配内存。 - -## 构造函数 - -| 方法 | 描述 | -|------|------| -| [`D3D12CommandAllocator`](constructor.md) | 默认构造函数 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Initialize`](initialize.md) | 初始化命令分配器 | -| [`Shutdown`](shutdown.md) | 关闭命令分配器 | -| [`Reset`](reset.md) | 重置命令分配器 | -| [`IsReady`](is-ready.md) | 检查是否就绪 | -| [`GetCommandAllocator`](get-command-allocator.md) | 获取 D3D12 命令分配器 | - -## 析构函数 - -| 方法 | 描述 | -|------|------| -| [`~D3D12CommandAllocator`](destructor.md) | 析构函数,自动调用 Shutdown | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::RHI; - -D3D12CommandAllocator allocator; -if (allocator.Initialize(device, CommandQueueType::Direct)) { - allocator.Reset(); - if (allocator.IsReady()) { - ID3D12CommandAllocator* native = allocator.GetCommandAllocator(); - } - allocator.Shutdown(); -} -``` - -## 相关文档 - -- [D3D12 后端总览](../../d3d12/d3d12.md) diff --git a/docs/api/rhi/d3d12/command-allocator/constructor.md b/docs/api/rhi/d3d12/command-allocator/constructor.md deleted file mode 100644 index a2df205e..00000000 --- a/docs/api/rhi/d3d12/command-allocator/constructor.md +++ /dev/null @@ -1,20 +0,0 @@ -# D3D12CommandAllocator::D3D12CommandAllocator - -```cpp -D3D12CommandAllocator(); -``` - -默认构造函数,创建一个未初始化的命令分配器实例。创建后需要调用 [`Initialize`](initialize.md) 进行初始化。 - -## 示例 - -```cpp -D3D12CommandAllocator allocator; -// 此时 allocator 未初始化,需要调用 Initialize -allocator.Initialize(device); -``` - -## 相关文档 - -- [D3D12CommandAllocator 总览](command-allocator.md) - 返回类总览 -- [D3D12CommandAllocator::Initialize](initialize.md) - 初始化分配器 diff --git a/docs/api/rhi/d3d12/command-allocator/destructor.md b/docs/api/rhi/d3d12/command-allocator/destructor.md deleted file mode 100644 index c33734f4..00000000 --- a/docs/api/rhi/d3d12/command-allocator/destructor.md +++ /dev/null @@ -1,22 +0,0 @@ -# D3D12CommandAllocator::~D3D12CommandAllocator - -```cpp -~D3D12CommandAllocator(); -``` - -析构函数,自动调用 [`Shutdown`](shutdown.md) 释放底层 D3D12 资源。 - -## 示例 - -```cpp -{ - D3D12CommandAllocator allocator; - allocator.Initialize(device); - // 使用分配器 -} // 离开作用域时析构函数自动调用 Shutdown -``` - -## 相关文档 - -- [D3D12CommandAllocator 总览](command-allocator.md) - 返回类总览 -- [D3D12CommandAllocator::Shutdown](shutdown.md) - 关闭分配器 diff --git a/docs/api/rhi/d3d12/command-allocator/get-command-allocator.md b/docs/api/rhi/d3d12/command-allocator/get-command-allocator.md deleted file mode 100644 index 65183418..00000000 --- a/docs/api/rhi/d3d12/command-allocator/get-command-allocator.md +++ /dev/null @@ -1,25 +0,0 @@ -# D3D12CommandAllocator::GetCommandAllocator - -```cpp -ID3D12CommandAllocator* GetCommandAllocator() const { return m_commandAllocator.Get(); } -``` - -获取底层的 D3D12 命令分配器接口。 - -## 示例 - -```cpp -D3D12CommandAllocator allocator; -if (allocator.Initialize(device)) { - ID3D12CommandAllocator* native = allocator.GetCommandAllocator(); - // 使用原生 D3D12 接口 -} -``` - -**返回:** `ID3D12CommandAllocator*` - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandAllocator 总览](command-allocator.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-allocator/initialize.md b/docs/api/rhi/d3d12/command-allocator/initialize.md deleted file mode 100644 index 3044f096..00000000 --- a/docs/api/rhi/d3d12/command-allocator/initialize.md +++ /dev/null @@ -1,37 +0,0 @@ -# D3D12CommandAllocator::Initialize - -```cpp -bool Initialize(ID3D12Device* device, CommandQueueType type = CommandQueueType::Direct); -``` - -初始化 D3D12 命令分配器,创建指定类型的命令分配器。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `device` | `ID3D12Device*` | D3D12 设备指针 | -| `type` | `CommandQueueType` | 命令队列类型,默认值为 `Direct` | - -## 返回值 - -`bool` - 初始化是否成功 - -## 示例 - -```cpp -D3D12CommandAllocator allocator; -if (allocator.Initialize(device, CommandQueueType::Direct)) { - // 分配器初始化成功 -} -``` - -## 复杂度 - -O(1) - -## 相关文档 - -- [D3D12CommandAllocator 总览](command-allocator.md) - 返回类总览 -- [D3D12CommandAllocator::Reset](reset.md) - 重置分配器 -- [D3D12CommandAllocator::Shutdown](shutdown.md) - 关闭分配器 diff --git a/docs/api/rhi/d3d12/command-allocator/is-ready.md b/docs/api/rhi/d3d12/command-allocator/is-ready.md deleted file mode 100644 index 87f191e8..00000000 --- a/docs/api/rhi/d3d12/command-allocator/is-ready.md +++ /dev/null @@ -1,26 +0,0 @@ -# D3D12CommandAllocator::IsReady - -```cpp -bool IsReady() const; -``` - -检查命令分配器是否准备就绪。 - -## 示例 - -```cpp -D3D12CommandAllocator allocator; -if (allocator.Initialize(device)) { - if (allocator.IsReady()) { - // 分配器就绪可以使用 - } -} -``` - -**返回:** 分配器是否准备就绪 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandAllocator 总览](command-allocator.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-allocator/reset.md b/docs/api/rhi/d3d12/command-allocator/reset.md deleted file mode 100644 index 7d4bfe8f..00000000 --- a/docs/api/rhi/d3d12/command-allocator/reset.md +++ /dev/null @@ -1,25 +0,0 @@ -# D3D12CommandAllocator::Reset - -```cpp -void Reset(); -``` - -重置命令分配器,将分配器重置为初始状态,使其可以重新使用。此方法必须在 GPU 完成所有使用该分配器的命令后才能调用。 - -## 示例 - -```cpp -D3D12CommandAllocator allocator; -if (allocator.Initialize(device)) { - allocator.Reset(); // 重置以重新使用 -} -``` - -## 复杂度 - -O(1) - -## 相关文档 - -- [D3D12CommandAllocator 总览](command-allocator.md) - 返回类总览 -- [D3D12CommandAllocator::Initialize](initialize.md) - 初始化分配器 diff --git a/docs/api/rhi/d3d12/command-allocator/shutdown.md b/docs/api/rhi/d3d12/command-allocator/shutdown.md deleted file mode 100644 index 9607e26a..00000000 --- a/docs/api/rhi/d3d12/command-allocator/shutdown.md +++ /dev/null @@ -1,27 +0,0 @@ -# D3D12CommandAllocator::Shutdown - -```cpp -void Shutdown(); -``` - -关闭 D3D12 命令分配器,释放底层 D3D12 资源。此方法通常不需要显式调用,析构函数会自动执行。 - -## 示例 - -```cpp -D3D12CommandAllocator allocator; -if (allocator.Initialize(device)) { - // 使用分配器 - allocator.Shutdown(); // 显式关闭 -} -// 或者依靠析构函数自动关闭 -``` - -## 复杂度 - -O(1) - -## 相关文档 - -- [D3D12CommandAllocator 总览](command-allocator.md) - 返回类总览 -- [D3D12CommandAllocator::Initialize](initialize.md) - 初始化分配器 diff --git a/docs/api/rhi/d3d12/command-list/alias-barrier-internal.md b/docs/api/rhi/d3d12/command-list/alias-barrier-internal.md deleted file mode 100644 index 83bf2625..00000000 --- a/docs/api/rhi/d3d12/command-list/alias-barrier-internal.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12CommandList::AliasBarrierInternal - -别名屏障内部实现。 - -```cpp -void AliasBarrierInternal(ID3D12Resource* beforeResource, ID3D12Resource* afterResource); -``` - -## 参数 - -- `beforeResource` - 屏障前的资源 -- `afterResource` - 屏障后的资源 - -## 返回值 - -无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -commandList.AliasBarrierInternal(resource1.GetResource(), resource2.GetResource()); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) -- [AliasBarrier](alias-barrier.md) - 别名屏障 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/command-list/alias-barrier.md b/docs/api/rhi/d3d12/command-list/alias-barrier.md deleted file mode 100644 index c336fccb..00000000 --- a/docs/api/rhi/d3d12/command-list/alias-barrier.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12CommandList::AliasBarrier - -```cpp -void AliasBarrier(void* beforeResource = nullptr, void* afterResource = nullptr); -``` - -添加资源别名屏障。 - -**参数:** -- `beforeResource` - 别名切换前的资源 -- `afterResource` - 别名切换后的资源 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/begin-query.md b/docs/api/rhi/d3d12/command-list/begin-query.md deleted file mode 100644 index 9bc50813..00000000 --- a/docs/api/rhi/d3d12/command-list/begin-query.md +++ /dev/null @@ -1,27 +0,0 @@ -# D3D12CommandList::BeginQuery - -```cpp -void BeginQuery(ID3D12QueryHeap* queryHeap, QueryType type, uint32_t index); -``` - -开始查询。 - -**参数:** -- `queryHeap` - 查询堆 -- `type` - 查询类型 -- `index` - 查询索引 - -**复杂度:** O(1) - -**示例:** - -```cpp -ID3D12QueryHeap* queryHeap = /* 获取查询堆 */; -cmdList.BeginQuery(queryHeap, QueryType::Timestamp, 0); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 -- [EndQuery](end-query.md) - 结束查询 -- [ResolveQueryData](resolve-query-data.md) - 解析查询数据 diff --git a/docs/api/rhi/d3d12/command-list/clear-depth-stencil-view.md b/docs/api/rhi/d3d12/command-list/clear-depth-stencil-view.md deleted file mode 100644 index de9cf0c3..00000000 --- a/docs/api/rhi/d3d12/command-list/clear-depth-stencil-view.md +++ /dev/null @@ -1,35 +0,0 @@ -# D3D12CommandList::ClearDepthStencilView - -清除深度模板视图(句柄重载)。 - -```cpp -void ClearDepthStencilView(D3D12_CPU_DESCRIPTOR_HANDLE depthStencilHandle, uint32_t clearFlags, float depth = 1.0f, uint8_t stencil = 0, uint32_t rectCount = 0, const D3D12_RECT* rects = nullptr); -``` - -## 参数 - -- `depthStencilHandle` - 深度模板视图 CPU 句柄 -- `clearFlags` - 清除标志(D3D12_CLEAR_FLAG_DEPTH / D3D12_CLEAR_FLAG_STENCIL) -- `depth` - 深度值(默认1.0f) -- `stencil` - 模板值(默认0) -- `rectCount` - 矩形数量(默认为0表示整个资源) -- `rects` - 要清除的矩形数组(默认为nullptr表示整个资源) - -## 返回值 - -无 - -**线程安全:** ❌ - -**复杂度:** O(n) - -## 示例 - -```cpp -commandList.ClearDepthStencilView(depthStencilHandle, D3D12_CLEAR_FLAG_DEPTH | D3D12_CLEAR_FLAG_STENCIL, 1.0f, 0); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) -- [ClearDepthStencil](clear-depth-stencil.md) - 清除深度模板 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/command-list/clear-depth-stencil.md b/docs/api/rhi/d3d12/command-list/clear-depth-stencil.md deleted file mode 100644 index 961cca0e..00000000 --- a/docs/api/rhi/d3d12/command-list/clear-depth-stencil.md +++ /dev/null @@ -1,18 +0,0 @@ -# D3D12CommandList::ClearDepthStencil - -```cpp -void ClearDepthStencil(void* depthStencil, float depth, uint8_t stencil) override; -``` - -清除深度模板。 - -**参数:** -- `depthStencil` - 深度模板指针 -- `depth` - 深度值 -- `stencil` - 模板值 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/clear-render-target-view.md b/docs/api/rhi/d3d12/command-list/clear-render-target-view.md deleted file mode 100644 index 905f0f46..00000000 --- a/docs/api/rhi/d3d12/command-list/clear-render-target-view.md +++ /dev/null @@ -1,34 +0,0 @@ -# D3D12CommandList::ClearRenderTargetView - -清除渲染目标视图(资源指针重载)。 - -```cpp -void ClearRenderTargetView(ID3D12Resource* renderTarget, const float color[4], uint32_t rectCount = 0, const D3D12_RECT* rects = nullptr); -``` - -## 参数 - -- `renderTarget` - D3D12 资源指针 -- `color` - 清除颜色 RGBA -- `rectCount` - 矩形数量(默认为0表示整个资源) -- `rects` - 要清除的矩形数组(默认为nullptr表示整个资源) - -## 返回值 - -无 - -**线程安全:** ❌ - -**复杂度:** O(n) - -## 示例 - -```cpp -float color[4] = { 0.0f, 0.0f, 0.0f, 1.0f }; -commandList.ClearRenderTargetView(renderTarget.GetResource(), color); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) -- [ClearRenderTarget](clear-render-target.md) - 清除渲染目标 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/command-list/clear-render-target.md b/docs/api/rhi/d3d12/command-list/clear-render-target.md deleted file mode 100644 index e519370b..00000000 --- a/docs/api/rhi/d3d12/command-list/clear-render-target.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12CommandList::ClearRenderTarget - -```cpp -void ClearRenderTarget(void* renderTarget, const float color[4]) override; -``` - -清除渲染目标。 - -**参数:** -- `renderTarget` - 渲染目标指针 -- `color` - 清除颜色 [r, g, b, a] - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/clear-unordered-access-view.md b/docs/api/rhi/d3d12/command-list/clear-unordered-access-view.md deleted file mode 100644 index 9d1fedd2..00000000 --- a/docs/api/rhi/d3d12/command-list/clear-unordered-access-view.md +++ /dev/null @@ -1,28 +0,0 @@ -# D3D12CommandList::ClearUnorderedAccessView - -```cpp -void ClearUnorderedAccessView( - D3D12_GPU_DESCRIPTOR_HANDLE viewHandle, - D3D12_CPU_DESCRIPTOR_HANDLE resourceHandle, - ID3D12Resource* unorderedAccess, - const float values[4], - uint32_t rectCount = 0, - const D3D12_RECT* rects = nullptr -); -``` - -清除无序访问视图。 - -**参数:** -- `viewHandle` - GPU 描述符句柄 -- `resourceHandle` - CPU 描述符句柄 -- `unorderedAccess` - UAV 资源指针 -- `values` - 清除值 [x, y, z, w] -- `rectCount` - 清除矩形数量 -- `rects` - 清除矩形数组 - -**复杂度:** O(n) 其中 n 为 rectCount - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/clear.md b/docs/api/rhi/d3d12/command-list/clear.md deleted file mode 100644 index 25971b1c..00000000 --- a/docs/api/rhi/d3d12/command-list/clear.md +++ /dev/null @@ -1,21 +0,0 @@ -# D3D12CommandList::Clear - -```cpp -void Clear(float r, float g, float b, float a, uint32_t buffers) override; -``` - -清除渲染目标和/或深度模板缓冲区。 - -**参数:** -- `r` - 清除颜色(红色通道) -- `g` - 清除颜色(绿色通道) -- `b` - 清除颜色(蓝色通道) -- `a` - 清除颜色(Alpha通道) -- `buffers` - 要清除的缓冲区标志 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 -- [RHICommandList::Clear](../../command-list/command-list.md) - 基类方法 diff --git a/docs/api/rhi/d3d12/command-list/close.md b/docs/api/rhi/d3d12/command-list/close.md deleted file mode 100644 index baa00789..00000000 --- a/docs/api/rhi/d3d12/command-list/close.md +++ /dev/null @@ -1,14 +0,0 @@ -# D3D12CommandList::Close - -```cpp -void Close() override; -``` - -关闭命令列表,停止录制。 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 -- [RHICommandList::Close](../../command-list/command-list.md) - 基类方法 diff --git a/docs/api/rhi/d3d12/command-list/command-list.md b/docs/api/rhi/d3d12/command-list/command-list.md deleted file mode 100644 index cc3928df..00000000 --- a/docs/api/rhi/d3d12/command-list/command-list.md +++ /dev/null @@ -1,119 +0,0 @@ -# D3D12CommandList - -**命名空间**: `XCEngine::RHI` - -**继承自**: [`RHICommandList`](../../command-list/command-list.md) - -**头文件**: `XCEngine/RHI/D3D12/D3D12CommandList.h` - -## 概述 - -`D3D12CommandList` 是 DirectX 12 命令列表的 RHI 实现,封装了 `ID3D12GraphicsCommandList` 接口。该类负责记录 GPU 命令,包括绘制调用、资源状态转换、渲染目标设置等。 - -### 主要功能 - -- **命令录制**: 支持图形和计算命令的录制 -- **资源状态管理**: 维护资源状态映射表,跟踪资源转换 -- **描述符管理**: 管理 GPU 描述符堆和描述符表 -- **状态设置**: 设置管线状态、根签名、视口、裁剪矩形等 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`D3D12CommandList`](constructor.md) | 构造函数 | -| [`~D3D12CommandList`](destructor.md) | 析构函数 | -| [`Initialize`](initialize.md) | 初始化命令列表 | -| [`Shutdown`](shutdown.md) | 关闭命令列表 | -| [`Reset`](reset.md) | 重置命令列表 | -| [`Close`](close.md) | 关闭命令列表 | -| [`GetCommandList`](get-command-list.md) | 获取 D3D12 命令列表 | -| [`TransitionBarrier`](transition-barrier.md) | 资源状态转换 | -| [`UAVBarrier`](uav-barrier.md) | UAV 屏障 | -| [`AliasBarrier`](alias-barrier.md) | 别名屏障 | -| [`SetPipelineState`](set-pipeline-state.md) | 设置管线状态 | -| [`SetRootSignature`](set-root-signature.md) | 设置根签名 | -| [`SetPrimitiveTopology`](set-primitive-topology.md) | 设置图元拓扑 | -| [`SetViewport`](set-viewport.md) | 设置视口 | -| [`SetViewports`](set-viewports.md) | 设置多个视口 | -| [`SetScissorRect`](set-scissor-rect.md) | 设置裁剪矩形 | -| [`SetScissorRects`](set-scissor-rects.md) | 设置多个裁剪矩形 | -| [`SetRenderTargets`](set-render-targets.md) | 设置渲染目标 | -| [`SetVertexBuffer`](set-vertex-buffer.md) | 设置顶点缓冲 | -| [`SetVertexBuffers`](set-vertex-buffers.md) | 设置多个顶点缓冲 | -| [`SetIndexBuffer`](set-index-buffer.md) | 设置索引缓冲 | -| [`SetDescriptorHeap`](set-descriptor-heap.md) | 设置描述符堆 | -| [`SetDescriptorHeaps`](set-descriptor-heaps.md) | 设置多个描述符堆 | -| [`SetGraphicsDescriptorTable`](set-graphics-descriptor-table.md) | 设置图形描述符表 | -| [`SetComputeDescriptorTable`](set-compute-descriptor-table.md) | 设置计算描述符表 | -| [`SetGraphicsRootConstantBufferView`](set-graphics-root-constant-buffer-view.md) | 设置图形根常量缓冲视图 | -| [`SetGraphicsRoot32BitConstants`](set-graphics-root-32bit-constants.md) | 设置图形根 32 位常量 | -| [`SetGraphicsRootDescriptorTable`](set-graphics-root-descriptor-table.md) | 设置图形根描述符表 | -| [`SetGraphicsRootShaderResourceView`](set-graphics-root-shader-resource-view.md) | 设置图形根着色器资源视图 | -| [`SetStencilRef`](set-stencil-ref.md) | 设置模板引用值 | -| [`SetDepthStencilState`](set-depth-stencil-state.md) | 设置深度模板状态 | -| [`SetBlendState`](set-blend-state.md) | 设置混合状态 | -| [`SetBlendFactor`](set-blend-factor.md) | 设置混合因子 | -| [`SetDepthBias`](set-depth-bias.md) | 设置深度偏移 | -| [`Draw`](draw.md) | 绘制 | -| [`DrawIndexed`](draw-indexed.md) | 索引绘制 | -| [`DrawInstancedIndirect`](draw-instanced-indirect.md) | 实例化间接绘制 | -| [`DrawIndexedInstancedIndirect`](draw-indexed-instanced-indirect.md) | 索引实例化间接绘制 | -| [`Clear`](clear.md) | 清除 | -| [`ClearRenderTarget`](clear-render-target.md) | 清除渲染目标 | -| [`ClearDepthStencil`](clear-depth-stencil.md) | 清除深度模板 | -| [`ClearUnorderedAccessView`](clear-unordered-access-view.md) | 清除无序访问视图 | -| [`CopyResource`](copy-resource.md) | 复制资源 | -| [`CopyBuffer`](copy-buffer.md) | 复制缓冲区 | -| [`CopyTexture`](copy-texture.md) | 复制纹理 | -| [`BeginQuery`](begin-query.md) | 开始查询 | -| [`EndQuery`](end-query.md) | 结束查询 | -| [`ResolveQueryData`](resolve-query-data.md) | 解析查询数据 | -| [`Dispatch`](dispatch.md) | 分发计算任务 | -| [`DispatchIndirect`](dispatch-indirect.md) | 间接分发计算任务 | -| [`ExecuteBundle`](execute-bundle.md) | 执行 Bundle | -| [`GetResourceState`](get-resource-state.md) | 获取资源状态 | -| [`TrackResource`](track-resource.md) | 跟踪资源 | - -## 使用示例 - -```cpp -#include "XCEngine/RHI/D3D12/D3D12CommandList.h" -#include "XCEngine/RHI/D3D12/D3D12Device.h" - -using namespace XCEngine::RHI; - -// 创建命令列表 -D3D12CommandList cmdList; -ID3D12Device* device = /* 获取设备 */; - -// 初始化 -if (!cmdList.Initialize(device, CommandQueueType::Direct)) { - return false; -} - -// 重置并开始录制 -cmdList.Reset(); - -// 设置渲染状态 -cmdList.SetPipelineState(pipelineState); -cmdList.SetRootSignature(rootSignature); -cmdList.SetPrimitiveTopology(PrimitiveTopology::TriangleList); -cmdList.SetViewport(viewport); -cmdList.SetRenderTargets(1, renderTargets, depthStencil); - -// 绑定资源 -cmdList.SetVertexBuffer(0, vertexBuffer, 0, sizeof(Vertex)); -cmdList.SetIndexBuffer(indexBuffer, 0, Format::R32_UINT); - -// 绘制 -cmdList.DrawIndexed(indexCount, 1, 0, 0, 0); - -// 关闭命令列表 -cmdList.Close(); -``` - -## 相关文档 - -- [D3D12 后端总览](../d3d12.md) -- [RHICommandList](../../command-list/command-list.md) - 抽象命令列表接口 diff --git a/docs/api/rhi/d3d12/command-list/constructor.md b/docs/api/rhi/d3d12/command-list/constructor.md deleted file mode 100644 index 38137da2..00000000 --- a/docs/api/rhi/d3d12/command-list/constructor.md +++ /dev/null @@ -1,35 +0,0 @@ -# D3D12CommandList::D3D12CommandList - -构造函数,创建一个空的 D3D12CommandList 对象。 - -```cpp -D3D12CommandList(); -``` - -## 参数 - -无 - -## 返回值 - -无 - -**线程安全:** 非线程安全 - -**复杂度:** O(1) - -## 示例 - -```cpp -#include "XCEngine/RHI/D3D12/D3D12CommandList.h" - -D3D12CommandList commandList; -// 需要调用 Initialize 进行初始化 -commandList.Initialize(device, CommandQueueType::Direct); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) -- [Initialize](initialize.md) - 初始化命令列表 -- [Shutdown](shutdown.md) - 关闭命令列表 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/command-list/copy-buffer.md b/docs/api/rhi/d3d12/command-list/copy-buffer.md deleted file mode 100644 index bbe09a04..00000000 --- a/docs/api/rhi/d3d12/command-list/copy-buffer.md +++ /dev/null @@ -1,30 +0,0 @@ -# D3D12CommandList::CopyBuffer - -```cpp -void CopyBuffer(ID3D12Resource* dst, uint64_t dstOffset, ID3D12Resource* src, uint64_t srcOffset, uint64_t size); -``` - -复制缓冲区。 - -**参数:** -- `dst` - 目标缓冲区 -- `dstOffset` - 目标偏移 -- `src` - 源缓冲区 -- `srcOffset` - 源偏移 -- `size` - 复制大小 - -**复杂度:** O(n),n 为复制数据量 - -**示例:** - -```cpp -ID3D12Resource* srcBuffer = /* 源缓冲区 */; -ID3D12Resource* dstBuffer = /* 目标缓冲区 */; -cmdList.CopyBuffer(dstBuffer, 0, srcBuffer, 0, 1024); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 -- [CopyResource](copy-resource.md) - 复制整个资源 -- [CopyTexture](copy-texture.md) - 复制纹理数据 diff --git a/docs/api/rhi/d3d12/command-list/copy-resource-internal.md b/docs/api/rhi/d3d12/command-list/copy-resource-internal.md deleted file mode 100644 index 097eb00f..00000000 --- a/docs/api/rhi/d3d12/command-list/copy-resource-internal.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12CommandList::CopyResourceInternal - -复制资源内部实现。 - -```cpp -void CopyResourceInternal(ID3D12Resource* dst, ID3D12Resource* src); -``` - -## 参数 - -- `dst` - 目标资源 -- `src` - 源资源 - -## 返回值 - -无 - -**线程安全:** ❌ - -**复杂度:** O(n) - -## 示例 - -```cpp -commandList.CopyResourceInternal(dstResource.GetResource(), srcResource.GetResource()); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) -- [CopyResource](copy-resource.md) - 复制资源 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/command-list/copy-resource.md b/docs/api/rhi/d3d12/command-list/copy-resource.md deleted file mode 100644 index bb6dafe4..00000000 --- a/docs/api/rhi/d3d12/command-list/copy-resource.md +++ /dev/null @@ -1,27 +0,0 @@ -# D3D12CommandList::CopyResource - -```cpp -void CopyResource(void* dst, void* src) override; -``` - -复制资源。 - -**参数:** -- `dst` - 目标资源指针 -- `src` - 源资源指针 - -**复杂度:** O(n),n 为资源大小 - -**示例:** - -```cpp -ID3D12Resource* dst = /* 目标资源 */; -ID3D12Resource* src = /* 源资源 */; -cmdList.CopyResource(dst, src); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 -- [CopyBuffer](copy-buffer.md) - 复制缓冲区数据 -- [CopyTexture](copy-texture.md) - 复制纹理数据 diff --git a/docs/api/rhi/d3d12/command-list/copy-texture.md b/docs/api/rhi/d3d12/command-list/copy-texture.md deleted file mode 100644 index e3415813..00000000 --- a/docs/api/rhi/d3d12/command-list/copy-texture.md +++ /dev/null @@ -1,37 +0,0 @@ -# D3D12CommandList::CopyTexture - -```cpp -void CopyTexture(ID3D12Resource* dst, const D3D12_TEXTURE_COPY_LOCATION& dstLocation, ID3D12Resource* src, const D3D12_TEXTURE_COPY_LOCATION& srcLocation); -``` - -复制纹理。 - -**参数:** -- `dst` - 目标纹理 -- `dstLocation` - 目标位置 -- `src` - 源纹理 -- `srcLocation` - 源位置 - -**复杂度:** O(n),n 为复制数据量 - -**示例:** - -```cpp -D3D12_TEXTURE_COPY_LOCATION dstLoc = {}; -dstLoc.pResource = dstTexture; -dstLoc.Type = D3D12_TEXTURE_COPY_TYPE_SUBRESOURCE_INDEX; -dstLoc.SubresourceIndex = 0; - -D3D12_TEXTURE_COPY_LOCATION srcLoc = {}; -srcLoc.pResource = srcTexture; -srcLoc.Type = D3D12_TEXTURE_COPY_TYPE_SUBRESOURCE_INDEX; -srcLoc.SubresourceIndex = 0; - -cmdList.CopyTexture(dst, dstLoc, src, srcLoc); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 -- [CopyResource](copy-resource.md) - 复制整个资源 -- [CopyBuffer](copy-buffer.md) - 复制缓冲区数据 diff --git a/docs/api/rhi/d3d12/command-list/destructor.md b/docs/api/rhi/d3d12/command-list/destructor.md deleted file mode 100644 index d7364cd0..00000000 --- a/docs/api/rhi/d3d12/command-list/destructor.md +++ /dev/null @@ -1,36 +0,0 @@ -# D3D12CommandList::~D3D12CommandList - -析构函数,销毁 D3D12CommandList 对象。 - -```cpp -~D3D12CommandList() override; -``` - -## 参数 - -无 - -## 返回值 - -无 - -**线程安全:** 非线程安全,请在所有 GPU 操作完成后销毁对象 - -**复杂度:** O(n) - 取决于资源释放时间 - -## 示例 - -```cpp -#include "XCEngine/RHI/D3D12/D3D12CommandList.h" - -{ - D3D12CommandList commandList; - commandList.Initialize(device, CommandQueueType::Direct); - // ... 使用 commandList ... -} // 超出作用域时自动调用析构函数 -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) -- [Shutdown](shutdown.md) - 关闭命令列表 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/command-list/dispatch-indirect-internal.md b/docs/api/rhi/d3d12/command-list/dispatch-indirect-internal.md deleted file mode 100644 index 895a621a..00000000 --- a/docs/api/rhi/d3d12/command-list/dispatch-indirect-internal.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12CommandList::DispatchIndirectInternal - -间接分发计算任务内部实现。 - -```cpp -void DispatchIndirectInternal(ID3D12Resource* argBuffer, uint64_t alignedByteOffset); -``` - -## 参数 - -- `argBuffer` - 参数缓冲区 -- `alignedByteOffset` - 字节偏移 - -## 返回值 - -无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -commandList.DispatchIndirectInternal(argBuffer.GetResource(), 0); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) -- [DispatchIndirect](dispatch-indirect.md) - 间接分发计算任务 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/command-list/dispatch-indirect.md b/docs/api/rhi/d3d12/command-list/dispatch-indirect.md deleted file mode 100644 index fca32953..00000000 --- a/docs/api/rhi/d3d12/command-list/dispatch-indirect.md +++ /dev/null @@ -1,25 +0,0 @@ -# D3D12CommandList::DispatchIndirect - -```cpp -void DispatchIndirect(void* argBuffer, uint64_t alignedByteOffset); -``` - -间接分发计算命令,使用存储在缓冲区中的参数执行 `Dispatch` 操作。 - -**参数:** -- `argBuffer` - 参数缓冲区 -- `alignedByteOffset` - 字节偏移 - -**复杂度:** O(1) - -**示例:** - -```cpp -ID3D12Resource* argBuffer = /* 包含 DispatchIndirect 参数的缓冲区 */; -cmdList.DispatchIndirect(argBuffer, 0); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 -- [Dispatch](dispatch.md) - 直接分发计算任务 diff --git a/docs/api/rhi/d3d12/command-list/dispatch.md b/docs/api/rhi/d3d12/command-list/dispatch.md deleted file mode 100644 index bada4012..00000000 --- a/docs/api/rhi/d3d12/command-list/dispatch.md +++ /dev/null @@ -1,18 +0,0 @@ -# D3D12CommandList::Dispatch - -```cpp -void Dispatch(uint32_t x, uint32_t y, uint32_t z) override; -``` - -分发计算命令。 - -**参数:** -- `x` - X 维度线程组数量 -- `y` - Y 维度线程组数量 -- `z` - Z 维度线程组数量 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/draw-indexed-instanced-indirect-internal.md b/docs/api/rhi/d3d12/command-list/draw-indexed-instanced-indirect-internal.md deleted file mode 100644 index 6acd4a05..00000000 --- a/docs/api/rhi/d3d12/command-list/draw-indexed-instanced-indirect-internal.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12CommandList::DrawIndexedInstancedIndirectInternal - -索引实例化间接绘制内部实现。 - -```cpp -void DrawIndexedInstancedIndirectInternal(ID3D12Resource* argBuffer, uint64_t alignedByteOffset); -``` - -## 参数 - -- `argBuffer` - 参数缓冲区 -- `alignedByteOffset` - 字节偏移 - -## 返回值 - -无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -commandList.DrawIndexedInstancedIndirectInternal(argBuffer.GetResource(), 0); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) -- [DrawIndexedInstancedIndirect](draw-indexed-instanced-indirect.md) - 索引实例化间接绘制 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/command-list/draw-indexed-instanced-indirect.md b/docs/api/rhi/d3d12/command-list/draw-indexed-instanced-indirect.md deleted file mode 100644 index 1f0e2231..00000000 --- a/docs/api/rhi/d3d12/command-list/draw-indexed-instanced-indirect.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12CommandList::DrawIndexedInstancedIndirect - -```cpp -void DrawIndexedInstancedIndirect(void* argBuffer, uint64_t alignedByteOffset); -``` - -间接绘制索引实例。 - -**参数:** -- `argBuffer` - 参数缓冲区 -- `alignedByteOffset` - 字节偏移 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/draw-indexed.md b/docs/api/rhi/d3d12/command-list/draw-indexed.md deleted file mode 100644 index 24b54e07..00000000 --- a/docs/api/rhi/d3d12/command-list/draw-indexed.md +++ /dev/null @@ -1,20 +0,0 @@ -# D3D12CommandList::DrawIndexed - -```cpp -void DrawIndexed(uint32_t indexCount, uint32_t instanceCount = 1, uint32_t startIndex = 0, int32_t baseVertex = 0, uint32_t startInstance = 0) override; -``` - -绘制索引调用。 - -**参数:** -- `indexCount` - 索引数量 -- `instanceCount` - 实例数量 -- `startIndex` - 起始索引 -- `baseVertex` - 基础顶点偏移 -- `startInstance` - 起始实例索引 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/draw-instanced-indirect-internal.md b/docs/api/rhi/d3d12/command-list/draw-instanced-indirect-internal.md deleted file mode 100644 index df6aed71..00000000 --- a/docs/api/rhi/d3d12/command-list/draw-instanced-indirect-internal.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12CommandList::DrawInstancedIndirectInternal - -实例化间接绘制内部实现。 - -```cpp -void DrawInstancedIndirectInternal(ID3D12Resource* argBuffer, uint64_t alignedByteOffset); -``` - -## 参数 - -- `argBuffer` - 参数缓冲区 -- `alignedByteOffset` - 字节偏移 - -## 返回值 - -无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -commandList.DrawInstancedIndirectInternal(argBuffer.GetResource(), 0); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) -- [DrawInstancedIndirect](draw-instanced-indirect.md) - 实例化间接绘制 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/command-list/draw-instanced-indirect.md b/docs/api/rhi/d3d12/command-list/draw-instanced-indirect.md deleted file mode 100644 index 9e44856d..00000000 --- a/docs/api/rhi/d3d12/command-list/draw-instanced-indirect.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12CommandList::DrawInstancedIndirect - -```cpp -void DrawInstancedIndirect(void* argBuffer, uint64_t alignedByteOffset); -``` - -间接绘制实例。 - -**参数:** -- `argBuffer` - 参数缓冲区 -- `alignedByteOffset` - 字节偏移 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/draw.md b/docs/api/rhi/d3d12/command-list/draw.md deleted file mode 100644 index acfc11c3..00000000 --- a/docs/api/rhi/d3d12/command-list/draw.md +++ /dev/null @@ -1,19 +0,0 @@ -# D3D12CommandList::Draw - -```cpp -void Draw(uint32_t vertexCount, uint32_t instanceCount = 1, uint32_t startVertex = 0, uint32_t startInstance = 0) override; -``` - -绘制调用。 - -**参数:** -- `vertexCount` - 顶点数量 -- `instanceCount` - 实例数量 -- `startVertex` - 起始顶点索引 -- `startInstance` - 起始实例索引 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/end-query.md b/docs/api/rhi/d3d12/command-list/end-query.md deleted file mode 100644 index c2ea899b..00000000 --- a/docs/api/rhi/d3d12/command-list/end-query.md +++ /dev/null @@ -1,27 +0,0 @@ -# D3D12CommandList::EndQuery - -```cpp -void EndQuery(ID3D12QueryHeap* queryHeap, QueryType type, uint32_t index); -``` - -结束查询。 - -**参数:** -- `queryHeap` - 查询堆 -- `type` - 查询类型 -- `index` - 查询索引 - -**复杂度:** O(1) - -**示例:** - -```cpp -ID3D12QueryHeap* queryHeap = /* 获取查询堆 */; -cmdList.EndQuery(queryHeap, QueryType::Timestamp, 0); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 -- [BeginQuery](begin-query.md) - 开始查询 -- [ResolveQueryData](resolve-query-data.md) - 解析查询数据 diff --git a/docs/api/rhi/d3d12/command-list/execute-bundle.md b/docs/api/rhi/d3d12/command-list/execute-bundle.md deleted file mode 100644 index 1db2dea6..00000000 --- a/docs/api/rhi/d3d12/command-list/execute-bundle.md +++ /dev/null @@ -1,23 +0,0 @@ -# D3D12CommandList::ExecuteBundle - -```cpp -void ExecuteBundle(ID3D12GraphicsCommandList* bundle); -``` - -执行 Bundle。 - -**参数:** -- `bundle` - Bundle 命令列表 - -**复杂度:** O(1) - -**示例:** - -```cpp -ID3D12GraphicsCommandList* bundle = /* 获取 Bundle */; -cmdList.ExecuteBundle(bundle); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/get-command-list.md b/docs/api/rhi/d3d12/command-list/get-command-list.md deleted file mode 100644 index 0743814b..00000000 --- a/docs/api/rhi/d3d12/command-list/get-command-list.md +++ /dev/null @@ -1,15 +0,0 @@ -# D3D12CommandList::GetCommandList - -```cpp -ID3D12GraphicsCommandList* GetCommandList() const { return m_commandList.Get(); } -``` - -获取底层的 D3D12 图形命令列表接口。 - -**返回:** `ID3D12GraphicsCommandList*` - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/get-resource-state.md b/docs/api/rhi/d3d12/command-list/get-resource-state.md deleted file mode 100644 index bfe88822..00000000 --- a/docs/api/rhi/d3d12/command-list/get-resource-state.md +++ /dev/null @@ -1,30 +0,0 @@ -# D3D12CommandList::GetResourceState - -```cpp -ResourceStates GetResourceState(ID3D12Resource* resource) const; -``` - -获取资源状态。 - -**参数:** -- `resource` - D3D12 资源指针 - -**返回值:** 资源当前状态,如果资源未被跟踪则返回 `ResourceStates::Common` - -**复杂度:** O(1) - -**示例:** - -```cpp -ID3D12Resource* resource = /* 获取资源 */; -ResourceStates state = cmdList.GetResourceState(resource); -if (state == ResourceStates::RenderTarget) { - // 资源当前为渲染目标状态 -} -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 -- [TrackResource](track-resource.md) - 跟踪资源 -- [TransitionBarrier](transition-barrier.md) - 资源状态转换 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/command-list/initialize.md b/docs/api/rhi/d3d12/command-list/initialize.md deleted file mode 100644 index 1de48480..00000000 --- a/docs/api/rhi/d3d12/command-list/initialize.md +++ /dev/null @@ -1,40 +0,0 @@ -# D3D12CommandList::Initialize - -```cpp -bool Initialize(ID3D12Device* device, CommandQueueType type = CommandQueueType::Direct, ID3D12CommandAllocator* allocator = nullptr); -``` - -初始化 D3D12 命令列表,创建 `ID3D12GraphicsCommandList` 实例。 - -**参数:** -- `device` - D3D12 设备指针 -- `type` - 命令队列类型,默认为 `CommandQueueType::Direct` -- `allocator` - 命令分配器指针,如果为 `nullptr`,则由方法内部创建 - -**返回值:** -- `bool` - 初始化成功返回 `true`,失败返回 `false` - -**复杂度:** O(1) - -**示例:** - -```cpp -D3D12CommandList cmdList; -ID3D12Device* device = /* 获取设备 */; - -if (!cmdList.Initialize(device)) { - // 处理初始化失败 - return; -} - -// 使用命令列表... -cmdList.Reset(); -// ... 录制命令 -cmdList.Close(); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 -- [Shutdown](shutdown.md) - 关闭命令列表 -- [Close](close.md) - 关闭命令列表 diff --git a/docs/api/rhi/d3d12/command-list/reset.md b/docs/api/rhi/d3d12/command-list/reset.md deleted file mode 100644 index adc13abb..00000000 --- a/docs/api/rhi/d3d12/command-list/reset.md +++ /dev/null @@ -1,14 +0,0 @@ -# D3D12CommandList::Reset - -```cpp -void Reset() override; -``` - -重置命令列表,准备录制新命令。 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 -- [RHICommandList::Reset](../../command-list/command-list.md) - 基类方法 diff --git a/docs/api/rhi/d3d12/command-list/resolve-query-data.md b/docs/api/rhi/d3d12/command-list/resolve-query-data.md deleted file mode 100644 index 4f7c19ab..00000000 --- a/docs/api/rhi/d3d12/command-list/resolve-query-data.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12CommandList::ResolveQueryData - -```cpp -void ResolveQueryData(ID3D12QueryHeap* queryHeap, QueryType type, uint32_t startIndex, uint32_t count, ID3D12Resource* resultBuffer, uint64_t resultOffset); -``` - -解析查询数据。 - -**参数:** -- `queryHeap` - 查询堆 -- `type` - 查询类型 -- `startIndex` - 起始索引 -- `count` - 查询数量 -- `resultBuffer` - 结果缓冲区 -- `resultOffset` - 结果偏移 - -**复杂度:** O(n),n 为查询数量 - -**示例:** - -```cpp -ID3D12QueryHeap* queryHeap = /* 获取查询堆 */; -ID3D12Resource* resultBuffer = /* 结果缓冲区 */; -cmdList.ResolveQueryData(queryHeap, QueryType::Timestamp, 0, 1, resultBuffer, 0); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 -- [BeginQuery](begin-query.md) - 开始查询 -- [EndQuery](end-query.md) - 结束查询 diff --git a/docs/api/rhi/d3d12/command-list/set-blend-factor.md b/docs/api/rhi/d3d12/command-list/set-blend-factor.md deleted file mode 100644 index 5553f755..00000000 --- a/docs/api/rhi/d3d12/command-list/set-blend-factor.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12CommandList::SetBlendFactor - -```cpp -void SetBlendFactor(const float blendFactor[4]); -``` - -设置混合因子。 - -**参数:** -- `blendFactor` - 混合因子数组 [r, g, b, a] - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-blend-state.md b/docs/api/rhi/d3d12/command-list/set-blend-state.md deleted file mode 100644 index 04ae5a1c..00000000 --- a/docs/api/rhi/d3d12/command-list/set-blend-state.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12CommandList::SetBlendState - -```cpp -void SetBlendState(const BlendState& state) override; -``` - -设置混合状态。 - -**参数:** -- `state` - 混合状态结构体 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-compute-descriptor-table.md b/docs/api/rhi/d3d12/command-list/set-compute-descriptor-table.md deleted file mode 100644 index b2ffe152..00000000 --- a/docs/api/rhi/d3d12/command-list/set-compute-descriptor-table.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12CommandList::SetComputeDescriptorTable - -```cpp -void SetComputeDescriptorTable(uint32_t rootParameterIndex, D3D12_GPU_DESCRIPTOR_HANDLE baseHandle); -``` - -设置计算描述符表。 - -**参数:** -- `rootParameterIndex` - 根参数索引 -- `baseHandle` - GPU 描述符句柄 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-depth-bias.md b/docs/api/rhi/d3d12/command-list/set-depth-bias.md deleted file mode 100644 index 8410d38f..00000000 --- a/docs/api/rhi/d3d12/command-list/set-depth-bias.md +++ /dev/null @@ -1,28 +0,0 @@ -# D3D12CommandList::SetDepthBias - -```cpp -void SetDepthBias(float depthBias, float slopeScaledDepthBias, float depthBiasClamp); -``` - -设置深度偏移。 - -**参数:** -- `depthBias` - 基础深度偏移 -- `slopeScaledDepthBias` - 斜率缩放深度偏移 -- `depthBiasClamp` - 深度偏移上限 - -**复杂度:** O(1) - -**注意:** 当前实现为空,深度偏移通过管线状态对象设置。 - -**示例:** - -```cpp -// 深度偏移参数通常在 PSO 中设置 -// 此方法当前为空实现 -cmdList.SetDepthBias(0.0f, 0.0f, 0.0f); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-depth-stencil-state.md b/docs/api/rhi/d3d12/command-list/set-depth-stencil-state.md deleted file mode 100644 index a54f9d00..00000000 --- a/docs/api/rhi/d3d12/command-list/set-depth-stencil-state.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12CommandList::SetDepthStencilState - -```cpp -void SetDepthStencilState(const DepthStencilState& state) override; -``` - -设置深度模板状态。 - -**参数:** -- `state` - 深度模板状态结构体 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-descriptor-heap.md b/docs/api/rhi/d3d12/command-list/set-descriptor-heap.md deleted file mode 100644 index d4a4b485..00000000 --- a/docs/api/rhi/d3d12/command-list/set-descriptor-heap.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12CommandList::SetDescriptorHeap - -```cpp -void SetDescriptorHeap(ID3D12DescriptorHeap* heap); -``` - -设置描述符堆。 - -**参数:** -- `heap` - D3D12 描述符堆指针 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-descriptor-heaps.md b/docs/api/rhi/d3d12/command-list/set-descriptor-heaps.md deleted file mode 100644 index a3d1eac1..00000000 --- a/docs/api/rhi/d3d12/command-list/set-descriptor-heaps.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12CommandList::SetDescriptorHeaps - -```cpp -void SetDescriptorHeaps(uint32_t count, ID3D12DescriptorHeap** heaps); -``` - -设置多个描述符堆。 - -**参数:** -- `count` - 描述符堆数量 -- `heaps` - 描述符堆指针数组 - -**复杂度:** O(n) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-graphics-descriptor-table.md b/docs/api/rhi/d3d12/command-list/set-graphics-descriptor-table.md deleted file mode 100644 index 51c21b88..00000000 --- a/docs/api/rhi/d3d12/command-list/set-graphics-descriptor-table.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12CommandList::SetGraphicsDescriptorTable - -```cpp -void SetGraphicsDescriptorTable(uint32_t rootParameterIndex, D3D12_GPU_DESCRIPTOR_HANDLE baseHandle); -``` - -设置图形描述符表。 - -**参数:** -- `rootParameterIndex` - 根参数索引 -- `baseHandle` - GPU 描述符句柄 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-graphics-root-32bit-constants.md b/docs/api/rhi/d3d12/command-list/set-graphics-root-32bit-constants.md deleted file mode 100644 index ba7b6763..00000000 --- a/docs/api/rhi/d3d12/command-list/set-graphics-root-32bit-constants.md +++ /dev/null @@ -1,19 +0,0 @@ -# D3D12CommandList::SetGraphicsRoot32BitConstants - -```cpp -void SetGraphicsRoot32BitConstants(uint32_t rootParameterIndex, uint32_t num32BitValuesToSet, const void* pSrcData, uint32_t destOffsetIn32BitValues); -``` - -设置图形根 32 位常量。 - -**参数:** -- `rootParameterIndex` - 根参数索引 -- `num32BitValuesToSet` - 要设置的 32 位值数量 -- `pSrcData` - 源数据指针 -- `destOffsetIn32BitValues` - 目标偏移量 - -**复杂度:** O(n) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-graphics-root-constant-buffer-view.md b/docs/api/rhi/d3d12/command-list/set-graphics-root-constant-buffer-view.md deleted file mode 100644 index 82b4aab9..00000000 --- a/docs/api/rhi/d3d12/command-list/set-graphics-root-constant-buffer-view.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12CommandList::SetGraphicsRootConstantBufferView - -```cpp -void SetGraphicsRootConstantBufferView(uint32_t rootParameterIndex, D3D12_GPU_VIRTUAL_ADDRESS bufferLocation); -``` - -设置图形根常量缓冲区视图。 - -**参数:** -- `rootParameterIndex` - 根参数索引 -- `bufferLocation` - GPU 虚拟地址 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-graphics-root-descriptor-table.md b/docs/api/rhi/d3d12/command-list/set-graphics-root-descriptor-table.md deleted file mode 100644 index 5d17a3fc..00000000 --- a/docs/api/rhi/d3d12/command-list/set-graphics-root-descriptor-table.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12CommandList::SetGraphicsRootDescriptorTable - -```cpp -void SetGraphicsRootDescriptorTable(uint32_t rootParameterIndex, D3D12_GPU_DESCRIPTOR_HANDLE baseDescriptor); -``` - -设置图形根描述符表。 - -**参数:** -- `rootParameterIndex` - 根参数索引 -- `baseDescriptor` - GPU 描述符句柄 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-graphics-root-shader-resource-view.md b/docs/api/rhi/d3d12/command-list/set-graphics-root-shader-resource-view.md deleted file mode 100644 index 4dd985de..00000000 --- a/docs/api/rhi/d3d12/command-list/set-graphics-root-shader-resource-view.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12CommandList::SetGraphicsRootShaderResourceView - -```cpp -void SetGraphicsRootShaderResourceView(uint32_t rootParameterIndex, D3D12_GPU_VIRTUAL_ADDRESS shaderResource); -``` - -设置图形根着色器资源视图。 - -**参数:** -- `rootParameterIndex` - 根参数索引 -- `shaderResource` - GPU 虚拟地址 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-index-buffer-internal.md b/docs/api/rhi/d3d12/command-list/set-index-buffer-internal.md deleted file mode 100644 index b4b07b24..00000000 --- a/docs/api/rhi/d3d12/command-list/set-index-buffer-internal.md +++ /dev/null @@ -1,32 +0,0 @@ -# D3D12CommandList::SetIndexBufferInternal - -设置索引缓冲区内部实现。 - -```cpp -void SetIndexBufferInternal(ID3D12Resource* buffer, uint64_t offset, Format indexFormat); -``` - -## 参数 - -- `buffer` - D3D12 资源指针 -- `offset` - 缓冲区偏移 -- `indexFormat` - 索引格式 - -## 返回值 - -无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -commandList.SetIndexBufferInternal(indexBuffer.GetResource(), 0, Format::R16_UINT); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) -- [SetIndexBuffer](set-index-buffer.md) - 设置索引缓冲区 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/command-list/set-index-buffer.md b/docs/api/rhi/d3d12/command-list/set-index-buffer.md deleted file mode 100644 index 45a26021..00000000 --- a/docs/api/rhi/d3d12/command-list/set-index-buffer.md +++ /dev/null @@ -1,18 +0,0 @@ -# D3D12CommandList::SetIndexBuffer - -```cpp -void SetIndexBuffer(void* buffer, uint64_t offset, Format format) override; -``` - -设置索引缓冲区。 - -**参数:** -- `buffer` - 缓冲区指针 -- `offset` - 缓冲区偏移 -- `format` - 索引格式 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-pipeline-state-internal.md b/docs/api/rhi/d3d12/command-list/set-pipeline-state-internal.md deleted file mode 100644 index 9024184b..00000000 --- a/docs/api/rhi/d3d12/command-list/set-pipeline-state-internal.md +++ /dev/null @@ -1,30 +0,0 @@ -# D3D12CommandList::SetPipelineStateInternal - -设置管线状态内部实现。 - -```cpp -void SetPipelineStateInternal(ID3D12PipelineState* pso); -``` - -## 参数 - -- `pso` - D3D12 管线状态对象 - -## 返回值 - -无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -commandList.SetPipelineStateInternal(pipelineState->GetPipelineState()); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) -- [SetPipelineState](set-pipeline-state.md) - 设置管线状态 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/command-list/set-pipeline-state.md b/docs/api/rhi/d3d12/command-list/set-pipeline-state.md deleted file mode 100644 index d05ac7c6..00000000 --- a/docs/api/rhi/d3d12/command-list/set-pipeline-state.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12CommandList::SetPipelineState - -```cpp -void SetPipelineState(void* pso) override; -``` - -设置图形管线状态对象。 - -**参数:** -- `pso` - 管线状态对象指针 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-primitive-topology.md b/docs/api/rhi/d3d12/command-list/set-primitive-topology.md deleted file mode 100644 index a8e13acf..00000000 --- a/docs/api/rhi/d3d12/command-list/set-primitive-topology.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12CommandList::SetPrimitiveTopology - -```cpp -void SetPrimitiveTopology(PrimitiveTopology topology); -``` - -设置图元拓扑类型。 - -**参数:** -- `topology` - 图元拓扑类型 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-render-targets-handle.md b/docs/api/rhi/d3d12/command-list/set-render-targets-handle.md deleted file mode 100644 index 45081f7a..00000000 --- a/docs/api/rhi/d3d12/command-list/set-render-targets-handle.md +++ /dev/null @@ -1,18 +0,0 @@ -# D3D12CommandList::SetRenderTargetsHandle - -```cpp -void SetRenderTargetsHandle(uint32_t count, const D3D12_CPU_DESCRIPTOR_HANDLE* renderTargetHandles, const D3D12_CPU_DESCRIPTOR_HANDLE* depthStencilHandle = nullptr); -``` - -使用描述符句柄设置渲染目标。 - -**参数:** -- `count` - 渲染目标数量 -- `renderTargetHandles` - 渲染目标描述符句柄数组 -- `depthStencilHandle` - 深度模板描述符句柄 - -**复杂度:** O(n) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-render-targets-internal.md b/docs/api/rhi/d3d12/command-list/set-render-targets-internal.md deleted file mode 100644 index 6ea787db..00000000 --- a/docs/api/rhi/d3d12/command-list/set-render-targets-internal.md +++ /dev/null @@ -1,18 +0,0 @@ -# D3D12CommandList::SetRenderTargetsInternal - -```cpp -void SetRenderTargetsInternal(uint32_t count, ID3D12Resource** renderTargets, ID3D12Resource* depthStencil = nullptr); -``` - -设置渲染目标(内部接口)。 - -**参数:** -- `count` - 渲染目标数量 -- `renderTargets` - D3D12 资源指针数组 -- `depthStencil` - 深度模板资源指针 - -**复杂度:** O(n) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-render-targets.md b/docs/api/rhi/d3d12/command-list/set-render-targets.md deleted file mode 100644 index d64ea5a7..00000000 --- a/docs/api/rhi/d3d12/command-list/set-render-targets.md +++ /dev/null @@ -1,18 +0,0 @@ -# D3D12CommandList::SetRenderTargets - -```cpp -void SetRenderTargets(uint32_t count, void** renderTargets, void* depthStencil = nullptr) override; -``` - -设置渲染目标。 - -**参数:** -- `count` - 渲染目标数量 -- `renderTargets` - 渲染目标指针数组 -- `depthStencil` - 深度模板目标指针 - -**复杂度:** O(n) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-root-signature.md b/docs/api/rhi/d3d12/command-list/set-root-signature.md deleted file mode 100644 index 0593c1eb..00000000 --- a/docs/api/rhi/d3d12/command-list/set-root-signature.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12CommandList::SetRootSignature - -```cpp -void SetRootSignature(ID3D12RootSignature* signature); -``` - -设置根签名。 - -**参数:** -- `signature` - D3D12 根签名指针 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-scissor-rect.md b/docs/api/rhi/d3d12/command-list/set-scissor-rect.md deleted file mode 100644 index c01ba976..00000000 --- a/docs/api/rhi/d3d12/command-list/set-scissor-rect.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12CommandList::SetScissorRect - -```cpp -void SetScissorRect(const Rect& rect) override; -``` - -设置裁剪矩形。 - -**参数:** -- `rect` - 裁剪矩形结构 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-scissor-rects.md b/docs/api/rhi/d3d12/command-list/set-scissor-rects.md deleted file mode 100644 index 4745112f..00000000 --- a/docs/api/rhi/d3d12/command-list/set-scissor-rects.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12CommandList::SetScissorRects - -```cpp -void SetScissorRects(uint32_t count, const Rect* rects) override; -``` - -设置多个裁剪矩形。 - -**参数:** -- `count` - 裁剪矩形数量 -- `rects` - 裁剪矩形数组 - -**复杂度:** O(n) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-stencil-ref.md b/docs/api/rhi/d3d12/command-list/set-stencil-ref.md deleted file mode 100644 index 88bbf001..00000000 --- a/docs/api/rhi/d3d12/command-list/set-stencil-ref.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12CommandList::SetStencilRef - -```cpp -void SetStencilRef(uint32_t stencilRef); -``` - -设置模板参考值。 - -**参数:** -- `stencilRef` - 模板参考值 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-vertex-buffer-internal.md b/docs/api/rhi/d3d12/command-list/set-vertex-buffer-internal.md deleted file mode 100644 index ff5836c6..00000000 --- a/docs/api/rhi/d3d12/command-list/set-vertex-buffer-internal.md +++ /dev/null @@ -1,33 +0,0 @@ -# D3D12CommandList::SetVertexBufferInternal - -设置顶点缓冲区内部实现。 - -```cpp -void SetVertexBufferInternal(uint32_t slot, ID3D12Resource* buffer, uint64_t offset, uint32_t stride); -``` - -## 参数 - -- `slot` - 顶点缓冲区槽位 -- `buffer` - D3D12 资源指针 -- `offset` - 缓冲区偏移 -- `stride` - 顶点步长 - -## 返回值 - -无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -commandList.SetVertexBufferInternal(0, vertexBuffer.GetResource(), 0, sizeof(Vertex)); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) -- [SetVertexBuffer](set-vertex-buffer.md) - 设置顶点缓冲区 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/command-list/set-vertex-buffer.md b/docs/api/rhi/d3d12/command-list/set-vertex-buffer.md deleted file mode 100644 index 8811d8cf..00000000 --- a/docs/api/rhi/d3d12/command-list/set-vertex-buffer.md +++ /dev/null @@ -1,19 +0,0 @@ -# D3D12CommandList::SetVertexBuffer - -```cpp -void SetVertexBuffer(uint32_t slot, void* buffer, uint64_t offset, uint32_t stride) override; -``` - -设置单个顶点缓冲区。 - -**参数:** -- `slot` - 顶点缓冲区槽位 -- `buffer` - 缓冲区指针 -- `offset` - 缓冲区偏移 -- `stride` - 顶点 stride - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-vertex-buffers-internal.md b/docs/api/rhi/d3d12/command-list/set-vertex-buffers-internal.md deleted file mode 100644 index 4dbadd60..00000000 --- a/docs/api/rhi/d3d12/command-list/set-vertex-buffers-internal.md +++ /dev/null @@ -1,35 +0,0 @@ -# D3D12CommandList::SetVertexBuffersInternal - -设置多个顶点缓冲区内部实现。 - -```cpp -void SetVertexBuffersInternal(uint32_t startSlot, uint32_t count, const D3D12_VERTEX_BUFFER_VIEW* views); -``` - -## 参数 - -- `startSlot` - 起始槽位 -- `count` - 缓冲区数量 -- `views` - 顶点缓冲区视图数组 - -## 返回值 - -无 - -**线程安全:** ❌ - -**复杂度:** O(n) - -## 示例 - -```cpp -D3D12_VERTEX_BUFFER_VIEW views[2]; -views[0] = vertexBuffer1View; -views[1] = vertexBuffer2View; -commandList.SetVertexBuffersInternal(0, 2, views); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) -- [SetVertexBuffers](set-vertex-buffers.md) - 设置多个顶点缓冲区 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/command-list/set-vertex-buffers.md b/docs/api/rhi/d3d12/command-list/set-vertex-buffers.md deleted file mode 100644 index faedf0c9..00000000 --- a/docs/api/rhi/d3d12/command-list/set-vertex-buffers.md +++ /dev/null @@ -1,20 +0,0 @@ -# D3D12CommandList::SetVertexBuffers - -```cpp -void SetVertexBuffers(uint32_t startSlot, uint32_t count, const uint64_t* buffers, const uint64_t* offsets, const uint32_t* strides) override; -``` - -设置多个顶点缓冲区。 - -**参数:** -- `startSlot` - 起始槽位 -- `count` - 缓冲区数量 -- `buffers` - 缓冲区指针数组 -- `offsets` - 偏移数组 -- `strides` - stride 数组 - -**复杂度:** O(n) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-viewport.md b/docs/api/rhi/d3d12/command-list/set-viewport.md deleted file mode 100644 index 7331fa70..00000000 --- a/docs/api/rhi/d3d12/command-list/set-viewport.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12CommandList::SetViewport - -```cpp -void SetViewport(const Viewport& viewport) override; -``` - -设置视口。 - -**参数:** -- `viewport` - 视口结构 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/set-viewports.md b/docs/api/rhi/d3d12/command-list/set-viewports.md deleted file mode 100644 index a84791e9..00000000 --- a/docs/api/rhi/d3d12/command-list/set-viewports.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12CommandList::SetViewports - -```cpp -void SetViewports(uint32_t count, const Viewport* viewports) override; -``` - -设置多个视口。 - -**参数:** -- `count` - 视口数量 -- `viewports` - 视口数组 - -**复杂度:** O(n) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/shutdown.md b/docs/api/rhi/d3d12/command-list/shutdown.md deleted file mode 100644 index 6d904af1..00000000 --- a/docs/api/rhi/d3d12/command-list/shutdown.md +++ /dev/null @@ -1,14 +0,0 @@ -# D3D12CommandList::Shutdown - -```cpp -void Shutdown() override; -``` - -关闭命令列表并释放相关资源。 - -**复杂度:** O(n) - 遍历释放所有跟踪的资源 - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 -- [RHICommandList::Shutdown](../../command-list/command-list.md) - 基类方法 diff --git a/docs/api/rhi/d3d12/command-list/track-resource.md b/docs/api/rhi/d3d12/command-list/track-resource.md deleted file mode 100644 index 266b7e2a..00000000 --- a/docs/api/rhi/d3d12/command-list/track-resource.md +++ /dev/null @@ -1,25 +0,0 @@ -# D3D12CommandList::TrackResource - -```cpp -void TrackResource(ID3D12Resource* resource); -``` - -跟踪资源状态。 - -**参数:** -- `resource` - D3D12 资源指针 - -**复杂度:** O(1) - -**示例:** - -```cpp -ID3D12Resource* resource = /* 获取资源 */; -cmdList.TrackResource(resource); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 -- [GetResourceState](get-resource-state.md) - 获取资源状态 -- [TransitionBarrier](transition-barrier.md) - 资源状态转换 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/command-list/transition-barrier-internal.md b/docs/api/rhi/d3d12/command-list/transition-barrier-internal.md deleted file mode 100644 index ef03d8f1..00000000 --- a/docs/api/rhi/d3d12/command-list/transition-barrier-internal.md +++ /dev/null @@ -1,19 +0,0 @@ -# D3D12CommandList::TransitionBarrierInternal - -```cpp -void TransitionBarrierInternal(ID3D12Resource* resource, ResourceStates stateBefore, ResourceStates stateAfter, uint32_t subresource = D3D12_RESOURCE_BARRIER_ALL_SUBRESOURCES); -``` - -为资源添加转换屏障(内部接口)。 - -**参数:** -- `resource` - D3D12 资源指针 -- `stateBefore` - 转换前的资源状态 -- `stateAfter` - 转换后的资源状态 -- `subresource` - 子资源索引,默认为所有子资源 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/transition-barrier.md b/docs/api/rhi/d3d12/command-list/transition-barrier.md deleted file mode 100644 index 49166c39..00000000 --- a/docs/api/rhi/d3d12/command-list/transition-barrier.md +++ /dev/null @@ -1,18 +0,0 @@ -# D3D12CommandList::TransitionBarrier - -```cpp -void TransitionBarrier(void* resource, ResourceStates stateBefore, ResourceStates stateAfter) override; -``` - -为资源添加转换屏障。 - -**参数:** -- `resource` - 目标资源指针 -- `stateBefore` - 转换前的资源状态 -- `stateAfter` - 转换后的资源状态 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-list/uav-barrier-internal.md b/docs/api/rhi/d3d12/command-list/uav-barrier-internal.md deleted file mode 100644 index ed1438fb..00000000 --- a/docs/api/rhi/d3d12/command-list/uav-barrier-internal.md +++ /dev/null @@ -1,30 +0,0 @@ -# D3D12CommandList::UAVBarrierInternal - -UAV 屏障内部实现。 - -```cpp -void UAVBarrierInternal(ID3D12Resource* resource); -``` - -## 参数 - -- `resource` - D3D12 资源指针 - -## 返回值 - -无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -commandList.UAVBarrierInternal(texture.GetResource()); -``` - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) -- [UAVBarrier](uav-barrier.md) - UAV 屏障 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/command-list/uav-barrier.md b/docs/api/rhi/d3d12/command-list/uav-barrier.md deleted file mode 100644 index c2536e90..00000000 --- a/docs/api/rhi/d3d12/command-list/uav-barrier.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12CommandList::UAVBarrier - -```cpp -void UAVBarrier(void* resource = nullptr); -``` - -添加无序访问视图屏障。 - -**参数:** -- `resource` - 目标资源指针,nullptr 表示所有 UAV - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-queue/command-queue.md b/docs/api/rhi/d3d12/command-queue/command-queue.md deleted file mode 100644 index b5dffb2d..00000000 --- a/docs/api/rhi/d3d12/command-queue/command-queue.md +++ /dev/null @@ -1,49 +0,0 @@ -# D3D12CommandQueue - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` - -**继承**: `RHICommandQueue` - -**描述**: DirectX 12 命令队列的 D3D12 实现,继承自 `RHICommandQueue`。 - -## 公共方法 - -| 方法 | 描述 | 类型 | -|------|------|------| -| [`Initialize`](initialize.md) | 初始化命令队列 | D3D12 特有 | -| [`Shutdown`](shutdown.md) | 关闭命令队列 | Override | -| [`ExecuteCommandLists`](execute-command-lists.md) | 执行命令列表 | Override | -| [`Signal`](signal.md) | 信号栅栏(RHIFence 重载) | Override | -| [`Signal(ID3D12Fence*)`](signal-native.md) | 信号栅栏(Native D3D12Fence) | D3D12 特有 | -| [`Wait`](wait.md) | 等待栅栏达到指定值 | Override | -| [`Wait(ID3D12Fence*)`](wait-native.md) | 等待栅栏(Native D3D12Fence) | D3D12 特有 | -| [`GetCompletedValue`](get-completed-value.md) | 获取完成值 | Override | -| [`WaitForIdle`](wait-for-idle.md) | 等待空闲 | Override | -| [`GetType`](get-type.md) | 获取队列类型 | Override | -| [`GetTimestampFrequency`](get-timestamp-frequency.md) | 获取时间戳频率 | Override | -| [`GetCommandQueue`](get-command-queue.md) | 获取 D3D12 命令队列 | D3D12 特有 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | Override | - -## 使用示例 - -```cpp -ID3D12Device* device; // 初始化好的 D3D12 设备 -D3D12CommandQueue commandQueue; - -if (commandQueue.Initialize(device, CommandQueueType::Direct)) { - // 使用命令队列 - commandQueue.ExecuteCommandLists(count, lists); - - // 等待完成 - commandQueue.WaitForIdle(); -} -``` - -## 相关文档 - -- [D3D12 后端总览](../d3d12.md) -- [RHICommandQueue](../../command-queue/command-queue.md) - 抽象命令队列接口 -- [D3D12CommandList](../command-list/command-list.md) -- [D3D12Fence](../fence/fence.md) diff --git a/docs/api/rhi/d3d12/command-queue/execute-command-lists.md b/docs/api/rhi/d3d12/command-queue/execute-command-lists.md deleted file mode 100644 index 640dfa0f..00000000 --- a/docs/api/rhi/d3d12/command-queue/execute-command-lists.md +++ /dev/null @@ -1,34 +0,0 @@ -# D3D12CommandQueue::ExecuteCommandLists - -```cpp -void ExecuteCommandLists(uint32_t count, void** lists) override; -``` - -将指定数量的命令列表提交到命令队列执行。所有命令列表将在 GPU 上按提交顺序串行执行。 - -**参数:** -- `count` - 命令列表数量,为正整数 -- `lists` - 命令列表指针数组,每个元素类型为 `ID3D12CommandList*` - -**返回:** 无 - -**线程安全:** 可从任意线程调用,建议从单线程提交以保证顺序 - -**复杂度:** O(1) 提交,O(n) GPU 执行(n 为命令数量) - -**注意:** 此方法会阻塞调用线程直到命令列表提交完成,GPU 实际执行是异步的。 - -## 示例 - -```cpp -ID3D12CommandList* lists[2]; -lists[0] = commandList1->GetCommandList(); -lists[1] = commandList2->GetCommandList(); - -commandQueue.ExecuteCommandLists(2, reinterpret_cast(lists)); -``` - -## 相关文档 - -- [D3D12CommandQueue 总览](command-queue.md) - 返回类总览 -- [D3D12CommandList](../command-list/command-list.md) diff --git a/docs/api/rhi/d3d12/command-queue/get-command-queue.md b/docs/api/rhi/d3d12/command-queue/get-command-queue.md deleted file mode 100644 index 90176f02..00000000 --- a/docs/api/rhi/d3d12/command-queue/get-command-queue.md +++ /dev/null @@ -1,15 +0,0 @@ -# D3D12CommandQueue::GetCommandQueue - -```cpp -ID3D12CommandQueue* GetCommandQueue() const { return m_commandQueue.Get(); } -``` - -获取底层 D3D12 命令队列接口。 - -**返回:** `ID3D12CommandQueue*` - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandQueue 总览](command-queue.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-queue/get-completed-value.md b/docs/api/rhi/d3d12/command-queue/get-completed-value.md deleted file mode 100644 index 3958f398..00000000 --- a/docs/api/rhi/d3d12/command-queue/get-completed-value.md +++ /dev/null @@ -1,19 +0,0 @@ -# D3D12CommandQueue::GetCompletedValue - -```cpp -uint64_t GetCompletedValue() override; -``` - -获取命令队列关联的栅栏的当前完成值。 - -**返回:** 栅栏的已完成值 - -**复杂度:** O(1) - -**注意:** 当前实现始终返回 0,表示此方法为未完成功能。使用前请确认功能状态。 - -## 相关文档 - -- [D3D12CommandQueue 总览](command-queue.md) - 返回类总览 -- [Signal](signal.md) - 向栅栏发送信号 -- [D3D12Fence](../fence/fence.md) diff --git a/docs/api/rhi/d3d12/command-queue/get-native-handle.md b/docs/api/rhi/d3d12/command-queue/get-native-handle.md deleted file mode 100644 index 58b5c135..00000000 --- a/docs/api/rhi/d3d12/command-queue/get-native-handle.md +++ /dev/null @@ -1,18 +0,0 @@ -# D3D12CommandQueue::GetNativeHandle - -```cpp -void* GetNativeHandle() override { return m_commandQueue.Get(); } -``` - -获取命令队列的原生句柄,用于与底层 D3D12 API 交互。 - -**返回:** `void*` 类型的原生指针,实际类型为 `ID3D12CommandQueue*` - -**复杂度:** O(1) - -**注意:** 返回的指针在命令队列销毁后将变为无效。请勿在命令队列销毁后继续使用。 - -## 相关文档 - -- [D3D12CommandQueue 总览](command-queue.md) - 返回类总览 -- [GetCommandQueue](get-command-queue.md) - 获取类型安全的 D3D12 命令队列指针 diff --git a/docs/api/rhi/d3d12/command-queue/get-timestamp-frequency.md b/docs/api/rhi/d3d12/command-queue/get-timestamp-frequency.md deleted file mode 100644 index 187a99b5..00000000 --- a/docs/api/rhi/d3d12/command-queue/get-timestamp-frequency.md +++ /dev/null @@ -1,15 +0,0 @@ -# D3D12CommandQueue::GetTimestampFrequency - -```cpp -uint64_t GetTimestampFrequency() const override { return m_timestampFrequency; } -``` - -获取时间戳频率。 - -**返回:** 时间戳频率 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandQueue 总览](command-queue.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/command-queue/get-type.md b/docs/api/rhi/d3d12/command-queue/get-type.md deleted file mode 100644 index bc93af38..00000000 --- a/docs/api/rhi/d3d12/command-queue/get-type.md +++ /dev/null @@ -1,21 +0,0 @@ -# D3D12CommandQueue::GetType - -```cpp -CommandQueueType GetType() const override { return m_type; } -``` - -获取命令队列的类型。 - -**返回:** `CommandQueueType` 枚举值,表示命令队列类型 - -- `Direct` - 直接命令队列,用于图形和计算操作 -- `Compute` - 计算命令队列,用于纯计算操作 -- `Copy` - 复制命令队列,用于数据传输操作 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12CommandQueue 总览](command-queue.md) - 返回类总览 -- [Initialize](initialize.md) - 初始化命令队列 -- [CommandQueueType](../../common/enums.md#commandqueuetype) - 队列类型枚举说明 diff --git a/docs/api/rhi/d3d12/command-queue/initialize.md b/docs/api/rhi/d3d12/command-queue/initialize.md deleted file mode 100644 index 3bee6541..00000000 --- a/docs/api/rhi/d3d12/command-queue/initialize.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12CommandQueue::Initialize - -```cpp -bool Initialize(ID3D12Device* device, CommandQueueType type = CommandQueueType::Direct); -``` - -初始化 D3D12 命令队列,创建底层 `ID3D12CommandQueue` 对象。 - -**参数:** -- `device` - D3D12 设备指针 -- `type` - 命令队列类型,默认为 `Direct` - -**返回:** 初始化成功返回 `true`,失败返回 `false` - -**复杂度:** O(1) - -## 示例 - -```cpp -ID3D12Device* device; // 已初始化的 D3D12 设备 -D3D12CommandQueue commandQueue; - -if (commandQueue.Initialize(device, CommandQueueType::Direct)) { - // 命令队列初始化成功 -} -``` - -## 相关文档 - -- [D3D12CommandQueue 总览](command-queue.md) - 返回类总览 -- [Shutdown](../../command-queue/shutdown.md) - 关闭命令队列 diff --git a/docs/api/rhi/d3d12/command-queue/shutdown.md b/docs/api/rhi/d3d12/command-queue/shutdown.md deleted file mode 100644 index 781f40c4..00000000 --- a/docs/api/rhi/d3d12/command-queue/shutdown.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12CommandQueue::Shutdown - -```cpp -void Shutdown() override; -``` - -关闭命令队列并释放底层 D3D12 资源。调用此方法后,命令队列将变为无效状态。 - -**返回:** 无 - -**注意:** -- 此方法由析构函数自动调用 -- 调用前应确保没有正在执行命令 -- 释放底层的 `ID3D12CommandQueue` 接口 - -## 示例 - -```cpp -D3D12CommandQueue commandQueue; -commandQueue.Initialize(device, CommandQueueType::Direct); - -// 使用命令队列... - -// 关闭并释放资源 -commandQueue.Shutdown(); -``` - -## 相关文档 - -- [D3D12CommandQueue 总览](command-queue.md) - 返回类总览 -- [Initialize](initialize.md) - 初始化命令队列 diff --git a/docs/api/rhi/d3d12/command-queue/signal-native.md b/docs/api/rhi/d3d12/command-queue/signal-native.md deleted file mode 100644 index 09444630..00000000 --- a/docs/api/rhi/d3d12/command-queue/signal-native.md +++ /dev/null @@ -1,25 +0,0 @@ -# D3D12CommandQueue::Signal (Native) - -```cpp -void Signal(ID3D12Fence* fence, uint64_t value); -``` - -向 D3D12 原生栅栏发送信号。 - -**参数:** -- `fence` - D3D12 原生栅栏指针 -- `value` - 信号值 - -**复杂度:** O(1) - -## 示例 - -```cpp -ID3D12Fence* nativeFence; // D3D12 原生栅栏 -commandQueue.Signal(nativeFence, 1); -``` - -## 相关文档 - -- [D3D12CommandQueue 总览](command-queue.md) - 返回类总览 -- [Signal(RHIFence*)](../../command-queue/signal.md) - RHIFence 重载版本 diff --git a/docs/api/rhi/d3d12/command-queue/signal.md b/docs/api/rhi/d3d12/command-queue/signal.md deleted file mode 100644 index 11ecc479..00000000 --- a/docs/api/rhi/d3d12/command-queue/signal.md +++ /dev/null @@ -1,34 +0,0 @@ -# D3D12CommandQueue::Signal - -```cpp -void Signal(RHIFence* fence, uint64_t value) override; -``` - -向指定栅栏发送信号,将栅栏的完成值设置为给定值。该方法用于同步 GPU 和 CPU 操作。 - -**参数:** -- `fence` - 目标栅栏指针,不能为 `nullptr` -- `value` - 信号值,一个正整数 - -**返回:** 无 - -**复杂度:** O(1) - -**使用场景:** -- 标记命令队列中所有已提交命令完成的时间点 -- 用于 GPU-CPU 同步 -- 与 `Wait` 方法配合实现 GPU 流水线同步 - -## 示例 - -```cpp -D3D12Fence* fence; // 已初始化的栅栏 -commandQueue.Signal(fence, 1); -// CPU 可以继续其他工作,GPU 执行完成后 fence 的值变为 1 -``` - -## 相关文档 - -- [D3D12CommandQueue 总览](command-queue.md) - 返回类总览 -- [Wait](wait-for-idle.md) - 等待命令队列完成 -- [D3D12Fence](../fence/fence.md) diff --git a/docs/api/rhi/d3d12/command-queue/wait-for-idle.md b/docs/api/rhi/d3d12/command-queue/wait-for-idle.md deleted file mode 100644 index 47e274da..00000000 --- a/docs/api/rhi/d3d12/command-queue/wait-for-idle.md +++ /dev/null @@ -1,36 +0,0 @@ -# D3D12CommandQueue::WaitForIdle - -```cpp -void WaitForIdle() override; -``` - -阻塞当前线程,直到命令队列中所有已提交的命令全部执行完成。该方法会强制 GPU 等待所有待处理命令完成后才返回。 - -**返回:** 无 - -**复杂度:** O(n),其中 n 为待处理命令的数量 - -**使用场景:** -- 帧同步:确保一帧的所有渲染命令完成后再进行下一步操作 -- 资源管理:确保 GPU 不再使用某个资源后再释放 -- 调试:等待特定命令完成以便进行 GPU 调试 - -**注意:** 这是一个阻塞调用,会暂停 CPU 线程直到 GPU 完成所有命令。频繁调用可能影响性能。 - -## 示例 - -```cpp -// 提交渲染命令 -commandQueue.ExecuteCommandLists(count, lists); - -// 等待所有命令完成 -commandQueue.WaitForIdle(); - -// 此时可以安全地释放命令列表使用的资源 -``` - -## 相关文档 - -- [D3D12CommandQueue 总览](command-queue.md) - 返回类总览 -- [Signal](signal.md) - 向栅栏发送信号 -- [Wait](signal.md) - 等待栅栏达到指定值 diff --git a/docs/api/rhi/d3d12/command-queue/wait-native.md b/docs/api/rhi/d3d12/command-queue/wait-native.md deleted file mode 100644 index 476eb302..00000000 --- a/docs/api/rhi/d3d12/command-queue/wait-native.md +++ /dev/null @@ -1,25 +0,0 @@ -# D3D12CommandQueue::Wait (Native) - -```cpp -void Wait(ID3D12Fence* fence, uint64_t value); -``` - -等待 D3D12 原生栅栏达到指定值。 - -**参数:** -- `fence` - D3D12 原生栅栏指针 -- `value` - 等待的信号值 - -**复杂度:** O(1) - -## 示例 - -```cpp -ID3D12Fence* nativeFence; // D3D12 原生栅栏 -commandQueue.Wait(nativeFence, 1); -``` - -## 相关文档 - -- [D3D12CommandQueue 总览](command-queue.md) - 返回类总览 -- [Wait(RHIFence*)](../../command-queue/wait.md) - RHIFence 重载版本 diff --git a/docs/api/rhi/d3d12/command-queue/wait.md b/docs/api/rhi/d3d12/command-queue/wait.md deleted file mode 100644 index 5c2a0661..00000000 --- a/docs/api/rhi/d3d12/command-queue/wait.md +++ /dev/null @@ -1,37 +0,0 @@ -# D3D12CommandQueue::Wait - -```cpp -void Wait(RHIFence* fence, uint64_t value) override; -``` - -阻塞命令队列,直到指定栅栏的完成值达到指定值。该方法用于 GPU 内部的同步操作。 - -**参数:** -- `fence` - 目标栅栏指针,不能为 `nullptr` -- `value` - 等待的信号值 - -**返回:** 无 - -**复杂度:** O(1) - -**使用场景:** -- 等待另一个命令队列的操作完成 -- 实现 GPU 流水线各阶段之间的同步 -- 多 GPU 节点间的同步 - -**注意:** 如果栅栏的当前值已经大于或等于指定值,则此方法立即返回。 - -## 示例 - -```cpp -D3D12Fence* fence; // 已发送信号的栅栏 -// 等待 fence 的值达到 1 -commandQueue.Wait(fence, 1); -``` - -## 相关文档 - -- [D3D12CommandQueue 总览](command-queue.md) - 返回类总览 -- [Signal](signal.md) - 向栅栏发送信号 -- [Wait(ID3D12Fence*)](wait-native.md) - Native D3D12Fence 版本 -- [D3D12Fence](../fence/fence.md) diff --git a/docs/api/rhi/d3d12/common/check-format-support.md b/docs/api/rhi/d3d12/common/check-format-support.md deleted file mode 100644 index 51be1f89..00000000 --- a/docs/api/rhi/d3d12/common/check-format-support.md +++ /dev/null @@ -1,37 +0,0 @@ -# D3D12Common::CheckFormatSupport - -```cpp -inline bool CheckFormatSupport( - ID3D12Device* device, - DXGI_FORMAT format, - D3D12_FORMAT_SUPPORT1 support1, - D3D12_FORMAT_SUPPORT2 support2 = D3D12_FORMAT_SUPPORT2_NONE -) -``` - -检查设备是否支持指定格式的特定功能。 - -**参数:** -- `device` - D3D12 设备指针 -- `format` - 要检查的 DXGI 格式 -- `support1` - 主格式支持标志(`D3D12_FORMAT_SUPPORT1`) -- `support2` - 扩展格式支持标志(`D3D12_FORMAT_SUPPORT2`),默认为 `D3D12_FORMAT_SUPPORT2_NONE` - -**返回:** 如果格式支持指定功能返回 `true`,否则返回 `false` - -**线程安全:** ✅(只读查询) - -**示例:** - -```cpp -ID3D12Device* device = ...; -if (CheckFormatSupport(device, DXGI_FORMAT_BC1_UNORM, D3D12_FORMAT_SUPPORT1_TEXTURE2D)) { - // 支持 BC1 压缩格式 -} -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [IsRenderTargetFormatSupported](is-render-target-format-supported.md) -- [IsTextureFormatSupported](is-texture-format-supported.md) diff --git a/docs/api/rhi/d3d12/common/common.md b/docs/api/rhi/d3d12/common/common.md deleted file mode 100644 index e22700d6..00000000 --- a/docs/api/rhi/d3d12/common/common.md +++ /dev/null @@ -1,111 +0,0 @@ -# D3D12Common - -**命名空间**: `XCEngine::RHI` - -**类型**: `inline 函数集合` (header-only) - -**描述**: D3D12 通用辅助函数集合,提供描述符大小查询、资源屏障创建、格式支持检查、视图创建等功能。所有函数均为 `inline` 函数,封装自 DirectX 12 原生 API。 - -## 概述 - -D3D12Common 是 D3D12 后端的工具函数模块,封装了 DirectX 12 常用的辅助功能,包括: - -- **描述符大小查询**: 封装 `ID3D12Device::GetDescriptorHandleIncrementSize`,提供各类描述符的增量大小 -- **资源屏障创建**: 封装 `D3D12_RESOURCE_BARRIER` 的三种类型(Transition、UAV、Aliasing) -- **格式支持检查**: 封装 `ID3D12Device::CheckFeatureSupport`,检查格式是否支持特定用途 -- **视图创建**: 封装 D3D12_VERTEX_BUFFER_VIEW、D3D12_INDEX_BUFFER_VIEW、D3D12_VIEWPORT 等创建 -- **描述符句柄运算**: 提供描述符句柄的偏移计算 - -这些函数均为无状态的纯函数,设计用于简化 D3D12 常见操作的代码编写。 - -## 函数列表 - -### 描述符大小 - -| 函数 | 描述 | -|------|------| -| [`GetDescriptorHandleIncrementSize`](get-descriptor-handle-increment-size.md) | 获取指定描述符堆类型的增量大小 | -| [`GetRTVDescriptorSize`](get-rtv-descriptor-size.md) | 获取 RTV 描述符大小 | -| [`GetDSVDescriptorSize`](get-dsv-descriptor-size.md) | 获取 DSV 描述符大小 | -| [`GetCBV_SRV_UAVDescriptorSize`](get-cbv-srv-uav-descriptor-size.md) | 获取 CBV/SRV/UAV 描述符大小 | -| [`GetSamplerDescriptorSize`](get-sampler-descriptor-size.md) | 获取 Sampler 描述符大小 | - -### 屏障创建 - -| 函数 | 描述 | -|------|------| -| [`CreateTransitionBarrier`](create-transition-barrier.md) | 创建资源状态转换屏障 | -| [`CreateUAVBarrier`](create-uav-barrier.md) | 创建 UAV 屏障 | -| [`CreateAliasingBarrier`](create-aliasing-barrier.md) | 创建别名化屏障 | - -### 格式支持 - -| 函数 | 描述 | -|------|------| -| [`CheckFormatSupport`](check-format-support.md) | 检查格式是否支持指定功能 | -| [`IsRenderTargetFormatSupported`](is-render-target-format-supported.md) | 检查是否支持作为渲染目标 | -| [`IsDepthStencilFormatSupported`](is-depth-stencil-format-supported.md) | 检查是否支持作为深度模板 | -| [`IsShaderResourceFormatSupported`](is-shader-resource-format-supported.md) | 检查是否支持作为着色器资源 | -| [`IsTextureFormatSupported`](is-texture-format-supported.md) | 检查是否支持作为纹理 | - -### 清除值创建 - -| 函数 | 描述 | -|------|------| -| [`CreateRenderTargetClearValue`](create-render-target-clear-value.md) | 创建渲染目标清除值 | -| [`CreateDepthStencilClearValue`](create-depth-stencil-clear-value.md) | 创建深度模板清除值 | - -### 视口和裁剪矩形 - -| 函数 | 描述 | -|------|------| -| [`CreateViewport`](create-viewport.md) | 创建视口结构 | -| [`CreateScissorRect`](create-scissor-rect.md) | 创建裁剪矩形 | - -### 缓冲区视图 - -| 函数 | 描述 | -|------|------| -| [`CreateVertexBufferView`](create-vertex-buffer-view.md) | 创建顶点缓冲区视图 | -| [`CreateIndexBufferView`](create-index-buffer-view.md) | 创建索引缓冲区视图 | - -### 描述符句柄运算 - -| 函数 | 描述 | -|------|------| -| [`GetCPUDescriptorHandle`](get-cpu-descriptor-handle.md) | 计算偏移后的 CPU 描述符句柄 | -| [`GetGPUDescriptorHandle`](get-gpu-descriptor-handle.md) | 计算偏移后的 GPU 描述符句柄 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::RHI; - -// 获取描述符大小 -ID3D12Device* device = ...; -UINT rtvSize = GetRTVDescriptorSize(device); - -// 创建资源屏障 -D3D12_RESOURCE_BARRIER barrier = CreateTransitionBarrier( - resource, - D3D12_RESOURCE_STATE_RENDER_TARGET, - D3D12_RESOURCE_STATE_COMMON -); - -// 检查格式支持 -if (IsTextureFormatSupported(device, DXGI_FORMAT_BC1_UNORM)) { - // 使用压缩纹理 -} - -// 创建视口 -D3D12_VIEWPORT viewport = CreateViewport(1280.0f, 720.0f); -``` - -## 相关文档 - -- [D3D12 后端概览](../d3d12.md) - D3D12 模块总览 -- [RHI 模块总览](../../rhi.md) - RHI 抽象层 -- [D3D12Device](../device/device.md) - D3D12 设备 -- [D3D12DescriptorHeap](../descriptor-heap/descriptor-heap.md) - 描述符堆 diff --git a/docs/api/rhi/d3d12/common/create-aliasing-barrier.md b/docs/api/rhi/d3d12/common/create-aliasing-barrier.md deleted file mode 100644 index f5e8b133..00000000 --- a/docs/api/rhi/d3d12/common/create-aliasing-barrier.md +++ /dev/null @@ -1,32 +0,0 @@ -# D3D12Common::CreateAliasingBarrier - -```cpp -inline D3D12_RESOURCE_BARRIER CreateAliasingBarrier( - ID3D12Resource* beforeResource = nullptr, - ID3D12Resource* afterResource = nullptr -) -``` - -创建资源别名化屏障,用于不同资源之间的切换。 - -**参数:** -- `beforeResource` - 别名前的资源,默认为 `nullptr` -- `afterResource` - 别名后的资源,默认为 `nullptr` - -**返回:** 配置好的 `D3D12_RESOURCE_BARRIER` 结构 - -**线程安全:** ✅(纯函数) - -**示例:** - -```cpp -ID3D12Resource* resourceA = ...; -ID3D12Resource* resourceB = ...; -D3D12_RESOURCE_BARRIER barrier = CreateAliasingBarrier(resourceA, resourceB); -cmdList->ResourceBarrier(1, &barrier); -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [CreateTransitionBarrier](create-transition-barrier.md) diff --git a/docs/api/rhi/d3d12/common/create-depth-stencil-clear-value.md b/docs/api/rhi/d3d12/common/create-depth-stencil-clear-value.md deleted file mode 100644 index c0c62a48..00000000 --- a/docs/api/rhi/d3d12/common/create-depth-stencil-clear-value.md +++ /dev/null @@ -1,35 +0,0 @@ -# D3D12Common::CreateDepthStencilClearValue - -```cpp -inline D3D12_CLEAR_VALUE CreateDepthStencilClearValue( - DXGI_FORMAT format, - float depth = 1.0f, - uint8_t stencil = 0 -) -``` - -创建深度模板缓冲区的清除值。 - -**参数:** -- `format` - 深度模板格式 -- `depth` - 深度值,默认为 1.0f -- `stencil` - 模板值,默认为 0 - -**返回:** 配置好的 `D3D12_CLEAR_VALUE` 结构 - -**线程安全:** ✅(纯函数) - -**示例:** - -```cpp -D3D12_CLEAR_VALUE clearValue = CreateDepthStencilClearValue( - DXGI_FORMAT_D24_UNORM_S8_UINT, - 1.0f, - 0 -); -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [CreateRenderTargetClearValue](create-render-target-clear-value.md) diff --git a/docs/api/rhi/d3d12/common/create-index-buffer-view.md b/docs/api/rhi/d3d12/common/create-index-buffer-view.md deleted file mode 100644 index 2ff39b2b..00000000 --- a/docs/api/rhi/d3d12/common/create-index-buffer-view.md +++ /dev/null @@ -1,37 +0,0 @@ -# D3D12Common::CreateIndexBufferView - -```cpp -inline D3D12_INDEX_BUFFER_VIEW CreateIndexBufferView( - D3D12_GPU_VIRTUAL_ADDRESS bufferLocation, - UINT sizeInBytes, - DXGI_FORMAT format -) -``` - -创建索引缓冲区视图。 - -**参数:** -- `bufferLocation` - 索引缓冲区 GPU 虚拟地址 -- `sizeInBytes` - 缓冲区大小(字节) -- `format` - 索引格式(DXGI_FORMAT_R16_UINT 或 DXGI_FORMAT_R32_UINT) - -**返回:** 配置好的 `D3D12_INDEX_BUFFER_VIEW` 结构 - -**线程安全:** ✅(纯函数) - -**示例:** - -```cpp -ID3D12Resource* indexBuffer = ...; -D3D12_INDEX_BUFFER_VIEW ibView = CreateIndexBufferView( - indexBuffer->GetGPUVirtualAddress(), - indexBufferSize, - DXGI_FORMAT_R16_UINT -); -cmdList->IASetIndexBuffer(&ibView); -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [CreateVertexBufferView](create-vertex-buffer-view.md) diff --git a/docs/api/rhi/d3d12/common/create-render-target-clear-value.md b/docs/api/rhi/d3d12/common/create-render-target-clear-value.md deleted file mode 100644 index a6c77f89..00000000 --- a/docs/api/rhi/d3d12/common/create-render-target-clear-value.md +++ /dev/null @@ -1,38 +0,0 @@ -# D3D12Common::CreateRenderTargetClearValue - -```cpp -inline D3D12_CLEAR_VALUE CreateRenderTargetClearValue( - DXGI_FORMAT format, - float r = 0.0f, - float g = 0.0f, - float b = 0.0f, - float a = 1.0f -) -``` - -创建渲染目标的清除值(清除颜色)。 - -**参数:** -- `format` - 渲染目标格式 -- `r` - 红色分量,默认为 0.0f -- `g` - 绿色分量,默认为 0.0f -- `b` - 蓝色分量,默认为 0.0f -- `a` - Alpha 分量,默认为 1.0f - -**返回:** 配置好的 `D3D12_CLEAR_VALUE` 结构 - -**线程安全:** ✅(纯函数) - -**示例:** - -```cpp -D3D12_CLEAR_VALUE clearValue = CreateRenderTargetClearValue( - DXGI_FORMAT_R8G8B8A8_UNORM, - 0.0f, 0.0f, 0.0f, 1.0f -); -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [CreateDepthStencilClearValue](create-depth-stencil-clear-value.md) diff --git a/docs/api/rhi/d3d12/common/create-scissor-rect.md b/docs/api/rhi/d3d12/common/create-scissor-rect.md deleted file mode 100644 index 9ba637a7..00000000 --- a/docs/api/rhi/d3d12/common/create-scissor-rect.md +++ /dev/null @@ -1,29 +0,0 @@ -# D3D12Common::CreateScissorRect - -```cpp -inline D3D12_RECT CreateScissorRect(int left, int top, int right, int bottom) -``` - -创建裁剪矩形(剪刀矩形)。 - -**参数:** -- `left` - 矩形左边界 -- `top` - 矩形上边界 -- `right` - 矩形右边界 -- `bottom` - 矩形下边界 - -**返回:** 配置好的 `D3D12_RECT` 结构 - -**线程安全:** ✅(纯函数) - -**示例:** - -```cpp -D3D12_RECT scissorRect = CreateScissorRect(0, 0, 1280, 720); -cmdList->RSSetScissorRects(1, &scissorRect); -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [CreateViewport](create-viewport.md) diff --git a/docs/api/rhi/d3d12/common/create-transition-barrier.md b/docs/api/rhi/d3d12/common/create-transition-barrier.md deleted file mode 100644 index 65190070..00000000 --- a/docs/api/rhi/d3d12/common/create-transition-barrier.md +++ /dev/null @@ -1,39 +0,0 @@ -# D3D12Common::CreateTransitionBarrier - -```cpp -inline D3D12_RESOURCE_BARRIER CreateTransitionBarrier( - ID3D12Resource* resource, - D3D12_RESOURCE_STATES stateBefore, - D3D12_RESOURCE_STATES stateAfter, - UINT subresource = D3D12_RESOURCE_BARRIER_ALL_SUBRESOURCES -) -``` - -创建资源状态转换屏障,用于同步资源状态转换。 - -**参数:** -- `resource` - 目标资源指针 -- `stateBefore` - 转换前的资源状态 -- `stateAfter` - 转换后的资源状态 -- `subresource` - 子资源索引,默认为所有子资源 - -**返回:** 配置好的 `D3D12_RESOURCE_BARRIER` 结构 - -**线程安全:** ✅(纯函数) - -**示例:** - -```cpp -ID3D12Resource* texture = ...; -D3D12_RESOURCE_BARRIER barrier = CreateTransitionBarrier( - texture, - D3D12_RESOURCE_STATE_RENDER_TARGET, - D3D12_RESOURCE_STATE_COMMON -); -cmdList->ResourceBarrier(1, &barrier); -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [D3D12CommandList](../command-list/command-list.md) diff --git a/docs/api/rhi/d3d12/common/create-uav-barrier.md b/docs/api/rhi/d3d12/common/create-uav-barrier.md deleted file mode 100644 index 0fc33515..00000000 --- a/docs/api/rhi/d3d12/common/create-uav-barrier.md +++ /dev/null @@ -1,27 +0,0 @@ -# D3D12Common::CreateUAVBarrier - -```cpp -inline D3D12_RESOURCE_BARRIER CreateUAVBarrier(ID3D12Resource* resource = nullptr) -``` - -创建无序访问视图(UAV)屏障,用于同步 UAV 访问。 - -**参数:** -- `resource` - UAV 资源指针,默认为 `nullptr`(全局 UAV 屏障) - -**返回:** 配置好的 `D3D12_RESOURCE_BARRIER` 结构 - -**线程安全:** ✅(纯函数) - -**示例:** - -```cpp -ID3D12Resource* uavResource = ...; -D3D12_RESOURCE_BARRIER barrier = CreateUAVBarrier(uavResource); -cmdList->ResourceBarrier(1, &barrier); -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [CreateTransitionBarrier](create-transition-barrier.md) diff --git a/docs/api/rhi/d3d12/common/create-vertex-buffer-view.md b/docs/api/rhi/d3d12/common/create-vertex-buffer-view.md deleted file mode 100644 index aa89488e..00000000 --- a/docs/api/rhi/d3d12/common/create-vertex-buffer-view.md +++ /dev/null @@ -1,37 +0,0 @@ -# D3D12Common::CreateVertexBufferView - -```cpp -inline D3D12_VERTEX_BUFFER_VIEW CreateVertexBufferView( - D3D12_GPU_VIRTUAL_ADDRESS bufferLocation, - UINT sizeInBytes, - UINT strideInBytes -) -``` - -创建顶点缓冲区视图。 - -**参数:** -- `bufferLocation` - 顶点缓冲区 GPU 虚拟地址 -- `sizeInBytes` - 缓冲区大小(字节) -- `strideInBytes` - 单个顶点的大小(字节) - -**返回:** 配置好的 `D3D12_VERTEX_BUFFER_VIEW` 结构 - -**线程安全:** ✅(纯函数) - -**示例:** - -```cpp -ID3D12Resource* vertexBuffer = ...; -D3D12_VERTEX_BUFFER_VIEW vbView = CreateVertexBufferView( - vertexBuffer->GetGPUVirtualAddress(), - vertexBufferSize, - sizeof(Vertex) -); -cmdList->IASetVertexBuffers(0, 1, &vbView); -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [CreateIndexBufferView](create-index-buffer-view.md) diff --git a/docs/api/rhi/d3d12/common/create-viewport.md b/docs/api/rhi/d3d12/common/create-viewport.md deleted file mode 100644 index c5a9a06b..00000000 --- a/docs/api/rhi/d3d12/common/create-viewport.md +++ /dev/null @@ -1,38 +0,0 @@ -# D3D12Common::CreateViewport - -```cpp -inline D3D12_VIEWPORT CreateViewport( - float width, - float height, - float topLeftX = 0.0f, - float topLeftY = 0.0f, - float minDepth = 0.0f, - float maxDepth = 1.0f -) -``` - -创建 D3D12 视口结构。 - -**参数:** -- `width` - 视口宽度(像素) -- `height` - 视口高度(像素) -- `topLeftX` - 视口左上角 X 坐标,默认为 0 -- `topLeftY` - 视口左上角 Y 坐标,默认为 0 -- `minDepth` - 最小深度值,默认为 0 -- `maxDepth` - 最大深度值,默认为 1 - -**返回:** 配置好的 `D3D12_VIEWPORT` 结构 - -**线程安全:** ✅(纯函数) - -**示例:** - -```cpp -D3D12_VIEWPORT viewport = CreateViewport(1280.0f, 720.0f, 0.0f, 0.0f, 0.0f, 1.0f); -cmdList->RSSetViewports(1, &viewport); -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [CreateScissorRect](create-scissor-rect.md) diff --git a/docs/api/rhi/d3d12/common/get-cbv-srv-uav-descriptor-size.md b/docs/api/rhi/d3d12/common/get-cbv-srv-uav-descriptor-size.md deleted file mode 100644 index e33b3947..00000000 --- a/docs/api/rhi/d3d12/common/get-cbv-srv-uav-descriptor-size.md +++ /dev/null @@ -1,26 +0,0 @@ -# D3D12Common::GetCBV_SRV_UAVDescriptorSize - -```cpp -inline UINT GetCBV_SRV_UAVDescriptorSize(ID3D12Device* device) -``` - -获取常量缓冲区视图(CBV)、着色器资源视图(SRV)和无序访问视图(UAV)的描述符大小。 - -**参数:** -- `device` - D3D12 设备指针 - -**返回:** CBV/SRV/UAV 描述符大小(字节) - -**线程安全:** ✅(只读操作) - -**示例:** - -```cpp -ID3D12Device* device = ...; -UINT descriptorSize = GetCBV_SRV_UAVDescriptorSize(device); -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [GetSamplerDescriptorSize](get-sampler-descriptor-size.md) diff --git a/docs/api/rhi/d3d12/common/get-cpu-descriptor-handle.md b/docs/api/rhi/d3d12/common/get-cpu-descriptor-handle.md deleted file mode 100644 index 641035a8..00000000 --- a/docs/api/rhi/d3d12/common/get-cpu-descriptor-handle.md +++ /dev/null @@ -1,35 +0,0 @@ -# D3D12Common::GetCPUDescriptorHandle - -```cpp -inline D3D12_CPU_DESCRIPTOR_HANDLE GetCPUDescriptorHandle( - D3D12_CPU_DESCRIPTOR_HANDLE baseHandle, - UINT offsetInDescriptors, - UINT descriptorSize -) -``` - -计算偏移后的 CPU 描述符句柄。 - -**参数:** -- `baseHandle` - 基础描述符句柄 -- `offsetInDescriptors` - 描述符偏移数量 -- `descriptorSize` - 单个描述符大小(字节) - -**返回:** 偏移后的 CPU 描述符句柄 - -**线程安全:** ✅(纯函数) - -**示例:** - -```cpp -D3D12_CPU_DESCRIPTOR_HANDLE rtvHandle = GetCPUDescriptorHandle( - heapStartHandle, - 2, // 第3个描述符 - rtvDescriptorSize -); -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [GetGPUDescriptorHandle](get-gpu-descriptor-handle.md) diff --git a/docs/api/rhi/d3d12/common/get-descriptor-handle-increment-size.md b/docs/api/rhi/d3d12/common/get-descriptor-handle-increment-size.md deleted file mode 100644 index b62ba827..00000000 --- a/docs/api/rhi/d3d12/common/get-descriptor-handle-increment-size.md +++ /dev/null @@ -1,28 +0,0 @@ -# D3D12Common::GetDescriptorHandleIncrementSize - -```cpp -inline UINT GetDescriptorHandleIncrementSize(ID3D12Device* device, D3D12_DESCRIPTOR_HEAP_TYPE heapType) -``` - -获取指定描述符堆类型的描述符增量大小(增量偏移值)。 - -**参数:** -- `device` - D3D12 设备指针 -- `heapType` - 描述符堆类型(`D3D12_DESCRIPTOR_HEAP_TYPE`) - -**返回:** 指定类型的描述符增量大小(字节) - -**线程安全:** ✅(只读操作) - -**示例:** - -```cpp -ID3D12Device* device = ...; -UINT rtvIncSize = GetDescriptorHandleIncrementSize(device, D3D12_DESCRIPTOR_HEAP_TYPE_RTV); -UINT srvIncSize = GetDescriptorHandleIncrementSize(device, D3D12_DESCRIPTOR_HEAP_TYPE_CBV_SRV_UAV); -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [D3D12DescriptorHeap](../descriptor-heap/descriptor-heap.md) diff --git a/docs/api/rhi/d3d12/common/get-dsv-descriptor-size.md b/docs/api/rhi/d3d12/common/get-dsv-descriptor-size.md deleted file mode 100644 index ec1f74ac..00000000 --- a/docs/api/rhi/d3d12/common/get-dsv-descriptor-size.md +++ /dev/null @@ -1,26 +0,0 @@ -# D3D12Common::GetDSVDescriptorSize - -```cpp -inline UINT GetDSVDescriptorSize(ID3D12Device* device) -``` - -获取深度模板视图(DSV)的描述符大小。 - -**参数:** -- `device` - D3D12 设备指针 - -**返回:** DSV 描述符大小(字节) - -**线程安全:** ✅(只读操作) - -**示例:** - -```cpp -ID3D12Device* device = ...; -UINT dsvSize = GetDSVDescriptorSize(device); -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [GetRTVDescriptorSize](get-rtv-descriptor-size.md) diff --git a/docs/api/rhi/d3d12/common/get-gpu-descriptor-handle.md b/docs/api/rhi/d3d12/common/get-gpu-descriptor-handle.md deleted file mode 100644 index 379367bf..00000000 --- a/docs/api/rhi/d3d12/common/get-gpu-descriptor-handle.md +++ /dev/null @@ -1,35 +0,0 @@ -# D3D12Common::GetGPUDescriptorHandle - -```cpp -inline D3D12_GPU_DESCRIPTOR_HANDLE GetGPUDescriptorHandle( - D3D12_GPU_DESCRIPTOR_HANDLE baseHandle, - UINT offsetInDescriptors, - UINT descriptorSize -) -``` - -计算偏移后的 GPU 描述符句柄。 - -**参数:** -- `baseHandle` - 基础描述符句柄 -- `offsetInDescriptors` - 描述符偏移数量 -- `descriptorSize` - 单个描述符大小(字节) - -**返回:** 偏移后的 GPU 描述符句柄 - -**线程安全:** ✅(纯函数) - -**示例:** - -```cpp -D3D12_GPU_DESCRIPTOR_HANDLE srvHandle = GetGPUDescriptorHandle( - heapStartHandle, - 5, // 第6个描述符 - srvDescriptorSize -); -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [GetCPUDescriptorHandle](get-cpu-descriptor-handle.md) diff --git a/docs/api/rhi/d3d12/common/get-rtv-descriptor-size.md b/docs/api/rhi/d3d12/common/get-rtv-descriptor-size.md deleted file mode 100644 index 2e41dd5d..00000000 --- a/docs/api/rhi/d3d12/common/get-rtv-descriptor-size.md +++ /dev/null @@ -1,27 +0,0 @@ -# D3D12Common::GetRTVDescriptorSize - -```cpp -inline UINT GetRTVDescriptorSize(ID3D12Device* device) -``` - -获取渲染目标视图(RTV)的描述符大小。 - -**参数:** -- `device` - D3D12 设备指针 - -**返回:** RTV 描述符大小(字节) - -**线程安全:** ✅(只读操作) - -**示例:** - -```cpp -ID3D12Device* device = ...; -UINT rtvSize = GetRTVDescriptorSize(device); -D3D12_CPU_DESCRIPTOR_HANDLE rtvHandle = GetCPUDescriptorHandle(baseHandle, 0, rtvSize); -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [D3D12RenderTargetView](../render-target-view/render-target-view.md) diff --git a/docs/api/rhi/d3d12/common/get-sampler-descriptor-size.md b/docs/api/rhi/d3d12/common/get-sampler-descriptor-size.md deleted file mode 100644 index c2e94f3f..00000000 --- a/docs/api/rhi/d3d12/common/get-sampler-descriptor-size.md +++ /dev/null @@ -1,26 +0,0 @@ -# D3D12Common::GetSamplerDescriptorSize - -```cpp -inline UINT GetSamplerDescriptorSize(ID3D12Device* device) -``` - -获取采样器(Sampler)的描述符大小。 - -**参数:** -- `device` - D3D12 设备指针 - -**返回:** Sampler 描述符大小(字节) - -**线程安全:** ✅(只读操作) - -**示例:** - -```cpp -ID3D12Device* device = ...; -UINT samplerSize = GetSamplerDescriptorSize(device); -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [GetCBV_SRV_UAVDescriptorSize](get-cbv-srv-uav-descriptor-size.md) diff --git a/docs/api/rhi/d3d12/common/is-depth-stencil-format-supported.md b/docs/api/rhi/d3d12/common/is-depth-stencil-format-supported.md deleted file mode 100644 index 59e6b682..00000000 --- a/docs/api/rhi/d3d12/common/is-depth-stencil-format-supported.md +++ /dev/null @@ -1,29 +0,0 @@ -# D3D12Common::IsDepthStencilFormatSupported - -```cpp -inline bool IsDepthStencilFormatSupported(ID3D12Device* device, DXGI_FORMAT format) -``` - -检查指定格式是否支持作为深度模板缓冲区。 - -**参数:** -- `device` - D3D12 设备指针 -- `format` - 要检查的 DXGI 格式 - -**返回:** 如果格式支持作为深度模板返回 `true` - -**线程安全:** ✅(只读查询) - -**示例:** - -```cpp -ID3D12Device* device = ...; -if (IsDepthStencilFormatSupported(device, DXGI_FORMAT_D24_UNORM_S8_UINT)) { - // 可以使用该格式作为深度模板 -} -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [CheckFormatSupport](check-format-support.md) diff --git a/docs/api/rhi/d3d12/common/is-render-target-format-supported.md b/docs/api/rhi/d3d12/common/is-render-target-format-supported.md deleted file mode 100644 index 6587b63a..00000000 --- a/docs/api/rhi/d3d12/common/is-render-target-format-supported.md +++ /dev/null @@ -1,29 +0,0 @@ -# D3D12Common::IsRenderTargetFormatSupported - -```cpp -inline bool IsRenderTargetFormatSupported(ID3D12Device* device, DXGI_FORMAT format) -``` - -检查指定格式是否支持作为渲染目标。 - -**参数:** -- `device` - D3D12 设备指针 -- `format` - 要检查的 DXGI 格式 - -**返回:** 如果格式支持作为渲染目标返回 `true` - -**线程安全:** ✅(只读查询) - -**示例:** - -```cpp -ID3D12Device* device = ...; -if (IsRenderTargetFormatSupported(device, DXGI_FORMAT_R8G8B8A8_UNORM)) { - // 可以使用该格式作为渲染目标 -} -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [CheckFormatSupport](check-format-support.md) diff --git a/docs/api/rhi/d3d12/common/is-shader-resource-format-supported.md b/docs/api/rhi/d3d12/common/is-shader-resource-format-supported.md deleted file mode 100644 index b2123e72..00000000 --- a/docs/api/rhi/d3d12/common/is-shader-resource-format-supported.md +++ /dev/null @@ -1,29 +0,0 @@ -# D3D12Common::IsShaderResourceFormatSupported - -```cpp -inline bool IsShaderResourceFormatSupported(ID3D12Device* device, DXGI_FORMAT format) -``` - -检查指定格式是否支持作为着色器资源。 - -**参数:** -- `device` - D3D12 设备指针 -- `format` - 要检查的 DXGI 格式 - -**返回:** 如果格式支持作为着色器资源返回 `true` - -**线程安全:** ✅(只读查询) - -**示例:** - -```cpp -ID3D12Device* device = ...; -if (IsShaderResourceFormatSupported(device, DXGI_FORMAT_R32G32B32_FLOAT)) { - // 可以在着色器中读取该格式 -} -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [CheckFormatSupport](check-format-support.md) diff --git a/docs/api/rhi/d3d12/common/is-texture-format-supported.md b/docs/api/rhi/d3d12/common/is-texture-format-supported.md deleted file mode 100644 index 384fe366..00000000 --- a/docs/api/rhi/d3d12/common/is-texture-format-supported.md +++ /dev/null @@ -1,29 +0,0 @@ -# D3D12Common::IsTextureFormatSupported - -```cpp -inline bool IsTextureFormatSupported(ID3D12Device* device, DXGI_FORMAT format) -``` - -检查指定格式是否支持作为纹理。 - -**参数:** -- `device` - D3D12 设备指针 -- `format` - 要检查的 DXGI 格式 - -**返回:** 如果格式支持作为纹理返回 `true` - -**线程安全:** ✅(只读查询) - -**示例:** - -```cpp -ID3D12Device* device = ...; -if (IsTextureFormatSupported(device, DXGI_FORMAT_BC1_UNORM)) { - // 可以创建该格式的纹理 -} -``` - -## 相关文档 - -- [D3D12Common 总览](common.md) -- [CheckFormatSupport](check-format-support.md) diff --git a/docs/api/rhi/d3d12/constant-buffer-view/constant-buffer-view.md b/docs/api/rhi/d3d12/constant-buffer-view/constant-buffer-view.md deleted file mode 100644 index 814c65b1..00000000 --- a/docs/api/rhi/d3d12/constant-buffer-view/constant-buffer-view.md +++ /dev/null @@ -1,37 +0,0 @@ -# D3D12ConstantBufferView - -**命名空间**: `XCEngine::RHI` - -**类型**: 类 - -**描述**: DirectX 12 常量缓冲区视图的 D3D12 实现,提供与 D3D12 API 的直接交互接口。 - -**概述**: `D3D12ConstantBufferView` 是对 D3D12 常量缓冲区视图(Constant Buffer View)的封装类。它管理一个 CPU 可见的描述符句柄,用于在渲染命令中绑定常量缓冲区。内部持有对 D3D12 资源的引用,资源生命周期由外部管理。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`D3D12ConstantBufferView`](constructor.md) | 构造函数 | -| [`~D3D12ConstantBufferView`](destructor.md) | 析构函数 | -| [`Initialize`](initialize.md) | 初始化常量缓冲区视图 | -| [`Shutdown`](shutdown.md) | 关闭常量缓冲区视图 | -| [`GetCPUDescriptorHandle`](get-cpu-descriptor-handle.md) | 获取 CPU 描述符句柄 | - -## 使用示例 - -```cpp -ID3D12Device* device; -ID3D12Resource* buffer; - -XCEngine::RHI::D3D12ConstantBufferView cbv; -cbv.Initialize(device, buffer); - -// 使用 cbv.GetCPUDescriptorHandle() 绑定到命令列表 - -cbv.Shutdown(); -``` - -## 相关文档 - -- [D3D12 后端总览](../d3d12.md) diff --git a/docs/api/rhi/d3d12/constant-buffer-view/constructor.md b/docs/api/rhi/d3d12/constant-buffer-view/constructor.md deleted file mode 100644 index 9157f4da..00000000 --- a/docs/api/rhi/d3d12/constant-buffer-view/constructor.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12ConstantBufferView::D3D12ConstantBufferView - -```cpp -D3D12ConstantBufferView(); -``` - -构造一个空的 D3D12ConstantBufferView 实例。 - -## 复杂度 - -O(1) - -## 相关文档 - -- [D3D12ConstantBufferView 总览](constant-buffer-view.md) -- [~D3D12ConstantBufferView](destructor.md) diff --git a/docs/api/rhi/d3d12/constant-buffer-view/destructor.md b/docs/api/rhi/d3d12/constant-buffer-view/destructor.md deleted file mode 100644 index d1a319df..00000000 --- a/docs/api/rhi/d3d12/constant-buffer-view/destructor.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12ConstantBufferView::~D3D12ConstantBufferView - -```cpp -~D3D12ConstantBufferView(); -``` - -析构函数,自动调用 Shutdown 清理资源。 - -## 复杂度 - -O(1) - -## 相关文档 - -- [D3D12ConstantBufferView 总览](constant-buffer-view.md) -- [D3D12ConstantBufferView](constructor.md) diff --git a/docs/api/rhi/d3d12/constant-buffer-view/get-cpu-descriptor-handle.md b/docs/api/rhi/d3d12/constant-buffer-view/get-cpu-descriptor-handle.md deleted file mode 100644 index f1c0c65d..00000000 --- a/docs/api/rhi/d3d12/constant-buffer-view/get-cpu-descriptor-handle.md +++ /dev/null @@ -1,21 +0,0 @@ -# D3D12ConstantBufferView::GetCPUDescriptorHandle - -```cpp -D3D12_CPU_DESCRIPTOR_HANDLE GetCPUDescriptorHandle() const; -``` - -获取 CPU 描述符句柄,用于绑定到命令列表。 - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `D3D12_CPU_DESCRIPTOR_HANDLE` | CPU 侧描述符句柄,可用于设置命令列表 | - -## 复杂度 - -O(1) - -## 相关文档 - -- [D3D12ConstantBufferView 总览](constant-buffer-view.md) diff --git a/docs/api/rhi/d3d12/constant-buffer-view/initialize.md b/docs/api/rhi/d3d12/constant-buffer-view/initialize.md deleted file mode 100644 index 656e680f..00000000 --- a/docs/api/rhi/d3d12/constant-buffer-view/initialize.md +++ /dev/null @@ -1,26 +0,0 @@ -# D3D12ConstantBufferView::Initialize - -```cpp -void Initialize(ID3D12Device* device, ID3D12Resource* buffer, const D3D12_CONSTANT_BUFFER_VIEW_DESC* desc = nullptr); -``` - -初始化常量缓冲区视图。 - -当 `desc` 参数为 `nullptr` 时,方法会自动根据 `buffer` 的属性创建视图描述:设置 `BufferLocation` 为缓冲区的 GPU 虚拟地址,`SizeInBytes` 为缓冲区的宽度。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `device` | `ID3D12Device*` | D3D12 设备指针 | -| `buffer` | `ID3D12Resource*` | D3D12 资源指针,必须是常量缓冲区 | -| `desc` | `const D3D12_CONSTANT_BUFFER_VIEW_DESC*` | 可选的视图描述,如果为 `nullptr` 则自动创建 | - -## 复杂度 - -O(1) - -## 相关文档 - -- [D3D12ConstantBufferView 总览](constant-buffer-view.md) -- [Shutdown](shutdown.md) diff --git a/docs/api/rhi/d3d12/constant-buffer-view/shutdown.md b/docs/api/rhi/d3d12/constant-buffer-view/shutdown.md deleted file mode 100644 index d1c02b22..00000000 --- a/docs/api/rhi/d3d12/constant-buffer-view/shutdown.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12ConstantBufferView::Shutdown - -```cpp -void Shutdown(); -``` - -关闭常量缓冲区视图,重置内部状态。此方法仅重置描述符句柄和资源指针,**不会**释放底层 D3D12 资源,资源生命周期由外部管理。 - -## 复杂度 - -O(1) - -## 相关文档 - -- [D3D12ConstantBufferView 总览](constant-buffer-view.md) -- [Initialize](initialize.md) diff --git a/docs/api/rhi/d3d12/d3d12.md b/docs/api/rhi/d3d12/d3d12.md deleted file mode 100644 index e8e8b9e3..00000000 --- a/docs/api/rhi/d3d12/d3d12.md +++ /dev/null @@ -1,77 +0,0 @@ -# D3D12 后端概览 - -**命名空间**: `XCEngine::RHI` - -**类型**: `module` - -**描述**: DirectX 12 后端实现模块,提供对 DirectX 12 API 的完整封装。 - -## 组件列表 - -### 核心组件 - -| 组件 | 文档 | -|------|------| -| [D3D12Device](device/device.md) | DirectX 12 设备实现 | -| [D3D12CommandList](command-list/command-list.md) | 命令列表实现 | - -### 资源类型 - -| 组件 | 文档 | -|------|------| -| [D3D12Buffer](buffer/buffer.md) | GPU 缓冲区实现 | -| [D3D12Texture](texture/texture.md) | GPU 纹理实现 | - -### 命令执行 - -| 组件 | 文档 | -|------|------| -| [D3D12CommandQueue](command-queue/command-queue.md) | 命令队列实现 | -| [D3D12CommandAllocator](command-allocator/command-allocator.md) | 命令分配器 | - -### 同步原语 - -| 组件 | 文档 | -|------|------| -| [D3D12Fence](fence/fence.md) | 同步栅栏实现 | -| [D3D12SwapChain](swap-chain/swap-chain.md) | 交换链实现 | - -### 渲染状态 - -| 组件 | 文档 | -|------|------| -| [D3D12Shader](shader/shader.md) | 着色器实现 | -| [D3D12PipelineState](pipeline-state/pipeline-state.md) | 管线状态对象 | -| [D3D12Sampler](sampler/sampler.md) | 采样器实现 | -| [D3D12RootSignature](root-signature/root-signature.md) | 根签名实现 | - -### 描述符 - -| 组件 | 文档 | -|------|------| -| [D3D12DescriptorHeap](descriptor-heap/descriptor-heap.md) | 描述符堆实现 | -| [D3D12RenderTargetView](render-target-view/render-target-view.md) | 渲染目标视图 | -| [D3D12DepthStencilView](depth-stencil-view/depth-stencil-view.md) | 深度模板视图 | -| [D3D12ShaderResourceView](shader-resource-view/shader-resource-view.md) | 着色器资源视图 | -| [D3D12UnorderedAccessView](unordered-access-view/unordered-access-view.md) | 无序访问视图 | -| [D3D12ConstantBufferView](constant-buffer-view/constant-buffer-view.md) | 常量缓冲视图 | - -### 查询 - -| 组件 | 文档 | -|------|------| -| [D3D12QueryHeap](query-heap/query-heap.md) | 查询堆实现 | - -### 工具 - -| 组件 | 文档 | -|------|------| -| [D3D12Screenshot](screenshot/screenshot.md) | 截图工具 | -| [D3D12Types](types/types.md) | D3D12 类型转换 | -| [D3D12Enums](enums/enums.md) | D3D12 枚举转换 | -| [D3D12Common](common/common.md) | D3D12 公共工具函数 | - -## 相关文档 - -- [../rhi/rhi.md](../rhi.md) - RHI 模块总览 -- [OpenGL 后端](../opengl/opengl.md) diff --git a/docs/api/rhi/d3d12/depth-stencil-view/constructor.md b/docs/api/rhi/d3d12/depth-stencil-view/constructor.md deleted file mode 100644 index 46ad7302..00000000 --- a/docs/api/rhi/d3d12/depth-stencil-view/constructor.md +++ /dev/null @@ -1,27 +0,0 @@ -# D3D12DepthStencilView::D3D12DepthStencilView - -## 函数签名 - -```cpp -D3D12DepthStencilView() -``` - -## 描述 - -默认构造函数。创建空的深度模板视图实例,成员变量初始化为零值和空指针。 - -## 返回值 - -无 - -## 示例 - -```cpp -D3D12DepthStencilView dsv; // 创建空实例 -``` - -## 相关文档 - -- [D3D12DepthStencilView](depth-stencil-view.md) - 类总览 -- [D3D12DepthStencilView::Initialize](initialize.md) - 初始化方法 -- [D3D12DepthStencilView::~D3D12DepthStencilView](destructor.md) - 析构函数 diff --git a/docs/api/rhi/d3d12/depth-stencil-view/create-desc.md b/docs/api/rhi/d3d12/depth-stencil-view/create-desc.md deleted file mode 100644 index cae4c0a9..00000000 --- a/docs/api/rhi/d3d12/depth-stencil-view/create-desc.md +++ /dev/null @@ -1,27 +0,0 @@ -# D3D12DepthStencilView::CreateDesc - -```cpp -static D3D12_DEPTH_STENCIL_VIEW_DESC CreateDesc(Format format, D3D12_DSV_DIMENSION dimension = D3D12_DSV_DIMENSION_TEXTURE2D); -``` - -创建深度模板视图描述(静态方法)。 - -**参数:** -- `format` - 深度模板格式(如 `Format::D32_FLOAT`) -- `dimension` - 视图维度,默认为 `D3D12_DSV_DIMENSION_TEXTURE2D` - -**返回:** D3D12 深度模板视图描述 - -**复杂度:** O(1) - -## 示例 - -```cpp -auto desc = D3D12DepthStencilView::CreateDesc(Format::D32_FLOAT, D3D12_DSV_DIMENSION_TEXTURE2D); -dsv.Initialize(device, depthBuffer, &desc); -``` - -## 相关文档 - -- [D3D12DepthStencilView 总览](depth-stencil-view.md) - 类总览 -- [Initialize](initialize.md) - 初始化方法 diff --git a/docs/api/rhi/d3d12/depth-stencil-view/depth-stencil-view.md b/docs/api/rhi/d3d12/depth-stencil-view/depth-stencil-view.md deleted file mode 100644 index d3faafeb..00000000 --- a/docs/api/rhi/d3d12/depth-stencil-view/depth-stencil-view.md +++ /dev/null @@ -1,46 +0,0 @@ -# D3D12DepthStencilView - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` - -**头文件**: `XCEngine/RHI/D3D12/D3D12DepthStencilView.h` - -**描述**: DirectX 12 深度模板视图的 D3D12 实现,用于渲染管线中的深度/模板测试。 - -## 概述 - -`D3D12DepthStencilView` 是 RHI 深度模板视图接口的 D3D12 特定实现。该类封装了 D3D12 深度模板视图(DSV)的创建和管理,提供两种初始化方式:自动分配描述符句柄或使用预分配的描述符句柄。深度模板视图是渲染管线中用于深度测试和模板测试的关键资源。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`D3D12DepthStencilView()`](constructor.md) | 构造函数 | -| [`~D3D12DepthStencilView()`](destructor.md) | 析构函数 | -| [`Initialize`](initialize.md) | 初始化深度模板视图 | -| [`InitializeAt`](initialize-at.md) | 在指定位置初始化深度模板视图 | -| [`Shutdown`](shutdown.md) | 关闭深度模板视图 | -| [`GetCPUDescriptorHandle`](get-cpu-descriptor-handle.md) | 获取 CPU 描述符句柄 | -| [`CreateDesc`](create-desc.md) | 创建描述符(静态方法) | - -## 使用示例 - -```cpp -ID3D12Device* device; // 已初始化的 D3D12 设备 -ID3D12Resource* depthBuffer; // 深度缓冲资源 - -D3D12DepthStencilView dsv; -dsv.Initialize(device, depthBuffer, nullptr); - -D3D12_CPU_DESCRIPTOR_HANDLE handle = dsv.GetCPUDescriptorHandle(); -// 使用 handle 进行渲染操作 - -dsv.Shutdown(); -``` - -## 相关文档 - -- [D3D12 后端概览](../d3d12.md) - D3D12 后端模块总览 -- [D3D12DescriptorHeap](../descriptor-heap/descriptor-heap.md) - 描述符堆管理 -- [D3D12RenderTargetView](../render-target-view/render-target-view.md) - 渲染目标视图 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/depth-stencil-view/destructor.md b/docs/api/rhi/d3d12/depth-stencil-view/destructor.md deleted file mode 100644 index fd24f957..00000000 --- a/docs/api/rhi/d3d12/depth-stencil-view/destructor.md +++ /dev/null @@ -1,34 +0,0 @@ -# D3D12DepthStencilView::~D3D12DepthStencilView - -## 函数签名 - -```cpp -~D3D12DepthStencilView() -``` - -## 描述 - -析构函数。自动调用 `Shutdown()` 释放内部资源。 - -## 返回值 - -无 - -## 注意事项 - -此析构函数不直接释放 D3D12 资源,仅清理类内部状态。实际资源释放由描述符堆管理。 - -## 示例 - -```cpp -{ - D3D12DepthStencilView dsv; - dsv.Initialize(device, depthBuffer, nullptr); - // 使用 dsv... -} // dsv 析构时自动调用 Shutdown() -``` - -## 相关文档 - -- [D3D12DepthStencilView](depth-stencil-view.md) - 类总览 -- [D3D12DepthStencilView::Shutdown](shutdown.md) - 关闭方法 diff --git a/docs/api/rhi/d3d12/depth-stencil-view/get-cpu-descriptor-handle.md b/docs/api/rhi/d3d12/depth-stencil-view/get-cpu-descriptor-handle.md deleted file mode 100644 index 6e656204..00000000 --- a/docs/api/rhi/d3d12/depth-stencil-view/get-cpu-descriptor-handle.md +++ /dev/null @@ -1,29 +0,0 @@ -# D3D12DepthStencilView::GetCPUDescriptorHandle - -```cpp -D3D12_CPU_DESCRIPTOR_HANDLE GetCPUDescriptorHandle() const; -``` - -获取深度模板视图的 CPU 描述符句柄,用于绑定到渲染管线。 - -**返回:** CPU 描述符句柄 - -**复杂度:** O(1) - -## 说明 - -返回的描述符句柄用于将深度模板视图绑定到渲染管线的 OM(输出合并)阶段。此方法是 const 的,因为描述符句柄本身不修改对象状态。 - -## 示例 - -```cpp -D3D12DepthStencilView dsv; -dsv.Initialize(device, depthBuffer, nullptr); - -D3D12_CPU_DESCRIPTOR_HANDLE handle = dsv.GetCPUDescriptorHandle(); -// 使用 handle 绑定到 OM 阶段 -``` - -## 相关文档 - -- [D3D12DepthStencilView 总览](depth-stencil-view.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/depth-stencil-view/initialize-at.md b/docs/api/rhi/d3d12/depth-stencil-view/initialize-at.md deleted file mode 100644 index 7b0b06b9..00000000 --- a/docs/api/rhi/d3d12/depth-stencil-view/initialize-at.md +++ /dev/null @@ -1,33 +0,0 @@ -# D3D12DepthStencilView::InitializeAt - -```cpp -void InitializeAt(ID3D12Device* device, ID3D12Resource* resource, D3D12_CPU_DESCRIPTOR_HANDLE handle, const D3D12_DEPTH_STENCIL_VIEW_DESC* desc = nullptr); -``` - -在指定位置初始化深度模板视图,允许使用预分配的描述符句柄。 - -**参数:** -- `device` - D3D12 设备指针 -- `resource` - D3D12 资源指针(深度缓冲纹理) -- `handle` - 预分配的 CPU 描述符句柄位置 -- `desc` - 深度模板视图描述符,可选,默认为 nullptr - -**返回:** 无 - -**复杂度:** O(1) - -## 说明 - -此方法与 `Initialize` 的区别在于使用预分配的描述符句柄位置,适用于描述符堆管理场景。当需要将深度模板视图绑定到特定的描述符位置时使用此方法。 - -## 示例 - -```cpp -D3D12DepthStencilView dsv; -D3D12_CPU_DESCRIPTOR_HANDLE handle = GetPreallocatedHandle(); // 预分配的句柄 -dsv.InitializeAt(device, depthBuffer, handle, nullptr); -``` - -## 相关文档 - -- [D3D12DepthStencilView 总览](depth-stencil-view.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/depth-stencil-view/initialize.md b/docs/api/rhi/d3d12/depth-stencil-view/initialize.md deleted file mode 100644 index 203f5c00..00000000 --- a/docs/api/rhi/d3d12/depth-stencil-view/initialize.md +++ /dev/null @@ -1,36 +0,0 @@ -# D3D12DepthStencilView::Initialize - -```cpp -void Initialize(ID3D12Device* device, ID3D12Resource* resource, const D3D12_DEPTH_STENCIL_VIEW_DESC* desc = nullptr); -``` - -初始化深度模板视图,使用设备自动分配描述符句柄。 - -**参数:** -- `device` - D3D12 设备指针 -- `resource` - D3D12 资源指针(深度缓冲纹理) -- `desc` - 深度模板视图描述符,可选,默认为 nullptr - -**返回:** 无 - -**复杂度:** O(1) - -## 说明 - -此方法使用 `ID3D12Device::CreateDepthStencilView` 创建深度模板视图,描述符句柄由设备自动分配。适用于创建独立的深度模板视图。 - -## 示例 - -```cpp -D3D12DepthStencilView dsv; -dsv.Initialize(device, depthBuffer, nullptr); - -// 获取描述符句柄用于渲染 -D3D12_CPU_DESCRIPTOR_HANDLE handle = dsv.GetCPUDescriptorHandle(); -``` - -## 相关文档 - -- [D3D12DepthStencilView 总览](depth-stencil-view.md) - 类总览 -- [InitializeAt](initialize-at.md) - 在指定位置初始化 -- [D3D12Device](../../device/device.md) - D3D12 设备 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/depth-stencil-view/shutdown.md b/docs/api/rhi/d3d12/depth-stencil-view/shutdown.md deleted file mode 100644 index dd51f88a..00000000 --- a/docs/api/rhi/d3d12/depth-stencil-view/shutdown.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12DepthStencilView::Shutdown - -```cpp -void Shutdown(); -``` - -关闭深度模板视图,释放关联的资源引用。 - -**返回:** 无 - -**复杂度:** O(1) - -## 说明 - -此方法重置内部描述符句柄和资源指针,但不会释放描述符堆本身。调用后,视图对象处于未初始化状态,可以重新调用 `Initialize` 或 `InitializeAt` 进行初始化。 - -## 示例 - -```cpp -D3D12DepthStencilView dsv; -dsv.Initialize(device, depthBuffer, nullptr); - -// 使用视图... -dsv.Shutdown(); -``` - -## 相关文档 - -- [D3D12DepthStencilView 总览](depth-stencil-view.md) - 类总览 -- [Initialize](initialize.md) - 初始化视图 -- [InitializeAt](initialize-at.md) - 在指定位置初始化 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/descriptor-heap/constructor.md b/docs/api/rhi/d3d12/descriptor-heap/constructor.md deleted file mode 100644 index 2cf55542..00000000 --- a/docs/api/rhi/d3d12/descriptor-heap/constructor.md +++ /dev/null @@ -1,18 +0,0 @@ -# D3D12DescriptorHeap::D3D12DescriptorHeap - -```cpp -D3D12DescriptorHeap(); -``` - -默认构造函数。创建空的描述符堆对象,所有成员变量初始化为默认值: -- `m_type` 初始化为 `CBV_SRV_UAV` -- `m_numDescriptors` 初始化为 0 -- `m_descriptorSize` 初始化为 0 -- `m_shaderVisible` 初始化为 false - -构造的对象需要调用 `Initialize` 方法进行实际初始化。 - -## 相关文档 - -- [D3D12DescriptorHeap 总览](descriptor-heap.md) - 返回类总览 -- [Initialize](initialize-from-desc.md) - 初始化方法 diff --git a/docs/api/rhi/d3d12/descriptor-heap/create-desc.md b/docs/api/rhi/d3d12/descriptor-heap/create-desc.md deleted file mode 100644 index a2353253..00000000 --- a/docs/api/rhi/d3d12/descriptor-heap/create-desc.md +++ /dev/null @@ -1,20 +0,0 @@ -# D3D12DescriptorHeap::CreateDesc - -```cpp -static D3D12_DESCRIPTOR_HEAP_DESC CreateDesc(DescriptorHeapType type, uint32_t numDescriptors, bool shaderVisible = false); -``` - -创建描述符堆描述(静态方法)。 - -**参数:** -- `type` - 描述符堆类型 -- `numDescriptors` - 描述符数量 -- `shaderVisible` - 是否对 Shader 可见 - -**返回:** D3D12 描述符堆描述 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12DescriptorHeap 总览](descriptor-heap.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/descriptor-heap/descriptor-heap.md b/docs/api/rhi/d3d12/descriptor-heap/descriptor-heap.md deleted file mode 100644 index cbdee8e4..00000000 --- a/docs/api/rhi/d3d12/descriptor-heap/descriptor-heap.md +++ /dev/null @@ -1,62 +0,0 @@ -# D3D12DescriptorHeap - -**命名空间**: `XCEngine::RHI` - -**继承自**: [`RHIDescriptorPool`](../../descriptor-pool/descriptor-pool.md) - -**描述**: DirectX 12 描述符堆的 D3D12 实现,继承自 `RHIDescriptorPool`。描述符堆是 D3D12 中用于存储描述符(CBV/SRV/UAV/Sampler)的内存块,支持 CPU 可访问和 GPU 可访问两种模式。 - -**概述**: - -`D3D12DescriptorHeap` 封装了 D3D12 的描述符堆资源,提供描述符的分配、句柄计算和资源管理功能。描述符堆类型包括: -- `CBV_SRV_UAV` - 常量缓冲区、Shader资源和无序访问视图 -- `SAMPLER` - 采样器 - -描述符堆可以标记为 `shaderVisible`,使其可被 GPU shader 访问。仅当需要绑定到命令列表时才应使用 shader visible 堆。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`D3D12DescriptorHeap`](constructor.md) | 构造函数 | -| [`Initialize`](initialize-from-desc.md) | 从描述符初始化 | -| [`Initialize(ID3D12Device*,...)`](initialize-device.md) | 直接初始化 | -| [`Shutdown`](shutdown.md) | 关闭描述符堆 | -| [`GetDescriptorHeap`](get-descriptor-heap.md) | 获取 D3D12 描述符堆 | -| [`GetCPUDescriptorHandle`](get-cpu-descriptor-handle.md) | 获取 CPU 描述符句柄 | -| [`GetGPUDescriptorHandle`](get-gpu-descriptor-handle.md) | 获取 GPU 描述符句柄 | -| [`GetDescriptorCount`](get-descriptor-count.md) | 获取描述符数量 | -| [`GetType`](get-type.md) | 获取描述符类型 | -| [`GetDescriptorSize`](get-descriptor-size.md) | 获取描述符大小 | -| [`GetCPUDescriptorHandleForHeapStart`](get-cpu-descriptor-handle-for-heap-start.md) | 获取堆起始 CPU 句柄 | -| [`GetGPUDescriptorHandleForHeapStart`](get-gpu-descriptor-handle-for-heap-start.md) | 获取堆起始 GPU 句柄 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | -| [`CreateDesc`](create-desc.md) | 创建描述符(静态) | - -## 使用示例 - -```cpp -#include "XCEngine/RHI/D3D12/D3D12DescriptorHeap.h" - -using namespace XCEngine::RHI; - -// 创建设备 -ID3D12Device* device = ...; - -// 创建 CBV/SRV/UAV 描述符堆 -D3D12DescriptorHeap heap; -heap.Initialize(device, DescriptorHeapType::CBV_SRV_UAV, 256, true); - -// 获取描述符句柄 -CPUDescriptorHandle cpuHandle = heap.GetCPUDescriptorHandle(0); -GPUDescriptorHandle gpuHandle = heap.GetGPUDescriptorHandle(0); - -// 关闭 -heap.Shutdown(); -``` - -## 相关文档 - -- [D3D12 后端总览](../d3d12.md) -- [RHIDescriptorPool](../../descriptor-pool/descriptor-pool.md) - 抽象描述符池接口 -- [D3D12Enum](../enums/enums.md) - D3D12 类型枚举映射 diff --git a/docs/api/rhi/d3d12/descriptor-heap/get-cpu-descriptor-handle-for-heap-start.md b/docs/api/rhi/d3d12/descriptor-heap/get-cpu-descriptor-handle-for-heap-start.md deleted file mode 100644 index e1b1e719..00000000 --- a/docs/api/rhi/d3d12/descriptor-heap/get-cpu-descriptor-handle-for-heap-start.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12DescriptorHeap::GetCPUDescriptorHandleForHeapStart - -```cpp -D3D12_CPU_DESCRIPTOR_HANDLE GetCPUDescriptorHandleForHeapStart() const; -``` - -获取描述符堆起始位置的 CPU 描述符句柄。此句柄指向堆中第一个描述符,可作为遍历和偏移计算的基准。 - -**返回:** `D3D12_CPU_DESCRIPTOR_HANDLE` 结构体,包含堆起始 CPU 指针 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12DescriptorHeap 总览](descriptor-heap.md) - 返回类总览 -- [GetCPUDescriptorHandle](get-cpu-descriptor-handle.md) - 获取指定索引的 CPU 句柄 -- [GetGPUDescriptorHandleForHeapStart](get-gpu-descriptor-handle-for-heap-start.md) - GPU 版本 diff --git a/docs/api/rhi/d3d12/descriptor-heap/get-cpu-descriptor-handle.md b/docs/api/rhi/d3d12/descriptor-heap/get-cpu-descriptor-handle.md deleted file mode 100644 index af1d9dae..00000000 --- a/docs/api/rhi/d3d12/descriptor-heap/get-cpu-descriptor-handle.md +++ /dev/null @@ -1,18 +0,0 @@ -# D3D12DescriptorHeap::GetCPUDescriptorHandle - -```cpp -CPUDescriptorHandle GetCPUDescriptorHandle(uint32_t index); -``` - -获取 CPU 描述符句柄。 - -**参数:** -- `index` - 描述符索引 - -**返回:** CPU 描述符句柄 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12DescriptorHeap 总览](descriptor-heap.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/descriptor-heap/get-descriptor-count.md b/docs/api/rhi/d3d12/descriptor-heap/get-descriptor-count.md deleted file mode 100644 index 027027b9..00000000 --- a/docs/api/rhi/d3d12/descriptor-heap/get-descriptor-count.md +++ /dev/null @@ -1,15 +0,0 @@ -# D3D12DescriptorHeap::GetDescriptorCount - -```cpp -uint32_t GetDescriptorCount() const override; -``` - -获取描述符数量。 - -**返回:** 描述符数量 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12DescriptorHeap 总览](descriptor-heap.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/descriptor-heap/get-descriptor-heap.md b/docs/api/rhi/d3d12/descriptor-heap/get-descriptor-heap.md deleted file mode 100644 index 502fbb1f..00000000 --- a/docs/api/rhi/d3d12/descriptor-heap/get-descriptor-heap.md +++ /dev/null @@ -1,15 +0,0 @@ -# D3D12DescriptorHeap::GetDescriptorHeap - -```cpp -ID3D12DescriptorHeap* GetDescriptorHeap() const { return m_descriptorHeap.Get(); } -``` - -获取底层 D3D12 描述符堆接口。 - -**返回:** `ID3D12DescriptorHeap*` - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12DescriptorHeap 总览](descriptor-heap.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/descriptor-heap/get-descriptor-size.md b/docs/api/rhi/d3d12/descriptor-heap/get-descriptor-size.md deleted file mode 100644 index 44e4059d..00000000 --- a/docs/api/rhi/d3d12/descriptor-heap/get-descriptor-size.md +++ /dev/null @@ -1,15 +0,0 @@ -# D3D12DescriptorHeap::GetDescriptorSize - -```cpp -uint32_t GetDescriptorSize() const { return m_descriptorSize; } -``` - -获取描述符大小。 - -**返回:** 描述符大小(字节) - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12DescriptorHeap 总览](descriptor-heap.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/descriptor-heap/get-gpu-descriptor-handle-for-heap-start.md b/docs/api/rhi/d3d12/descriptor-heap/get-gpu-descriptor-handle-for-heap-start.md deleted file mode 100644 index 7bb31452..00000000 --- a/docs/api/rhi/d3d12/descriptor-heap/get-gpu-descriptor-handle-for-heap-start.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12DescriptorHeap::GetGPUDescriptorHandleForHeapStart - -```cpp -D3D12_GPU_DESCRIPTOR_HANDLE GetGPUDescriptorHandleForHeapStart() const; -``` - -获取描述符堆起始位置的 GPU 描述符句柄。此句柄指向堆中第一个描述符,可作为遍历和偏移计算的基准。仅当堆创建时 `shaderVisible` 为 `true` 时返回的句柄才有效。 - -**返回:** `D3D12_GPU_DESCRIPTOR_HANDLE` 结构体,包含堆起始 GPU 指针 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12DescriptorHeap 总览](descriptor-heap.md) - 返回类总览 -- [GetGPUDescriptorHandle](get-gpu-descriptor-handle.md) - 获取指定索引的 GPU 句柄 -- [GetCPUDescriptorHandleForHeapStart](get-cpu-descriptor-handle-for-heap-start.md) - CPU 版本 diff --git a/docs/api/rhi/d3d12/descriptor-heap/get-gpu-descriptor-handle.md b/docs/api/rhi/d3d12/descriptor-heap/get-gpu-descriptor-handle.md deleted file mode 100644 index 036b4723..00000000 --- a/docs/api/rhi/d3d12/descriptor-heap/get-gpu-descriptor-handle.md +++ /dev/null @@ -1,18 +0,0 @@ -# D3D12DescriptorHeap::GetGPUDescriptorHandle - -```cpp -GPUDescriptorHandle GetGPUDescriptorHandle(uint32_t index); -``` - -获取 GPU 描述符句柄。 - -**参数:** -- `index` - 描述符索引 - -**返回:** GPU 描述符句柄 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12DescriptorHeap 总览](descriptor-heap.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/descriptor-heap/get-native-handle.md b/docs/api/rhi/d3d12/descriptor-heap/get-native-handle.md deleted file mode 100644 index 0301be53..00000000 --- a/docs/api/rhi/d3d12/descriptor-heap/get-native-handle.md +++ /dev/null @@ -1,17 +0,0 @@ -# D3D12DescriptorHeap::GetNativeHandle - -```cpp -void* GetNativeHandle() override; -``` - -获取底层 D3D12 描述符堆原生句柄。返回 `ID3D12DescriptorHeap*` 的 `void*` 形式,用于泛型接口获取原生资源。 - -**返回:** `void*` 指向 `ID3D12DescriptorHeap` 的指针 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12DescriptorHeap 总览](descriptor-heap.md) - 返回类总览 -- [RHIDescriptorPool::GetNativeHandle](../../descriptor-pool/get-native-handle.md) - 基类方法 -- [GetDescriptorHeap](get-descriptor-heap.md) - 类型安全的获取方法 diff --git a/docs/api/rhi/d3d12/descriptor-heap/get-type.md b/docs/api/rhi/d3d12/descriptor-heap/get-type.md deleted file mode 100644 index ae681bb9..00000000 --- a/docs/api/rhi/d3d12/descriptor-heap/get-type.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12DescriptorHeap::GetType - -```cpp -DescriptorHeapType GetType() const override; -``` - -获取描述符堆类型。 - -**返回:** 描述符堆类型枚举值 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12DescriptorHeap 总览](descriptor-heap.md) - 返回类总览 -- [RHIDescriptorPool::GetType](../../descriptor-pool/get-type.md) - 基类方法 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/descriptor-heap/initialize-device.md b/docs/api/rhi/d3d12/descriptor-heap/initialize-device.md deleted file mode 100644 index bdda6d83..00000000 --- a/docs/api/rhi/d3d12/descriptor-heap/initialize-device.md +++ /dev/null @@ -1,40 +0,0 @@ -# D3D12DescriptorHeap::Initialize - -```cpp -bool Initialize(ID3D12Device* device, DescriptorHeapType type, uint32_t numDescriptors, bool shaderVisible = false); -``` - -直接使用 D3D12 设备创描述符堆。这是主要初始化方法,会创建底层的 `ID3D12DescriptorHeap` COM 对象。 - -**参数:** -- `device` - D3D12 设备指针,不得为 `nullptr` -- `type` - 描述符堆类型,决定堆中存储的描述符种类 -- `numDescriptors` - 描述符数量,必须大于 0 -- `shaderVisible` - 是否创建为 shader visible 模式。shader visible 的堆可绑定到命令列表供 shader 访问,但会增加 GPU 访问开销 - -**返回:** 是否初始化成功。失败时返回 `false`,可能原因包括: -- 设备指针无效 -- 描述符数量为 0 -- D3D12 API 创建堆失败 - -**复杂度:** O(1) - -## 示例 - -```cpp -ID3D12Device* device = ...; - -// 创建不可见的 CPU 描述符堆 -D3D12DescriptorHeap cpuHeap; -cpuHeap.Initialize(device, DescriptorHeapType::CBV_SRV_UAV, 64, false); - -// 创建 GPU 可见的描述符堆 -D3D12DescriptorHeap gpuHeap; -gpuHeap.Initialize(device, DescriptorHeapType::CBV_SRV_UAV, 256, true); -``` - -## 相关文档 - -- [D3D12DescriptorHeap 总览](descriptor-heap.md) - 返回类总览 -- [Initialize(const DescriptorPoolDesc&)](initialize-from-desc.md) - 描述符重载 -- [CreateDesc](create-desc.md) - 创建描述符结构体 diff --git a/docs/api/rhi/d3d12/descriptor-heap/initialize-from-desc.md b/docs/api/rhi/d3d12/descriptor-heap/initialize-from-desc.md deleted file mode 100644 index 420e52c8..00000000 --- a/docs/api/rhi/d3d12/descriptor-heap/initialize-from-desc.md +++ /dev/null @@ -1,34 +0,0 @@ -# D3D12DescriptorHeap::InitializeFromDesc - -```cpp -bool Initialize(const DescriptorPoolDesc& desc) override; -``` - -从描述符池描述结构体初始化描述符堆。该方法是 `RHIDescriptorPool` 基类接口的实现,内部调用 `Initialize(ID3D12Device*, ...)` 重载。 - -**参数:** -- `desc` - 描述符池描述,包含设备指针、堆类型、描述符数量和 shader visible 标志 - -**返回:** 是否初始化成功。失败时返回 `false`,可能由于 D3D12 API 调用失败导致。 - -**复杂度:** O(1) - -## 示例 - -```cpp -DescriptorPoolDesc desc = {}; -desc.device = device; -desc.type = DescriptorHeapType::CBV_SRV_UAV; -desc.descriptorCount = 256; -desc.shaderVisible = true; - -D3D12DescriptorHeap heap; -if (!heap.Initialize(desc)) { - // 处理初始化失败 -} -``` - -## 相关文档 - -- [D3D12DescriptorHeap 总览](descriptor-heap.md) - 返回类总览 -- [Initialize(ID3D12Device*,...)](initialize-device.md) - 直接初始化重载 diff --git a/docs/api/rhi/d3d12/descriptor-heap/shutdown.md b/docs/api/rhi/d3d12/descriptor-heap/shutdown.md deleted file mode 100644 index d4626740..00000000 --- a/docs/api/rhi/d3d12/descriptor-heap/shutdown.md +++ /dev/null @@ -1,14 +0,0 @@ -# D3D12DescriptorHeap::Shutdown - -```cpp -void Shutdown() override; -``` - -关闭描述符堆,释放底层 D3D12 描述符堆资源。 - -**复杂度:** O(1) - -## 相关文档 - -- [D3D12DescriptorHeap 总览](descriptor-heap.md) - 返回类总览 -- [RHIDescriptorPool::Shutdown](../../descriptor-pool/shutdown.md) - 基类方法 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/device/check-feature-support.md b/docs/api/rhi/d3d12/device/check-feature-support.md deleted file mode 100644 index 2947ffb1..00000000 --- a/docs/api/rhi/d3d12/device/check-feature-support.md +++ /dev/null @@ -1,25 +0,0 @@ -# D3D12Device::CheckFeatureSupport - -```cpp -bool CheckFeatureSupport(D3D12_FEATURE feature, void* featureSupportData, uint32_t featureSupportDataSize) -``` - -检查特性支持。 - -**参数:** -- `feature` - 特性类型 -- `featureSupportData` - 特性支持数据缓冲区 -- `featureSupportDataSize` - 数据大小 - -**返回:** 是否支持该特性 - -**示例:** - -```cpp -D3D12_FEATURE_DATA_D3D12_OPTIONS options; -bool supported = d3d12Device->CheckFeatureSupport(D3D12_FEATURE_D3D12_OPTIONS, &options, sizeof(options)); -``` - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/device/compile-shader.md b/docs/api/rhi/d3d12/device/compile-shader.md deleted file mode 100644 index d6d79ca1..00000000 --- a/docs/api/rhi/d3d12/device/compile-shader.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12Device::CompileShader - -```cpp -RHIShader* CompileShader(const ShaderCompileDesc& desc) override; -``` - -编译 D3D12 着色器。 - -**参数:** -- `desc` - 着色器编译描述符,包含文件名、入口点、Profile 等 - -**返回:** 新创建的着色器指针,失败返回 `nullptr` - -**复杂度:** 取决于着色器复杂度 - -**示例:** - -```cpp -ShaderCompileDesc shaderDesc; -shaderDesc.fileName = L"shaders/vertex.hlsl"; -shaderDesc.entryPoint = "VSMain"; -shaderDesc.profile = "vs_5_0"; - -RHIShader* shader = device->CompileShader(shaderDesc); -``` - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 -- [RHIDevice::CompileShader](../../device/compile-shader.md) - 基类方法 -- [D3D12Shader](../../shader/shader.md) - D3D12 着色器实现 diff --git a/docs/api/rhi/d3d12/device/constructor.md b/docs/api/rhi/d3d12/device/constructor.md deleted file mode 100644 index cfe3f928..00000000 --- a/docs/api/rhi/d3d12/device/constructor.md +++ /dev/null @@ -1,35 +0,0 @@ -# D3D12Device::D3D12Device - -构造函数,创建一个空的 D3D12Device 对象。 - -```cpp -D3D12Device(); -``` - -## 参数 - -无 - -## 返回值 - -无 - -**线程安全:** 非线程安全 - -**复杂度:** O(1) - -## 示例 - -```cpp -#include "XCEngine/RHI/D3D12/D3D12Device.h" - -D3D12Device* device = new D3D12Device(); -// 需要调用 Initialize 进行初始化 -device->Initialize(desc); -``` - -## 相关文档 - -- [D3D12Device 总览](device.md) -- [Initialize](initialize.md) - 初始化设备 -- [Shutdown](shutdown.md) - 关闭设备 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/device/create-buffer.md b/docs/api/rhi/d3d12/device/create-buffer.md deleted file mode 100644 index e6bc5410..00000000 --- a/docs/api/rhi/d3d12/device/create-buffer.md +++ /dev/null @@ -1,32 +0,0 @@ -# D3D12Device::CreateBuffer - -```cpp -RHIBuffer* CreateBuffer(const BufferDesc& desc) override; -``` - -创建 D3D12 缓冲区资源。 - -**参数:** -- `desc` - 缓冲区描述符,包含大小、类型、标志等 - -**返回:** 新创建的缓冲区指针,失败返回 `nullptr` - -**复杂度:** O(1) - -**示例:** - -```cpp -BufferDesc bufferDesc; -bufferDesc.size = sizeof(Vertex) * vertexCount; -bufferDesc.stride = sizeof(Vertex); -bufferDesc.bufferType = (uint32_t)BufferType::Vertex; -bufferDesc.flags = 0; - -RHIBuffer* vertexBuffer = device->CreateBuffer(bufferDesc); -``` - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 -- [RHIDevice::CreateBuffer](../../device/create-buffer.md) - 基类方法 -- [D3D12Buffer](../../buffer/buffer.md) - D3D12 缓冲区实现 diff --git a/docs/api/rhi/d3d12/device/create-command-list.md b/docs/api/rhi/d3d12/device/create-command-list.md deleted file mode 100644 index e81984bd..00000000 --- a/docs/api/rhi/d3d12/device/create-command-list.md +++ /dev/null @@ -1,19 +0,0 @@ -# D3D12Device::CreateCommandList - -```cpp -RHICommandList* CreateCommandList(const CommandListDesc& desc) override; -``` - -创建 D3D12 命令列表。 - -**参数:** -- `desc` - 命令列表描述符 - -**返回:** 新创建的命令列表指针 - -**注意:** 当前实现返回 `nullptr` - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 -- [RHIDevice::CreateCommandList](../../device/create-command-list.md) - 基类方法 diff --git a/docs/api/rhi/d3d12/device/create-command-queue.md b/docs/api/rhi/d3d12/device/create-command-queue.md deleted file mode 100644 index 88ede436..00000000 --- a/docs/api/rhi/d3d12/device/create-command-queue.md +++ /dev/null @@ -1,19 +0,0 @@ -# D3D12Device::CreateCommandQueue - -```cpp -RHICommandQueue* CreateCommandQueue(const CommandQueueDesc& desc) override; -``` - -创建 D3D12 命令队列。 - -**参数:** -- `desc` - 命令队列描述符 - -**返回:** 新创建的命令队列指针 - -**注意:** 当前实现返回 `nullptr` - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 -- [RHIDevice::CreateCommandQueue](../../device/create-command-queue.md) - 基类方法 diff --git a/docs/api/rhi/d3d12/device/create-fence.md b/docs/api/rhi/d3d12/device/create-fence.md deleted file mode 100644 index 307c27bf..00000000 --- a/docs/api/rhi/d3d12/device/create-fence.md +++ /dev/null @@ -1,27 +0,0 @@ -# D3D12Device::CreateFence - -```cpp -RHIFence* CreateFence(const FenceDesc& desc) override; -``` - -创建 D3D12 栅栏。 - -**参数:** -- `desc` - 栅栏描述符,包含初始值等 - -**返回:** 新创建的栅栏指针,失败返回 `nullptr` - -**示例:** - -```cpp -FenceDesc fenceDesc; -fenceDesc.initialValue = 0; - -RHIFence* fence = device->CreateFence(fenceDesc); -``` - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 -- [RHIDevice::CreateFence](../../device/create-fence.md) - 基类方法 -- [D3D12Fence](../../fence/fence.md) - D3D12 栅栏实现 diff --git a/docs/api/rhi/d3d12/device/create-pipeline-state.md b/docs/api/rhi/d3d12/device/create-pipeline-state.md deleted file mode 100644 index 42be1f01..00000000 --- a/docs/api/rhi/d3d12/device/create-pipeline-state.md +++ /dev/null @@ -1,19 +0,0 @@ -# D3D12Device::CreatePipelineState - -```cpp -RHIPipelineState* CreatePipelineState(const PipelineStateDesc& desc) override; -``` - -创建 D3D12 管线状态对象。 - -**参数:** -- `desc` - 管线状态描述符 - -**返回:** 新创建的管线状态指针 - -**注意:** 当前实现返回 `nullptr` - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 -- [RHIDevice::CreatePipelineState](../../device/create-pipeline-state.md) - 基类方法 diff --git a/docs/api/rhi/d3d12/device/create-sampler.md b/docs/api/rhi/d3d12/device/create-sampler.md deleted file mode 100644 index b1942fef..00000000 --- a/docs/api/rhi/d3d12/device/create-sampler.md +++ /dev/null @@ -1,30 +0,0 @@ -# D3D12Device::CreateSampler - -```cpp -RHISampler* CreateSampler(const SamplerDesc& desc) override; -``` - -创建 D3D12 采样器。 - -**参数:** -- `desc` - 采样器描述符,包含过滤模式、地址模式等 - -**返回:** 新创建的采样器指针,失败返回 `nullptr` - -**示例:** - -```cpp -SamplerDesc samplerDesc; -samplerDesc.filter = (uint32_t)D3D12_FILTER_MIN_MAG_MIP_LINEAR; -samplerDesc.addressU = (uint32_t)D3D12_TEXTURE_ADDRESS_MODE_WRAP; -samplerDesc.addressV = (uint32_t)D3D12_TEXTURE_ADDRESS_MODE_WRAP; -samplerDesc.addressW = (uint32_t)D3D12_TEXTURE_ADDRESS_MODE_WRAP; - -RHISampler* sampler = device->CreateSampler(samplerDesc); -``` - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 -- [RHIDevice::CreateSampler](../../device/create-sampler.md) - 基类方法 -- [D3D12Sampler](../../sampler/sampler.md) - D3D12 采样器实现 diff --git a/docs/api/rhi/d3d12/device/create-swap-chain.md b/docs/api/rhi/d3d12/device/create-swap-chain.md deleted file mode 100644 index 71a50b87..00000000 --- a/docs/api/rhi/d3d12/device/create-swap-chain.md +++ /dev/null @@ -1,19 +0,0 @@ -# D3D12Device::CreateSwapChain - -```cpp -RHISwapChain* CreateSwapChain(const SwapChainDesc& desc) override; -``` - -创建 D3D12 交换链。 - -**参数:** -- `desc` - 交换链描述符 - -**返回:** 新创建的交换链指针 - -**注意:** 当前实现返回 `nullptr` - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 -- [RHIDevice::CreateSwapChain](../../device/create-swap-chain.md) - 基类方法 diff --git a/docs/api/rhi/d3d12/device/create-texture.md b/docs/api/rhi/d3d12/device/create-texture.md deleted file mode 100644 index 5847a5ad..00000000 --- a/docs/api/rhi/d3d12/device/create-texture.md +++ /dev/null @@ -1,36 +0,0 @@ -# D3D12Device::CreateTexture - -```cpp -RHITexture* CreateTexture(const TextureDesc& desc) override; -``` - -创建 D3D12 纹理资源。 - -**参数:** -- `desc` - 纹理描述符,包含维度、格式、分辨率等 - -**返回:** 新创建的纹理指针,失败返回 `nullptr` - -**复杂度:** O(1) - -**示例:** - -```cpp -TextureDesc texDesc; -texDesc.textureType = (uint32_t)D3D12_RESOURCE_DIMENSION_TEXTURE2D; -texDesc.width = 1920; -texDesc.height = 1080; -texDesc.depth = 1; -texDesc.mipLevels = 1; -texDesc.format = (uint32_t)DXGI_FORMAT_R8G8B8A8_UNORM; -texDesc.sampleCount = 1; -texDesc.sampleQuality = 0; - -RHITexture* texture = device->CreateTexture(texDesc); -``` - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 -- [RHIDevice::CreateTexture](../../device/create-texture.md) - 基类方法 -- [D3D12Texture](../../texture/texture.md) - D3D12 纹理实现 diff --git a/docs/api/rhi/d3d12/device/destructor.md b/docs/api/rhi/d3d12/device/destructor.md deleted file mode 100644 index 4e43b692..00000000 --- a/docs/api/rhi/d3d12/device/destructor.md +++ /dev/null @@ -1,38 +0,0 @@ -# D3D12Device::~D3D12Device - -析构函数,销毁 D3D12Device 对象。 - -```cpp -~D3D12Device() override; -``` - -## 参数 - -无 - -## 返回值 - -无 - -**线程安全:** 非线程安全 - -**复杂度:** O(n) - 取决于资源释放时间 - -## 示例 - -```cpp -#include "XCEngine/RHI/D3D12/D3D12Device.h" - -{ - D3D12Device* device = new D3D12Device(); - device->Initialize(desc); - // ... 使用 device ... - device->Shutdown(); - delete device; -} // 或者超出作用域时自动调用析构函数 -``` - -## 相关文档 - -- [D3D12Device 总览](device.md) -- [Shutdown](shutdown.md) - 关闭设备 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/device/device.md b/docs/api/rhi/d3d12/device/device.md deleted file mode 100644 index eba57ed0..00000000 --- a/docs/api/rhi/d3d12/device/device.md +++ /dev/null @@ -1,56 +0,0 @@ -# D3D12Device - -**命名空间**: `XCEngine::RHI` - -**继承自**: `RHIDevice` - -**描述**: DirectX 12 设备实现,用于管理 D3D12 图形适配器、创建资源和管理命令队列。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Initialize`](initialize.md) | 初始化 D3D12 设备 | -| [`Shutdown`](shutdown.md) | 关闭设备 | -| [`CreateBuffer`](create-buffer.md) | 创建缓冲区 | -| [`CreateTexture`](create-texture.md) | 创建纹理 | -| [`CreateSwapChain`](create-swap-chain.md) | 创建交换链 | -| [`CreateCommandList`](create-command-list.md) | 创建命令列表 | -| [`CreateCommandQueue`](create-command-queue.md) | 创建命令队列 | -| [`CompileShader`](compile-shader.md) | 编译着色器 | -| [`CreatePipelineState`](create-pipeline-state.md) | 创建管线状态 | -| [`CreateFence`](create-fence.md) | 创建栅栏 | -| [`CreateSampler`](create-sampler.md) | 创建采样器 | -| [`GetCapabilities`](get-capabilities.md) | 获取设备能力 | -| [`GetDeviceInfo`](get-device-info.md) | 获取设备信息 | -| [`GetNativeDevice`](get-native-device.md) | 获取原生设备 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | -| [`GetDevice`](get-device.md) | 获取 D3D12 设备 | -| [`GetFactory`](get-factory.md) | 获取 D3D12 工厂 | -| [`GetAdapterInfo`](get-adapter-info.md) | 获取适配器信息 | -| [`EnumerateAdapters`](enumerate-adapters.md) | 枚举适配器 | -| [`GetDescriptorHandleIncrementSize`](get-descriptor-handle-increment-size.md) | 获取描述符增量大小 | -| [`CheckFeatureSupport`](check-feature-support.md) | 检查特性支持 | -| [`SetDeviceRemoved`](set-device-removed.md) | 设置设备已移除 | -| [`IsDeviceRemoved`](is-device-removed.md) | 查询设备是否已移除 | - -## 使用示例 - -```cpp -RHIDeviceDesc desc; -desc.adapterIndex = 0; -desc.enableDebugLayer = true; - -D3D12Device* device = new D3D12Device(); -if (device->Initialize(desc)) { - ID3D12Device* nativeDevice = device->GetDevice(); - // 使用设备... - device->Shutdown(); -} -delete device; -``` - -## 相关文档 - -- [D3D12 后端总览](../d3d12.md) -- [RHIDevice](../../device/device.md) - 抽象设备接口 diff --git a/docs/api/rhi/d3d12/device/enumerate-adapters.md b/docs/api/rhi/d3d12/device/enumerate-adapters.md deleted file mode 100644 index a26b40be..00000000 --- a/docs/api/rhi/d3d12/device/enumerate-adapters.md +++ /dev/null @@ -1,22 +0,0 @@ -# D3D12Device::EnumerateAdapters - -```cpp -std::vector EnumerateAdapters() -``` - -枚举所有可用的图形适配器。 - -**返回:** 适配器信息列表 - -**示例:** - -```cpp -std::vector adapters = d3d12Device->EnumerateAdapters(); -for (const auto& adapter : adapters) { - wprintf(L"Adapter: %ls\n", adapter.description.c_str()); -} -``` - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/device/get-adapter-info.md b/docs/api/rhi/d3d12/device/get-adapter-info.md deleted file mode 100644 index 18fa3557..00000000 --- a/docs/api/rhi/d3d12/device/get-adapter-info.md +++ /dev/null @@ -1,20 +0,0 @@ -# D3D12Device::GetAdapterInfo - -```cpp -const AdapterInfo& GetAdapterInfo() const -``` - -获取适配器信息。 - -**返回:** 适配器信息结构体引用 - -**示例:** - -```cpp -const AdapterInfo& info = d3d12Device->GetAdapterInfo(); -wprintf(L"GPU: %ls\n", info.description.c_str()); -``` - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/device/get-capabilities.md b/docs/api/rhi/d3d12/device/get-capabilities.md deleted file mode 100644 index bef438b7..00000000 --- a/docs/api/rhi/d3d12/device/get-capabilities.md +++ /dev/null @@ -1,15 +0,0 @@ -# D3D12Device::GetCapabilities - -```cpp -const RHICapabilities& GetCapabilities() const override; -``` - -获取 D3D12 设备能力。 - -**返回:** 设备能力引用 - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 -- [RHIDevice::GetCapabilities](../../device/get-capabilities.md) - 基类方法 -- [RHICapabilities](../../capabilities/capabilities.md) - 能力结构体 diff --git a/docs/api/rhi/d3d12/device/get-descriptor-handle-increment-size.md b/docs/api/rhi/d3d12/device/get-descriptor-handle-increment-size.md deleted file mode 100644 index 2123bf5c..00000000 --- a/docs/api/rhi/d3d12/device/get-descriptor-handle-increment-size.md +++ /dev/null @@ -1,22 +0,0 @@ -# D3D12Device::GetDescriptorHandleIncrementSize - -```cpp -UINT GetDescriptorHandleIncrementSize(DescriptorHeapType type) const -``` - -获取描述符句柄增量大小。 - -**参数:** -- `type` - 描述符堆类型 - -**返回:** 描述符句柄增量大小(字节) - -**示例:** - -```cpp -UINT size = d3d12Device->GetDescriptorHandleIncrementSize(DescriptorHeapType::CBV_SRV_UAV); -``` - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/device/get-device-info.md b/docs/api/rhi/d3d12/device/get-device-info.md deleted file mode 100644 index 6880cc7e..00000000 --- a/docs/api/rhi/d3d12/device/get-device-info.md +++ /dev/null @@ -1,14 +0,0 @@ -# D3D12Device::GetDeviceInfo - -```cpp -const RHIDeviceInfo& GetDeviceInfo() const override; -``` - -获取 D3D12 设备信息。 - -**返回:** 设备信息引用 - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 -- [RHIDevice::GetDeviceInfo](../../device/get-device-info.md) - 基类方法 diff --git a/docs/api/rhi/d3d12/device/get-device.md b/docs/api/rhi/d3d12/device/get-device.md deleted file mode 100644 index df08ac45..00000000 --- a/docs/api/rhi/d3d12/device/get-device.md +++ /dev/null @@ -1,19 +0,0 @@ -# D3D12Device::GetDevice - -```cpp -ID3D12Device* GetDevice() const -``` - -获取底层 D3D12 设备指针。 - -**返回:** DirectX 12 设备指针 - -**示例:** - -```cpp -ID3D12Device* device = d3d12Device->GetDevice(); -``` - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/device/get-factory.md b/docs/api/rhi/d3d12/device/get-factory.md deleted file mode 100644 index b90675a9..00000000 --- a/docs/api/rhi/d3d12/device/get-factory.md +++ /dev/null @@ -1,19 +0,0 @@ -# D3D12Device::GetFactory - -```cpp -IDXGIFactory4* GetFactory() const -``` - -获取底层 DXGI 工厂指针。 - -**返回:** DXGI 工厂指针 - -**示例:** - -```cpp -IDXGIFactory4* factory = d3d12Device->GetFactory(); -``` - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 diff --git a/docs/api/rhi/d3d12/device/get-native-device.md b/docs/api/rhi/d3d12/device/get-native-device.md deleted file mode 100644 index 19f292dc..00000000 --- a/docs/api/rhi/d3d12/device/get-native-device.md +++ /dev/null @@ -1,21 +0,0 @@ -# D3D12Device::GetNativeDevice - -```cpp -void* GetNativeDevice() override; -``` - -获取原生 D3D12 设备指针。 - -**返回:** `ID3D12Device*` 指针 - -**示例:** - -```cpp -ID3D12Device* nativeDevice = static_cast(device->GetNativeDevice()); -``` - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 -- [RHIDevice::GetNativeDevice](../../device/get-native-device.md) - 基类方法 -- [GetNativeHandle](get-native-handle.md) - 获取原生句柄 diff --git a/docs/api/rhi/d3d12/device/get-native-handle.md b/docs/api/rhi/d3d12/device/get-native-handle.md deleted file mode 100644 index 8f412a73..00000000 --- a/docs/api/rhi/d3d12/device/get-native-handle.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12Device::GetNativeHandle - -```cpp -void* GetNativeHandle() const; -``` - -获取原生 D3D12 设备句柄。 - -**返回:** `ID3D12Device*` 指针 - -**注意:** 此方法返回与 `GetNativeDevice()` 相同的指针 - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 -- [GetNativeDevice](get-native-device.md) - 获取原生设备 diff --git a/docs/api/rhi/d3d12/device/initialize.md b/docs/api/rhi/d3d12/device/initialize.md deleted file mode 100644 index 6d6227b9..00000000 --- a/docs/api/rhi/d3d12/device/initialize.md +++ /dev/null @@ -1,35 +0,0 @@ -# D3D12Device::Initialize - -```cpp -bool Initialize(const RHIDeviceDesc& desc) override; -``` - -初始化 D3D12 设备,建立与图形适配器的连接。 - -**参数:** -- `desc` - 设备描述符,包含适配器索引、调试选项等配置 - -**返回:** 成功返回 `true`,失败返回 `false` - -**复杂度:** O(1) - -**示例:** - -```cpp -RHIDeviceDesc desc; -desc.adapterIndex = 0; -desc.enableDebugLayer = true; - -D3D12Device* device = new D3D12Device(); -if (device->Initialize(desc)) { - ID3D12Device* nativeDevice = device->GetDevice(); -} else { - delete device; -} -``` - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 -- [RHIDevice::Initialize](../../device/initialize.md) - 基类方法 -- [RHIDeviceDesc](../../types/types.md) - 设备描述结构体 diff --git a/docs/api/rhi/d3d12/device/is-device-removed.md b/docs/api/rhi/d3d12/device/is-device-removed.md deleted file mode 100644 index f0629484..00000000 --- a/docs/api/rhi/d3d12/device/is-device-removed.md +++ /dev/null @@ -1,14 +0,0 @@ -# D3D12Device::IsDeviceRemoved - -```cpp -bool IsDeviceRemoved() const; -``` - -查询设备是否已移除。 - -**返回:** 设备已移除返回 `true`,否则返回 `false` - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 -- [SetDeviceRemoved](set-device-removed.md) - 设置设备已移除标记 diff --git a/docs/api/rhi/d3d12/device/set-device-removed.md b/docs/api/rhi/d3d12/device/set-device-removed.md deleted file mode 100644 index cf88c41c..00000000 --- a/docs/api/rhi/d3d12/device/set-device-removed.md +++ /dev/null @@ -1,12 +0,0 @@ -# D3D12Device::SetDeviceRemoved - -```cpp -void SetDeviceRemoved(); -``` - -标记设备已移除。 - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 -- [IsDeviceRemoved](is-device-removed.md) - 查询设备是否已移除 diff --git a/docs/api/rhi/d3d12/device/shutdown.md b/docs/api/rhi/d3d12/device/shutdown.md deleted file mode 100644 index 64affeeb..00000000 --- a/docs/api/rhi/d3d12/device/shutdown.md +++ /dev/null @@ -1,21 +0,0 @@ -# D3D12Device::Shutdown - -```cpp -void Shutdown() override; -``` - -关闭 D3D12 设备,释放所有相关资源。 - -**复杂度:** O(n) - 取决于管理的资源数量 - -**示例:** - -```cpp -device->Shutdown(); -delete device; -``` - -## 相关文档 - -- [D3D12Device 总览](device.md) - 返回类总览 -- [RHIDevice::Shutdown](../../device/shutdown.md) - 基类方法 diff --git a/docs/api/rhi/d3d12/enums/enums.md b/docs/api/rhi/d3d12/enums/enums.md deleted file mode 100644 index da148e1f..00000000 --- a/docs/api/rhi/d3d12/enums/enums.md +++ /dev/null @@ -1,78 +0,0 @@ -# D3D12Enum - -**命名空间**: `XCEngine::RHI` - -**类型**: `namespace` (枚举转换函数集合) - -**描述**: D3D12 枚举值转换函数集合,提供 RHI 抽象枚举到 D3D12 原生枚举的转换。**所有函数均为 inline 函数**。 - -## 概述 - -`D3D12Enum.h` 提供了 RHI 抽象层枚举类型到 DirectX 12 原生枚举类型的转换函数。这些函数是 D3D12 后端实现的核心组成部分,使得上层的 RHI 抽象枚举能够正确转换为对应的 D3D12 枚举值。设计遵循 DirectX 12 规范,涵盖填充模式、剔除模式、混合操作、纹理寻址、图元拓扑等核心渲染参数。 - -## 转换函数详细列表 - -| 函数 | 源类型 | 目标类型 | 描述 | -|------|--------|----------|------| -| `ToD3D12(FillMode)` | `FillMode` | `D3D12_FILL_MODE` | 填充模式转换 (Wireframe/Solid) | -| `ToD3D12(CullMode)` | `CullMode` | `D3D12_CULL_MODE` | 剔除模式转换 (None/Front/Back) | -| `ToD3D12(ComparisonFunc)` | `ComparisonFunc` | `D3D12_COMPARISON_FUNC` | 比较函数转换 (Never/Less/Equal/LessEqual/Greater/NotEqual/GreaterEqual/Always) | -| `ToD3D12(StencilOp)` | `StencilOp` | `D3D12_STENCIL_OP` | 模板操作转换 (Keep/Zero/Replace/IncrSat/DecrSat/Invert/Incr/Decr) | -| `ToD3D12(BlendOp)` | `BlendOp` | `D3D12_BLEND_OP` | 混合操作转换 (Add/Subtract/ReverseSubtract/Min/Max) | -| `ToD3D12(BlendFactor)` | `BlendFactor` | `D3D12_BLEND` | 混合因子转换 (Zero/One/SrcColor/InvSrcColor/SrcAlpha/InvSrcAlpha/SrcAlphaSat/BlendFactor/InvBlendFactor) | -| `ToD3D12(LogicOp)` | `LogicOp` | `D3D12_LOGIC_OP` | 逻辑操作转换 (Clear/Set/Copy/CopyInverted/Noop/Invert/And/Nand/Or/Nor/Xor/Equiv/AndReverse/AndInverted/OrReverse/OrInverted) | -| `ToD3D12(FilterMode)` | `FilterMode` | `D3D12_FILTER` | 过滤器模式转换 (Point/Linear/Anisotropic/ComparisonPoint/ComparisonLinear/ComparisonAnisotropic) | -| `ToD3D12(TextureAddressMode)` | `TextureAddressMode` | `D3D12_TEXTURE_ADDRESS_MODE` | 纹理寻址模式转换 (Wrap/Mirror/Clamp/Border/MirrorOnce) | -| `ToD3D12(BorderColor)` | `BorderColor` | `D3D12_STATIC_BORDER_COLOR` | 边框颜色转换 (TransparentBlack/OpaqueBlack/OpaqueWhite) | -| `ToD3D12(ShaderVisibility)` | `ShaderVisibility` | `D3D12_SHADER_VISIBILITY` | Shader 可见性转换 (All/Vertex/Hull/Domain/Geometry/Pixel/Amplification/Mesh) | -| `ToD3D12(Format)` | `Format` | `DXGI_FORMAT` | 格式转换 (Unknown/R8_UNorm/R8G8_UNorm/R8G8B8A8_UNorm/R16G16B16A16_Float/R32G32B32A32_Float/R16_Float/R32_Float/D16_UNorm/D24_UNorm_S8_UInt/D32_Float/BC1-7_UNorm/BC6H_UF16/R32G32B32A32_UInt/R32_UInt) | -| `ToDXGI(Format)` | `Format` | `DXGI_FORMAT` | DXGI 格式转换(内部调用 `ToD3D12(Format)`) | -| `ToD3D12(ResourceStates)` | `ResourceStates` | `D3D12_RESOURCE_STATES` | 资源状态转换 (Common/VertexAndConstantBuffer/IndexBuffer/RenderTarget/UnorderedAccess/DepthWrite/DepthRead/NonPixelShaderResource/PixelShaderResource/CopySrc/CopyDst/Present/GenericRead) | -| `ToD3D12(HeapType)` | `HeapType` | `D3D12_HEAP_TYPE` | 堆类型转换 (Default/Upload/Readback) | -| `ToD3D12(PrimitiveTopology)` | `PrimitiveTopology` | `D3D12_PRIMITIVE_TOPOLOGY_TYPE` | 图元拓扑类型转换 (PointList/Line*/Triangle*/PatchList) | -| `ToD3D12Topology(PrimitiveTopology)` | `PrimitiveTopology` | `D3D12_PRIMITIVE_TOPOLOGY` | 图元拓扑详细转换(包含控制点信息) | -| `ToD3D12(DescriptorHeapType)` | `DescriptorHeapType` | `D3D12_DESCRIPTOR_HEAP_TYPE` | 描述符堆类型转换 (CBV_SRV_UAV/Sampler/RTV/DSV) | -| `ToD3D12(QueryType)` | `QueryType` | `D3D12_QUERY_TYPE` | 查询类型转换 (Occlusion/Timestamp/PipelineStatistics) | -| `ToD3D12(RootParameterType)` | `RootParameterType` | `D3D12_ROOT_PARAMETER_TYPE` | 根参数类型转换 (DescriptorTable/Constants/CBV/SRV/UAV) | -| `ToD3D12(TextureType)` | `TextureType` | `D3D12_RESOURCE_DIMENSION` | 纹理类型维度转换 (Texture1D/Texture2D*/Texture3D) | -| `ToD3D12(CommandQueueType)` | `CommandQueueType` | `D3D12_COMMAND_LIST_TYPE` | 命令列表类型转换 (Direct/Compute/Copy) | - -## 使用示例 - -### 渲染状态设置 - -```cpp -#include - -void SetupRenderState(XCEngine::RHI::FillMode fill, XCEngine::RHI::CullMode cull) { - D3D12_FILL_MODE d3dFill = XCEngine::RHI::ToD3D12(fill); - D3D12_CULL_MODE d3dCull = XCEngine::RHI::ToD3D12(cull); -} -``` - -### 纹理采样器配置 - -```cpp -#include - -void ConfigureSampler(XCEngine::RHI::FilterMode filterMode, XCEngine::RHI::TextureAddressMode addressMode) { - D3D12_FILTER filter = XCEngine::RHI::ToD3D12(filterMode); - D3D12_TEXTURE_ADDRESS_MODE address = XCEngine::RHI::ToD3D12(addressMode); -} -``` - -### 资源状态转换 - -```cpp -#include - -void TransitionResource(XCEngine::RHI::ResourceStates state) { - D3D12_RESOURCE_STATES d3dState = XCEngine::RHI::ToD3D12(state); -} -``` - -## 相关文档 - -- [D3D12 后端概览](../d3d12.md) -- [D3D12Types](../../types/types.md) - 类型转换 -- [RHI 枚举定义](../../enums/enums.md) - RHI 抽象层枚举定义 diff --git a/docs/api/rhi/d3d12/fence/constructor.md b/docs/api/rhi/d3d12/fence/constructor.md deleted file mode 100644 index 34fdf6ac..00000000 --- a/docs/api/rhi/d3d12/fence/constructor.md +++ /dev/null @@ -1,35 +0,0 @@ -# D3D12Fence::D3D12Fence - -构造函数,创建一个空的 D3D12Fence 对象。 - -```cpp -D3D12Fence(); -``` - -## 参数 - -无 - -## 返回值 - -无 - -**线程安全:** 非线程安全 - -**复杂度:** O(1) - -## 示例 - -```cpp -#include "XCEngine/RHI/D3D12/D3D12Fence.h" - -D3D12Fence fence; -// 需要调用 Initialize 进行初始化 -fence.Initialize(device, 0); -``` - -## 相关文档 - -- [D3D12Fence 总览](fence.md) -- [Initialize](initialize.md) - 初始化栅栏 -- [Shutdown](shutdown.md) - 关闭栅栏 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/fence/destructor.md b/docs/api/rhi/d3d12/fence/destructor.md deleted file mode 100644 index 07115409..00000000 --- a/docs/api/rhi/d3d12/fence/destructor.md +++ /dev/null @@ -1,36 +0,0 @@ -# D3D12Fence::~D3D12Fence - -析构函数,销毁 D3D12Fence 对象。 - -```cpp -~D3D12Fence() override; -``` - -## 参数 - -无 - -## 返回值 - -无 - -**线程安全:** 非线程安全,请在所有 GPU 操作完成后销毁对象 - -**复杂度:** O(n) - 取决于资源释放时间 - -## 示例 - -```cpp -#include "XCEngine/RHI/D3D12/D3D12Fence.h" - -{ - D3D12Fence fence; - fence.Initialize(device, 0); - // ... 使用 fence ... -} // 超出作用域时自动调用析构函数 -``` - -## 相关文档 - -- [D3D12Fence 总览](fence.md) -- [Shutdown](shutdown.md) - 关闭栅栏 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/fence/fence.md b/docs/api/rhi/d3d12/fence/fence.md deleted file mode 100644 index dbeb3eb6..00000000 --- a/docs/api/rhi/d3d12/fence/fence.md +++ /dev/null @@ -1,39 +0,0 @@ -# D3D12Fence - -**命名空间**: `XCEngine::RHI` - -**继承自**: `RHIFence` - -**描述**: DirectX 12 栅栏同步对象,用于 GPU/CPU 同步和跨队列同步。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Initialize`](initialize.md) | 初始化栅栏 | -| [`Shutdown`](shutdown.md) | 关闭并释放资源 | -| [`Signal`](signal.md) | 信号栅栏 | -| [`Wait`](wait.md) | 等待栅栏 | -| [`GetCompletedValue`](get-completed-value.md) | 获取完成值 | -| [`IsSignaled`](is-signaled.md) | 检查是否已信号 | -| [`GetEventHandle`](get-event-handle.md) | 获取事件句柄 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | -| [`GetFence`](get-fence.md) | 获取 D3D12 栅栏 | - -## 使用示例 - -```cpp -ID3D12Device* device = /* 获取 D3D12 设备 */; -D3D12Fence fence; -if (!fence.Initialize(device, 0)) { - return false; -} - -commandQueue->Signal(&fence, 1); -fence.Wait(1); -``` - -## 相关文档 - -- [D3D12 后端总览](../d3d12.md) - D3D12 后端总览 -- [RHIFence](../../fence/fence.md) - 抽象栅栏接口 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/fence/get-completed-value.md b/docs/api/rhi/d3d12/fence/get-completed-value.md deleted file mode 100644 index bbead1ad..00000000 --- a/docs/api/rhi/d3d12/fence/get-completed-value.md +++ /dev/null @@ -1,34 +0,0 @@ -# D3D12Fence::GetCompletedValue - -## 函数签名 - -```cpp -uint64_t GetCompletedValue() const override -``` - -## 中文描述 - -获取 GPU 已完成的最新栅栏值。 - -## 返回值 - -`uint64_t` - 已完成的栅栏值 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -uint64_t completedValue = d3d12Fence->GetCompletedValue(); -if (completedValue >= fenceValue) { - // 指定的栅栏值已完成 -} -``` - -## 相关文档 - -- [D3D12Fence](fence.md) - 类总览 -- [D3D12Fence::Signal](signal.md) - 信号栅栏 -- [D3D12Fence::IsSignaled](is-signaled.md) - 检查是否已信号 diff --git a/docs/api/rhi/d3d12/fence/get-event-handle.md b/docs/api/rhi/d3d12/fence/get-event-handle.md deleted file mode 100644 index 34f47c87..00000000 --- a/docs/api/rhi/d3d12/fence/get-event-handle.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12Fence::GetEventHandle - -## 函数签名 - -```cpp -void* GetEventHandle() -``` - -## 中文描述 - -获取用于 CPU 等待的 event 句柄。用于 `WaitForSingleObject` 等 API 进行阻塞等待。 - -## 返回值 - -`void*` - Win32 event 句柄 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -HANDLE eventHandle = static_cast(d3d12Fence->GetEventHandle()); -WaitForSingleObject(eventHandle, INFINITE); -``` - -## 相关文档 - -- [D3D12Fence](fence.md) - 类总览 -- [D3D12Fence::Wait](wait.md) - 等待栅栏 diff --git a/docs/api/rhi/d3d12/fence/get-fence.md b/docs/api/rhi/d3d12/fence/get-fence.md deleted file mode 100644 index ba7633a3..00000000 --- a/docs/api/rhi/d3d12/fence/get-fence.md +++ /dev/null @@ -1,30 +0,0 @@ -# D3D12Fence::GetFence - -## 函数签名 - -```cpp -ID3D12Fence* GetFence() const -``` - -## 中文描述 - -获取底层 `ID3D12Fence` 接口指针。 - -## 返回值 - -`ID3D12Fence*` - D3D12 栅栏接口指针 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -ID3D12Fence* fence = d3d12Fence->GetFence(); -``` - -## 相关文档 - -- [D3D12Fence](fence.md) - 类总览 -- [D3D12Fence::GetNativeHandle](get-native-handle.md) - 获取原生句柄 diff --git a/docs/api/rhi/d3d12/fence/get-native-handle.md b/docs/api/rhi/d3d12/fence/get-native-handle.md deleted file mode 100644 index 46998606..00000000 --- a/docs/api/rhi/d3d12/fence/get-native-handle.md +++ /dev/null @@ -1,30 +0,0 @@ -# D3D12Fence::GetNativeHandle - -## 函数签名 - -```cpp -void* GetNativeHandle() override -``` - -## 中文描述 - -获取底层 D3D12 栅栏指针。 - -## 返回值 - -`void*` - 底层 `ID3D12Fence*` 指针 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -ID3D12Fence* nativeFence = static_cast(d3d12Fence->GetNativeHandle()); -``` - -## 相关文档 - -- [D3D12Fence](fence.md) - 类总览 -- [D3D12Fence::GetFence](get-fence.md) - 获取 D3D12 栅栏接口 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/fence/index.md b/docs/api/rhi/d3d12/fence/index.md deleted file mode 100644 index 59b0970c..00000000 --- a/docs/api/rhi/d3d12/fence/index.md +++ /dev/null @@ -1,75 +0,0 @@ -# D3D12Fence - -## 命名空间 - -`XCEngine::RHI` - -## 类型 - -类 (Class) - -## 描述 - -D3D12Fence 是 DirectX 12 栅栏同步原语的实现类,继承自 RHIFence。该类封装了 ID3D12Fence 对象和 Win32 事件句柄,提供 GPU 与 CPU 之间的同步机制。 - -## 概述 - -D3D12Fence 通过 DirectX 12 的栅栏机制实现 GPU 命令队列的同步。每个栅栏关联一个 64 位递增数值,当 GPU 到达指定栅栏点时会更新该值,CPU 端可以等待栅栏达到目标值后继续执行。 - -## 公共方法表格 - -| 方法 | 签名 | 描述 | -|------|------|------| -| Initialize | `bool Initialize(ID3D12Device* device, uint64_t initialValue = 0)` | 初始化 D3D12Fence 对象 | -| Shutdown | `void Shutdown() override` | 释放栅栏相关资源 | -| Signal | `void Signal() override` | 使用默认值 1 触发栅栏 | -| Signal | `void Signal(uint64_t value) override` | 使用指定值触发栅栏 | -| Wait | `void Wait(uint64_t value) override` | 等待栅栏达到指定值 | -| GetCompletedValue | `uint64_t GetCompletedValue() const override` | 获取栅栏当前完成值 | -| IsSignaled | `bool IsSignaled() const override` | 检查栅栏是否已触发 | -| GetEventHandle | `void* GetEventHandle()` | 获取 Win32 事件句柄 | -| GetNativeHandle | `void* GetNativeHandle() override` | 获取底层 D3D12Fence 指针 | -| GetFence | `ID3D12Fence* GetFence() const` | 获取 ID3D12Fence 接口 | - -## 使用示例 - -```cpp -#include "XCEngine/RHI/D3D12/D3D12Fence.h" -#include - -// 创建设备后初始化栅栏 -ID3D12Device* device = ...; -D3D12Fence fence; -if (!fence.Initialize(device)) { - return false; -} - -// 在 GPU 命令完成后触发栅栏 -fence.Signal(1); - -// 在 CPU 端等待栅栏 -fence.Wait(1); - -// 检查栅栏状态 -if (fence.IsSignaled()) { - // 栅栏已触发,可以继续执行 -} - -// 获取底层 D3D12Fence 进行高级操作 -ID3D12Fence* nativeFence = fence.GetFence(); - -// 销毁前关闭 -fence.Shutdown(); -``` - -## 相关文档 - -- [Initialize](../../fence/constructor.md) -- [Shutdown](../../fence/shutdown.md) -- [Signal](../../fence/signal.md) -- [Wait](../../fence/wait.md) -- [GetCompletedValue](../../fence/get-completed-value.md) -- [IsSignaled](../../fence/is-signaled.md) -- [GetEventHandle](get-event-handle.md) -- [GetNativeHandle](../../fence/get-native-handle.md) -- [GetFence](get-fence.md) diff --git a/docs/api/rhi/d3d12/fence/initialize.md b/docs/api/rhi/d3d12/fence/initialize.md deleted file mode 100644 index 8e9b25d5..00000000 --- a/docs/api/rhi/d3d12/fence/initialize.md +++ /dev/null @@ -1,43 +0,0 @@ -# D3D12Fence::Initialize - -## 函数签名 - -```cpp -bool Initialize(ID3D12Device* device, uint64_t initialValue = 0) -``` - -## 中文描述 - -创建 D3D12 栅栏对象并初始化同步事件。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `device` | `ID3D12Device*` | D3D12 设备指针 | -| `initialValue` | `uint64_t` | 栅栏初始值,默认为 0 | - -## 返回值 - -`bool` - 初始化成功返回 `true`,失败返回 `false` - -## 复杂度 - -O(1) - -## 示例 - -```cpp -ID3D12Device* device = /* 获取 D3D12 设备 */; -D3D12Fence fence; -if (!fence.Initialize(device, 0)) { - // 初始化失败 - return false; -} -``` - -## 相关文档 - -- [D3D12Fence](fence.md) - 类总览 -- [D3D12Fence::Shutdown](shutdown.md) - 关闭栅栏 -- [D3D12Fence::Signal](signal.md) - 信号栅栏 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/fence/is-signaled.md b/docs/api/rhi/d3d12/fence/is-signaled.md deleted file mode 100644 index e7b4e2b2..00000000 --- a/docs/api/rhi/d3d12/fence/is-signaled.md +++ /dev/null @@ -1,33 +0,0 @@ -# D3D12Fence::IsSignaled - -## 函数签名 - -```cpp -bool IsSignaled() const override -``` - -## 中文描述 - -检查当前栅栏值是否已达到 signal 值。 - -## 返回值 - -`bool` - 如果已完成则返回 `true`,否则返回 `false` - -## 复杂度 - -O(1) - -## 示例 - -```cpp -if (d3d12Fence->IsSignaled()) { - // 栅栏已完成,可以继续执行 -} -``` - -## 相关文档 - -- [D3D12Fence](fence.md) - 类总览 -- [D3D12Fence::GetCompletedValue](get-completed-value.md) - 获取完成值 -- [D3D12Fence::Wait](wait.md) - 等待栅栏 diff --git a/docs/api/rhi/d3d12/fence/shutdown.md b/docs/api/rhi/d3d12/fence/shutdown.md deleted file mode 100644 index c011ea8f..00000000 --- a/docs/api/rhi/d3d12/fence/shutdown.md +++ /dev/null @@ -1,37 +0,0 @@ -# D3D12Fence::Shutdown - -## 函数签名 - -```cpp -void Shutdown() override -``` - -## 中文描述 - -关闭栅栏并释放关联的 Win32 事件句柄。 - -## 参数 - -无 - -## 返回值 - -无 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12Fence fence; -fence.Initialize(device, 0); -// 使用栅栏... -fence.Shutdown(); -``` - -## 相关文档 - -- [D3D12Fence](fence.md) - 类总览 -- [D3D12Fence::Initialize](initialize.md) - 初始化栅栏 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/fence/signal.md b/docs/api/rhi/d3d12/fence/signal.md deleted file mode 100644 index 694e4e4d..00000000 --- a/docs/api/rhi/d3d12/fence/signal.md +++ /dev/null @@ -1,46 +0,0 @@ -# D3D12Fence::Signal - -## 函数签名 - -```cpp -void Signal() override -``` - -## 中文描述 - -将栅栏值设置为 GPU 当前 signaled 值,通常用于标记命令队列执行完成。 - -## 重载 - -| 版本 | 签名 | -|------|------| -| 无参数 | `void Signal()` | -| 带值 | `void Signal(uint64_t value)` | - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `value` | `uint64_t` | 要设置的栅栏值(仅带参数版本) | - -## 返回值 - -无 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -d3d12Fence->Signal(); -// 或指定值 -d3d12Fence->Signal(1); -``` - -## 相关文档 - -- [D3D12Fence](fence.md) - 类总览 -- [D3D12Fence::Wait](wait.md) - 等待栅栏 -- [D3D12Fence::GetCompletedValue](get-completed-value.md) - 获取完成值 diff --git a/docs/api/rhi/d3d12/fence/wait.md b/docs/api/rhi/d3d12/fence/wait.md deleted file mode 100644 index 9911f972..00000000 --- a/docs/api/rhi/d3d12/fence/wait.md +++ /dev/null @@ -1,37 +0,0 @@ -# D3D12Fence::Wait - -## 函数签名 - -```cpp -void Wait(uint64_t value) override -``` - -## 中文描述 - -阻塞等待直到栅栏值达到指定值。利用 Win32 事件进行高效等待。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `value` | `uint64_t` | 要等待的栅栏值 | - -## 返回值 - -无 - -## 复杂度 - -O(1) 到 O(n),n 为等待时间 - -## 示例 - -```cpp -fence.Wait(1); // 等待栅栏值达到 1 -``` - -## 相关文档 - -- [D3D12Fence](fence.md) - 类总览 -- [D3D12Fence::Signal](signal.md) - 信号栅栏 -- [D3D12Fence::GetCompletedValue](get-completed-value.md) - 获取完成值 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/pipeline-state/bind.md b/docs/api/rhi/d3d12/pipeline-state/bind.md deleted file mode 100644 index cd7761b8..00000000 --- a/docs/api/rhi/d3d12/pipeline-state/bind.md +++ /dev/null @@ -1,36 +0,0 @@ -# D3D12PipelineState::Bind - -## 函数签名 - -```cpp -void Bind() override -``` - -## 中文描述 - -绑定管线状态到渲染上下文。此方法从 `RHIPipelineState` 基类继承并重写。当前实现为空。 - -## 参数 - -无 - -## 返回值 - -无 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12PipelineState pipelineState; -// ... 初始化 pipelineState -pipelineState.Bind(); -``` - -## 相关文档 - -- [D3D12PipelineState](pipeline-state.md) - 类总览 -- [RHIPipelineState](../../pipeline-state/pipeline-state.md) - 抽象管线状态接口 diff --git a/docs/api/rhi/d3d12/pipeline-state/create-desc.md b/docs/api/rhi/d3d12/pipeline-state/create-desc.md deleted file mode 100644 index b2e5060f..00000000 --- a/docs/api/rhi/d3d12/pipeline-state/create-desc.md +++ /dev/null @@ -1,53 +0,0 @@ -# D3D12PipelineState::CreateDesc - -## 函数签名 - -```cpp -static D3D12_GRAPHICS_PIPELINE_STATE_DESC CreateDesc( - ID3D12RootSignature* rootSignature, - const D3D12_SHADER_BYTECODE& vs, - const D3D12_SHADER_BYTECODE& ps, - const D3D12_SHADER_BYTECODE& gs, - uint32_t inputElementCount, - const D3D12_INPUT_ELEMENT_DESC* inputElements) -``` - -## 中文描述 - -创建图形管线状态描述符,包含着色器和输入布局信息。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `rootSignature` | `ID3D12RootSignature*` | 根签名指针 | -| `vs` | `D3D12_SHADER_BYTECODE` | 顶点着色器字节码 | -| `ps` | `D3D12_SHADER_BYTECODE` | 像素着色器字节码 | -| `gs` | `D3D12_SHADER_BYTECODE` | 几何着色器字节码 | -| `inputElementCount` | `uint32_t` | 输入元素数量 | -| `inputElements` | `D3D12_INPUT_ELEMENT_DESC*` | 输入元素描述数组 | - -## 返回值 - -`D3D12_GRAPHICS_PIPELINE_STATE_DESC` - 管线状态描述符 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12_GRAPHICS_PIPELINE_STATE_DESC psoDesc = D3D12PipelineState::CreateDesc( - rootSignature->GetRootSignature(), - vsBytecode, - psBytecode, - gsBytecode, - inputElementCount, - inputElements); -``` - -## 相关文档 - -- [D3D12PipelineState](pipeline-state.md) - 类总览 -- [D3D12PipelineState::CreateInputElement](create-input-element.md) - 创建输入元素 diff --git a/docs/api/rhi/d3d12/pipeline-state/create-input-element.md b/docs/api/rhi/d3d12/pipeline-state/create-input-element.md deleted file mode 100644 index dd3999d9..00000000 --- a/docs/api/rhi/d3d12/pipeline-state/create-input-element.md +++ /dev/null @@ -1,54 +0,0 @@ -# D3D12PipelineState::CreateInputElement - -## 函数签名 - -```cpp -static D3D12_INPUT_ELEMENT_DESC CreateInputElement( - const char* semanticName, - uint32_t semanticIndex, - Format format, - uint32_t inputSlot, - uint32_t alignedByteOffset) - -static D3D12_INPUT_ELEMENT_DESC CreateInputElement( - const char* semanticName, - uint32_t semanticIndex, - Format format, - uint32_t inputSlot) -``` - -## 中文描述 - -创建输入元素描述符,用于定义顶点缓冲区的数据布局。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `semanticName` | `const char*` | 语义名称(如 "POSITION", "TEXCOORD") | -| `semanticIndex` | `uint32_t` | 语义索引 | -| `format` | `Format` | 数据格式 | -| `inputSlot` | `uint32_t` | 输入槽位 | -| `alignedByteOffset` | `uint32_t` | 对齐字节偏移(仅第一个重载) | - -## 返回值 - -`D3D12_INPUT_ELEMENT_DESC` - 输入元素描述符 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12_INPUT_ELEMENT_DESC elements[] = { - D3D12PipelineState::CreateInputElement("POSITION", 0, Format::R32G32B32_FLOAT, 0, 0), - D3D12PipelineState::CreateInputElement("TEXCOORD", 0, Format::R32G32_FLOAT, 0, 12) -}; -``` - -## 相关文档 - -- [D3D12PipelineState](pipeline-state.md) - 类总览 -- [D3D12PipelineState::CreateDesc](create-desc.md) - 创建管线描述符 diff --git a/docs/api/rhi/d3d12/pipeline-state/get-native-handle.md b/docs/api/rhi/d3d12/pipeline-state/get-native-handle.md deleted file mode 100644 index 003064a4..00000000 --- a/docs/api/rhi/d3d12/pipeline-state/get-native-handle.md +++ /dev/null @@ -1,37 +0,0 @@ -# D3D12PipelineState::GetNativeHandle - -## 函数签名 - -```cpp -void* GetNativeHandle() override -``` - -## 中文描述 - -获取管线状态的原生句柄。此方法返回底层 `ID3D12PipelineState` 接口指针,用于与原生 D3D12 API 交互。此方法从 `RHIPipelineState` 基类继承并重写。 - -## 参数 - -无 - -## 返回值 - -`void*` - 底层 `ID3D12PipelineState*` 指针 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12PipelineState pipelineState; -// ... 初始化 pipelineState -ID3D12PipelineState* nativePSO = static_cast(pipelineState.GetNativeHandle()); -``` - -## 相关文档 - -- [D3D12PipelineState](pipeline-state.md) - 类总览 -- [D3D12PipelineState::GetPipelineState](get-pipeline-state.md) - 获取 D3D12 管线状态对象 -- [RHIPipelineState](../../pipeline-state/pipeline-state.md) - 抽象管线状态接口 diff --git a/docs/api/rhi/d3d12/pipeline-state/get-pipeline-state.md b/docs/api/rhi/d3d12/pipeline-state/get-pipeline-state.md deleted file mode 100644 index c087ec7d..00000000 --- a/docs/api/rhi/d3d12/pipeline-state/get-pipeline-state.md +++ /dev/null @@ -1,29 +0,0 @@ -# D3D12PipelineState::GetPipelineState - -## 函数签名 - -```cpp -ID3D12PipelineState* GetPipelineState() const -``` - -## 中文描述 - -获取底层 `ID3D12PipelineState` 接口指针。 - -## 返回值 - -`ID3D12PipelineState*` - D3D12 管线状态对象接口指针 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -ID3D12PipelineState* pso = pipelineState->GetPipelineState(); -``` - -## 相关文档 - -- [D3D12PipelineState](pipeline-state.md) - 类总览 diff --git a/docs/api/rhi/d3d12/pipeline-state/get-type.md b/docs/api/rhi/d3d12/pipeline-state/get-type.md deleted file mode 100644 index 971d3d31..00000000 --- a/docs/api/rhi/d3d12/pipeline-state/get-type.md +++ /dev/null @@ -1,35 +0,0 @@ -# D3D12PipelineState::GetType - -## 函数签名 - -```cpp -PipelineType GetType() const override -``` - -## 中文描述 - -获取管线类型。返回 `PipelineType::Graphics` 表示图形管线。此方法从 `RHIPipelineState` 基类继承并重写。 - -## 参数 - -无 - -## 返回值 - -`PipelineType` - 管线类型,始终返回 `PipelineType::Graphics` - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12PipelineState pipelineState; -PipelineType type = pipelineState.GetType(); // 返回 PipelineType::Graphics -``` - -## 相关文档 - -- [D3D12PipelineState](pipeline-state.md) - 类总览 -- [RHIPipelineState](../../pipeline-state/pipeline-state.md) - 抽象管线状态接口 diff --git a/docs/api/rhi/d3d12/pipeline-state/initialize.md b/docs/api/rhi/d3d12/pipeline-state/initialize.md deleted file mode 100644 index 40b423f3..00000000 --- a/docs/api/rhi/d3d12/pipeline-state/initialize.md +++ /dev/null @@ -1,48 +0,0 @@ -# D3D12PipelineState::Initialize - -## 函数签名 - -```cpp -bool Initialize(ID3D12Device* device, const D3D12_GRAPHICS_PIPELINE_STATE_DESC& desc) -``` - -## 中文描述 - -初始化 D3D12 图形管线状态对象。根据提供的管线状态描述符创建 DirectX 12 管线状态对象。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `device` | `ID3D12Device*` | D3D12 设备指针 | -| `desc` | `D3D12_GRAPHICS_PIPELINE_STATE_DESC` | 图形管线状态描述符 | - -## 返回值 - -`bool` - 初始化成功返回 `true`,失败返回 `false` - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12_GRAPHICS_PIPELINE_STATE_DESC psoDesc = D3D12PipelineState::CreateDesc( - rootSignature, - vsBytecode, - psBytecode, - gsBytecode, - inputElementCount, - inputElements); - -D3D12PipelineState pipelineState; -if (!pipelineState.Initialize(device, psoDesc)) { - // 处理初始化失败 -} -``` - -## 相关文档 - -- [D3D12PipelineState](pipeline-state.md) - 类总览 -- [D3D12PipelineState::CreateDesc](create-desc.md) - 创建管线描述符 diff --git a/docs/api/rhi/d3d12/pipeline-state/pipeline-state.md b/docs/api/rhi/d3d12/pipeline-state/pipeline-state.md deleted file mode 100644 index 10655c66..00000000 --- a/docs/api/rhi/d3d12/pipeline-state/pipeline-state.md +++ /dev/null @@ -1,26 +0,0 @@ -# D3D12PipelineState - -**命名空间**: `XCEngine::RHI` - -**继承自**: `RHIPipelineState` - -**描述**: DirectX 12 管线状态对象的 D3D12 实现,继承自 `RHIPipelineState`。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Initialize`](initialize.md) | 初始化管线状态 | -| [`Shutdown`](shutdown.md) | 关闭管线状态 | -| [`GetPipelineState`](get-pipeline-state.md) | 获取 D3D12 管线状态对象 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | -| [`GetType`](get-type.md) | 获取管线类型 | -| [`Bind`](bind.md) | 绑定管线状态 | -| [`Unbind`](unbind.md) | 解绑管线状态 | -| [`CreateDesc`](create-desc.md) | 创建管线状态描述符(静态) | -| [`CreateInputElement`](create-input-element.md) | 创建输入元素描述符(静态) | - -## 相关文档 - -- [D3D12 后端总览](../d3d12.md) -- [RHIPipelineState](../../pipeline-state/pipeline-state.md) - 抽象管线状态接口 diff --git a/docs/api/rhi/d3d12/pipeline-state/shutdown.md b/docs/api/rhi/d3d12/pipeline-state/shutdown.md deleted file mode 100644 index b1af5351..00000000 --- a/docs/api/rhi/d3d12/pipeline-state/shutdown.md +++ /dev/null @@ -1,36 +0,0 @@ -# D3D12PipelineState::Shutdown - -## 函数签名 - -```cpp -void Shutdown() override -``` - -## 中文描述 - -关闭管线状态对象,释放底层 D3D12 管线状态资源。此方法从 `RHIPipelineState` 基类继承并重写。 - -## 参数 - -无 - -## 返回值 - -无 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12PipelineState pipelineState; -// ... 使用 pipelineState -pipelineState.Shutdown(); -``` - -## 相关文档 - -- [D3D12PipelineState](pipeline-state.md) - 类总览 -- [RHIPipelineState](../../pipeline-state/pipeline-state.md) - 抽象管线状态接口 diff --git a/docs/api/rhi/d3d12/pipeline-state/unbind.md b/docs/api/rhi/d3d12/pipeline-state/unbind.md deleted file mode 100644 index 58392971..00000000 --- a/docs/api/rhi/d3d12/pipeline-state/unbind.md +++ /dev/null @@ -1,36 +0,0 @@ -# D3D12PipelineState::Unbind - -## 函数签名 - -```cpp -void Unbind() override -``` - -## 中文描述 - -解绑管线状态从渲染上下文。此方法从 `RHIPipelineState` 基类继承并重写。当前实现为空。 - -## 参数 - -无 - -## 返回值 - -无 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12PipelineState pipelineState; -// ... 使用 pipelineState -pipelineState.Unbind(); -``` - -## 相关文档 - -- [D3D12PipelineState](pipeline-state.md) - 类总览 -- [RHIPipelineState](../../pipeline-state/pipeline-state.md) - 抽象管线状态接口 diff --git a/docs/api/rhi/d3d12/query-heap/constructor.md b/docs/api/rhi/d3d12/query-heap/constructor.md deleted file mode 100644 index dbe219f0..00000000 --- a/docs/api/rhi/d3d12/query-heap/constructor.md +++ /dev/null @@ -1,35 +0,0 @@ -# D3D12QueryHeap::D3D12QueryHeap - -构造函数,创建一个空的 D3D12QueryHeap 对象。 - -```cpp -D3D12QueryHeap(); -``` - -## 参数 - -无 - -## 返回值 - -无 - -**线程安全:** 非线程安全 - -**复杂度:** O(1) - -## 示例 - -```cpp -#include "XCEngine/RHI/D3D12/D3D12QueryHeap.h" - -D3D12QueryHeap queryHeap; -// 需要调用 Initialize 进行初始化 -queryHeap.Initialize(device, QueryType::Timestamp, 1024); -``` - -## 相关文档 - -- [D3D12QueryHeap 总览](query-heap.md) -- [Initialize](initialize.md) - 初始化查询堆 -- [Shutdown](shutdown.md) - 关闭查询堆 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/query-heap/destructor.md b/docs/api/rhi/d3d12/query-heap/destructor.md deleted file mode 100644 index 9db55be8..00000000 --- a/docs/api/rhi/d3d12/query-heap/destructor.md +++ /dev/null @@ -1,36 +0,0 @@ -# D3D12QueryHeap::~D3D12QueryHeap - -析构函数,销毁 D3D12QueryHeap 对象。 - -```cpp -~D3D12QueryHeap(); -``` - -## 参数 - -无 - -## 返回值 - -无 - -**线程安全:** 非线程安全,请在所有 GPU 操作完成后销毁对象 - -**复杂度:** O(n) - 取决于资源释放时间 - -## 示例 - -```cpp -#include "XCEngine/RHI/D3D12/D3D12QueryHeap.h" - -{ - D3D12QueryHeap queryHeap; - queryHeap.Initialize(device, QueryType::Timestamp, 1024); - // ... 使用 queryHeap ... -} // 超出作用域时自动调用析构函数 -``` - -## 相关文档 - -- [D3D12QueryHeap 总览](query-heap.md) -- [Shutdown](shutdown.md) - 关闭查询堆 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/query-heap/get-count.md b/docs/api/rhi/d3d12/query-heap/get-count.md deleted file mode 100644 index 7f92f09a..00000000 --- a/docs/api/rhi/d3d12/query-heap/get-count.md +++ /dev/null @@ -1,30 +0,0 @@ -# D3D12QueryHeap::GetCount - -## 函数签名 - -```cpp -uint32_t GetCount() const -``` - -## 中文描述 - -获取查询堆中的查询数量。 - -## 返回值 - -`uint32_t` - 查询数量 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -uint32_t count = d3d12QueryHeap->GetCount(); -``` - -## 相关文档 - -- [D3D12QueryHeap](query-heap.md) - 类总览 -- [GetType](get-type.md) diff --git a/docs/api/rhi/d3d12/query-heap/get-native-handle.md b/docs/api/rhi/d3d12/query-heap/get-native-handle.md deleted file mode 100644 index d45d75e0..00000000 --- a/docs/api/rhi/d3d12/query-heap/get-native-handle.md +++ /dev/null @@ -1,33 +0,0 @@ -# D3D12QueryHeap::GetNativeHandle - -## 函数签名 - -```cpp -void* GetNativeHandle() const -``` - -## 中文描述 - -获取原生句柄,用于跨 RHI 模块互操作。返回的指针类型为 `ID3D12QueryHeap*`。 - -## 参数 - -无 - -## 返回值 - -`void*` - 指向 `ID3D12QueryHeap` 的指针 - -## 示例 - -```cpp -D3D12QueryHeap queryHeap; -queryHeap.Initialize(device, QueryType::Timestamp, 1024); - -void* handle = queryHeap.GetNativeHandle(); -ID3D12QueryHeap* nativeHeap = static_cast(handle); -``` - -## 相关文档 - -- [GetQueryHeap](get-query-heap.md) diff --git a/docs/api/rhi/d3d12/query-heap/get-query-heap.md b/docs/api/rhi/d3d12/query-heap/get-query-heap.md deleted file mode 100644 index bf1aa17d..00000000 --- a/docs/api/rhi/d3d12/query-heap/get-query-heap.md +++ /dev/null @@ -1,30 +0,0 @@ -# D3D12QueryHeap::GetQueryHeap - -## 函数签名 - -```cpp -ID3D12QueryHeap* GetQueryHeap() const -``` - -## 中文描述 - -获取底层 `ID3D12QueryHeap` 接口指针。 - -## 返回值 - -`ID3D12QueryHeap*` - D3D12 查询堆接口指针 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -ID3D12QueryHeap* queryHeap = d3d12QueryHeap->GetQueryHeap(); -``` - -## 相关文档 - -- [D3D12QueryHeap](query-heap.md) - 类总览 -- [GetNativeHandle](get-native-handle.md) diff --git a/docs/api/rhi/d3d12/query-heap/get-type.md b/docs/api/rhi/d3d12/query-heap/get-type.md deleted file mode 100644 index f9be64e8..00000000 --- a/docs/api/rhi/d3d12/query-heap/get-type.md +++ /dev/null @@ -1,36 +0,0 @@ -# D3D12QueryHeap::GetType - -## 函数签名 - -```cpp -QueryType GetType() const -``` - -## 中文描述 - -获取查询堆的类型。 - -## 参数 - -无 - -## 返回值 - -`QueryType` - 查询类型(Timestamp、Occlusion 或 PipelineStatistics) - -## 示例 - -```cpp -D3D12QueryHeap queryHeap; -queryHeap.Initialize(device, QueryType::Occlusion, 256); - -QueryType type = queryHeap.GetType(); -if (type == QueryType::Occlusion) { - // 处理遮挡查询 -} -``` - -## 相关文档 - -- [D3D12QueryHeap](query-heap.md) -- [GetCount](get-count.md) diff --git a/docs/api/rhi/d3d12/query-heap/initialize.md b/docs/api/rhi/d3d12/query-heap/initialize.md deleted file mode 100644 index 73f7cb9e..00000000 --- a/docs/api/rhi/d3d12/query-heap/initialize.md +++ /dev/null @@ -1,42 +0,0 @@ -# D3D12QueryHeap::Initialize - -## 函数签名 - -```cpp -bool Initialize(ID3D12Device* device, QueryType type, uint32_t count) -``` - -## 中文描述 - -创建 D3D12 查询堆资源。根据指定的查询类型分配相应类型的 GPU 查询堆。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `device` | `ID3D12Device*` | D3D12 设备指针 | -| `type` | `QueryType` | 查询类型:Timestamp(时间戳)、Occlusion(遮挡)、PipelineStatistics(管线统计) | -| `count` | `uint32_t` | 查询数量 | - -## 返回值 - -`bool` - 初始化是否成功 - -## 示例 - -```cpp -D3D12QueryHeap timestampHeap; -if (timestampHeap.Initialize(device, QueryType::Timestamp, 1024)) { - // 时间戳查询堆创建成功 -} - -D3D12QueryHeap occlusionHeap; -if (occlusionHeap.Initialize(device, QueryType::Occlusion, 256)) { - // 遮挡查询堆创建成功 -} -``` - -## 相关文档 - -- [D3D12QueryHeap](query-heap.md) -- [Shutdown](shutdown.md) diff --git a/docs/api/rhi/d3d12/query-heap/query-heap.md b/docs/api/rhi/d3d12/query-heap/query-heap.md deleted file mode 100644 index 2b985ebc..00000000 --- a/docs/api/rhi/d3d12/query-heap/query-heap.md +++ /dev/null @@ -1,38 +0,0 @@ -# D3D12QueryHeap - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` - -**描述**: DirectX 12 查询堆的 D3D12 实现,用于管理 GPU 查询操作。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Initialize`](initialize.md) | 初始化查询堆 | -| [`Shutdown`](shutdown.md) | 关闭查询堆 | -| [`GetQueryHeap`](get-query-heap.md) | 获取 D3D12 查询堆 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | -| [`GetType`](get-type.md) | 获取查询类型 | -| [`GetCount`](get-count.md) | 获取查询数量 | - -## 使用示例 - -```cpp -#include "XCEngine/RHI/D3D12/D3D12QueryHeap.h" - -D3D12QueryHeap queryHeap; -if (queryHeap.Initialize(device, QueryType::Timestamp, 1024)) { - // 使用查询堆 - ID3D12QueryHeap* heap = queryHeap.GetQueryHeap(); - QueryType type = queryHeap.GetType(); - uint32_t count = queryHeap.GetCount(); - - queryHeap.Shutdown(); -} -``` - -## 相关文档 - -- [D3D12 后端总览](../d3d12.md) diff --git a/docs/api/rhi/d3d12/query-heap/shutdown.md b/docs/api/rhi/d3d12/query-heap/shutdown.md deleted file mode 100644 index aa40deba..00000000 --- a/docs/api/rhi/d3d12/query-heap/shutdown.md +++ /dev/null @@ -1,35 +0,0 @@ -# D3D12QueryHeap::Shutdown - -## 函数签名 - -```cpp -void Shutdown() -``` - -## 中文描述 - -关闭查询堆,释放所有关联的 GPU 资源。将重置内部状态为默认值。 - -## 参数 - -无 - -## 返回值 - -无 - -## 示例 - -```cpp -D3D12QueryHeap queryHeap; -queryHeap.Initialize(device, QueryType::Timestamp, 1024); - -// 使用查询堆... - -queryHeap.Shutdown(); // 释放资源 -``` - -## 相关文档 - -- [D3D12QueryHeap](query-heap.md) -- [Initialize](initialize.md) diff --git a/docs/api/rhi/d3d12/render-target-view/constructor.md b/docs/api/rhi/d3d12/render-target-view/constructor.md deleted file mode 100644 index b84ae8bf..00000000 --- a/docs/api/rhi/d3d12/render-target-view/constructor.md +++ /dev/null @@ -1,27 +0,0 @@ -# D3D12RenderTargetView::D3D12RenderTargetView - -## 函数签名 - -```cpp -D3D12RenderTargetView() -``` - -## 描述 - -默认构造函数。创建空的渲染目标视图实例,成员变量初始化为零值和空指针。 - -## 返回值 - -无 - -## 示例 - -```cpp -D3D12RenderTargetView rtv; // 创建空实例 -``` - -## 相关文档 - -- [D3D12RenderTargetView](render-target-view.md) - 类总览 -- [D3D12RenderTargetView::Initialize](initialize.md) - 初始化方法 -- [D3D12RenderTargetView::~D3D12RenderTargetView](destructor.md) - 析构函数 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/render-target-view/create-desc.md b/docs/api/rhi/d3d12/render-target-view/create-desc.md deleted file mode 100644 index 12fd6055..00000000 --- a/docs/api/rhi/d3d12/render-target-view/create-desc.md +++ /dev/null @@ -1,39 +0,0 @@ -# D3D12RenderTargetView::CreateDesc - -## 函数签名 - -```cpp -static D3D12_RENDER_TARGET_VIEW_DESC CreateDesc(Format format, D3D12_RTV_DIMENSION dimension = D3D12_RTV_DIMENSION_TEXTURE2D) -``` - -## 描述 - -创建渲染目标视图描述符的便捷静态方法。将引擎格式枚举转换为 D3D12 格式,并设置视图维度。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `format` | `Format` | 资源格式(参见 `RHIEnums.h` 中的 Format 枚举) | -| `dimension` | `D3D12_RTV_DIMENSION` | 视图维度(默认 `D3D12_RTV_DIMENSION_TEXTURE2D`) | - -## 返回值 - -`D3D12_RENDER_TARGET_VIEW_DESC` - 渲染目标视图描述符结构体 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -// 创建典型纹理2D渲染目标描述符 -D3D12_RENDER_TARGET_VIEW_DESC desc = D3D12RenderTargetView::CreateDesc(Format::R8G8B8A8_UNorm); -``` - -## 相关文档 - -- [D3D12RenderTargetView](render-target-view.md) - 类总览 -- [D3D12_RENDER_TARGET_VIEW_DESC](https://docs.microsoft.com/en-us/windows/win32/api/d3d12/ns-d3d12-d3d12_render_target_view_desc) -- [Format 枚举](../enums.md#Format) \ No newline at end of file diff --git a/docs/api/rhi/d3d12/render-target-view/destructor.md b/docs/api/rhi/d3d12/render-target-view/destructor.md deleted file mode 100644 index d5e6672e..00000000 --- a/docs/api/rhi/d3d12/render-target-view/destructor.md +++ /dev/null @@ -1,34 +0,0 @@ -# D3D12RenderTargetView::~D3D12RenderTargetView - -## 函数签名 - -```cpp -~D3D12RenderTargetView() -``` - -## 描述 - -析构函数。自动调用 `Shutdown()` 释放内部资源。 - -## 返回值 - -无 - -## 注意事项 - -此析构函数不直接释放 D3D12 资源,仅清理类内部状态。实际资源释放由描述符堆管理。 - -## 示例 - -```cpp -{ - D3D12RenderTargetView rtv; - rtv.Initialize(device, resource, &desc); - // 使用 rtv... -} // rtv 析构时自动调用 Shutdown() -``` - -## 相关文档 - -- [D3D12RenderTargetView](render-target-view.md) - 类总览 -- [D3D12RenderTargetView::Shutdown](shutdown.md) - 关闭方法 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/render-target-view/get-cpu-descriptor-handle.md b/docs/api/rhi/d3d12/render-target-view/get-cpu-descriptor-handle.md deleted file mode 100644 index d0a4a9a4..00000000 --- a/docs/api/rhi/d3d12/render-target-view/get-cpu-descriptor-handle.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12RenderTargetView::GetCPUDescriptorHandle - -## 函数签名 - -```cpp -D3D12_CPU_DESCRIPTOR_HANDLE GetCPUDescriptorHandle() const -``` - -## 描述 - -获取渲染目标视图的 CPU 描述符句柄。返回的句柄用于绑定 RTV 到渲染管线命令列表。 - -## 返回值 - -`D3D12_CPU_DESCRIPTOR_HANDLE` - CPU 描述符句柄 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12_CPU_DESCRIPTOR_HANDLE handle = rtv.GetCPUDescriptorHandle(); -commandList->OMSetRenderTargets(1, &handle, FALSE, nullptr); -``` - -## 相关文档 - -- [D3D12RenderTargetView](render-target-view.md) - 类总览 -- [OMSetRenderTargets (D3D12)](https://docs.microsoft.com/en-us/windows/win32/api/d3d12/nf-d3d12-id3d12graphicscommandlist-omsetrendertargets) \ No newline at end of file diff --git a/docs/api/rhi/d3d12/render-target-view/initialize-at.md b/docs/api/rhi/d3d12/render-target-view/initialize-at.md deleted file mode 100644 index a7ce4f49..00000000 --- a/docs/api/rhi/d3d12/render-target-view/initialize-at.md +++ /dev/null @@ -1,42 +0,0 @@ -# D3D12RenderTargetView::InitializeAt - -## 函数签名 - -```cpp -void InitializeAt(ID3D12Device* device, ID3D12Resource* resource, D3D12_CPU_DESCRIPTOR_HANDLE handle, const D3D12_RENDER_TARGET_VIEW_DESC* desc = nullptr) -``` - -## 描述 - -在指定描述符句柄位置初始化渲染目标视图,用于外部描述符堆管理场景。此方法允许将 RTV 创建在预分配的描述符位置,便于批量管理描述符。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `device` | `ID3D12Device*` | D3D12 设备指针 | -| `resource` | `ID3D12Resource*` | 渲染目标资源指针 | -| `handle` | `D3D12_CPU_DESCRIPTOR_HANDLE` | 预分配的描述符句柄位置 | -| `desc` | `D3D12_RENDER_TARGET_VIEW_DESC*` | 视图描述符(可选,传入 nullptr 使用资源默认格式) | - -## 返回值 - -无 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -// 从描述符堆获取句柄 -D3D12_CPU_DESCRIPTOR_HANDLE handle = descriptorHeap->GetCPUDescriptorHandleForHeapStart(); -rtv.InitializeAt(device, resource, handle); -``` - -## 相关文档 - -- [D3D12RenderTargetView](render-target-view.md) - 类总览 -- [D3D12RenderTargetView::Initialize](initialize.md) - 标准初始化 -- [D3D12DescriptorHeap](../descriptor-heap/descriptor-heap.md) - 描述符堆管理 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/render-target-view/initialize.md b/docs/api/rhi/d3d12/render-target-view/initialize.md deleted file mode 100644 index 1906f20e..00000000 --- a/docs/api/rhi/d3d12/render-target-view/initialize.md +++ /dev/null @@ -1,35 +0,0 @@ -# D3D12RenderTargetView::Initialize - -## 函数签名 - -```cpp -void Initialize(ID3D12Device* device, ID3D12Resource* resource, const D3D12_RENDER_TARGET_VIEW_DESC* desc = nullptr) -``` - -## 描述 - -初始化渲染目标视图。内部自动分配描述符句柄。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `device` | `ID3D12Device*` | D3D12 设备指针 | -| `resource` | `ID3D12Resource*` | 渲染目标资源指针 | -| `desc` | `D3D12_RENDER_TARGET_VIEW_DESC*` | 视图描述符(可选) | - -## 返回值 - -无 - -## 示例 - -```cpp -D3D12RenderTargetView rtv; -rtv.Initialize(device, resource, &desc); -``` - -## 相关文档 - -- [D3D12RenderTargetView](render-target-view.md) - 类总览 -- [D3D12RenderTargetView::InitializeAt](initialize-at.md) - 在指定位置初始化 diff --git a/docs/api/rhi/d3d12/render-target-view/render-target-view.md b/docs/api/rhi/d3d12/render-target-view/render-target-view.md deleted file mode 100644 index c23c41cf..00000000 --- a/docs/api/rhi/d3d12/render-target-view/render-target-view.md +++ /dev/null @@ -1,40 +0,0 @@ -# D3D12RenderTargetView - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` - -**头文件**: `XCEngine/RHI/D3D12/D3D12RenderTargetView.h` - -**描述**: DirectX 12 渲染目标视图的 D3D12 实现,用于在渲染管线中作为渲染目标使用。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`D3D12RenderTargetView`](constructor.md) | 构造函数 | -| [`~D3D12RenderTargetView`](destructor.md) | 析构函数 | -| [`Initialize`](initialize.md) | 初始化渲染目标视图 | -| [`InitializeAt`](initialize-at.md) | 在指定位置初始化 | -| [`Shutdown`](shutdown.md) | 关闭渲染目标视图 | -| [`GetCPUDescriptorHandle`](get-cpu-descriptor-handle.md) | 获取 CPU 描述符句柄 | -| [`CreateDesc`](create-desc.md) | 创建描述符(静态) | - -## 使用示例 - -```cpp -// 创建 RTV -D3D12RenderTargetView rtv; -rtv.Initialize(device, resource, &desc); - -// 使用 -device->CreateRenderTargetView(resource, &desc, rtv.GetCPUDescriptorHandle()); - -// 清理 -rtv.Shutdown(); -``` - -## 相关文档 - -- [D3D12 后端总览](../d3d12.md) -- [D3D12DescriptorHeap](../descriptor-heap/descriptor-heap.md) \ No newline at end of file diff --git a/docs/api/rhi/d3d12/render-target-view/shutdown.md b/docs/api/rhi/d3d12/render-target-view/shutdown.md deleted file mode 100644 index 459fe041..00000000 --- a/docs/api/rhi/d3d12/render-target-view/shutdown.md +++ /dev/null @@ -1,26 +0,0 @@ -# D3D12RenderTargetView::Shutdown - -## 函数签名 - -```cpp -void Shutdown() -``` - -## 描述 - -关闭渲染目标视图,释放内部资源。 - -## 返回值 - -无 - -## 示例 - -```cpp -rtv.Shutdown(); -``` - -## 相关文档 - -- [D3D12RenderTargetView](render-target-view.md) - 类总览 -- [D3D12RenderTargetView::Initialize](initialize.md) - 初始化 diff --git a/docs/api/rhi/d3d12/root-signature/constructor.md b/docs/api/rhi/d3d12/root-signature/constructor.md deleted file mode 100644 index fbbce9ff..00000000 --- a/docs/api/rhi/d3d12/root-signature/constructor.md +++ /dev/null @@ -1,27 +0,0 @@ -# D3D12RootSignature::D3D12RootSignature - -## 函数签名 - -```cpp -D3D12RootSignature() -``` - -## 描述 - -默认构造函数。创建空的根签名实例,成员变量初始化为零值和空指针。 - -## 返回值 - -无 - -## 示例 - -```cpp -D3D12RootSignature rootSig; // 创建空实例 -``` - -## 相关文档 - -- [D3D12RootSignature](root-signature.md) - 类总览 -- [D3D12RootSignature::Initialize](initialize.md) - 初始化方法 -- [D3D12RootSignature::~D3D12RootSignature](destructor.md) - 析构函数 diff --git a/docs/api/rhi/d3d12/root-signature/create-32bit-constants.md b/docs/api/rhi/d3d12/root-signature/create-32bit-constants.md deleted file mode 100644 index d8961a72..00000000 --- a/docs/api/rhi/d3d12/root-signature/create-32bit-constants.md +++ /dev/null @@ -1,38 +0,0 @@ -# D3D12RootSignature::Create32BitConstants - -## 函数签名 - -```cpp -static D3D12_ROOT_PARAMETER Create32BitConstants(uint32_t shaderRegister, uint32_t num32BitValues, ShaderVisibility visibility = ShaderVisibility::All, uint32_t registerSpace = 0) -``` - -## 中文描述 - -创建 32 位常量根参数,用于上传小量常量数据。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `shaderRegister` | `uint32_t` | 着色器寄存器编号 | -| `num32BitValues` | `uint32_t` | 32 位值的数量 | -| `visibility` | `ShaderVisibility` | 可见性(默认 All) | -| `registerSpace` | `uint32_t` | 寄存器空间(默认 0) | - -## 返回值 - -`D3D12_ROOT_PARAMETER` - 根参数 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12_ROOT_PARAMETER constantsParam = D3D12RootSignature::Create32BitConstants(0, 4); -``` - -## 相关文档 - -- [D3D12RootSignature](root-signature.md) - 类总览 diff --git a/docs/api/rhi/d3d12/root-signature/create-cbv.md b/docs/api/rhi/d3d12/root-signature/create-cbv.md deleted file mode 100644 index b002c376..00000000 --- a/docs/api/rhi/d3d12/root-signature/create-cbv.md +++ /dev/null @@ -1,39 +0,0 @@ -# D3D12RootSignature::CreateCBV - -## 函数签名 - -```cpp -static D3D12_ROOT_PARAMETER CreateCBV(uint32_t shaderRegister, ShaderVisibility visibility = ShaderVisibility::All, uint32_t registerSpace = 0) -``` - -## 中文描述 - -创建常量缓冲区视图(CBV)根参数。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `shaderRegister` | `uint32_t` | 着色器寄存器编号 | -| `visibility` | `ShaderVisibility` | 可见性(默认 All) | -| `registerSpace` | `uint32_t` | 寄存器空间(默认 0) | - -## 返回值 - -`D3D12_ROOT_PARAMETER` - 根参数 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12_ROOT_PARAMETER cbvParam = D3D12RootSignature::CreateCBV(0); -``` - -## 相关文档 - -- [D3D12RootSignature](root-signature.md) - 类总览 -- [D3D12RootSignature::CreateSRV](create-srv.md) - 创建 SRV 根参数 -- [D3D12RootSignature::CreateUAV](create-uav.md) - 创建 UAV 根参数 diff --git a/docs/api/rhi/d3d12/root-signature/create-desc.md b/docs/api/rhi/d3d12/root-signature/create-desc.md deleted file mode 100644 index 96eaabc8..00000000 --- a/docs/api/rhi/d3d12/root-signature/create-desc.md +++ /dev/null @@ -1,48 +0,0 @@ -# D3D12RootSignature::CreateDesc - -## 函数签名 - -```cpp -static D3D12_ROOT_SIGNATURE_DESC CreateDesc( - D3D12_ROOT_PARAMETER* parameters, - uint32_t parameterCount, - D3D12_STATIC_SAMPLER_DESC* samplers = nullptr, - uint32_t samplerCount = 0, - D3D12_ROOT_SIGNATURE_FLAGS flags = D3D12_ROOT_SIGNATURE_FLAG_ALLOW_INPUT_ASSEMBLER_INPUT_LAYOUT) -``` - -## 中文描述 - -创建根签名描述符。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `parameters` | `D3D12_ROOT_PARAMETER*` | 根参数数组 | -| `parameterCount` | `uint32_t` | 根参数数量 | -| `samplers` | `D3D12_STATIC_SAMPLER_DESC*` | 静态采样器数组(可选) | -| `samplerCount` | `uint32_t` | 静态采样器数量 | -| `flags` | `D3D12_ROOT_SIGNATURE_FLAGS` | 根签名标志 | - -## 返回值 - -`D3D12_ROOT_SIGNATURE_DESC` - 根签名描述符 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12_ROOT_SIGNATURE_DESC desc = D3D12RootSignature::CreateDesc( - parameters.data(), - parameters.size(), - samplers.data(), - samplers.size()); -``` - -## 相关文档 - -- [D3D12RootSignature](root-signature.md) - 类总览 diff --git a/docs/api/rhi/d3d12/root-signature/create-descriptor-range.md b/docs/api/rhi/d3d12/root-signature/create-descriptor-range.md deleted file mode 100644 index 5853b140..00000000 --- a/docs/api/rhi/d3d12/root-signature/create-descriptor-range.md +++ /dev/null @@ -1,39 +0,0 @@ -# D3D12RootSignature::CreateDescriptorRange - -## 函数签名 - -```cpp -static D3D12_DESCRIPTOR_RANGE CreateDescriptorRange(D3D12_DESCRIPTOR_RANGE_TYPE type, uint32_t baseShaderRegister, uint32_t numDescriptors, uint32_t registerSpace = 0) -``` - -## 中文描述 - -创建描述符范围。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `type` | `D3D12_DESCRIPTOR_RANGE_TYPE` | 描述符范围类型 | -| `baseShaderRegister` | `uint32_t` | 基础着色器寄存器 | -| `numDescriptors` | `uint32_t` | 描述符数量 | -| `registerSpace` | `uint32_t` | 寄存器空间(默认 0) | - -## 返回值 - -`D3D12_DESCRIPTOR_RANGE` - 描述符范围 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12_DESCRIPTOR_RANGE range = D3D12RootSignature::CreateDescriptorRange(D3D12_DESCRIPTOR_RANGE_TYPE_SRV, 0, 1); -``` - -## 相关文档 - -- [D3D12RootSignature](root-signature.md) - 类总览 -- [D3D12RootSignature::CreateDescriptorTable](create-descriptor-table.md) - 创建描述符表 diff --git a/docs/api/rhi/d3d12/root-signature/create-descriptor-table.md b/docs/api/rhi/d3d12/root-signature/create-descriptor-table.md deleted file mode 100644 index 35433d04..00000000 --- a/docs/api/rhi/d3d12/root-signature/create-descriptor-table.md +++ /dev/null @@ -1,40 +0,0 @@ -# D3D12RootSignature::CreateDescriptorTable - -## 函数签名 - -```cpp -static D3D12_ROOT_PARAMETER CreateDescriptorTable(uint32_t numRanges, const D3D12_DESCRIPTOR_RANGE* ranges, ShaderVisibility visibility = ShaderVisibility::All) -``` - -## 中文描述 - -创建描述符表根参数。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `numRanges` | `uint32_t` | 描述符范围数量 | -| `ranges` | `D3D12_DESCRIPTOR_RANGE*` | 描述符范围数组 | -| `visibility` | `ShaderVisibility` | 可见性(默认 All) | - -## 返回值 - -`D3D12_ROOT_PARAMETER` - 根参数 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12_DESCRIPTOR_RANGE ranges[1]; -ranges[0] = D3D12RootSignature::CreateDescriptorRange(D3D12_DESCRIPTOR_RANGE_TYPE_SRV, 0, 1); -D3D12_ROOT_PARAMETER descTable = D3D12RootSignature::CreateDescriptorTable(1, ranges); -``` - -## 相关文档 - -- [D3D12RootSignature](root-signature.md) - 类总览 -- [D3D12RootSignature::CreateDescriptorRange](create-descriptor-range.md) - 创建描述符范围 diff --git a/docs/api/rhi/d3d12/root-signature/create-sampler-desc.md b/docs/api/rhi/d3d12/root-signature/create-sampler-desc.md deleted file mode 100644 index bff4b574..00000000 --- a/docs/api/rhi/d3d12/root-signature/create-sampler-desc.md +++ /dev/null @@ -1,38 +0,0 @@ -# D3D12RootSignature::CreateSamplerDesc - -## 函数签名 - -```cpp -static D3D12_SAMPLER_DESC CreateSamplerDesc(FilterMode filter, TextureAddressMode address, float maxLOD = D3D12_FLOAT32_MAX) -``` - -## 中文描述 - -创建采样器描述符。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `filter` | `FilterMode` | 过滤模式 | -| `address` | `TextureAddressMode` | 寻址模式 | -| `maxLOD` | `float` | 最大 LOD(默认无限) | - -## 返回值 - -`D3D12_SAMPLER_DESC` - 采样器描述符 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12_SAMPLER_DESC desc = D3D12RootSignature::CreateSamplerDesc(FilterMode::Anisotropic, TextureAddressMode::Wrap); -``` - -## 相关文档 - -- [D3D12RootSignature](root-signature.md) - 类总览 -- [D3D12RootSignature::CreateStaticSampler](create-static-sampler.md) - 创建静态采样器 diff --git a/docs/api/rhi/d3d12/root-signature/create-srv.md b/docs/api/rhi/d3d12/root-signature/create-srv.md deleted file mode 100644 index 04a885e1..00000000 --- a/docs/api/rhi/d3d12/root-signature/create-srv.md +++ /dev/null @@ -1,39 +0,0 @@ -# D3D12RootSignature::CreateSRV - -## 函数签名 - -```cpp -static D3D12_ROOT_PARAMETER CreateSRV(uint32_t shaderRegister, ShaderVisibility visibility = ShaderVisibility::All, uint32_t registerSpace = 0) -``` - -## 中文描述 - -创建着色器资源视图(SRV)根参数。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `shaderRegister` | `uint32_t` | 着色器寄存器编号 | -| `visibility` | `ShaderVisibility` | 可见性(默认 All) | -| `registerSpace` | `uint32_t` | 寄存器空间(默认 0) | - -## 返回值 - -`D3D12_ROOT_PARAMETER` - 根参数 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12_ROOT_PARAMETER srvParam = D3D12RootSignature::CreateSRV(0); -``` - -## 相关文档 - -- [D3D12RootSignature](root-signature.md) - 类总览 -- [D3D12RootSignature::CreateCBV](create-cbv.md) - 创建 CBV 根参数 -- [D3D12RootSignature::CreateUAV](create-uav.md) - 创建 UAV 根参数 diff --git a/docs/api/rhi/d3d12/root-signature/create-static-sampler.md b/docs/api/rhi/d3d12/root-signature/create-static-sampler.md deleted file mode 100644 index 3b2f15e8..00000000 --- a/docs/api/rhi/d3d12/root-signature/create-static-sampler.md +++ /dev/null @@ -1,39 +0,0 @@ -# D3D12RootSignature::CreateStaticSampler - -## 函数签名 - -```cpp -static D3D12_STATIC_SAMPLER_DESC CreateStaticSampler(uint32_t shaderRegister, const D3D12_SAMPLER_DESC& desc, ShaderVisibility visibility = ShaderVisibility::Pixel) -``` - -## 中文描述 - -创建静态采样器描述符,静态采样器绑定到根签名中无需描述符堆。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `shaderRegister` | `uint32_t` | 着色器寄存器编号 | -| `desc` | `D3D12_SAMPLER_DESC` | 采样器描述符 | -| `visibility` | `ShaderVisibility` | 可见性(默认 Pixel) | - -## 返回值 - -`D3D12_STATIC_SAMPLER_DESC` - 静态采样器描述符 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12_SAMPLER_DESC samplerDesc = D3D12RootSignature::CreateSamplerDesc(FilterMode::Anisotropic, TextureAddressMode::Wrap); -D3D12_STATIC_SAMPLER_DESC staticSampler = D3D12RootSignature::CreateStaticSampler(0, samplerDesc); -``` - -## 相关文档 - -- [D3D12RootSignature](root-signature.md) - 类总览 -- [D3D12RootSignature::CreateSamplerDesc](create-sampler-desc.md) - 创建采样器描述符 diff --git a/docs/api/rhi/d3d12/root-signature/create-uav.md b/docs/api/rhi/d3d12/root-signature/create-uav.md deleted file mode 100644 index 3404f2ad..00000000 --- a/docs/api/rhi/d3d12/root-signature/create-uav.md +++ /dev/null @@ -1,39 +0,0 @@ -# D3D12RootSignature::CreateUAV - -## 函数签名 - -```cpp -static D3D12_ROOT_PARAMETER CreateUAV(uint32_t shaderRegister, ShaderVisibility visibility = ShaderVisibility::All, uint32_t registerSpace = 0) -``` - -## 中文描述 - -创建无序访问视图(UAV)根参数。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `shaderRegister` | `uint32_t` | 着色器寄存器编号 | -| `visibility` | `ShaderVisibility` | 可见性(默认 All) | -| `registerSpace` | `uint32_t` | 寄存器空间(默认 0) | - -## 返回值 - -`D3D12_ROOT_PARAMETER` - 根参数 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12_ROOT_PARAMETER uavParam = D3D12RootSignature::CreateUAV(0); -``` - -## 相关文档 - -- [D3D12RootSignature](root-signature.md) - 类总览 -- [D3D12RootSignature::CreateCBV](create-cbv.md) - 创建 CBV 根参数 -- [D3D12RootSignature::CreateSRV](create-srv.md) - 创建 SRV 根参数 diff --git a/docs/api/rhi/d3d12/root-signature/destructor.md b/docs/api/rhi/d3d12/root-signature/destructor.md deleted file mode 100644 index 3629744d..00000000 --- a/docs/api/rhi/d3d12/root-signature/destructor.md +++ /dev/null @@ -1,34 +0,0 @@ -# D3D12RootSignature::~D3D12RootSignature - -## 函数签名 - -```cpp -~D3D12RootSignature() -``` - -## 描述 - -析构函数。自动调用 `Shutdown()` 释放内部资源。 - -## 返回值 - -无 - -## 注意事项 - -此析构函数自动调用 Shutdown() 确保资源被正确释放。 - -## 示例 - -```cpp -{ - D3D12RootSignature rootSig; - rootSig.Initialize(device, desc); - // 使用 rootSig... -} // rootSig 析构时自动调用 Shutdown() -``` - -## 相关文档 - -- [D3D12RootSignature](root-signature.md) - 类总览 -- [D3D12RootSignature::Shutdown](shutdown.md) - 关闭方法 diff --git a/docs/api/rhi/d3d12/root-signature/get-native-handle.md b/docs/api/rhi/d3d12/root-signature/get-native-handle.md deleted file mode 100644 index bff5f43f..00000000 --- a/docs/api/rhi/d3d12/root-signature/get-native-handle.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12RootSignature::GetNativeHandle - -## 函数签名 - -```cpp -void* GetNativeHandle() const -``` - -## 中文描述 - -获取底层 `ID3D12RootSignature` 接口指针的原生句柄。 - -## 返回值 - -`void*` - 指向 `ID3D12RootSignature` 接口的指针 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -void* handle = rootSignature->GetNativeHandle(); -ID3D12RootSignature* rs = static_cast(handle); -``` - -## 相关文档 - -- [D3D12RootSignature](root-signature.md) - 类总览 -- [D3D12RootSignature::GetRootSignature](get-root-signature.md) - 获取 D3D12 根签名接口 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/root-signature/get-parameter-count.md b/docs/api/rhi/d3d12/root-signature/get-parameter-count.md deleted file mode 100644 index fa075ebb..00000000 --- a/docs/api/rhi/d3d12/root-signature/get-parameter-count.md +++ /dev/null @@ -1,29 +0,0 @@ -# D3D12RootSignature::GetParameterCount - -## 函数签名 - -```cpp -uint32_t GetParameterCount() const -``` - -## 中文描述 - -获取根签名中根参数的数量。 - -## 返回值 - -`uint32_t` - 根参数数量 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -uint32_t count = rootSignature->GetParameterCount(); -``` - -## 相关文档 - -- [D3D12RootSignature](root-signature.md) - 类总览 diff --git a/docs/api/rhi/d3d12/root-signature/get-root-signature.md b/docs/api/rhi/d3d12/root-signature/get-root-signature.md deleted file mode 100644 index 2273625c..00000000 --- a/docs/api/rhi/d3d12/root-signature/get-root-signature.md +++ /dev/null @@ -1,29 +0,0 @@ -# D3D12RootSignature::GetRootSignature - -## 函数签名 - -```cpp -ID3D12RootSignature* GetRootSignature() const -``` - -## 中文描述 - -获取底层 `ID3D12RootSignature` 接口指针。 - -## 返回值 - -`ID3D12RootSignature*` - D3D12 根签名接口指针 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -ID3D12RootSignature* rs = rootSignature->GetRootSignature(); -``` - -## 相关文档 - -- [D3D12RootSignature](root-signature.md) - 类总览 diff --git a/docs/api/rhi/d3d12/root-signature/initialize.md b/docs/api/rhi/d3d12/root-signature/initialize.md deleted file mode 100644 index c7f61cbb..00000000 --- a/docs/api/rhi/d3d12/root-signature/initialize.md +++ /dev/null @@ -1,48 +0,0 @@ -# D3D12RootSignature::Initialize - -## 函数签名 - -```cpp -bool Initialize(ID3D12Device* device, const D3D12_ROOT_SIGNATURE_DESC& desc) -``` - -## 中文描述 - -初始化 D3D12 根签名对象,使用提供的描述符序列化并创建根签名。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `device` | `ID3D12Device*` | D3D12 设备指针 | -| `desc` | `const D3D12_ROOT_SIGNATURE_DESC&` | 根签名描述符 | - -## 返回值 - -`bool` - 初始化成功返回 `true`,失败返回 `false` - -## 复杂度 - -O(n),n 为参数和采样器数量 - -## 示例 - -```cpp -D3D12RootSignature rootSig; - -D3D12_ROOT_SIGNATURE_DESC desc = D3D12RootSignature::CreateDesc( - parameters.data(), - parameters.size(), - samplers.data(), - samplers.size()); - -if (rootSig.Initialize(device, desc)) { - // 根签名创建成功 -} -``` - -## 相关文档 - -- [D3D12RootSignature](root-signature.md) - 类总览 -- [D3D12RootSignature::Shutdown](shutdown.md) - 关闭根签名 -- [D3D12RootSignature::CreateDesc](create-desc.md) - 创建描述符 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/root-signature/root-signature.md b/docs/api/rhi/d3d12/root-signature/root-signature.md deleted file mode 100644 index 5ca9b33f..00000000 --- a/docs/api/rhi/d3d12/root-signature/root-signature.md +++ /dev/null @@ -1,51 +0,0 @@ -# D3D12RootSignature - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` (D3D12-specific, does not inherit from RHI) - -**头文件**: `XCEngine/RHI/D3D12/D3D12RootSignature.h` - -**描述**: DirectX 12 根签名的 D3D12 实现,提供根签名序列化、参数创建等功能。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`D3D12RootSignature`](constructor.md) | 构造函数 | -| [`~D3D12RootSignature`](destructor.md) | 析构函数 | -| [`Initialize`](initialize.md) | 初始化根签名 | -| [`Shutdown`](shutdown.md) | 关闭根签名 | -| [`GetRootSignature`](get-root-signature.md) | 获取 D3D12 根签名 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | -| [`GetParameterCount`](get-parameter-count.md) | 获取参数数量 | -| [`CreateDesc`](create-desc.md) | 创建根签名描述符(静态) | -| [`CreateCBV`](create-cbv.md) | 创建常量缓冲区视图(静态) | -| [`CreateSRV`](create-srv.md) | 创建着色器资源视图(静态) | -| [`CreateUAV`](create-uav.md) | 创建无序访问视图(静态) | -| [`Create32BitConstants`](create-32bit-constants.md) | 创建 32 位常量(静态) | -| [`CreateDescriptorTable`](create-descriptor-table.md) | 创建描述符表(静态) | -| [`CreateStaticSampler`](create-static-sampler.md) | 创建静态采样器(静态) | -| [`CreateSamplerDesc`](create-sampler-desc.md) | 创建采样器描述符(静态) | -| [`CreateDescriptorRange`](create-descriptor-range.md) | 创建描述符范围(静态) | - -## 使用示例 - -```cpp -D3D12RootSignature rootSig; - -D3D12_ROOT_PARAMETER params[2] = {}; -params[0] = D3D12RootSignature::CreateCBV(0); -params[1] = D3D12RootSignature::CreateSRV(0); - -D3D12_ROOT_SIGNATURE_DESC desc = D3D12RootSignature::CreateDesc(params, 2); - -if (rootSig.Initialize(device, desc)) { - ID3D12RootSignature* rs = rootSig.GetRootSignature(); - rootSig.Shutdown(); -} -``` - -## 相关文档 - -- [D3D12 后端总览](../d3d12.md) diff --git a/docs/api/rhi/d3d12/root-signature/shutdown.md b/docs/api/rhi/d3d12/root-signature/shutdown.md deleted file mode 100644 index 93384246..00000000 --- a/docs/api/rhi/d3d12/root-signature/shutdown.md +++ /dev/null @@ -1,30 +0,0 @@ -# D3D12RootSignature::Shutdown - -## 函数签名 - -```cpp -void Shutdown() -``` - -## 中文描述 - -关闭并释放 D3D12 根签名资源。 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12RootSignature rootSig; -if (rootSig.Initialize(device, desc)) { - // 使用根签名 - rootSig.Shutdown(); -} -``` - -## 相关文档 - -- [D3D12RootSignature](root-signature.md) - 类总览 -- [D3D12RootSignature::Initialize](initialize.md) - 初始化根签名 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/sampler/bind.md b/docs/api/rhi/d3d12/sampler/bind.md deleted file mode 100644 index 3994800c..00000000 --- a/docs/api/rhi/d3d12/sampler/bind.md +++ /dev/null @@ -1,26 +0,0 @@ -# D3D12Sampler::Bind - -## 函数签名 - -```cpp -void Bind(unsigned int unit) override -``` - -## 描述 - -绑定采样器到指定的纹理单元。此方法继承自 `RHISampler` 接口。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `unit` | `unsigned int` | 纹理单元索引 | - -## 返回值 - -无 - -## 相关文档 - -- [D3D12Sampler](sampler.md) - 类总览 -- [RHISampler](../../sampler/sampler.md) - 抽象采样器接口 diff --git a/docs/api/rhi/d3d12/sampler/constructor.md b/docs/api/rhi/d3d12/sampler/constructor.md deleted file mode 100644 index aaf157a3..00000000 --- a/docs/api/rhi/d3d12/sampler/constructor.md +++ /dev/null @@ -1,37 +0,0 @@ -# D3D12Sampler::D3D12Sampler - -构造函数,创建一个空的 D3D12Sampler 对象。 - -```cpp -D3D12Sampler(); -``` - -## 参数 - -无 - -## 返回值 - -无 - -**线程安全:** 非线程安全 - -**复杂度:** O(1) - -## 示例 - -```cpp -#include "XCEngine/RHI/D3D12/D3D12Sampler.h" - -D3D12Sampler sampler; -// 需要调用 Initialize 进行初始化 -D3D12_SAMPLER_DESC desc = {}; -desc.Filter = D3D12_FILTER_MIN_MAG_MIP_LINEAR; -sampler.Initialize(device, desc); -``` - -## 相关文档 - -- [D3D12Sampler 总览](sampler.md) -- [Initialize](initialize.md) - 初始化采样器 -- [Shutdown](shutdown.md) - 关闭采样器 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/sampler/destructor.md b/docs/api/rhi/d3d12/sampler/destructor.md deleted file mode 100644 index a99f8189..00000000 --- a/docs/api/rhi/d3d12/sampler/destructor.md +++ /dev/null @@ -1,36 +0,0 @@ -# D3D12Sampler::~D3D12Sampler - -析构函数,销毁 D3D12Sampler 对象。 - -```cpp -~D3D12Sampler() override; -``` - -## 参数 - -无 - -## 返回值 - -无 - -**线程安全:** 非线程安全 - -**复杂度:** O(n) - 取决于资源释放时间 - -## 示例 - -```cpp -#include "XCEngine/RHI/D3D12/D3D12Sampler.h" - -{ - D3D12Sampler sampler; - sampler.Initialize(device, desc); - // ... 使用 sampler ... -} // 超出作用域时自动调用析构函数 -``` - -## 相关文档 - -- [D3D12Sampler 总览](sampler.md) -- [Shutdown](shutdown.md) - 关闭采样器 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/sampler/get-desc.md b/docs/api/rhi/d3d12/sampler/get-desc.md deleted file mode 100644 index 4937fc30..00000000 --- a/docs/api/rhi/d3d12/sampler/get-desc.md +++ /dev/null @@ -1,42 +0,0 @@ -# D3D12Sampler::GetDesc - -## 函数签名 - -```cpp -D3D12_SAMPLER_DESC GetDesc() const -``` - -## 描述 - -获取 D3D12 采样器的描述符结构。该描述符包含了采样器的所有配置信息,包括过滤模式、寻址模式和细节级别等。 - -## 返回值 - -`D3D12_SAMPLER_DESC` - 采样器描述符的副本,包含以下配置: - -| 字段 | 描述 | -|------|------| -| `Filter` | 过滤模式(线性、点采样、各向异性等) | -| `AddressU/V/W` | UVW 三个方向的寻址模式 | -| `MipLODBias` | Mip 级别偏移 | -| `MaxAnisotropy` | 最大各向异性级别 | -| `ComparisonFunc` | 比较函数 | -| `BorderColor` | 边界颜色 | -| `MinLOD/MaxLOD` | Mip 级别范围 | - -## 示例 - -```cpp -D3D12Sampler sampler; -// ... 初始化 sampler ... -D3D12_SAMPLER_DESC desc = sampler.GetDesc(); - -if (desc.Filter == D3D12_FILTER_MIN_MAG_MIP_LINEAR) { - // 使用线性过滤 -} -``` - -## 相关文档 - -- [D3D12Sampler::Initialize](initialize.md) - 初始化采样器 -- [D3D12Sampler](sampler.md) - 类总览 diff --git a/docs/api/rhi/d3d12/sampler/get-id.md b/docs/api/rhi/d3d12/sampler/get-id.md deleted file mode 100644 index aa70e34a..00000000 --- a/docs/api/rhi/d3d12/sampler/get-id.md +++ /dev/null @@ -1,29 +0,0 @@ -# D3D12Sampler::GetID - -## 函数签名 - -```cpp -unsigned int GetID() override -``` - -## 中文描述 - -获取采样器唯一标识符。 - -## 返回值 - -`unsigned int` - 采样器 ID - -## 复杂度 - -O(1) - -## 示例 - -```cpp -unsigned int id = sampler->GetID(); -``` - -## 相关文档 - -- [D3D12Sampler](sampler.md) - 类总览 diff --git a/docs/api/rhi/d3d12/sampler/get-native-handle.md b/docs/api/rhi/d3d12/sampler/get-native-handle.md deleted file mode 100644 index 610ea7b9..00000000 --- a/docs/api/rhi/d3d12/sampler/get-native-handle.md +++ /dev/null @@ -1,24 +0,0 @@ -# D3D12Sampler::GetNativeHandle - -## 函数签名 - -```cpp -void* GetNativeHandle() override -``` - -## 描述 - -获取 D3D12 采样器的原生句柄。此方法继承自 `RHISampler` 接口。 - -## 参数 - -无 - -## 返回值 - -`void*` - 原生句柄指针。当前实现返回 `nullptr`。 - -## 相关文档 - -- [D3D12Sampler](sampler.md) - 类总览 -- [RHISampler](../../sampler/sampler.md) - 抽象采样器接口 diff --git a/docs/api/rhi/d3d12/sampler/index.md b/docs/api/rhi/d3d12/sampler/index.md deleted file mode 100644 index f3670275..00000000 --- a/docs/api/rhi/d3d12/sampler/index.md +++ /dev/null @@ -1,70 +0,0 @@ -# D3D12Sampler 类 - -## 命名空间 -`XCEngine::RHI` - -## 类型 -类 (Class),继承自 `RHISampler` - -## 描述 -D3D12 采样器实现类,用于配置纹理采样状态。封装 D3D12 采样器描述符,支持过滤模式、寻址模式等采样参数配置。 - -## 概述 -`D3D12Sampler` 是 RHI 抽象层在 DirectX 12 后端的采样器实现。该类管理 D3D12 采样器状态,与 `RHISampler` 基类配合提供跨平台统一的采样器接口。 - -**当前实现状态**: 本类为存根实现,`Initialize()` 仅存储描述符,未创建实际 D3D12 采样器对象。 - -## 公共方法表格 - -| 方法 | 签名 | 描述 | -|------|------|------| -| `D3D12Sampler` | `D3D12Sampler()` | 构造函数,初始化描述符为零 | -| `~D3D12Sampler` | `~D3D12Sampler()` | 析构函数,调用 `Shutdown()` | -| `Initialize` | `bool Initialize(ID3D12Device* device, const D3D12_SAMPLER_DESC& desc)` | 初始化采样器 | -| `Shutdown` | `void Shutdown()` | 关闭采样器,重置描述符 | -| `GetDesc` | `D3D12_SAMPLER_DESC GetDesc() const` | 获取采样器描述符副本 | -| `GetNativeHandle` | `void* GetNativeHandle()` | 获取原生句柄(暂未实现) | -| `GetID` | `unsigned int GetID()` | 获取采样器 ID(暂未实现) | -| `Bind` | `void Bind(unsigned int unit)` | 绑定到纹理单元(暂未实现) | -| `Unbind` | `void Unbind(unsigned int unit)` | 从纹理单元解绑(暂未实现) | - -## 头文件 -```cpp -#include "XCEngine/RHI/D3D12/D3D12Sampler.h" -``` - -## 使用示例 -```cpp -#include "XCEngine/RHI/D3D12/D3D12Sampler.h" - -using namespace XCEngine::RHI; - -// 创建设备指针 (假设已创建) -ID3D12Device* device = ...; - -// 配置采样器描述符 -D3D12_SAMPLER_DESC samplerDesc = {}; -samplerDesc.Filter = D3D12_FILTER_MIN_MAG_MIP_LINEAR; -samplerDesc.AddressU = D3D12_TEXTURE_ADDRESS_MODE_WRAP; -samplerDesc.AddressV = D3D12_TEXTURE_ADDRESS_MODE_WRAP; -samplerDesc.AddressW = D3D12_TEXTURE_ADDRESS_MODE_WRAP; -samplerDesc.MaxAnisotropy = 16; -samplerDesc.ComparisonFunc = D3D12_COMPARISON_FUNC_LESS; -samplerDesc.BorderColor[0] = 0.0f; -samplerDesc.BorderColor[1] = 0.0f; -samplerDesc.BorderColor[2] = 0.0f; -samplerDesc.BorderColor[3] = 1.0f; - -// 创建并初始化采样器 -D3D12Sampler* sampler = new D3D12Sampler(); -if (sampler->Initialize(device, samplerDesc)) { - D3D12_SAMPLER_DESC desc = sampler->GetDesc(); - // 使用采样器... - sampler->Shutdown(); -} -delete sampler; -``` - -## 相关文档 - -- [RHISampler 基类](../../sampler/sampler.md) diff --git a/docs/api/rhi/d3d12/sampler/initialize.md b/docs/api/rhi/d3d12/sampler/initialize.md deleted file mode 100644 index 4b42c945..00000000 --- a/docs/api/rhi/d3d12/sampler/initialize.md +++ /dev/null @@ -1,52 +0,0 @@ -# D3D12Sampler::Initialize - -## 函数签名 - -```cpp -bool Initialize(ID3D12Device* device, const D3D12_SAMPLER_DESC& desc) -``` - -## 描述 - -初始化 D3D12 采样器对象。根据提供的采样器描述符创建并配置 D3D12 采样器状态。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `device` | `ID3D12Device*` | D3D12 设备指针,用于创建采样器资源 | -| `desc` | `const D3D12_SAMPLER_DESC&` | 采样器描述符,包含过滤模式、寻址模式等配置 | - -## 返回值 - -`bool` - 初始化成功返回 `true`,否则返回 `false` - -## 示例 - -```cpp -D3D12Sampler sampler; -D3D12_SAMPLER_DESC desc = {}; -desc.Filter = D3D12_FILTER_MIN_MAG_MIP_LINEAR; -desc.AddressU = D3D12_TEXTURE_ADDRESS_MODE_WRAP; -desc.AddressV = D3D12_TEXTURE_ADDRESS_MODE_WRAP; -desc.AddressW = D3D12_TEXTURE_ADDRESS_MODE_WRAP; -desc.MipLODBias = 0.0f; -desc.MaxAnisotropy = 16; -desc.ComparisonFunc = D3D12_COMPARISON_FUNC_NEVER; -desc.BorderColor[0] = 0.0f; -desc.BorderColor[1] = 0.0f; -desc.BorderColor[2] = 0.0f; -desc.BorderColor[3] = 0.0f; -desc.MinLOD = 0.0f; -desc.MaxLOD = D3D12_FLOAT32_MAX; - -if (sampler.Initialize(device, desc)) { - // 采样器初始化成功 -} -``` - -## 相关文档 - -- [D3D12Sampler::Shutdown](shutdown.md) - 关闭采样器 -- [D3D12Sampler::GetDesc](get-desc.md) - 获取采样器描述符 -- [D3D12Sampler](sampler.md) - 类总览 diff --git a/docs/api/rhi/d3d12/sampler/sampler.md b/docs/api/rhi/d3d12/sampler/sampler.md deleted file mode 100644 index b7650da4..00000000 --- a/docs/api/rhi/d3d12/sampler/sampler.md +++ /dev/null @@ -1,51 +0,0 @@ -# D3D12Sampler - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` - -**继承**: `RHISampler` - -**描述**: DirectX 12 采样器的 D3D12 实现,提供对 D3D12 采样器资源的封装和管理。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Initialize`](initialize.md) | 初始化采样器 | -| [`GetDesc`](get-desc.md) | 获取采样器描述符 | -| [`GetID`](get-id.md) | 获取采样器 ID | - -## 继承方法 - -以下方法继承自 `RHISampler`: - -| 方法 | 描述 | -|------|------| -| [`Shutdown`](shutdown.md) | 关闭采样器 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | -| [`Bind`](bind.md) | 绑定采样器到纹理单元 | -| [`Unbind`](unbind.md) | 解绑采样器 | - -## 使用示例 - -```cpp -D3D12Sampler sampler; -D3D12_SAMPLER_DESC desc = {}; -desc.Filter = D3D12_FILTER_MIN_MAG_MIP_LINEAR; -desc.AddressU = D3D12_TEXTURE_ADDRESS_MODE_WRAP; -desc.AddressV = D3D12_TEXTURE_ADDRESS_MODE_WRAP; -desc.AddressW = D3D12_TEXTURE_ADDRESS_MODE_WRAP; - -if (sampler.Initialize(device, desc)) { - sampler.Bind(0); - // 使用采样器... - sampler.Unbind(0); - sampler.Shutdown(); -} -``` - -## 相关文档 - -- [D3D12 后端总览](../d3d12.md) - D3D12 模块总览 -- [RHISampler](../../sampler/sampler.md) - 抽象采样器接口 diff --git a/docs/api/rhi/d3d12/sampler/shutdown.md b/docs/api/rhi/d3d12/sampler/shutdown.md deleted file mode 100644 index 323dcb34..00000000 --- a/docs/api/rhi/d3d12/sampler/shutdown.md +++ /dev/null @@ -1,24 +0,0 @@ -# D3D12Sampler::Shutdown - -## 函数签名 - -```cpp -void Shutdown() override -``` - -## 描述 - -关闭 D3D12 采样器并释放相关资源。此方法继承自 `RHISampler` 接口。 - -## 参数 - -无 - -## 返回值 - -无 - -## 相关文档 - -- [D3D12Sampler](sampler.md) - 类总览 -- [RHISampler](../../sampler/sampler.md) - 抽象采样器接口 diff --git a/docs/api/rhi/d3d12/sampler/unbind.md b/docs/api/rhi/d3d12/sampler/unbind.md deleted file mode 100644 index 94ffc8e0..00000000 --- a/docs/api/rhi/d3d12/sampler/unbind.md +++ /dev/null @@ -1,26 +0,0 @@ -# D3D12Sampler::Unbind - -## 函数签名 - -```cpp -void Unbind(unsigned int unit) override -``` - -## 描述 - -从指定的纹理单元解绑采样器。此方法继承自 `RHISampler` 接口。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `unit` | `unsigned int` | 纹理单元索引 | - -## 返回值 - -无 - -## 相关文档 - -- [D3D12Sampler](sampler.md) - 类总览 -- [RHISampler](../../sampler/sampler.md) - 抽象采样器接口 diff --git a/docs/api/rhi/d3d12/screenshot/capture.md b/docs/api/rhi/d3d12/screenshot/capture.md deleted file mode 100644 index 2e527813..00000000 --- a/docs/api/rhi/d3d12/screenshot/capture.md +++ /dev/null @@ -1,46 +0,0 @@ -# D3D12Screenshot::Capture - -## 函数签名 - -```cpp -static bool Capture(ID3D12Device* device, - ID3D12CommandQueue* commandQueue, - ID3D12Resource* renderTarget, - const char* filename, - uint32_t width, - uint32_t height) -``` - -## 中文描述 - -从渲染目标捕获截图并保存为文件。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `device` | `ID3D12Device*` | D3D12 设备指针 | -| `commandQueue` | `ID3D12CommandQueue*` | 命令队列指针 | -| `renderTarget` | `ID3D12Resource*` | 渲染目标资源 | -| `filename` | `const char*` | 保存文件名 | -| `width` | `uint32_t` | 宽度 | -| `height` | `uint32_t` | 高度 | - -## 返回值 - -`bool` - 捕获是否成功 - -## 复杂度 - -O(n) - 取决于纹理大小 - -## 示例 - -```cpp -D3D12Screenshot::Capture(device, commandQueue, renderTarget, "screenshot.png", width, height); -``` - -## 相关文档 - -- [D3D12Screenshot](screenshot.md) - 类总览 -- [D3D12Screenshot::CopyToReadbackAndSave](copy-to-readback-and-save.md) - 复制到回读缓冲并保存 diff --git a/docs/api/rhi/d3d12/screenshot/copy-to-readback-and-save.md b/docs/api/rhi/d3d12/screenshot/copy-to-readback-and-save.md deleted file mode 100644 index 44f6ac49..00000000 --- a/docs/api/rhi/d3d12/screenshot/copy-to-readback-and-save.md +++ /dev/null @@ -1,46 +0,0 @@ -# D3D12Screenshot::CopyToReadbackAndSave - -## 函数签名 - -```cpp -static bool CopyToReadbackAndSave(ID3D12Device* device, - ID3D12CommandQueue* commandQueue, - ID3D12Resource* renderTarget, - const char* filename, - uint32_t width, - uint32_t height) -``` - -## 中文描述 - -复制渲染目标到回读缓冲区并保存为图片文件。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `device` | `ID3D12Device*` | D3D12 设备指针 | -| `commandQueue` | `ID3D12CommandQueue*` | 命令队列指针 | -| `renderTarget` | `ID3D12Resource*` | 渲染目标资源 | -| `filename` | `const char*` | 保存文件名 | -| `width` | `uint32_t` | 宽度 | -| `height` | `uint32_t` | 高度 | - -## 返回值 - -`bool` - 操作是否成功 - -## 复杂度 - -O(n) - 取决于纹理大小 - -## 示例 - -```cpp -D3D12Screenshot::CopyToReadbackAndSave(device, commandQueue, renderTarget, "screenshot.png", width, height); -``` - -## 相关文档 - -- [D3D12Screenshot](screenshot.md) - 类总览 -- [D3D12Screenshot::Capture](capture.md) - 捕获截图 diff --git a/docs/api/rhi/d3d12/screenshot/screenshot.md b/docs/api/rhi/d3d12/screenshot/screenshot.md deleted file mode 100644 index a9325c42..00000000 --- a/docs/api/rhi/d3d12/screenshot/screenshot.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12Screenshot - -**命名空间**: `XCEngine::RHI` - -**描述**: D3D12 截图工具类,提供屏幕截图捕获功能。**所有方法均为静态方法**。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Capture`](capture.md) | 捕获截图 | -| [`CopyToReadbackAndSave`](copy-to-readback-and-save.md) | 复制到回读缓冲并保存 | - -## 相关文档 - -- [D3D12 后端总览](../d3d12.md) diff --git a/docs/api/rhi/d3d12/shader-resource-view/constructor.md b/docs/api/rhi/d3d12/shader-resource-view/constructor.md deleted file mode 100644 index d09dd91b..00000000 --- a/docs/api/rhi/d3d12/shader-resource-view/constructor.md +++ /dev/null @@ -1,24 +0,0 @@ -# D3D12ShaderResourceView::D3D12ShaderResourceView - -## 函数签名 - -```cpp -D3D12ShaderResourceView() -``` - -## 描述 - -构造一个空的 `D3D12ShaderResourceView` 实例。描述符句柄初始化为零,资源指针为 `nullptr`。 - -## 参数 - -无 - -## 返回值 - -无 - -## 相关文档 - -- [D3D12ShaderResourceView](shader-resource-view.md) - 类总览 -- [D3D12ShaderResourceView::~D3D12ShaderResourceView](destructor.md) - 析构函数 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/shader-resource-view/create-desc.md b/docs/api/rhi/d3d12/shader-resource-view/create-desc.md deleted file mode 100644 index ae19c442..00000000 --- a/docs/api/rhi/d3d12/shader-resource-view/create-desc.md +++ /dev/null @@ -1,44 +0,0 @@ -# D3D12ShaderResourceView::CreateDesc - -## 函数签名 - -```cpp -static D3D12_SHADER_RESOURCE_VIEW_DESC CreateDesc(Format format, D3D12_SRV_DIMENSION dimension = D3D12_SRV_DIMENSION_TEXTURE2D, uint32_t mipLevels = 1) -``` - -## 中文描述 - -创建着色器资源视图描述符。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `format` | `Format` | 资源格式 | -| `dimension` | `D3D12_SRV_DIMENSION` | 视图维度(默认 TEXTURE2D) | -| `mipLevels` | `uint32_t` | Mipmap 级别数量(默认 1) | - -## 返回值 - -`D3D12_SHADER_RESOURCE_VIEW_DESC` - 着色器资源视图描述符 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12_SHADER_RESOURCE_VIEW_DESC desc = D3D12ShaderResourceView::CreateDesc(Format::R8G8B8A8_UNorm); -``` - -## 示例 - -```cpp -// 创建 2D 纹理 SRV 描述符 -D3D12_SHADER_RESOURCE_VIEW_DESC desc = D3D12ShaderResourceView::CreateDesc(Format::R8G8B8A8_UNorm, D3D12_SRV_DIMENSION_TEXTURE2D, 4); -``` - -## 相关文档 - -- [D3D12ShaderResourceView](shader-resource-view.md) - 类总览 diff --git a/docs/api/rhi/d3d12/shader-resource-view/destructor.md b/docs/api/rhi/d3d12/shader-resource-view/destructor.md deleted file mode 100644 index bf03a75b..00000000 --- a/docs/api/rhi/d3d12/shader-resource-view/destructor.md +++ /dev/null @@ -1,24 +0,0 @@ -# D3D12ShaderResourceView::~D3D12ShaderResourceView - -## 函数签名 - -```cpp -~D3D12ShaderResourceView() -``` - -## 描述 - -析构函数,调用 `Shutdown()` 释放资源。 - -## 参数 - -无 - -## 返回值 - -无 - -## 相关文档 - -- [D3D12ShaderResourceView](shader-resource-view.md) - 类总览 -- [D3D12ShaderResourceView::Shutdown](shutdown.md) - 关闭视图 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/shader-resource-view/get-cpu-descriptor-handle.md b/docs/api/rhi/d3d12/shader-resource-view/get-cpu-descriptor-handle.md deleted file mode 100644 index d105d0f6..00000000 --- a/docs/api/rhi/d3d12/shader-resource-view/get-cpu-descriptor-handle.md +++ /dev/null @@ -1,37 +0,0 @@ -# D3D12ShaderResourceView::GetCPUDescriptorHandle - -## 函数签名 - -```cpp -D3D12_CPU_DESCRIPTOR_HANDLE GetCPUDescriptorHandle() const -``` - -## 中文描述 - -获取着色器资源视图的 CPU 描述符句柄。 - -## 返回值 - -`D3D12_CPU_DESCRIPTOR_HANDLE` - CPU 描述符句柄 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12_CPU_DESCRIPTOR_HANDLE handle = srv->GetCPUDescriptorHandle(); -``` - -## 示例 - -```cpp -D3D12_CPU_DESCRIPTOR_HANDLE handle = srv->GetCPUDescriptorHandle(); -// 用于绑定到命令列表 -commandList->SetGraphicsRootDescriptorTable(0, handle); -``` - -## 相关文档 - -- [D3D12ShaderResourceView](shader-resource-view.md) - 类总览 diff --git a/docs/api/rhi/d3d12/shader-resource-view/initialize-at.md b/docs/api/rhi/d3d12/shader-resource-view/initialize-at.md deleted file mode 100644 index 9746d5bd..00000000 --- a/docs/api/rhi/d3d12/shader-resource-view/initialize-at.md +++ /dev/null @@ -1,39 +0,0 @@ -# D3D12ShaderResourceView::InitializeAt - -## 函数签名 - -```cpp -void InitializeAt(ID3D12Device* device, ID3D12Resource* resource, D3D12_CPU_DESCRIPTOR_HANDLE handle, const D3D12_SHADER_RESOURCE_VIEW_DESC* desc = nullptr) -``` - -## 中文描述 - -在指定描述符句柄位置初始化着色器资源视图,用于外部描述符堆管理场景。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `device` | `ID3D12Device*` | D3D12 设备指针 | -| `resource` | `ID3D12Resource*` | 资源指针 | -| `handle` | `D3D12_CPU_DESCRIPTOR_HANDLE` | 预分配的描述符句柄 | -| `desc` | `D3D12_SHADER_RESOURCE_VIEW_DESC*` | 视图描述符(可选) | - -## 返回值 - -无 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12_CPU_DESCRIPTOR_HANDLE handle = descriptorHeap->GetCPUDescriptorHandleForHeapStart(); -srv->InitializeAt(device, resource, handle); -``` - -## 相关文档 - -- [D3D12ShaderResourceView](shader-resource-view.md) - 类总览 diff --git a/docs/api/rhi/d3d12/shader-resource-view/initialize.md b/docs/api/rhi/d3d12/shader-resource-view/initialize.md deleted file mode 100644 index 5464d8d2..00000000 --- a/docs/api/rhi/d3d12/shader-resource-view/initialize.md +++ /dev/null @@ -1,41 +0,0 @@ -# D3D12ShaderResourceView::Initialize - -## 函数签名 - -```cpp -void Initialize(ID3D12Device* device, ID3D12Resource* resource, const D3D12_SHADER_RESOURCE_VIEW_DESC* desc = nullptr) -``` - -## 描述 - -初始化 D3D12 着色器资源视图。根据提供的资源创建 D3D12 着色器资源视图。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `device` | `ID3D12Device*` | D3D12 设备指针,用于创建视图 | -| `resource` | `ID3D12Resource*` | D3D12 资源指针 | -| `desc` | `const D3D12_SHADER_RESOURCE_VIEW_DESC*` | 着色器资源视图描述符(可选,默认 nullptr) | - -## 返回值 - -无 - -## 示例 - -```cpp -// 创建 SRV,使用默认描述符 -D3D12ShaderResourceView srv; -srv.Initialize(device, texture, nullptr); - -// 创建 SRV,使用自定义描述符 -D3D12_SHADER_RESOURCE_VIEW_DESC desc = D3D12ShaderResourceView::CreateDesc(Format::R8G8B8A8_UNorm); -srv.Initialize(device, texture, &desc); -``` - -## 相关文档 - -- [D3D12ShaderResourceView::InitializeAt](initialize-at.md) - 在指定位置初始化 -- [D3D12ShaderResourceView::Shutdown](shutdown.md) - 关闭视图 -- [D3D12ShaderResourceView](shader-resource-view.md) - 类总览 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/shader-resource-view/shader-resource-view.md b/docs/api/rhi/d3d12/shader-resource-view/shader-resource-view.md deleted file mode 100644 index c8642968..00000000 --- a/docs/api/rhi/d3d12/shader-resource-view/shader-resource-view.md +++ /dev/null @@ -1,52 +0,0 @@ -# D3D12ShaderResourceView - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` - -**头文件**: `XCEngine/RHI/D3D12/D3D12ShaderResourceView.h` - -**描述**: DirectX 12 着色器资源视图(Shader Resource View, SRV)的 D3D12 实现。SRV 允许着色器访问纹理、缓冲区等资源。 - -## 概述 - -`D3D12ShaderResourceView` 封装了 D3D12 的 `CreateShaderResourceView` 操作,提供两种初始化方式: -- `Initialize`: 自动分配描述符句柄 -- `InitializeAt`: 在预分配的描述符位置创建视图 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`D3D12ShaderResourceView()`](constructor.md) | 构造函数 | -| [`~D3D12ShaderResourceView()`](destructor.md) | 析构函数 | -| [`Initialize`](initialize.md) | 初始化着色器资源视图 | -| [`InitializeAt`](initialize-at.md) | 在指定位置初始化 | -| [`Shutdown`](shutdown.md) | 关闭着色器资源视图 | -| [`GetCPUDescriptorHandle`](get-cpu-descriptor-handle.md) | 获取 CPU 描述符句柄 | -| [`CreateDesc`](create-desc.md) | 创建描述符(静态) | - -## 使用示例 - -```cpp -// 创建设备和资源 -ID3D12Device* device; -ID3D12Resource* texture; -// ... 初始化设备资源 ... - -// 创建 SRV -D3D12ShaderResourceView* srv = new D3D12ShaderResourceView(); -srv->Initialize(device, texture, nullptr); - -// 获取描述符句柄用于绑定 -D3D12_CPU_DESCRIPTOR_HANDLE handle = srv->GetCPUDescriptorHandle(); - -// 清理 -srv->Shutdown(); -delete srv; -``` - -## 相关文档 - -- [D3D12 后端概览](../d3d12.md) -- [OpenGL 后端](../../opengl/opengl.md) diff --git a/docs/api/rhi/d3d12/shader-resource-view/shutdown.md b/docs/api/rhi/d3d12/shader-resource-view/shutdown.md deleted file mode 100644 index 2c77ad1c..00000000 --- a/docs/api/rhi/d3d12/shader-resource-view/shutdown.md +++ /dev/null @@ -1,30 +0,0 @@ -# D3D12ShaderResourceView::Shutdown - -## 函数签名 - -```cpp -void Shutdown() -``` - -## 描述 - -关闭 D3D12 着色器资源视图并释放相关资源。 - -## 参数 - -无 - -## 返回值 - -无 - -## 示例 - -```cpp -srv.Shutdown(); -``` - -## 相关文档 - -- [D3D12ShaderResourceView::Initialize](initialize.md) - 初始化视图 -- [D3D12ShaderResourceView](shader-resource-view.md) - 类总览 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/shader/get-bytecode-size.md b/docs/api/rhi/d3d12/shader/get-bytecode-size.md deleted file mode 100644 index 8c6b7947..00000000 --- a/docs/api/rhi/d3d12/shader/get-bytecode-size.md +++ /dev/null @@ -1,30 +0,0 @@ -# D3D12Shader::GetBytecodeSize - -## 函数签名 - -```cpp -size_t GetBytecodeSize() const -``` - -## 中文描述 - -获取着色器字节码大小。 - -## 返回值 - -`size_t` - 字节码大小(字节) - -## 复杂度 - -O(1) - -## 示例 - -```cpp -size_t size = shader->GetBytecodeSize(); -``` - -## 相关文档 - -- [D3D12Shader](shader.md) - 类总览 -- [D3D12Shader::GetBytecode](get-bytecode.md) - 获取字节码数据 diff --git a/docs/api/rhi/d3d12/shader/get-bytecode.md b/docs/api/rhi/d3d12/shader/get-bytecode.md deleted file mode 100644 index fe2cd8ec..00000000 --- a/docs/api/rhi/d3d12/shader/get-bytecode.md +++ /dev/null @@ -1,30 +0,0 @@ -# D3D12Shader::GetBytecode - -## 函数签名 - -```cpp -const void* GetBytecode() const -``` - -## 中文描述 - -获取着色器字节码数据指针。 - -## 返回值 - -`const void*` - 字节码数据指针 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -const void* bytecode = shader->GetBytecode(); -``` - -## 相关文档 - -- [D3D12Shader](shader.md) - 类总览 -- [D3D12Shader::GetBytecodeSize](get-bytecode-size.md) - 获取字节码大小 diff --git a/docs/api/rhi/d3d12/shader/get-d3d12-bytecode.md b/docs/api/rhi/d3d12/shader/get-d3d12-bytecode.md deleted file mode 100644 index 832a410d..00000000 --- a/docs/api/rhi/d3d12/shader/get-d3d12-bytecode.md +++ /dev/null @@ -1,29 +0,0 @@ -# D3D12Shader::GetD3D12Bytecode - -## 函数签名 - -```cpp -const D3D12_SHADER_BYTECODE GetD3D12Bytecode() const -``` - -## 中文描述 - -获取 D3D12 着色器字节码结构。 - -## 返回值 - -`D3D12_SHADER_BYTECODE` - D3D12 着色器字节码结构 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12_SHADER_BYTECODE bytecode = shader->GetD3D12Bytecode(); -``` - -## 相关文档 - -- [D3D12Shader](shader.md) - 类总览 diff --git a/docs/api/rhi/d3d12/shader/get-input-layout.md b/docs/api/rhi/d3d12/shader/get-input-layout.md deleted file mode 100644 index 94a33bb2..00000000 --- a/docs/api/rhi/d3d12/shader/get-input-layout.md +++ /dev/null @@ -1,29 +0,0 @@ -# D3D12Shader::GetInputLayout - -## 函数签名 - -```cpp -const InputLayoutDesc& GetInputLayout() const -``` - -## 中文描述 - -获取着色器输入布局描述。 - -## 返回值 - -`const InputLayoutDesc&` - 输入布局描述引用 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -const InputLayoutDesc& layout = shader->GetInputLayout(); -``` - -## 相关文档 - -- [D3D12Shader](shader.md) - 类总览 diff --git a/docs/api/rhi/d3d12/shader/set-float.md b/docs/api/rhi/d3d12/shader/set-float.md deleted file mode 100644 index cf41a6cf..00000000 --- a/docs/api/rhi/d3d12/shader/set-float.md +++ /dev/null @@ -1,36 +0,0 @@ -# D3D12Shader::SetFloat - -## 函数签名 - -```cpp -void SetFloat(const char* name, float value) override -``` - -## 中文描述 - -设置着色器中的浮点型 uniform 变量。当前实现为空(stub)。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `name` | `const char*` | 变量名称 | -| `value` | `float` | 变量值 | - -## 返回值 - -无 - -## 示例 - -```cpp -shader->SetFloat("scale", 2.0f); -``` - -## 相关文档 - -- [D3D12Shader](shader.md) - 类总览 -- [SetInt](set-int.md) - 设置整型 uniform -- [SetVec3](set-vec3.md) - 设置 Vec3 uniform -- [SetVec4](set-vec4.md) - 设置 Vec4 uniform -- [SetMat4](set-mat4.md) - 设置矩阵 uniform diff --git a/docs/api/rhi/d3d12/shader/set-int.md b/docs/api/rhi/d3d12/shader/set-int.md deleted file mode 100644 index 6795a504..00000000 --- a/docs/api/rhi/d3d12/shader/set-int.md +++ /dev/null @@ -1,36 +0,0 @@ -# D3D12Shader::SetInt - -## 函数签名 - -```cpp -void SetInt(const char* name, int value) override -``` - -## 中文描述 - -设置着色器中的整型 uniform 变量。当前实现为空(stub)。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `name` | `const char*` | 变量名称 | -| `value` | `int` | 变量值 | - -## 返回值 - -无 - -## 示例 - -```cpp -shader->SetInt("useLighting", 1); -``` - -## 相关文档 - -- [D3D12Shader](shader.md) - 类总览 -- [SetFloat](set-float.md) - 设置浮点型 uniform -- [SetVec3](set-vec3.md) - 设置 Vec3 uniform -- [SetVec4](set-vec4.md) - 设置 Vec4 uniform -- [SetMat4](set-mat4.md) - 设置矩阵 uniform diff --git a/docs/api/rhi/d3d12/shader/set-mat4.md b/docs/api/rhi/d3d12/shader/set-mat4.md deleted file mode 100644 index 81936245..00000000 --- a/docs/api/rhi/d3d12/shader/set-mat4.md +++ /dev/null @@ -1,37 +0,0 @@ -# D3D12Shader::SetMat4 - -## 函数签名 - -```cpp -void SetMat4(const char* name, const float* value) override -``` - -## 中文描述 - -设置着色器中的 4x4 矩阵 uniform 变量。当前实现为空(stub)。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `name` | `const char*` | 变量名称 | -| `value` | `const float*` | 矩阵数据指针(16 个 float 元素,按列主序存储) | - -## 返回值 - -无 - -## 示例 - -```cpp -float matrixData[16] = { /* 4x4 矩阵数据 */ }; -shader->SetMat4("transform", matrixData); -``` - -## 相关文档 - -- [D3D12Shader](shader.md) - 类总览 -- [SetInt](set-int.md) - 设置整型 uniform -- [SetFloat](set-float.md) - 设置浮点型 uniform -- [SetVec3](set-vec3.md) - 设置 Vec3 uniform -- [SetVec4](set-vec4.md) - 设置 Vec4 uniform diff --git a/docs/api/rhi/d3d12/shader/set-vec3.md b/docs/api/rhi/d3d12/shader/set-vec3.md deleted file mode 100644 index 0f227fff..00000000 --- a/docs/api/rhi/d3d12/shader/set-vec3.md +++ /dev/null @@ -1,38 +0,0 @@ -# D3D12Shader::SetVec3 - -## 函数签名 - -```cpp -void SetVec3(const char* name, float x, float y, float z) override -``` - -## 中文描述 - -设置着色器中的三维向量 uniform 变量。当前实现为空(stub)。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `name` | `const char*` | 变量名称 | -| `x` | `float` | 向量 X 分量 | -| `y` | `float` | 向量 Y 分量 | -| `z` | `float` | 向量 Z 分量 | - -## 返回值 - -无 - -## 示例 - -```cpp -shader->SetVec3("lightPos", 1.0f, 2.0f, 3.0f); -``` - -## 相关文档 - -- [D3D12Shader](shader.md) - 类总览 -- [SetInt](set-int.md) - 设置整型 uniform -- [SetFloat](set-float.md) - 设置浮点型 uniform -- [SetVec4](set-vec4.md) - 设置 Vec4 uniform -- [SetMat4](set-mat4.md) - 设置矩阵 uniform diff --git a/docs/api/rhi/d3d12/shader/set-vec4.md b/docs/api/rhi/d3d12/shader/set-vec4.md deleted file mode 100644 index a9ce89e3..00000000 --- a/docs/api/rhi/d3d12/shader/set-vec4.md +++ /dev/null @@ -1,39 +0,0 @@ -# D3D12Shader::SetVec4 - -## 函数签名 - -```cpp -void SetVec4(const char* name, float x, float y, float z, float w) override -``` - -## 中文描述 - -设置着色器中的四维向量 uniform 变量。当前实现为空(stub)。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `name` | `const char*` | 变量名称 | -| `x` | `float` | 向量 X 分量 | -| `y` | `float` | 向量 Y 分量 | -| `z` | `float` | 向量 Z 分量 | -| `w` | `float` | 向量 W 分量 | - -## 返回值 - -无 - -## 示例 - -```cpp -shader->SetVec4("color", 1.0f, 0.0f, 0.0f, 1.0f); -``` - -## 相关文档 - -- [D3D12Shader](shader.md) - 类总览 -- [SetInt](set-int.md) - 设置整型 uniform -- [SetFloat](set-float.md) - 设置浮点型 uniform -- [SetVec3](set-vec3.md) - 设置 Vec3 uniform -- [SetMat4](set-mat4.md) - 设置矩阵 uniform diff --git a/docs/api/rhi/d3d12/shader/shader.md b/docs/api/rhi/d3d12/shader/shader.md deleted file mode 100644 index dfe21fe0..00000000 --- a/docs/api/rhi/d3d12/shader/shader.md +++ /dev/null @@ -1,46 +0,0 @@ -# D3D12Shader - -**命名空间**: `XCEngine::RHI` - -**类型**: 类 (继承自 `RHIShader`) - -**描述**: DirectX 12 着色器的 D3D12 实现,继承自 `RHIShader`。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`CompileFromFile`](../../shader/compile-from-file.md) | 从文件编译着色器 | -| [`Compile`](../../shader/compile.md) | 从源码编译着色器 | -| [`Shutdown`](../../shader/shutdown.md) | 关闭着色器 | -| [`GetD3D12Bytecode`](get-d3d12-bytecode.md) | 获取 D3D12 字节码 | -| [`GetBytecode`](get-bytecode.md) | 获取字节码 | -| [`GetBytecodeSize`](get-bytecode-size.md) | 获取字节码大小 | -| [`GetType`](../../shader/get-type.md) | 获取着色器类型 | -| [`GetInputLayout`](get-input-layout.md) | 获取输入布局 | -| [`GetNativeHandle`](../../shader/get-native-handle.md) | 获取原生句柄 | -| [`IsValid`](../../shader/is-valid.md) | 检查是否有效 | -| [`Bind`](../../shader/bind.md) | 绑定着色器 | -| [`Unbind`](../../shader/unbind.md) | 解绑着色器 | -| [`SetInt`](set-int.md) | 设置整型 uniform | -| [`SetFloat`](set-float.md) | 设置浮点型 uniform | -| [`SetVec3`](set-vec3.md) | 设置 Vec3 uniform | -| [`SetVec4`](set-vec4.md) | 设置 Vec4 uniform | -| [`SetMat4`](set-mat4.md) | 设置矩阵 uniform | - -## 使用示例 - -```cpp -#include "XCEngine/RHI/D3D12/D3D12Shader.h" - -auto shader = std::make_unique(); -if (shader->CompileFromFile(L"shaders/vertex.hlsl", "VSMain", "vs_6_0")) { - D3D12_SHADER_BYTECODE bytecode = shader->GetD3D12Bytecode(); - // 使用字节码创建 PSO... -} -``` - -## 相关文档 - -- [D3D12 后端总览](../d3d12.md) -- [RHIShader](../../shader/shader.md) - 抽象着色器接口 diff --git a/docs/api/rhi/d3d12/swap-chain/constructor.md b/docs/api/rhi/d3d12/swap-chain/constructor.md deleted file mode 100644 index 4e3d43d7..00000000 --- a/docs/api/rhi/d3d12/swap-chain/constructor.md +++ /dev/null @@ -1,26 +0,0 @@ -# D3D12SwapChain::D3D12SwapChain - -## 函数签名 - -```cpp -D3D12SwapChain() -``` - -## 中文描述 - -D3D12SwapChain 类的构造函数,创建一个空的交换链实例。 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12SwapChain* swapChain = new D3D12SwapChain(); -``` - -## 相关文档 - -- [D3D12SwapChain](swap-chain.md) - 类总览 -- [~D3D12SwapChain](destructor.md) - 析构函数 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/swap-chain/destructor.md b/docs/api/rhi/d3d12/swap-chain/destructor.md deleted file mode 100644 index c8f9a27e..00000000 --- a/docs/api/rhi/d3d12/swap-chain/destructor.md +++ /dev/null @@ -1,21 +0,0 @@ -# D3D12SwapChain::~D3D12SwapChain - -## 函数签名 - -```cpp -~D3D12SwapChain() override -``` - -## 中文描述 - -D3D12SwapChain 类的析构函数,调用 `Shutdown()` 释放资源。 - -## 复杂度 - -O(n) - 取决于管理的缓冲区数量 - -## 相关文档 - -- [D3D12SwapChain](swap-chain.md) - 类总览 -- [D3D12SwapChain](constructor.md) - 构造函数 -- [Shutdown](../../swap-chain/shutdown.md) - 关闭交换链 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/swap-chain/get-back-buffer.md b/docs/api/rhi/d3d12/swap-chain/get-back-buffer.md deleted file mode 100644 index d132ea59..00000000 --- a/docs/api/rhi/d3d12/swap-chain/get-back-buffer.md +++ /dev/null @@ -1,47 +0,0 @@ -# D3D12SwapChain::GetBackBuffer - -## 函数签名 - -```cpp -D3D12Texture& GetBackBuffer(uint32_t index) -const D3D12Texture& GetBackBuffer(uint32_t index) const -``` - -## 中文描述 - -获取指定索引的后台缓冲区。返回引用而非指针,避免空指针检查。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `index` | `uint32_t` | 缓冲区索引(必须在有效范围内) | - -## 返回值 - -`D3D12Texture&` - 后台缓冲区纹理引用 - -## 注意事项 - -- 返回引用而非指针,调用者无需检查空值 -- 如果索引越界,会触发 assert 断言失败 -- 返回的引用在 SwapChain 存活期间有效,SwapChain 销毁后引用失效 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -// 获取后台缓冲区(返回引用) -D3D12Texture& buffer = swapChain.GetBackBuffer(0); - -// 使用封装接口 -gCommandList.TransitionBarrier(buffer.GetResource(), - ResourceStates::Present, ResourceStates::RenderTarget); -``` - -## 相关文档 - -- [D3D12SwapChain](swap-chain.md) - 类总览 diff --git a/docs/api/rhi/d3d12/swap-chain/get-current-back-buffer-index.md b/docs/api/rhi/d3d12/swap-chain/get-current-back-buffer-index.md deleted file mode 100644 index d8179a94..00000000 --- a/docs/api/rhi/d3d12/swap-chain/get-current-back-buffer-index.md +++ /dev/null @@ -1,30 +0,0 @@ -# D3D12SwapChain::GetCurrentBackBufferIndex - -## 函数签名 - -```cpp -uint32_t GetCurrentBackBufferIndex() const override -``` - -## 中文描述 - -获取当前后台缓冲区的索引。 - -## 返回值 - -`uint32_t` - 当前后台缓冲区索引 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -uint32_t index = swapChain->GetCurrentBackBufferIndex(); -``` - -## 相关文档 - -- [D3D12SwapChain](swap-chain.md) - 类总览 -- [D3D12SwapChain::GetCurrentBackBuffer](get-current-back-buffer.md) - 获取当前后台缓冲区 diff --git a/docs/api/rhi/d3d12/swap-chain/get-current-back-buffer.md b/docs/api/rhi/d3d12/swap-chain/get-current-back-buffer.md deleted file mode 100644 index 56b92e08..00000000 --- a/docs/api/rhi/d3d12/swap-chain/get-current-back-buffer.md +++ /dev/null @@ -1,30 +0,0 @@ -# D3D12SwapChain::GetCurrentBackBuffer - -## 函数签名 - -```cpp -RHITexture* GetCurrentBackBuffer() override -``` - -## 中文描述 - -获取当前后台缓冲区纹理。 - -## 返回值 - -`RHITexture*` - 当前后台缓冲区纹理指针 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -RHITexture* backBuffer = swapChain->GetCurrentBackBuffer(); -``` - -## 相关文档 - -- [D3D12SwapChain](swap-chain.md) - 类总览 -- [D3D12SwapChain::GetCurrentBackBufferIndex](get-current-back-buffer-index.md) - 获取当前缓冲区索引 diff --git a/docs/api/rhi/d3d12/swap-chain/get-native-handle.md b/docs/api/rhi/d3d12/swap-chain/get-native-handle.md deleted file mode 100644 index de3f9066..00000000 --- a/docs/api/rhi/d3d12/swap-chain/get-native-handle.md +++ /dev/null @@ -1,35 +0,0 @@ -# D3D12SwapChain::GetNativeHandle - -## 函数签名 - -```cpp -void* GetNativeHandle() override -``` - -## 中文描述 - -获取交换链的原生 DXGI 指针。此方法返回底层 `IDXGISwapChain3` 接口的指针,可用于与原生 D3D12 代码互操作。 - -## 参数 - -无 - -## 返回值 - -`void*` - 指向 `IDXGISwapChain3` 接口的指针 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -void* nativeHandle = swapChain->GetNativeHandle(); -IDXGISwapChain3* swapChain3 = reinterpret_cast(nativeHandle); -``` - -## 相关文档 - -- [D3D12SwapChain](swap-chain.md) - 类总览 -- [GetSwapChain](get-swap-chain.md) - 获取 D3D12 交换链接口 diff --git a/docs/api/rhi/d3d12/swap-chain/get-swap-chain.md b/docs/api/rhi/d3d12/swap-chain/get-swap-chain.md deleted file mode 100644 index 83a6f812..00000000 --- a/docs/api/rhi/d3d12/swap-chain/get-swap-chain.md +++ /dev/null @@ -1,29 +0,0 @@ -# D3D12SwapChain::GetSwapChain - -## 函数签名 - -```cpp -IDXGISwapChain3* GetSwapChain() const -``` - -## 中文描述 - -获取底层 `IDXGISwapChain3` 接口指针。 - -## 返回值 - -`IDXGISwapChain3*` - DXGI 交换链接口指针 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -IDXGISwapChain3* swapChain = d3d12SwapChain->GetSwapChain(); -``` - -## 相关文档 - -- [D3D12SwapChain](swap-chain.md) - 类总览 diff --git a/docs/api/rhi/d3d12/swap-chain/initialize-from-factory.md b/docs/api/rhi/d3d12/swap-chain/initialize-from-factory.md deleted file mode 100644 index 4879a4cb..00000000 --- a/docs/api/rhi/d3d12/swap-chain/initialize-from-factory.md +++ /dev/null @@ -1,42 +0,0 @@ -# D3D12SwapChain::Initialize (from factory) - -## 函数签名 - -```cpp -bool Initialize(IDXGIFactory4* factory, ID3D12CommandQueue* commandQueue, HWND windowHandle, uint32_t width, uint32_t height, uint32_t bufferCount = 2) -``` - -## 中文描述 - -从 DXGI 工厂创建新的交换链。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `factory` | `IDXGIFactory4*` | DXGI 工厂指针 | -| `commandQueue` | `ID3D12CommandQueue*` | 命令队列指针 | -| `windowHandle` | `HWND` | 窗口句柄 | -| `width` | `uint32_t` | 宽度 | -| `height` | `uint32_t` | 高度 | -| `bufferCount` | `uint32_t` | 缓冲区数量(默认 2) | - -## 返回值 - -`bool` - 初始化是否成功 - -## 复杂度 - -O(n) - 取决于缓冲区数量和大小 - -## 示例 - -```cpp -D3D12SwapChain swapChain; -swapChain->Initialize(factory, commandQueue, hwnd, 1920, 1080, 2); -``` - -## 相关文档 - -- [D3D12SwapChain](swap-chain.md) - 类总览 -- [Initialize (from swapchain)](initialize-from-swapchain.md) - 从已有交换链初始化 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/swap-chain/initialize-from-swapchain.md b/docs/api/rhi/d3d12/swap-chain/initialize-from-swapchain.md deleted file mode 100644 index a57535b5..00000000 --- a/docs/api/rhi/d3d12/swap-chain/initialize-from-swapchain.md +++ /dev/null @@ -1,39 +0,0 @@ -# D3D12SwapChain::Initialize (from swapchain) - -## 函数签名 - -```cpp -bool Initialize(IDXGISwapChain* swapChain, uint32_t width, uint32_t height) -``` - -## 中文描述 - -从已有的 DXGI 交换链对象初始化 D3D12SwapChain。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `swapChain` | `IDXGISwapChain*` | 已存在的 DXGI 交换链指针 | -| `width` | `uint32_t` | 交换链宽度 | -| `height` | `uint32_t` | 交换链高度 | - -## 返回值 - -`bool` - 初始化是否成功 - -## 复杂度 - -O(n) - 取决于缓冲区数量 - -## 示例 - -```cpp -D3D12SwapChain swapChain; -swapChain->Initialize(existingSwapChain, 1920, 1080); -``` - -## 相关文档 - -- [D3D12SwapChain](swap-chain.md) - 类总览 -- [Initialize (from factory)](initialize-from-factory.md) - 从工厂创建新交换链 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/swap-chain/is-fullscreen.md b/docs/api/rhi/d3d12/swap-chain/is-fullscreen.md deleted file mode 100644 index 4fc3db1c..00000000 --- a/docs/api/rhi/d3d12/swap-chain/is-fullscreen.md +++ /dev/null @@ -1,32 +0,0 @@ -# D3D12SwapChain::IsFullscreen - -## 函数签名 - -```cpp -bool IsFullscreen() const override -``` - -## 中文描述 - -检查交换链是否处于全屏模式。 - -## 返回值 - -`bool` - 如果全屏则返回 `true` - -## 复杂度 - -O(1) - -## 示例 - -```cpp -if (swapChain->IsFullscreen()) { - // 全屏模式 -} -``` - -## 相关文档 - -- [D3D12SwapChain](swap-chain.md) - 类总览 -- [D3D12SwapChain::SetFullscreen](set-fullscreen.md) - 设置全屏模式 diff --git a/docs/api/rhi/d3d12/swap-chain/poll-events.md b/docs/api/rhi/d3d12/swap-chain/poll-events.md deleted file mode 100644 index 230908b7..00000000 --- a/docs/api/rhi/d3d12/swap-chain/poll-events.md +++ /dev/null @@ -1,29 +0,0 @@ -# D3D12SwapChain::PollEvents - -## 函数签名 - -```cpp -void PollEvents() override -``` - -## 中文描述 - -处理窗口消息队列中的事件。 - -## 返回值 - -无 - -## 复杂度 - -O(n) - 取决于待处理事件数量 - -## 示例 - -```cpp -swapChain->PollEvents(); -``` - -## 相关文档 - -- [D3D12SwapChain](swap-chain.md) - 类总览 diff --git a/docs/api/rhi/d3d12/swap-chain/present.md b/docs/api/rhi/d3d12/swap-chain/present.md deleted file mode 100644 index c5ebef68..00000000 --- a/docs/api/rhi/d3d12/swap-chain/present.md +++ /dev/null @@ -1,36 +0,0 @@ -# D3D12SwapChain::Present - -## 函数签名 - -```cpp -void Present(uint32_t syncInterval = 1, uint32_t flags = 0) override -``` - -## 中文描述 - -呈现后台缓冲区内容到屏幕。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `syncInterval` | `uint32_t` | 垂直同步间隔(默认 1) | -| `flags` | `uint32_t` | 呈现标志(默认 0) | - -## 返回值 - -无 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -swapChain->Present(1, 0); -``` - -## 相关文档 - -- [D3D12SwapChain](swap-chain.md) - 类总览 diff --git a/docs/api/rhi/d3d12/swap-chain/resize.md b/docs/api/rhi/d3d12/swap-chain/resize.md deleted file mode 100644 index 6f068661..00000000 --- a/docs/api/rhi/d3d12/swap-chain/resize.md +++ /dev/null @@ -1,42 +0,0 @@ -# D3D12SwapChain::Resize - -## 函数签名 - -```cpp -void Resize(uint32_t width, uint32_t height) override -``` - -## 中文描述 - -调整交换链的缓冲区尺寸。此方法调用 DXGI 交换链的 `ResizeBuffers`,更新内部存储的宽度和高度。 - -注意:调用此方法后,之前获取的后台缓冲区指针可能失效,需要重新调用 `GetBackBuffer` 获取。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `width` | `uint32_t` | 新的宽度 | -| `height` | `uint32_t` | 新的高度 | - -## 返回值 - -无 - -## 复杂度 - -O(n) - 取决于缓冲区数量和大小 - -## 示例 - -```cpp -// 窗口大小改变时调整交换链 -void OnWindowResize(uint32_t newWidth, uint32_t newHeight) { - swapChain.Resize(newWidth, newHeight); -} -``` - -## 相关文档 - -- [D3D12SwapChain](swap-chain.md) - 类总览 -- [GetBackBuffer](get-back-buffer.md) - 获取后台缓冲区 diff --git a/docs/api/rhi/d3d12/swap-chain/set-fullscreen.md b/docs/api/rhi/d3d12/swap-chain/set-fullscreen.md deleted file mode 100644 index 56e7d35d..00000000 --- a/docs/api/rhi/d3d12/swap-chain/set-fullscreen.md +++ /dev/null @@ -1,36 +0,0 @@ -# D3D12SwapChain::SetFullscreen - -## 函数签名 - -```cpp -void SetFullscreen(bool fullscreen) override -``` - -## 中文描述 - -设置全屏模式。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `fullscreen` | `bool` | 是否全屏 | - -## 返回值 - -无 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -swapChain->SetFullscreen(true); -``` - -## 相关文档 - -- [D3D12SwapChain](swap-chain.md) - 类总览 -- [D3D12SwapChain::IsFullscreen](is-fullscreen.md) - 检查全屏状态 diff --git a/docs/api/rhi/d3d12/swap-chain/set-should-close.md b/docs/api/rhi/d3d12/swap-chain/set-should-close.md deleted file mode 100644 index e14196e6..00000000 --- a/docs/api/rhi/d3d12/swap-chain/set-should-close.md +++ /dev/null @@ -1,36 +0,0 @@ -# D3D12SwapChain::SetShouldClose - -## 函数签名 - -```cpp -void SetShouldClose(bool shouldClose) override -``` - -## 中文描述 - -设置窗口关闭标志。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `shouldClose` | `bool` | 是否应该关闭 | - -## 返回值 - -无 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -swapChain->SetShouldClose(true); -``` - -## 相关文档 - -- [D3D12SwapChain](swap-chain.md) - 类总览 -- [D3D12SwapChain::ShouldClose](should-close.md) - 检查关闭标志 diff --git a/docs/api/rhi/d3d12/swap-chain/should-close.md b/docs/api/rhi/d3d12/swap-chain/should-close.md deleted file mode 100644 index 9f4beed3..00000000 --- a/docs/api/rhi/d3d12/swap-chain/should-close.md +++ /dev/null @@ -1,32 +0,0 @@ -# D3D12SwapChain::ShouldClose - -## 函数签名 - -```cpp -bool ShouldClose() const override -``` - -## 中文描述 - -检查窗口是否应该关闭(如收到 WM_CLOSE 消息)。 - -## 返回值 - -`bool` - 如果应该关闭则返回 `true` - -## 复杂度 - -O(1) - -## 示例 - -```cpp -if (swapChain->ShouldClose()) { - // 处理关闭 -} -``` - -## 相关文档 - -- [D3D12SwapChain](swap-chain.md) - 类总览 -- [D3D12SwapChain::SetShouldClose](set-should-close.md) - 设置关闭标志 diff --git a/docs/api/rhi/d3d12/swap-chain/shutdown.md b/docs/api/rhi/d3d12/swap-chain/shutdown.md deleted file mode 100644 index 81882862..00000000 --- a/docs/api/rhi/d3d12/swap-chain/shutdown.md +++ /dev/null @@ -1,40 +0,0 @@ -# D3D12SwapChain::Shutdown - -## 函数签名 - -```cpp -void Shutdown() override -``` - -## 中文描述 - -关闭交换链并释放所有相关资源。此方法会重置交换链 COM 指针,释放后台缓冲区。 - -调用此方法后,交换链实例可重新调用 `Initialize` 进行初始化。 - -## 参数 - -无 - -## 返回值 - -无 - -## 复杂度 - -O(n) - 取决于缓冲区数量 - -## 示例 - -```cpp -D3D12SwapChain swapChain; -swapChain.Initialize(factory, commandQueue, hwnd, 1920, 1080); - -// 使用完毕后关闭 -swapChain.Shutdown(); -``` - -## 相关文档 - -- [D3D12SwapChain](swap-chain.md) - 类总览 -- [Initialize (from factory)](initialize-from-factory.md) - 创建交换链 diff --git a/docs/api/rhi/d3d12/swap-chain/swap-chain.md b/docs/api/rhi/d3d12/swap-chain/swap-chain.md deleted file mode 100644 index 9809a32e..00000000 --- a/docs/api/rhi/d3d12/swap-chain/swap-chain.md +++ /dev/null @@ -1,61 +0,0 @@ -# D3D12SwapChain - -**命名空间**: `XCEngine::RHI` - -**继承自**: `RHISwapChain` - -## 概述 - -`D3D12SwapChain` 是 DirectX 12 交换链的 D3D12 实现,继承自 `RHISwapChain`。该类负责管理 DXGI 交换链的创建、呈现、分辨率调整等操作,是 D3D12 RHI 后端的核心组件之一。 - -交换链维护多个后台缓冲区用于双缓冲或三缓冲渲染,通过 `Present` 方法将已完成渲染的缓冲区呈现到屏幕。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`D3D12SwapChain`](constructor.md) | 构造函数 | -| [`~D3D12SwapChain`](destructor.md) | 析构函数 | -| [`Initialize (from factory)`](initialize-from-factory.md) | 从工厂创建新交换链 | -| [`Initialize (from swapchain)`](initialize-from-swapchain.md) | 从已有交换链初始化 | -| [`Shutdown`](shutdown.md) | 关闭交换链 | -| [`GetCurrentBackBufferIndex`](get-current-back-buffer-index.md) | 获取当前后台缓冲区索引 | -| [`GetCurrentBackBuffer`](get-current-back-buffer.md) | 获取当前后台缓冲区 | -| [`GetBackBuffer`](get-back-buffer.md) | 获取后台缓冲区 | -| [`Present`](present.md) | 呈现画面 | -| [`Resize`](resize.md) | 调整交换链大小 | -| [`SetFullscreen`](set-fullscreen.md) | 设置全屏模式 | -| [`IsFullscreen`](is-fullscreen.md) | 检查是否全屏 | -| [`ShouldClose`](should-close.md) | 检查是否应关闭 | -| [`SetShouldClose`](set-should-close.md) | 设置关闭标志 | -| [`PollEvents`](poll-events.md) | 处理窗口事件 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | -| [`GetSwapChain`](get-swap-chain.md) | 获取 D3D12 交换链 | - -## 使用示例 - -```cpp -// 创建交换链 -D3D12SwapChain swapChain; -swapChain.Initialize(factory, commandQueue, hwnd, 1920, 1080, 2); - -// 渲染循环 -while (!swapChain.ShouldClose()) { - swapChain.PollEvents(); - - // 获取当前后台缓冲区进行渲染 - D3D12Texture* backBuffer = swapChain.GetCurrentBackBuffer(); - - // ... 渲染操作 ... - - // 呈现 - swapChain.Present(1, 0); -} - -// 关闭 -swapChain.Shutdown(); -``` - -## 相关文档 - -- [D3D12 后端总览](../d3d12.md) diff --git a/docs/api/rhi/d3d12/texture/constructor.md b/docs/api/rhi/d3d12/texture/constructor.md deleted file mode 100644 index 95b18fe0..00000000 --- a/docs/api/rhi/d3d12/texture/constructor.md +++ /dev/null @@ -1,42 +0,0 @@ -# D3D12Texture::D3D12Texture - -## 函数签名 - -```cpp -D3D12Texture(); -``` - -## 中文描述 - -默认构造函数,创建一个空的 D3D12Texture 对象。需要调用 `Initialize` 或其他初始化方法才能使用。 - -## 参数 - -无 - -## 返回值 - -无 - -## 线程安全 - -非线程安全,对象构造时无需同步。 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12Texture texture; -// 需要调用 Initialize 等方法进行初始化 -texture.Initialize(device, desc); -``` - -## 相关文档 - -- [D3D12Texture](texture.md) - 类总览 -- [Initialize](initialize.md) - 初始化纹理 -- [InitializeFromData](initialize-from-data.md) - 从数据初始化 -- [InitializeDepthStencil](initialize-depth-stencil.md) - 初始化深度模板纹理 diff --git a/docs/api/rhi/d3d12/texture/destructor.md b/docs/api/rhi/d3d12/texture/destructor.md deleted file mode 100644 index 92b77832..00000000 --- a/docs/api/rhi/d3d12/texture/destructor.md +++ /dev/null @@ -1,42 +0,0 @@ -# D3D12Texture::~D3D12Texture - -## 函数签名 - -```cpp -~D3D12Texture() override; -``` - -## 中文描述 - -析构函数,调用 `Shutdown` 释放资源并销毁 D3D12 资源对象。 - -## 参数 - -无 - -## 返回值 - -无 - -## 线程安全 - -非线程安全,请在所有 GPU 操作完成后销毁对象。 - -## 复杂度 - -O(n) - 取决于资源释放时间 - -## 示例 - -```cpp -{ - D3D12Texture texture; - texture.Initialize(device, desc); - // ... 使用 texture ... -} // 超出作用域时自动调用析构函数,释放资源 -``` - -## 相关文档 - -- [D3D12Texture](texture.md) - 类总览 -- [Shutdown](../../texture/shutdown.md) - 关闭纹理 diff --git a/docs/api/rhi/d3d12/texture/get-array-size.md b/docs/api/rhi/d3d12/texture/get-array-size.md deleted file mode 100644 index 28975607..00000000 --- a/docs/api/rhi/d3d12/texture/get-array-size.md +++ /dev/null @@ -1,29 +0,0 @@ -# D3D12Texture::GetArraySize - -## 函数签名 - -```cpp -uint32_t GetArraySize() const -``` - -## 中文描述 - -获取纹理数组大小。对于非数组纹理,返回 1。 - -## 返回值 - -`uint32_t` - 数组大小 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -uint32_t arraySize = texture->GetArraySize(); -``` - -## 相关文档 - -- [D3D12Texture](texture.md) - 类总览 diff --git a/docs/api/rhi/d3d12/texture/get-depth.md b/docs/api/rhi/d3d12/texture/get-depth.md deleted file mode 100644 index 25cf124d..00000000 --- a/docs/api/rhi/d3d12/texture/get-depth.md +++ /dev/null @@ -1,33 +0,0 @@ -# D3D12Texture::GetDepth - -获取纹理深度或数组大小。 - -```cpp -uint32_t GetDepth() const override; -``` - -## 参数 - -无 - -## 返回值 - -`uint32_t` - 纹理深度(3D 纹理)或数组大小(1D/2D 纹理数组) - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -D3D12Texture texture; -texture.Initialize(device, desc); -uint32_t depth = texture.GetDepth(); -``` - -## 相关文档 - -- [D3D12Texture 总览](texture.md) -- [GetWidth](get-width.md) - 获取纹理宽度 -- [GetHeight](get-height.md) - 获取纹理高度 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/texture/get-desc.md b/docs/api/rhi/d3d12/texture/get-desc.md deleted file mode 100644 index 682c7702..00000000 --- a/docs/api/rhi/d3d12/texture/get-desc.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12Texture::GetDesc - -获取纹理描述符。 - -```cpp -D3D12_RESOURCE_DESC GetDesc() const; -``` - -## 参数 - -无 - -## 返回值 - -`D3D12_RESOURCE_DESC` - D3D12 资源描述符 - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -D3D12Texture texture; -texture.Initialize(device, desc); -D3D12_RESOURCE_DESC resourceDesc = texture.GetDesc(); -``` - -## 相关文档 - -- [D3D12Texture 总览](texture.md) \ No newline at end of file diff --git a/docs/api/rhi/d3d12/texture/get-format.md b/docs/api/rhi/d3d12/texture/get-format.md deleted file mode 100644 index cdd9e015..00000000 --- a/docs/api/rhi/d3d12/texture/get-format.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12Texture::GetFormat - -获取纹理格式。 - -```cpp -Format GetFormat() const override; -``` - -## 参数 - -无 - -## 返回值 - -`Format` - 纹理格式 - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -D3D12Texture texture; -texture.Initialize(device, desc); -Format format = texture.GetFormat(); -``` - -## 相关文档 - -- [D3D12Texture 总览](texture.md) \ No newline at end of file diff --git a/docs/api/rhi/d3d12/texture/get-gpu-address.md b/docs/api/rhi/d3d12/texture/get-gpu-address.md deleted file mode 100644 index 8e865ff9..00000000 --- a/docs/api/rhi/d3d12/texture/get-gpu-address.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12Texture::GetGPUAddress - -获取 GPU 虚拟地址。 - -```cpp -uint64_t GetGPUAddress() const; -``` - -## 参数 - -无 - -## 返回值 - -`uint64_t` - GPU 虚拟地址 - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -D3D12Texture texture; -texture.Initialize(device, desc); -uint64_t gpuAddress = texture.GetGPUAddress(); -``` - -## 相关文档 - -- [D3D12Texture 总览](texture.md) \ No newline at end of file diff --git a/docs/api/rhi/d3d12/texture/get-height.md b/docs/api/rhi/d3d12/texture/get-height.md deleted file mode 100644 index ea63b76e..00000000 --- a/docs/api/rhi/d3d12/texture/get-height.md +++ /dev/null @@ -1,33 +0,0 @@ -# D3D12Texture::GetHeight - -获取纹理高度。 - -```cpp -uint32_t GetHeight() const override; -``` - -## 参数 - -无 - -## 返回值 - -`uint32_t` - 纹理高度(像素) - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -D3D12Texture texture; -texture.Initialize(device, desc); -uint32_t height = texture.GetHeight(); -``` - -## 相关文档 - -- [D3D12Texture 总览](texture.md) -- [GetWidth](get-width.md) - 获取纹理宽度 -- [GetDepth](get-depth.md) - 获取纹理深度 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/texture/get-mip-levels.md b/docs/api/rhi/d3d12/texture/get-mip-levels.md deleted file mode 100644 index f590d11d..00000000 --- a/docs/api/rhi/d3d12/texture/get-mip-levels.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12Texture::GetMipLevels - -获取 Mip 级别数量。 - -```cpp -uint32_t GetMipLevels() const override; -``` - -## 参数 - -无 - -## 返回值 - -`uint32_t` - Mip 级别数量 - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -D3D12Texture texture; -texture.Initialize(device, desc); -uint32_t mipLevels = texture.GetMipLevels(); -``` - -## 相关文档 - -- [D3D12Texture 总览](texture.md) \ No newline at end of file diff --git a/docs/api/rhi/d3d12/texture/get-name.md b/docs/api/rhi/d3d12/texture/get-name.md deleted file mode 100644 index 4a196160..00000000 --- a/docs/api/rhi/d3d12/texture/get-name.md +++ /dev/null @@ -1,33 +0,0 @@ -# D3D12Texture::GetName - -获取纹理名称。 - -```cpp -const std::string& GetName() const override; -``` - -## 参数 - -无 - -## 返回值 - -`const std::string&` - 纹理名称 - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -D3D12Texture texture; -texture.Initialize(device, desc); -texture.SetName(L"MyTexture"); -const std::string& name = texture.GetName(); -``` - -## 相关文档 - -- [D3D12Texture 总览](texture.md) -- [SetName](set-name.md) - 设置纹理名称 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/texture/get-native-handle.md b/docs/api/rhi/d3d12/texture/get-native-handle.md deleted file mode 100644 index 499a2633..00000000 --- a/docs/api/rhi/d3d12/texture/get-native-handle.md +++ /dev/null @@ -1,32 +0,0 @@ -# D3D12Texture::GetNativeHandle - -获取原生句柄。 - -```cpp -void* GetNativeHandle() override; -``` - -## 参数 - -无 - -## 返回值 - -`void*` - D3D12 资源原生句柄 - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -D3D12Texture texture; -texture.Initialize(device, desc); -void* handle = texture.GetNativeHandle(); -``` - -## 相关文档 - -- [D3D12Texture 总览](texture.md) -- [GetResource](get-resource.md) - 获取 D3D12 资源 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/texture/get-resource.md b/docs/api/rhi/d3d12/texture/get-resource.md deleted file mode 100644 index d397449f..00000000 --- a/docs/api/rhi/d3d12/texture/get-resource.md +++ /dev/null @@ -1,32 +0,0 @@ -# D3D12Texture::GetResource - -获取 D3D12 资源指针。 - -```cpp -ID3D12Resource* GetResource() const; -``` - -## 参数 - -无 - -## 返回值 - -`ID3D12Resource*` - D3D12 资源指针 - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -D3D12Texture texture; -texture.Initialize(device, desc); -ID3D12Resource* resource = texture.GetResource(); -``` - -## 相关文档 - -- [D3D12Texture 总览](texture.md) -- [Initialize](initialize.md) - 初始化纹理 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/texture/get-size.md b/docs/api/rhi/d3d12/texture/get-size.md deleted file mode 100644 index d4717770..00000000 --- a/docs/api/rhi/d3d12/texture/get-size.md +++ /dev/null @@ -1,32 +0,0 @@ -# D3D12Texture::GetSize - -## 函数签名 - -```cpp -size_t GetSize() const -``` - -## 中文描述 - -计算并返回纹理的总大小(字节)。计算方式为 `宽度 × 高度 × 深度或数组大小`。 - -## 返回值 - -`size_t` - 纹理大小(字节) - -## 复杂度 - -O(1) - -## 示例 - -```cpp -size_t size = texture->GetSize(); -printf("Texture size: %zu bytes\n", size); -``` - -## 相关文档 - -- [D3D12Texture](texture.md) - 类总览 -- [GetWidth](../../texture/get-width.md) - 获取纹理宽度 -- [GetHeight](../../texture/get-height.md) - 获取纹理高度 diff --git a/docs/api/rhi/d3d12/texture/get-state.md b/docs/api/rhi/d3d12/texture/get-state.md deleted file mode 100644 index 215c5ac3..00000000 --- a/docs/api/rhi/d3d12/texture/get-state.md +++ /dev/null @@ -1,32 +0,0 @@ -# D3D12Texture::GetState - -获取资源状态。 - -```cpp -ResourceStates GetState() const override; -``` - -## 参数 - -无 - -## 返回值 - -`ResourceStates` - 当前资源状态 - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -D3D12Texture texture; -texture.Initialize(device, desc); -ResourceStates state = texture.GetState(); -``` - -## 相关文档 - -- [D3D12Texture 总览](texture.md) -- [SetState](set-state.md) - 设置资源状态 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/texture/get-texture-type.md b/docs/api/rhi/d3d12/texture/get-texture-type.md deleted file mode 100644 index a77d558d..00000000 --- a/docs/api/rhi/d3d12/texture/get-texture-type.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12Texture::GetTextureType - -获取纹理类型。 - -```cpp -TextureType GetTextureType() const override; -``` - -## 参数 - -无 - -## 返回值 - -`TextureType` - 纹理类型(目前固定返回 `TextureType::Texture2D`) - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -D3D12Texture texture; -texture.Initialize(device, desc); -TextureType type = texture.GetTextureType(); -``` - -## 相关文档 - -- [D3D12Texture 总览](texture.md) \ No newline at end of file diff --git a/docs/api/rhi/d3d12/texture/get-width.md b/docs/api/rhi/d3d12/texture/get-width.md deleted file mode 100644 index 76ab4650..00000000 --- a/docs/api/rhi/d3d12/texture/get-width.md +++ /dev/null @@ -1,33 +0,0 @@ -# D3D12Texture::GetWidth - -获取纹理宽度。 - -```cpp -uint32_t GetWidth() const override; -``` - -## 参数 - -无 - -## 返回值 - -`uint32_t` - 纹理宽度(像素) - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -D3D12Texture texture; -texture.Initialize(device, desc); -uint32_t width = texture.GetWidth(); -``` - -## 相关文档 - -- [D3D12Texture 总览](texture.md) -- [GetHeight](get-height.md) - 获取纹理高度 -- [GetDepth](get-depth.md) - 获取纹理深度 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/texture/initialize-depth-stencil.md b/docs/api/rhi/d3d12/texture/initialize-depth-stencil.md deleted file mode 100644 index d454283c..00000000 --- a/docs/api/rhi/d3d12/texture/initialize-depth-stencil.md +++ /dev/null @@ -1,38 +0,0 @@ -# D3D12Texture::InitializeDepthStencil - -## 函数签名 - -```cpp -bool InitializeDepthStencil(ID3D12Device* device, uint32_t width, uint32_t height, DXGI_FORMAT format = DXGI_FORMAT_D24_UNORM_S8_UINT) -``` - -## 中文描述 - -初始化深度模板纹理。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `device` | `ID3D12Device*` | D3D12 设备指针 | -| `width` | `uint32_t` | 纹理宽度 | -| `height` | `uint32_t` | 纹理高度 | -| `format` | `DXGI_FORMAT` | 深度格式(默认 D24_UNORM_S8_UINT) | - -## 返回值 - -`bool` - 初始化是否成功 - -## 复杂度 - -O(n) - 取决于纹理大小 - -## 示例 - -```cpp -texture->InitializeDepthStencil(device, 1920, 1080); -``` - -## 相关文档 - -- [D3D12Texture](texture.md) - 类总览 diff --git a/docs/api/rhi/d3d12/texture/initialize-from-data.md b/docs/api/rhi/d3d12/texture/initialize-from-data.md deleted file mode 100644 index 393ddce6..00000000 --- a/docs/api/rhi/d3d12/texture/initialize-from-data.md +++ /dev/null @@ -1,42 +0,0 @@ -# D3D12Texture::InitializeFromData - -## 函数签名 - -```cpp -bool InitializeFromData(ID3D12Device* device, ID3D12GraphicsCommandList* commandList, - const void* pixelData, uint32_t width, uint32_t height, DXGI_FORMAT format) -``` - -## 中文描述 - -从像素数据初始化纹理,内部会创建上传堆并复制数据。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `device` | `ID3D12Device*` | D3D12 设备指针 | -| `commandList` | `ID3D12GraphicsCommandList*` | 命令列表指针 | -| `pixelData` | `const void*` | 像素数据指针 | -| `width` | `uint32_t` | 纹理宽度 | -| `height` | `uint32_t` | 纹理高度 | -| `format` | `DXGI_FORMAT` | 像素格式 | - -## 返回值 - -`bool` - 初始化是否成功 - -## 复杂度 - -O(n) - 取决于纹理大小,内部创建临时上传堆 - -## 示例 - -```cpp -std::vector pixels = LoadImage("texture.png"); -texture->InitializeFromData(device, cmdList, pixels.data(), width, height, DXGI_FORMAT_R8G8B8A8_UNORM); -``` - -## 相关文档 - -- [D3D12Texture](texture.md) - 类总览 diff --git a/docs/api/rhi/d3d12/texture/initialize-from-existing.md b/docs/api/rhi/d3d12/texture/initialize-from-existing.md deleted file mode 100644 index 9b812f94..00000000 --- a/docs/api/rhi/d3d12/texture/initialize-from-existing.md +++ /dev/null @@ -1,50 +0,0 @@ -# D3D12Texture::InitializeFromExisting - -## 函数签名 - -```cpp -bool InitializeFromExisting(ID3D12Resource* resource); -``` - -## 中文描述 - -从已存在的 D3D12 纹理资源初始化纹理包装类,不分配新资源。此方法用于包装外部创建的纹理资源,例如从文件系统加载的纹理或与其他 API 共享的资源。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `resource` | `ID3D12Resource*` | 已存在的 D3D12 纹理资源指针,不能为 nullptr | - -## 返回值 - -`bool` - 初始化是否成功。如果 `resource` 为 nullptr,返回 false。 - -## 线程安全 - -非线程安全,请确保在单线程环境中调用。 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -ComPtr externalResource; -// 外部创建或获取的 D3D12 资源 -device->CreateReservedResource(&desc, initialState, nullptr, IID_PPV_ARGS(&externalResource)); - -D3D12Texture texture; -if (texture.InitializeFromExisting(externalResource.Get())) { - // 成功包装外部资源 - // 注意:外部资源的管理责任保持不变 -} -``` - -## 相关文档 - -- [D3D12Texture](texture.md) - 类总览 -- [Initialize](initialize.md) - 创建新纹理 -- [InitializeFromData](initialize-from-data.md) - 从数据初始化 -- [InitializeDepthStencil](initialize-depth-stencil.md) - 初始化深度模板纹理 diff --git a/docs/api/rhi/d3d12/texture/initialize.md b/docs/api/rhi/d3d12/texture/initialize.md deleted file mode 100644 index d01a963c..00000000 --- a/docs/api/rhi/d3d12/texture/initialize.md +++ /dev/null @@ -1,49 +0,0 @@ -# D3D12Texture::Initialize - -## 函数签名 - -```cpp -bool Initialize(ID3D12Device* device, const D3D12_RESOURCE_DESC& desc, D3D12_RESOURCE_STATES initialState = D3D12_RESOURCE_STATE_COMMON) -``` - -## 中文描述 - -分配并初始化一个 D3D12 纹理资源。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `device` | `ID3D12Device*` | D3D12 设备指针 | -| `desc` | `const D3D12_RESOURCE_DESC&` | 纹理资源描述符 | -| `initialState` | `D3D12_RESOURCE_STATES` | 初始资源状态(默认 D3D12_RESOURCE_STATE_COMMON) | - -## 返回值 - -`bool` - 初始化是否成功 - -## 复杂度 - -O(n) - 取决于纹理大小 - -## 示例 - -```cpp -D3D12_RESOURCE_DESC desc = {}; -desc.Dimension = D3D12_RESOURCE_DIMENSION_TEXTURE2D; -desc.Width = 1920; -desc.Height = 1080; -desc.Format = DXGI_FORMAT_R8G8B8A8_UNORM; -desc.Flags = D3D12_RESOURCE_FLAG_NONE; - -D3D12Texture texture; -if (texture.Initialize(device, desc)) { - // 纹理初始化成功 -} -``` - -## 相关文档 - -- [D3D12Texture](texture.md) - 类总览 -- [InitializeFromData](initialize-from-data.md) - 从数据初始化 -- [InitializeDepthStencil](initialize-depth-stencil.md) - 初始化深度模板纹理 diff --git a/docs/api/rhi/d3d12/texture/owns-resource.md b/docs/api/rhi/d3d12/texture/owns-resource.md deleted file mode 100644 index f92554f8..00000000 --- a/docs/api/rhi/d3d12/texture/owns-resource.md +++ /dev/null @@ -1,33 +0,0 @@ -# D3D12Texture::OwnsResource - -检查是否拥有资源所有权。 - -```cpp -bool OwnsResource() const; -``` - -## 参数 - -无 - -## 返回值 - -`bool` - 如果拥有资源所有权返回 true,否则返回 false - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -D3D12Texture texture; -texture.Initialize(device, desc); -if (texture.OwnsResource()) { - // 纹理拥有资源所有权,需要负责释放 -} -``` - -## 相关文档 - -- [D3D12Texture 总览](texture.md) \ No newline at end of file diff --git a/docs/api/rhi/d3d12/texture/set-name.md b/docs/api/rhi/d3d12/texture/set-name.md deleted file mode 100644 index a7a93e68..00000000 --- a/docs/api/rhi/d3d12/texture/set-name.md +++ /dev/null @@ -1,32 +0,0 @@ -# D3D12Texture::SetName - -设置纹理名称。 - -```cpp -void SetName(const std::string& name) override; -``` - -## 参数 - -- `name` - 纹理名称 - -## 返回值 - -无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -D3D12Texture texture; -texture.Initialize(device, desc); -texture.SetName(L"MyTexture"); -``` - -## 相关文档 - -- [D3D12Texture 总览](texture.md) -- [GetName](get-name.md) - 获取纹理名称 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/texture/set-state.md b/docs/api/rhi/d3d12/texture/set-state.md deleted file mode 100644 index bd9a7170..00000000 --- a/docs/api/rhi/d3d12/texture/set-state.md +++ /dev/null @@ -1,32 +0,0 @@ -# D3D12Texture::SetState - -设置资源状态。 - -```cpp -void SetState(ResourceStates state) override; -``` - -## 参数 - -- `state` - 新的资源状态 - -## 返回值 - -无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -## 示例 - -```cpp -D3D12Texture texture; -texture.Initialize(device, desc); -texture.SetState(ResourceStates::RenderTarget); -``` - -## 相关文档 - -- [D3D12Texture 总览](texture.md) -- [GetState](get-state.md) - 获取资源状态 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/texture/shutdown.md b/docs/api/rhi/d3d12/texture/shutdown.md deleted file mode 100644 index 7d005933..00000000 --- a/docs/api/rhi/d3d12/texture/shutdown.md +++ /dev/null @@ -1,33 +0,0 @@ -# D3D12Texture::Shutdown - -关闭并释放纹理资源。 - -```cpp -void Shutdown() override; -``` - -## 参数 - -无 - -## 返回值 - -无 - -**线程安全:** ❌ - -**复杂度:** O(n) - -## 示例 - -```cpp -D3D12Texture texture; -texture.Initialize(device, desc); -// 使用纹理... -texture.Shutdown(); -``` - -## 相关文档 - -- [D3D12Texture 总览](texture.md) -- [Initialize](initialize.md) - 初始化纹理 \ No newline at end of file diff --git a/docs/api/rhi/d3d12/texture/texture.md b/docs/api/rhi/d3d12/texture/texture.md deleted file mode 100644 index 3226b383..00000000 --- a/docs/api/rhi/d3d12/texture/texture.md +++ /dev/null @@ -1,38 +0,0 @@ -# D3D12Texture - -**命名空间**: `XCEngine::RHI` - -**描述**: DirectX 12 纹理的 D3D12 实现,继承自 `RHITexture`。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`D3D12Texture`](constructor.md) | 默认构造函数 | -| [`~D3D12Texture`](destructor.md) | 析构函数 | -| [`Initialize`](initialize.md) | 初始化纹理 | -| [`InitializeFromExisting`](initialize-from-existing.md) | 从现有资源初始化 | -| [`InitializeFromData`](initialize-from-data.md) | 从数据初始化纹理 | -| [`InitializeDepthStencil`](initialize-depth-stencil.md) | 初始化深度模板纹理 | -| [`Shutdown`](../../texture/shutdown.md) | 关闭纹理 | -| [`GetResource`](../buffer/get-resource.md) | 获取 D3D12 资源 | -| [`GetDesc`](../buffer/get-desc.md) | 获取纹理描述符 | -| [`GetWidth`](../../texture/get-width.md) | 获取纹理宽度 | -| [`GetHeight`](../../texture/get-height.md) | 获取纹理高度 | -| [`GetDepth`](../../texture/get-depth.md) | 获取纹理深度 | -| [`GetMipLevels`](../../texture/get-mip-levels.md) | 获取 Mip 级别 | -| [`GetArraySize`](get-array-size.md) | 获取数组大小 | -| [`GetGPUAddress`](../buffer/get-gpu-address.md) | 获取 GPU 地址 | -| [`GetSize`](get-size.md) | 获取纹理大小 | -| [`GetName`](../../texture/get-name.md) | 获取纹理名称 | -| [`SetName`](../../texture/set-name.md) | 设置纹理名称 | -| [`GetFormat`](../../texture/get-format.md) | 获取纹理格式 | -| [`GetTextureType`](../../texture/get-texture-type.md) | 获取纹理类型 | -| [`GetState`](../../texture/get-state.md) | 获取资源状态 | -| [`SetState`](../../texture/set-state.md) | 设置资源状态 | -| [`GetNativeHandle`](../../texture/get-native-handle.md) | 获取原生句柄 | - -## 相关文档 - -- [D3D12 后端概览](../d3d12.md) -- [RHITexture](../../texture/texture.md) - 抽象纹理接口 diff --git a/docs/api/rhi/d3d12/types/to-d3d12-buffer-desc.md b/docs/api/rhi/d3d12/types/to-d3d12-buffer-desc.md deleted file mode 100644 index f5e09f42..00000000 --- a/docs/api/rhi/d3d12/types/to-d3d12-buffer-desc.md +++ /dev/null @@ -1,36 +0,0 @@ -# ToD3D12(BufferDesc) - -## 函数签名 - -```cpp -inline D3D12_RESOURCE_DESC ToD3D12(const BufferDesc& desc) -``` - -## 中文描述 - -将 RHI BufferDesc 转换为 D3D12_RESOURCE_DESC。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `desc` | `const BufferDesc&` | RHI 缓冲区描述引用 | - -## 返回值 - -`D3D12_RESOURCE_DESC` - D3D12 资源描述结构 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -BufferDesc bd = { 1024 }; -D3D12_RESOURCE_DESC d3d12Desc = ToD3D12(bd); -``` - -## 相关文档 - -- [D3D12Types](types.md) - 类型总览 diff --git a/docs/api/rhi/d3d12/types/to-d3d12-clear-value.md b/docs/api/rhi/d3d12/types/to-d3d12-clear-value.md deleted file mode 100644 index c46bd790..00000000 --- a/docs/api/rhi/d3d12/types/to-d3d12-clear-value.md +++ /dev/null @@ -1,37 +0,0 @@ -# ToD3D12(ClearValue) - -## 函数签名 - -```cpp -inline D3D12_CLEAR_VALUE ToD3D12(const ClearValue& clearValue, D3D12_RESOURCE_FLAGS flags = D3D12_RESOURCE_FLAG_NONE) -``` - -## 中文描述 - -将 RHI ClearValue 转换为 D3D12_CLEAR_VALUE。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `clearValue` | `const ClearValue&` | RHI ClearValue 引用 | -| `flags` | `D3D12_RESOURCE_FLAGS` | 资源标志(默认 NONE) | - -## 返回值 - -`D3D12_CLEAR_VALUE` - D3D12 清除值结构 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -ClearValue cv = { { 0.0f, 0.0f, 0.0f, 1.0f } }; -D3D12_CLEAR_VALUE d3d12CV = ToD3D12(cv); -``` - -## 相关文档 - -- [D3D12Types](types.md) - 类型总览 diff --git a/docs/api/rhi/d3d12/types/to-d3d12-command-queue-desc.md b/docs/api/rhi/d3d12/types/to-d3d12-command-queue-desc.md deleted file mode 100644 index 4803e3ad..00000000 --- a/docs/api/rhi/d3d12/types/to-d3d12-command-queue-desc.md +++ /dev/null @@ -1,36 +0,0 @@ -# ToD3D12(CommandQueueDesc) - -## 函数签名 - -```cpp -inline D3D12_COMMAND_QUEUE_DESC ToD3D12(const CommandQueueDesc& desc) -``` - -## 中文描述 - -将 RHI CommandQueueDesc 转换为 D3D12_COMMAND_QUEUE_DESC。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `desc` | `const CommandQueueDesc&` | RHI 命令队列描述引用 | - -## 返回值 - -`D3D12_COMMAND_QUEUE_DESC` - D3D12 命令队列描述结构 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -CommandQueueDesc cqd = { CommandQueueType::Graphics }; -D3D12_COMMAND_QUEUE_DESC d3d12Desc = ToD3D12(cqd); -``` - -## 相关文档 - -- [D3D12Types](types.md) - 类型总览 diff --git a/docs/api/rhi/d3d12/types/to-d3d12-depth-stencil.md b/docs/api/rhi/d3d12/types/to-d3d12-depth-stencil.md deleted file mode 100644 index 80b8085c..00000000 --- a/docs/api/rhi/d3d12/types/to-d3d12-depth-stencil.md +++ /dev/null @@ -1,37 +0,0 @@ -# ToD3D12DepthStencil - -## 函数签名 - -```cpp -inline D3D12_CLEAR_VALUE ToD3D12DepthStencil(const ClearValue& clearValue, DXGI_FORMAT format) -``` - -## 中文描述 - -将 RHI ClearValue 转换为 D3D12 深度模板清除值。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `clearValue` | `const ClearValue&` | RHI ClearValue 引用 | -| `format` | `DXGI_FORMAT` | 深度格式 | - -## 返回值 - -`D3D12_CLEAR_VALUE` - D3D12 清除值结构 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -ClearValue cv = { 1.0f, 0 }; -D3D12_CLEAR_VALUE d3d12CV = ToD3D12DepthStencil(cv, DXGI_FORMAT_D24_UNORM_S8_UINT); -``` - -## 相关文档 - -- [D3D12Types](types.md) - 类型总览 diff --git a/docs/api/rhi/d3d12/types/to-d3d12-descriptor-heap-desc.md b/docs/api/rhi/d3d12/types/to-d3d12-descriptor-heap-desc.md deleted file mode 100644 index 1eb2baea..00000000 --- a/docs/api/rhi/d3d12/types/to-d3d12-descriptor-heap-desc.md +++ /dev/null @@ -1,36 +0,0 @@ -# ToD3D12(DescriptorHeapDesc) - -## 函数签名 - -```cpp -inline D3D12_DESCRIPTOR_HEAP_DESC ToD3D12(const DescriptorHeapDesc& desc) -``` - -## 中文描述 - -将 RHI DescriptorHeapDesc 转换为 D3D12_DESCRIPTOR_HEAP_DESC。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `desc` | `const DescriptorHeapDesc&` | RHI 描述符堆描述引用 | - -## 返回值 - -`D3D12_DESCRIPTOR_HEAP_DESC` - D3D12 描述符堆描述结构 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -DescriptorHeapDesc dhd = { DescriptorHeapType::CBV_SRV_UAV, 100 }; -D3D12_DESCRIPTOR_HEAP_DESC d3d12Desc = ToD3D12(dhd); -``` - -## 相关文档 - -- [D3D12Types](types.md) - 类型总览 diff --git a/docs/api/rhi/d3d12/types/to-d3d12-heap-properties.md b/docs/api/rhi/d3d12/types/to-d3d12-heap-properties.md deleted file mode 100644 index ec0a02a8..00000000 --- a/docs/api/rhi/d3d12/types/to-d3d12-heap-properties.md +++ /dev/null @@ -1,36 +0,0 @@ -# ToD3D12HeapProperties - -## 函数签名 - -```cpp -inline D3D12_HEAP_PROPERTIES ToD3D12HeapProperties(D3D12_HEAP_TYPE heapType, UINT nodeMask = 0) -``` - -## 中文描述 - -将 D3D12_HEAP_TYPE 转换为 D3D12_HEAP_PROPERTIES。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `heapType` | `D3D12_HEAP_TYPE` | D3D12 堆类型 | -| `nodeMask` | `UINT` | 节点掩码(默认 0) | - -## 返回值 - -`D3D12_HEAP_PROPERTIES` - D3D12 堆属性结构 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12_HEAP_PROPERTIES props = ToD3D12HeapProperties(D3D12_HEAP_TYPE_DEFAULT); -``` - -## 相关文档 - -- [D3D12Types](types.md) - 类型总览 diff --git a/docs/api/rhi/d3d12/types/to-d3d12-rect.md b/docs/api/rhi/d3d12/types/to-d3d12-rect.md deleted file mode 100644 index 9eb004ec..00000000 --- a/docs/api/rhi/d3d12/types/to-d3d12-rect.md +++ /dev/null @@ -1,36 +0,0 @@ -# ToD3D12(Rect) - -## 函数签名 - -```cpp -inline D3D12_RECT ToD3D12(const Rect& rect) -``` - -## 中文描述 - -将 RHI Rect 转换为 D3D12_RECT。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `rect` | `const Rect&` | RHI Rect 引用 | - -## 返回值 - -`D3D12_RECT` - D3D12 矩形结构 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -Rect r = { 0, 0, 1920, 1080 }; -D3D12_RECT d3d12Rect = ToD3D12(r); -``` - -## 相关文档 - -- [D3D12Types](types.md) - 类型总览 diff --git a/docs/api/rhi/d3d12/types/to-d3d12-texture-desc.md b/docs/api/rhi/d3d12/types/to-d3d12-texture-desc.md deleted file mode 100644 index 4d059a69..00000000 --- a/docs/api/rhi/d3d12/types/to-d3d12-texture-desc.md +++ /dev/null @@ -1,36 +0,0 @@ -# ToD3D12(TextureDesc) - -## 函数签名 - -```cpp -inline D3D12_RESOURCE_DESC ToD3D12(const TextureDesc& desc) -``` - -## 中文描述 - -将 RHI TextureDesc 转换为 D3D12_RESOURCE_DESC。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `desc` | `const TextureDesc&` | RHI 纹理描述引用 | - -## 返回值 - -`D3D12_RESOURCE_DESC` - D3D12 资源描述结构 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -TextureDesc td = { TextureType::Texture2D, 1920, 1080, 1, Format::R8G8B8A8_UNorm }; -D3D12_RESOURCE_DESC d3d12Desc = ToD3D12(td); -``` - -## 相关文档 - -- [D3D12Types](types.md) - 类型总览 diff --git a/docs/api/rhi/d3d12/types/to-d3d12-viewport.md b/docs/api/rhi/d3d12/types/to-d3d12-viewport.md deleted file mode 100644 index 95a53026..00000000 --- a/docs/api/rhi/d3d12/types/to-d3d12-viewport.md +++ /dev/null @@ -1,36 +0,0 @@ -# ToD3D12(Viewport) - -## 函数签名 - -```cpp -inline D3D12_VIEWPORT ToD3D12(const Viewport& vp) -``` - -## 中文描述 - -将 RHI Viewport 转换为 D3D12_VIEWPORT。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `vp` | `const Viewport&` | RHI Viewport 引用 | - -## 返回值 - -`D3D12_VIEWPORT` - D3D12 视口结构 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -Viewport vp = { 0, 0, 1920, 1080, 0.0f, 1.0f }; -D3D12_VIEWPORT d3d12Vp = ToD3D12(vp); -``` - -## 相关文档 - -- [D3D12Types](types.md) - 类型总览 diff --git a/docs/api/rhi/d3d12/types/types.md b/docs/api/rhi/d3d12/types/types.md deleted file mode 100644 index 26d4d396..00000000 --- a/docs/api/rhi/d3d12/types/types.md +++ /dev/null @@ -1,24 +0,0 @@ -# D3D12Types - -**命名空间**: `XCEngine::RHI` - -**描述**: D3D12 类型转换和辅助函数集合,提供 RHI 抽象类型到 D3D12 类型的转换。**所有函数均为 inline 函数**。 - -## 转换函数列表 - -| 函数 | 文档 | -|------|------| -| `ToD3D12(Viewport)` | [详细文档](to-d3d12-viewport.md) | -| `ToD3D12(Rect)` | [详细文档](to-d3d12-rect.md) | -| `ToD3D12(ClearValue)` | [详细文档](to-d3d12-clear-value.md) | -| `ToD3D12DepthStencil` | [详细文档](to-d3d12-depth-stencil.md) | -| `ToD3D12(TextureDesc)` | [详细文档](to-d3d12-texture-desc.md) | -| `ToD3D12(BufferDesc)` | [详细文档](to-d3d12-buffer-desc.md) | -| `ToD3D12(DescriptorHeapDesc)` | [详细文档](to-d3d12-descriptor-heap-desc.md) | -| `ToD3D12(CommandQueueDesc)` | [详细文档](to-d3d12-command-queue-desc.md) | -| `ToD3D12HeapProperties` | [详细文档](to-d3d12-heap-properties.md) | - -## 相关文档 - -- [D3D12 后端总览](../d3d12.md) -- [D3D12Enums](../enums/enums.md) - 枚举值转换 diff --git a/docs/api/rhi/d3d12/unordered-access-view/constructor.md b/docs/api/rhi/d3d12/unordered-access-view/constructor.md deleted file mode 100644 index 7904f18c..00000000 --- a/docs/api/rhi/d3d12/unordered-access-view/constructor.md +++ /dev/null @@ -1,22 +0,0 @@ -# D3D12UnorderedAccessView::D3D12UnorderedAccessView - -## 函数签名 - -```cpp -D3D12UnorderedAccessView(); -``` - -## 中文描述 - -构造一个空的 `D3D12UnorderedAccessView` 对象。 - -## 示例 - -```cpp -D3D12UnorderedAccessView uav; -``` - -## 相关文档 - -- [D3D12UnorderedAccessView](unordered-access-view.md) - 类总览 -- [Initialize](initialize.md) - 初始化方法 diff --git a/docs/api/rhi/d3d12/unordered-access-view/destructor.md b/docs/api/rhi/d3d12/unordered-access-view/destructor.md deleted file mode 100644 index 92571ea6..00000000 --- a/docs/api/rhi/d3d12/unordered-access-view/destructor.md +++ /dev/null @@ -1,16 +0,0 @@ -# D3D12UnorderedAccessView::~D3D12UnorderedAccessView - -## 函数签名 - -```cpp -~D3D12UnorderedAccessView(); -``` - -## 中文描述 - -销毁 `D3D12UnorderedAccessView` 对象,自动调用 `Shutdown`。 - -## 相关文档 - -- [D3D12UnorderedAccessView](unordered-access-view.md) - 类总览 -- [Shutdown](shutdown.md) - 关闭方法 diff --git a/docs/api/rhi/d3d12/unordered-access-view/get-cpu-descriptor-handle.md b/docs/api/rhi/d3d12/unordered-access-view/get-cpu-descriptor-handle.md deleted file mode 100644 index 84603588..00000000 --- a/docs/api/rhi/d3d12/unordered-access-view/get-cpu-descriptor-handle.md +++ /dev/null @@ -1,31 +0,0 @@ -# D3D12UnorderedAccessView::GetCPUDescriptorHandle - -## 函数签名 - -```cpp -D3D12_CPU_DESCRIPTOR_HANDLE GetCPUDescriptorHandle() const -``` - -## 中文描述 - -获取无序访问视图的 CPU 描述符句柄。 - -## 返回值 - -`D3D12_CPU_DESCRIPTOR_HANDLE` - CPU 描述符句柄 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -D3D12UnorderedAccessView uav; -uav.Initialize(device, resource); -D3D12_CPU_DESCRIPTOR_HANDLE handle = uav.GetCPUDescriptorHandle(); -``` - -## 相关文档 - -- [D3D12UnorderedAccessView](unordered-access-view.md) - 类总览 diff --git a/docs/api/rhi/d3d12/unordered-access-view/index.md b/docs/api/rhi/d3d12/unordered-access-view/index.md deleted file mode 100644 index fcc6c468..00000000 --- a/docs/api/rhi/d3d12/unordered-access-view/index.md +++ /dev/null @@ -1,60 +0,0 @@ -# D3D12UnorderedAccessView - -## 命名空间 - -`XCEngine::RHI` - -## 类型 - -类 (Class) - -## 描述 - -D3D12 无序访问视图 (Unordered Access View, UAV) 封装类,用于在 D3D12 渲染管线中提供对资源的无序读/写访问能力。UAV 允许着色器对资源进行非同步访问,适用于并行计算和延迟渲染等场景。 - -## 概述 - -`D3D12UnorderedAccessView` 封装了 D3D12 UAV 的创建和生命周期管理。UAV 是一种可以同时被 GPU 读取和写入的资源视图,常见用途包括: - -- 计算着色器 (Compute Shader) 的数据存储 -- 延迟渲染中的光照参数存储 -- 粒子系统的位置/速度数据 -- 纹理流式传输缓冲 - -## 公共方法表格 - -| 方法 | 签名 | 描述 | -|------|------|------| -| `Initialize` | `void Initialize(ID3D12Device* device, ID3D12Resource* resource, const D3D12_UNORDERED_ACCESS_VIEW_DESC* desc = nullptr)` | 初始化 UAV,创建 D3D12 无序访问视图 | -| `Shutdown` | `void Shutdown()` | 释放 UAV 相关资源 | -| `GetCPUDescriptorHandle` | `D3D12_CPU_DESCRIPTOR_HANDLE GetCPUDescriptorHandle() const` | 获取 CPU 端的描述符句柄 | - -## 使用示例 - -```cpp -#include "XCEngine/RHI/D3D12/D3D12UnorderedAccessView.h" -#include "XCEngine/RHI/D3D12/D3D12Device.h" - -// 创建设备和资源后... -D3D12Device* device = ...; -ID3D12Resource* bufferResource = ...; - -// 创建无序访问视图 -XCEngine::RHI::D3D12UnorderedAccessView uav; -uav.Initialize(device->GetDevice(), bufferResource, nullptr); - -// 在命令列表中设置 UAV -commandList->SetComputeRootUnorderedAccessView( - parameterIndex, - uav.GetCPUDescriptorHandle() -); - -// 使用完毕后清理 -uav.Shutdown(); -``` - -## 相关文档 - -- [D3D12ShaderResourceView](../shader-resource-view/) -- [D3D12RenderTargetView](../render-target-view/) -- [D3D12ConstantBufferView](../constant-buffer-view/) diff --git a/docs/api/rhi/d3d12/unordered-access-view/initialize.md b/docs/api/rhi/d3d12/unordered-access-view/initialize.md deleted file mode 100644 index c551ab92..00000000 --- a/docs/api/rhi/d3d12/unordered-access-view/initialize.md +++ /dev/null @@ -1,39 +0,0 @@ -# D3D12UnorderedAccessView::Initialize - -## 函数签名 - -```cpp -void Initialize( - ID3D12Device* device, - ID3D12Resource* resource, - const D3D12_UNORDERED_ACCESS_VIEW_DESC* desc = nullptr -); -``` - -## 中文描述 - -初始化无序访问视图。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `device` | `ID3D12Device*` | D3D12 设备指针 | -| `resource` | `ID3D12Resource*` | D3D12 资源指针 | -| `desc` | `const D3D12_UNORDERED_ACCESS_VIEW_DESC*` | UAV 描述符,可选 | - -## 返回值 - -无 - -## 示例 - -```cpp -D3D12UnorderedAccessView uav; -uav.Initialize(device, resource, &uavDesc); -``` - -## 相关文档 - -- [D3D12UnorderedAccessView](unordered-access-view.md) - 类总览 -- [Shutdown](shutdown.md) - 关闭方法 diff --git a/docs/api/rhi/d3d12/unordered-access-view/shutdown.md b/docs/api/rhi/d3d12/unordered-access-view/shutdown.md deleted file mode 100644 index eaff5746..00000000 --- a/docs/api/rhi/d3d12/unordered-access-view/shutdown.md +++ /dev/null @@ -1,28 +0,0 @@ -# D3D12UnorderedAccessView::Shutdown - -## 函数签名 - -```cpp -void Shutdown(); -``` - -## 中文描述 - -关闭无序访问视图,释放相关资源。 - -## 返回值 - -无 - -## 示例 - -```cpp -D3D12UnorderedAccessView uav; -uav.Initialize(device, resource); -uav.Shutdown(); -``` - -## 相关文档 - -- [D3D12UnorderedAccessView](unordered-access-view.md) - 类总览 -- [Initialize](initialize.md) - 初始化方法 diff --git a/docs/api/rhi/d3d12/unordered-access-view/unordered-access-view.md b/docs/api/rhi/d3d12/unordered-access-view/unordered-access-view.md deleted file mode 100644 index 26c6e5d7..00000000 --- a/docs/api/rhi/d3d12/unordered-access-view/unordered-access-view.md +++ /dev/null @@ -1,21 +0,0 @@ -# D3D12UnorderedAccessView - -**命名空间**: `XCEngine::RHI` - -**描述**: DirectX 12 无序访问视图 (Unordered Access View, UAV) 的 D3D12 实现封装类。UAV 允许着色器对资源进行非同步的读写访问,主要用于计算着色器和延迟渲染场景。 - -此类管理 D3D12 UAV 的创建和生命周期,封装了 `ID3D12Resource` 和 CPU 描述符句柄。 - -## 公共方法 - -| 方法 | 签名 | 描述 | -|------|------|------| -| [`D3D12UnorderedAccessView`](constructor.md) | `D3D12UnorderedAccessView()` | 默认构造函数 | -| [`~D3D12UnorderedAccessView`](destructor.md) | `~D3D12UnorderedAccessView()` | 析构函数 | -| [`Initialize`](initialize.md) | `void Initialize(ID3D12Device* device, ID3D12Resource* resource, const D3D12_UNORDERED_ACCESS_VIEW_DESC* desc = nullptr)` | 初始化 UAV | -| [`Shutdown`](shutdown.md) | `void Shutdown()` | 释放 UAV 资源 | -| [`GetCPUDescriptorHandle`](get-cpu-descriptor-handle.md) | `D3D12_CPU_DESCRIPTOR_HANDLE GetCPUDescriptorHandle() const` | 获取 CPU 描述符句柄 | - -## 相关文档 - -- [D3D12 后端总览](../d3d12.md) diff --git a/docs/api/rhi/descriptor-pool/descriptor-pool.md b/docs/api/rhi/descriptor-pool/descriptor-pool.md deleted file mode 100644 index 7f73061c..00000000 --- a/docs/api/rhi/descriptor-pool/descriptor-pool.md +++ /dev/null @@ -1,52 +0,0 @@ -# RHIDescriptorPool - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` (abstract) - -**头文件**: `XCEngine/RHI/RHIDescriptorPool.h` - -**描述**: GPU 描述符堆池抽象接口,用于管理 GPU 描述符的分配和回收。 - -## 概述 - -`RHIDescriptorPool` 是 RHI 模块中的抽象类,提供 GPU 描述符堆的统一接口。描述符堆用于存储 GPU 资源视图(如常量缓冲区视图、着色器资源视图、采样器等)。该类管理描述符的分配和回收,支持着色器可见性配置。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`~RHIDescriptorPool`](destructor.md) | 虚析构函数 | -| [`Initialize`](initialize.md) | 初始化描述符池 | -| [`Shutdown`](shutdown.md) | 关闭并释放资源 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | -| [`GetDescriptorCount`](get-descriptor-count.md) | 获取描述符数量 | -| [`GetType`](get-type.md) | 获取描述符类型 | - -## 使用示例 - -```cpp -// 创建描述符池 -DescriptorPoolDesc desc; -desc.device = device; -desc.type = DescriptorHeapType::CBV_SRV_UAV; -desc.descriptorCount = 256; -desc.shaderVisible = true; - -RHIDescriptorPool* pool = yourFactory->CreateDescriptorPool(); -if (pool->Initialize(desc)) { - // 获取描述符数量 - uint32_t count = pool->GetDescriptorCount(); - - // 获取原生句柄 - void* handle = pool->GetNativeHandle(); - - // 使用完后关闭 - pool->Shutdown(); -} -delete pool; -``` - -## 相关文档 - -- [RHI 模块总览](../rhi.md) - RHI 模块总览 diff --git a/docs/api/rhi/descriptor-pool/destructor.md b/docs/api/rhi/descriptor-pool/destructor.md deleted file mode 100644 index afe49a1c..00000000 --- a/docs/api/rhi/descriptor-pool/destructor.md +++ /dev/null @@ -1,33 +0,0 @@ -# RHIDescriptorPool::~RHIDescriptorPool - -```cpp -virtual ~RHIDescriptorPool() = default; -``` - -虚析构函数,确保派生类对象能被正确销毁。 - -## 详细描述 - -析构函数是虚函数,允许通过基类指针正确删除派生类对象。在销毁描述符池前,应确保已经调用 [`Shutdown`](shutdown.md) 释放资源。 - -## 参数列表 - -无参数。 - -## 返回值 - -无返回值。 - -## 示例代码 - -```cpp -// 通过基类指针销毁派生类对象 -RHIDescriptorPool* pool = factory->CreateDescriptorPool(); -// ... 使用 pool -delete pool; // 正确调用析构函数 -``` - -## 相关文档 - -- [RHIDescriptorPool 总览](descriptor-pool.md) - 返回类总览 -- [Shutdown](shutdown.md) - 关闭描述符池 diff --git a/docs/api/rhi/descriptor-pool/get-descriptor-count.md b/docs/api/rhi/descriptor-pool/get-descriptor-count.md deleted file mode 100644 index 98e40393..00000000 --- a/docs/api/rhi/descriptor-pool/get-descriptor-count.md +++ /dev/null @@ -1,28 +0,0 @@ -# RHIDescriptorPool::GetDescriptorCount - -```cpp -virtual uint32_t GetDescriptorCount() const = 0; -``` - -获取描述符数量。 - -## 参数列表 - -无参数。 - -## 返回值 - -`uint32_t` - 描述符池中的描述符数量 - -## 示例代码 - -```cpp -uint32_t count = descriptorPool->GetDescriptorCount(); -``` - -## 相关文档 - -- [RHIDescriptorPool 总览](descriptor-pool.md) - 返回类总览 -- [Initialize](initialize.md) - 初始化描述符池 -- [Shutdown](shutdown.md) - 关闭描述符池 -- [GetType](get-type.md) - 获取描述符类型 diff --git a/docs/api/rhi/descriptor-pool/get-native-handle.md b/docs/api/rhi/descriptor-pool/get-native-handle.md deleted file mode 100644 index 50a5b849..00000000 --- a/docs/api/rhi/descriptor-pool/get-native-handle.md +++ /dev/null @@ -1,34 +0,0 @@ -# RHIDescriptorPool::GetNativeHandle - -获取描述符池的原生 API 句柄。 - -## 方法签名 - -```cpp -virtual void* GetNativeHandle() = 0; -``` - -## 详细描述 - -返回描述符池在底层图形 API(DirectX 12/Vulkan)中的原生句柄。用于与原生 API 进行交互。 - -## 参数列表 - -无参数。 - -## 返回值 - -`void*` - 原生 API 句柄指针。DirectX 12 下为 `ID3D12DescriptorHeap*`,Vulkan 下为 `VkDescriptorPool` - -## 示例代码 - -```cpp -void* handle = descriptorPool->GetNativeHandle(); -// 使用原生句柄进行 API 特定操作 -``` - -## 相关文档 - -- [RHIDescriptorPool 总览](descriptor-pool.md) - 返回类总览 -- [GetDescriptorCount](get-descriptor-count.md) - 获取描述符数量 -- [GetType](get-type.md) - 获取描述符类型 diff --git a/docs/api/rhi/descriptor-pool/get-type.md b/docs/api/rhi/descriptor-pool/get-type.md deleted file mode 100644 index 1452e166..00000000 --- a/docs/api/rhi/descriptor-pool/get-type.md +++ /dev/null @@ -1,36 +0,0 @@ -# RHIDescriptorPool::GetType - -获取描述符堆类型。 - -## 方法签名 - -```cpp -virtual DescriptorHeapType GetType() const = 0; -``` - -## 详细描述 - -返回描述符池所管理的描述符堆类型。类型决定了这个池可以分配哪些类型的描述符。 - -## 参数列表 - -无参数。 - -## 返回值 - -`DescriptorHeapType` - 描述符堆类型枚举值 - -## 示例代码 - -```cpp -DescriptorHeapType type = descriptorPool->GetType(); -if (type == DescriptorHeapType::CBV_SRV_UAV) { - // 处理 CBV/SRV/UAV 描述符 -} -``` - -## 相关文档 - -- [RHIDescriptorPool 总览](descriptor-pool.md) - 返回类总览 -- [GetNativeHandle](get-native-handle.md) - 获取原生句柄 -- [GetDescriptorCount](get-descriptor-count.md) - 获取描述符数量 diff --git a/docs/api/rhi/descriptor-pool/initialize.md b/docs/api/rhi/descriptor-pool/initialize.md deleted file mode 100644 index faaea991..00000000 --- a/docs/api/rhi/descriptor-pool/initialize.md +++ /dev/null @@ -1,45 +0,0 @@ -# RHIDescriptorPool::Initialize - -初始化描述符池。 - -## 方法签名 - -```cpp -virtual bool Initialize(const DescriptorPoolDesc& desc) = 0; -``` - -## 详细描述 - -使用指定的描述符池描述初始化描述符池。分配 GPU 描述符堆资源,使其可以分配描述符。 - -## 参数列表 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `desc` | `const DescriptorPoolDesc&` | 描述符池配置,包含设备指针、堆类型、描述符数量和着色器可见性 | - -## 返回值 - -`bool` - 初始化成功返回 `true`,失败返回 `false` - -## 示例代码 - -```cpp -DescriptorPoolDesc desc; -desc.device = device; -desc.type = DescriptorHeapType::CBV_SRV_UAV; -desc.descriptorCount = 256; -desc.shaderVisible = true; - -if (descriptorPool->Initialize(desc)) { - // 初始化成功 -} else { - // 初始化失败 -} -``` - -## 相关文档 - -- [RHIDescriptorPool 总览](descriptor-pool.md) - 返回类总览 -- [Shutdown](shutdown.md) - 关闭描述符池 -- [GetDescriptorCount](get-descriptor-count.md) - 获取描述符数量 diff --git a/docs/api/rhi/descriptor-pool/shutdown.md b/docs/api/rhi/descriptor-pool/shutdown.md deleted file mode 100644 index a98a359b..00000000 --- a/docs/api/rhi/descriptor-pool/shutdown.md +++ /dev/null @@ -1,33 +0,0 @@ -# RHIDescriptorPool::Shutdown - -关闭描述符池并释放所有相关资源。 - -## 方法签名 - -```cpp -virtual void Shutdown() = 0; -``` - -## 详细描述 - -关闭描述符池,释放所有已分配的 GPU 描述符堆资源。此操作不可撤销。 - -## 参数列表 - -无参数。 - -## 返回值 - -无返回值。 - -## 示例代码 - -```cpp -descriptorPool->Shutdown(); -``` - -## 相关文档 - -- [RHIDescriptorPool 总览](descriptor-pool.md) - 返回类总览 -- [Initialize](initialize.md) - 初始化描述符池 -- [GetDescriptorCount](get-descriptor-count.md) - 获取描述符数量 diff --git a/docs/api/rhi/device/compile-shader.md b/docs/api/rhi/device/compile-shader.md deleted file mode 100644 index e577171b..00000000 --- a/docs/api/rhi/device/compile-shader.md +++ /dev/null @@ -1,35 +0,0 @@ -# RHIDevice::CompileShader - -```cpp -virtual RHIShader* CompileShader(const ShaderCompileDesc& desc) = 0; -``` - -编译着色器程序。 - -**参数:** -- `desc` - 着色器编译描述符,包含入口点、配置文件、源文件等 - -**返回:** 新创建的着色器指针,失败返回 `nullptr` - -**复杂度:** O(n) - 取决于着色器代码复杂度 - -**示例:** - -```cpp -ShaderCompileDesc shaderDesc; -shaderDesc.entryPoint = L"main"; -shaderDesc.profile = L"vs_6_0"; -shaderDesc.fileName = L"shaders/vertex.hlsl"; -shaderDesc.macros = {}; - -RHIShader* vertexShader = device->CompileShader(shaderDesc); -if (!vertexShader->IsValid()) { - // 处理编译错误 - vertexShader->Shutdown(); -} -``` - -## 相关文档 - -- [RHIDevice 总览](device.md) - 返回类总览 -- [RHIShader](../shader/shader.md) - 着色器类 diff --git a/docs/api/rhi/device/constructor.md b/docs/api/rhi/device/constructor.md deleted file mode 100644 index 0d5e3a4e..00000000 --- a/docs/api/rhi/device/constructor.md +++ /dev/null @@ -1,30 +0,0 @@ -# RHIDevice::RHIDevice - -```cpp -RHIDevice() = default; -``` - -默认构造函数,创建空的 RHIDevice 对象。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过工厂创建设备 -RHIDevice* device = RHIFactory::CreateRHIDevice(RHIType::D3D12); -if (device->Initialize(desc)) { - // 设备初始化成功 -} -``` - -## 相关文档 - -- [RHIDevice 总览](device.md) - 返回类总览 -- [RHIFactory](../factory/factory.md) - 设备工厂 diff --git a/docs/api/rhi/device/create-buffer.md b/docs/api/rhi/device/create-buffer.md deleted file mode 100644 index a2469415..00000000 --- a/docs/api/rhi/device/create-buffer.md +++ /dev/null @@ -1,32 +0,0 @@ -# RHIDevice::CreateBuffer - -```cpp -virtual RHIBuffer* CreateBuffer(const BufferDesc& desc) = 0; -``` - -创建 GPU 缓冲区资源。 - -**参数:** -- `desc` - 缓冲区描述符,包含大小、类型、标志等 - -**返回:** 新创建的缓冲区指针,失败返回 `nullptr` - -**复杂度:** O(1) - -**示例:** - -```cpp -BufferDesc bufferDesc; -bufferDesc.size = sizeof(Vertex) * vertexCount; -bufferDesc.stride = sizeof(Vertex); -bufferDesc.bufferType = (uint32_t)BufferType::Vertex; -bufferDesc.flags = 0; - -RHIBuffer* vertexBuffer = device->CreateBuffer(bufferDesc); -``` - -## 相关文档 - -- [RHIDevice 总览](device.md) - 返回类总览 -- [RHIBuffer](../buffer/buffer.md) - 缓冲区类 -- [BufferDesc](../types/types.md) - 缓冲区描述结构体 diff --git a/docs/api/rhi/device/create-command-list.md b/docs/api/rhi/device/create-command-list.md deleted file mode 100644 index 2c04e661..00000000 --- a/docs/api/rhi/device/create-command-list.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHIDevice::CreateCommandList - -```cpp -virtual RHICommandList* CreateCommandList(const CommandListDesc& desc) = 0; -``` - -创建命令列表,用于录制 GPU 命令。 - -**参数:** -- `desc` - 命令列表描述符,包含类型和节点掩码 - -**返回:** 新创建的命令列表指针,失败返回 `nullptr` - -**复杂度:** O(1) - -**示例:** - -```cpp -CommandListDesc cmdListDesc; -cmdListDesc.commandListType = (uint32_t)CommandQueueType::Direct; -cmdListDesc.nodeMask = 0; - -RHICommandList* commandList = device->CreateCommandList(cmdListDesc); -``` - -## 相关文档 - -- [RHIDevice 总览](device.md) - 返回类总览 -- [RHICommandList](../command-list/command-list.md) - 命令列表类 diff --git a/docs/api/rhi/device/create-command-queue.md b/docs/api/rhi/device/create-command-queue.md deleted file mode 100644 index 874317b3..00000000 --- a/docs/api/rhi/device/create-command-queue.md +++ /dev/null @@ -1,31 +0,0 @@ -# RHIDevice::CreateCommandQueue - -```cpp -virtual RHICommandQueue* CreateCommandQueue(const CommandQueueDesc& desc) = 0; -``` - -创建命令队列,用于提交和执行命令列表。 - -**参数:** -- `desc` - 命令队列描述符,包含队列类型和优先级 - -**返回:** 新创建的命令队列指针,失败返回 `nullptr` - -**复杂度:** O(1) - -**示例:** - -```cpp -CommandQueueDesc queueDesc; -queueDesc.queueType = (uint32_t)CommandQueueType::Direct; -queueDesc.priority = 0; -queueDesc.nodeMask = 0; -queueDesc.flags = 0; - -RHICommandQueue* commandQueue = device->CreateCommandQueue(queueDesc); -``` - -## 相关文档 - -- [RHIDevice 总览](device.md) - 返回类总览 -- [RHICommandQueue](../command-queue/command-queue.md) - 命令队列类 diff --git a/docs/api/rhi/device/create-fence.md b/docs/api/rhi/device/create-fence.md deleted file mode 100644 index a0345cf1..00000000 --- a/docs/api/rhi/device/create-fence.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHIDevice::CreateFence - -```cpp -virtual RHIFence* CreateFence(const FenceDesc& desc) = 0; -``` - -创建同步栅栏,用于 CPU/GPU 同步。 - -**参数:** -- `desc` - 栅栏描述符,包含初始值和标志 - -**返回:** 新创建的栅栏指针,失败返回 `nullptr` - -**复杂度:** O(1) - -**示例:** - -```cpp -FenceDesc fenceDesc; -fenceDesc.initialValue = 0; -fenceDesc.flags = 0; - -RHIFence* fence = device->CreateFence(fenceDesc); -``` - -## 相关文档 - -- [RHIDevice 总览](device.md) - 返回类总览 -- [RHIFence](../fence/fence.md) - 栅栏类 diff --git a/docs/api/rhi/device/create-pipeline-state.md b/docs/api/rhi/device/create-pipeline-state.md deleted file mode 100644 index ab6beae1..00000000 --- a/docs/api/rhi/device/create-pipeline-state.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHIDevice::CreatePipelineState - -```cpp -virtual RHIPipelineState* CreatePipelineState(const PipelineStateDesc& desc) = 0; -``` - -创建渲染管线状态对象(PSO)。 - -**参数:** -- `desc` - 管线状态描述符,包含编译好的着色器字节码 - -**返回:** 新创建的管线状态指针,失败返回 `nullptr` - -**复杂度:** O(1) - -**示例:** - -```cpp -PipelineStateDesc psoDesc; -psoDesc.pBlob = compiledShaderBytecode; -psoDesc.size = bytecodeSize; - -RHIPipelineState* pipelineState = device->CreatePipelineState(psoDesc); -``` - -## 相关文档 - -- [RHIDevice 总览](device.md) - 返回类总览 -- [RHIPipelineState](../pipeline-state/pipeline-state.md) - 管线状态类 diff --git a/docs/api/rhi/device/create-sampler.md b/docs/api/rhi/device/create-sampler.md deleted file mode 100644 index 2d0a6df3..00000000 --- a/docs/api/rhi/device/create-sampler.md +++ /dev/null @@ -1,34 +0,0 @@ -# RHIDevice::CreateSampler - -```cpp -virtual RHISampler* CreateSampler(const SamplerDesc& desc) = 0; -``` - -创建纹理采样器。 - -**参数:** -- `desc` - 采样器描述符,包含过滤模式、寻址模式等 - -**返回:** 新创建的采样器指针,失败返回 `nullptr` - -**复杂度:** O(1) - -**示例:** - -```cpp -SamplerDesc samplerDesc; -samplerDesc.filter = (uint32_t)FilterMode::Anisotropic; -samplerDesc.addressU = (uint32_t)TextureAddressMode::Wrap; -samplerDesc.addressV = (uint32_t)TextureAddressMode::Wrap; -samplerDesc.addressW = (uint32_t)TextureAddressMode::Wrap; -samplerDesc.maxAnisotropy = 16; -samplerDesc.minLod = 0; -samplerDesc.maxLod = FLT_MAX; - -RHISampler* sampler = device->CreateSampler(samplerDesc); -``` - -## 相关文档 - -- [RHIDevice 总览](device.md) - 返回类总览 -- [RHISampler](../sampler/sampler.md) - 采样器类 diff --git a/docs/api/rhi/device/create-shader.md b/docs/api/rhi/device/create-shader.md deleted file mode 100644 index 9cd82f6a..00000000 --- a/docs/api/rhi/device/create-shader.md +++ /dev/null @@ -1,34 +0,0 @@ -# RHIDevice::CreateShader - -创建并编译一个着色器程序。 - -```cpp -virtual RHIShader* CreateShader(const ShaderCompileDesc& desc) = 0; -``` - -**参数:** -- `desc` - 着色器编译描述符,包含入口点、目标配置文件、源码或文件路径等 - -**返回:** 新创建的着色器指针,失败返回 `nullptr` - -**复杂度:** O(n) - 取决于着色器代码复杂度 - -**示例:** - -```cpp -ShaderCompileDesc shaderDesc; -shaderDesc.entryPoint = L"main"; -shaderDesc.profile = L"vs_6_0"; -shaderDesc.fileName = L"shaders/vertex.hlsl"; - -RHIShader* vertexShader = device->CreateShader(shaderDesc); -if (!vertexShader->IsValid()) { - // 处理编译错误 - vertexShader->Shutdown(); -} -``` - -## 相关文档 - -- [RHIDevice 总览](device.md) - 返回类总览 -- [RHIShader](../shader/shader.md) - 着色器类 diff --git a/docs/api/rhi/device/create-swap-chain.md b/docs/api/rhi/device/create-swap-chain.md deleted file mode 100644 index 2fe7b602..00000000 --- a/docs/api/rhi/device/create-swap-chain.md +++ /dev/null @@ -1,34 +0,0 @@ -# RHIDevice::CreateSwapChain - -```cpp -virtual RHISwapChain* CreateSwapChain(const SwapChainDesc& desc) = 0; -``` - -创建交换链,用于管理窗口渲染和帧缓冲区切换。 - -**参数:** -- `desc` - 交换链描述符,包含尺寸、缓冲数量、格式等 - -**返回:** 新创建的交换链指针,失败返回 `nullptr`,OpenGL 后端始终返回有效对象 - -**复杂度:** O(1) - -**示例:** - -```cpp -SwapChainDesc swapChainDesc; -swapChainDesc.width = 1280; -swapChainDesc.height = 720; -swapChainDesc.bufferCount = 2; -swapChainDesc.format = (uint32_t)Format::R8G8B8A8_UNorm; -swapChainDesc.refreshRate = 60; -swapChainDesc.sampleCount = 1; -swapChainDesc.sampleQuality = 0; - -RHISwapChain* swapChain = device->CreateSwapChain(swapChainDesc); -``` - -## 相关文档 - -- [RHIDevice 总览](device.md) - 返回类总览 -- [RHISwapChain](../swap-chain/swap-chain.md) - 交换链类 diff --git a/docs/api/rhi/device/create-texture.md b/docs/api/rhi/device/create-texture.md deleted file mode 100644 index 68876020..00000000 --- a/docs/api/rhi/device/create-texture.md +++ /dev/null @@ -1,38 +0,0 @@ -# RHIDevice::CreateTexture - -```cpp -virtual RHITexture* CreateTexture(const TextureDesc& desc) = 0; -``` - -创建 GPU 纹理资源。 - -**参数:** -- `desc` - 纹理描述符,包含尺寸、格式、纹理类型等 - -**返回:** 新创建的纹理指针,失败返回 `nullptr` - -**复杂度:** O(1) - -**示例:** - -```cpp -TextureDesc textureDesc; -textureDesc.width = 1024; -textureDesc.height = 1024; -textureDesc.depth = 1; -textureDesc.mipLevels = 1; -textureDesc.arraySize = 1; -textureDesc.format = (uint32_t)Format::R8G8B8A8_UNorm; -textureDesc.textureType = (uint32_t)TextureType::Texture2D; -textureDesc.sampleCount = 1; -textureDesc.sampleQuality = 0; -textureDesc.flags = 0; - -RHITexture* texture = device->CreateTexture(textureDesc); -``` - -## 相关文档 - -- [RHIDevice 总览](device.md) - 返回类总览 -- [RHITexture](../texture/texture.md) - 纹理类 -- [TextureDesc](../types/types.md) - 纹理描述结构体 diff --git a/docs/api/rhi/device/destructor.md b/docs/api/rhi/device/destructor.md deleted file mode 100644 index e368c493..00000000 --- a/docs/api/rhi/device/destructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHIDevice::~RHIDevice - -```cpp -virtual ~RHIDevice() = default; -``` - -虚析构函数,确保派生类对象通过基类指针删除时能正确调用析构函数。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过基类指针销毁设备对象 -RHIDevice* device = RHIFactory::CreateRHIDevice(RHIType::D3D12); -// ... 使用 device ... -delete device; // 自动调用派生类析构函数 -``` - -## 相关文档 - -- [RHIDevice 总览](device.md) - 返回类总览 -- [Shutdown](shutdown.md) - 关闭设备 diff --git a/docs/api/rhi/device/device.md b/docs/api/rhi/device/device.md deleted file mode 100644 index 49884fce..00000000 --- a/docs/api/rhi/device/device.md +++ /dev/null @@ -1,77 +0,0 @@ -# RHIDevice - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` (abstract) - -**头文件**: `XCEngine/RHI/RHIDevice.h` - -**描述**: RHI 渲染设备抽象接口,代表一个图形设备实例。 - -## 概述 - -`RHIDevice` 是 RHI 模块的核心接口之一,负责创建和管理所有 GPU 资源。每个 RHI 后端(D3D12、OpenGL 等)都需要实现此接口。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`RHIDevice`](constructor.md) | 默认构造函数 | -| [`~RHIDevice`](destructor.md) | 虚析构函数 | -| [`Initialize`](initialize.md) | 初始化设备 | -| [`Shutdown`](shutdown.md) | 关闭设备 | -| [`CreateBuffer`](create-buffer.md) | 创建缓冲区 | -| [`CreateTexture`](create-texture.md) | 创建纹理 | -| [`CreateSwapChain`](create-swap-chain.md) | 创建交换链 | -| [`CreateCommandList`](create-command-list.md) | 创建命令列表 | -| [`CreateCommandQueue`](create-command-queue.md) | 创建命令队列 | -| [`CreateShader`](create-shader.md) | 创建着色器 | -| [`CreatePipelineState`](create-pipeline-state.md) | 创建管线状态 | -| [`CreateFence`](create-fence.md) | 创建栅栏 | -| [`CreateSampler`](create-sampler.md) | 创建采样器 | -| [`GetCapabilities`](get-capabilities.md) | 获取设备能力 | -| [`GetDeviceInfo`](get-device-info.md) | 获取设备信息 | -| [`GetNativeDevice`](get-native-device.md) | 获取原生设备 | - -## 使用示例 - -```cpp -// 创建 D3D12 设备 -RHI::RHIDevice* device = RHI::RHIFactory::CreateRHIDevice(RHI::RHIType::D3D12); - -// 配置设备描述 -RHI::RHIDeviceDesc desc; -desc.windowHandle = hwnd; -desc.width = 1280; -desc.height = 720; -desc.appName = L"MyApp"; -desc.enableDebugLayer = true; - -// 初始化设备 -if (device->Initialize(desc)) { - const RHI::RHICapabilities& caps = device->GetCapabilities(); - if (caps.bSupportsRayTracing) { - // 设备支持光线追踪 - } - - const RHI::RHIDeviceInfo& info = device->GetDeviceInfo(); - printf("GPU: %ls\n", info.renderer.c_str()); - - // 创建资源 - RHI::BufferDesc bufferDesc; - bufferDesc.size = 1024; - bufferDesc.bufferType = (uint32_t)RHI::BufferType::Vertex; - RHI::RHIBuffer* buffer = device->CreateBuffer(bufferDesc); - - device->Shutdown(); -} - -delete device; -``` - -## 相关文档 - -- [../../rhi.md](../rhi.md) - RHI 模块总览 -- [RHIFactory](../factory/factory.md) - 设备工厂 -- [RHICapabilities](../capabilities/capabilities.md) - 设备能力 -- [RHITypes](../types/types.md) - 设备描述结构体 diff --git a/docs/api/rhi/device/get-capabilities.md b/docs/api/rhi/device/get-capabilities.md deleted file mode 100644 index 1012565b..00000000 --- a/docs/api/rhi/device/get-capabilities.md +++ /dev/null @@ -1,32 +0,0 @@ -# RHIDevice::GetCapabilities - -```cpp -virtual const RHICapabilities& GetCapabilities() const = 0; -``` - -获取当前设备的图形能力。 - -**返回:** 设备能力结构体引用 - -**复杂度:** O(1) - -**示例:** - -```cpp -const RHICapabilities& caps = device->GetCapabilities(); - -if (caps.bSupportsRayTracing) { - // 启用光线追踪功能 -} - -if (caps.bSupportsComputeShaders) { - // 启用计算着色器 -} - -uint32_t maxTexSize = caps.maxTexture2DSize; -``` - -## 相关文档 - -- [RHIDevice 总览](device.md) - 返回类总览 -- [RHICapabilities](../capabilities/capabilities.md) - 设备能力类 diff --git a/docs/api/rhi/device/get-device-info.md b/docs/api/rhi/device/get-device-info.md deleted file mode 100644 index d1fa8540..00000000 --- a/docs/api/rhi/device/get-device-info.md +++ /dev/null @@ -1,27 +0,0 @@ -# RHIDevice::GetDeviceInfo - -```cpp -virtual const RHIDeviceInfo& GetDeviceInfo() const = 0; -``` - -获取当前设备的详细信息。 - -**返回:** 设备信息结构体引用 - -**复杂度:** O(1) - -**示例:** - -```cpp -const RHIDeviceInfo& info = device->GetDeviceInfo(); - -printf("GPU: %ls\n", info.renderer.c_str()); -printf("Vendor: %ls\n", info.vendor.c_str()); -printf("Driver: %ls\n", info.version.c_str()); -printf("VRAM: %llu MB\n", info.dedicatedVideoMemory / 1024 / 1024); -``` - -## 相关文档 - -- [RHIDevice 总览](device.md) - 返回类总览 -- [RHIDeviceInfo](../types/types.md) - 设备信息结构体 diff --git a/docs/api/rhi/device/get-native-device.md b/docs/api/rhi/device/get-native-device.md deleted file mode 100644 index 477396b3..00000000 --- a/docs/api/rhi/device/get-native-device.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHIDevice::GetNativeDevice - -```cpp -virtual void* GetNativeDevice() = 0; -``` - -获取原生图形 API 设备指针。 - -**返回:** -- D3D12 后端: `ID3D12Device*` -- OpenGL 后端: `void*` (GLFWwindow* 或 GL 上下文指针) - -**复杂度:** O(1) - -**示例:** - -```cpp -void* nativeDevice = device->GetNativeDevice(); - -// D3D12 使用 -ID3D12Device* d3d12Device = static_cast(nativeDevice); - -// OpenGL 使用 -GLFWwindow* glfwWindow = static_cast(nativeDevice); -``` - -## 相关文档 - -- [RHIDevice 总览](device.md) - 返回类总览 diff --git a/docs/api/rhi/device/initialize.md b/docs/api/rhi/device/initialize.md deleted file mode 100644 index 54470eb1..00000000 --- a/docs/api/rhi/device/initialize.md +++ /dev/null @@ -1,39 +0,0 @@ -# RHIDevice::Initialize - -```cpp -virtual bool Initialize(const RHIDeviceDesc& desc) = 0; -``` - -初始化 RHI 设备,建立与图形适配器的连接。 - -**参数:** -- `desc` - 设备描述符,包含窗口句柄、分辨率、调试选项等配置 - -**返回:** 成功返回 `true`,失败返回 `false` - -**复杂度:** O(1) - -**示例:** - -```cpp -RHIDeviceDesc desc; -desc.windowHandle = hwnd; -desc.width = 1920; -desc.height = 1080; -desc.appName = L"MyApp"; -desc.enableDebugLayer = true; -desc.enableGPUValidation = true; - -RHIDevice* device = RHIFactory::CreateRHIDevice(RHIType::D3D12); -if (device->Initialize(desc)) { - // 设备初始化成功 -} else { - // 处理初始化失败 - delete device; -} -``` - -## 相关文档 - -- [RHIDevice 总览](device.md) - 返回类总览 -- [RHIDeviceDesc](../types/types.md) - 设备描述结构体 diff --git a/docs/api/rhi/device/shutdown.md b/docs/api/rhi/device/shutdown.md deleted file mode 100644 index 60d9b00c..00000000 --- a/docs/api/rhi/device/shutdown.md +++ /dev/null @@ -1,20 +0,0 @@ -# RHIDevice::Shutdown - -```cpp -virtual void Shutdown() = 0; -``` - -关闭 RHI 设备,释放所有相关资源。 - -**复杂度:** O(n) - 取决于管理的资源数量 - -**示例:** - -```cpp -device->Shutdown(); -delete device; -``` - -## 相关文档 - -- [RHIDevice 总览](device.md) - 返回类总览 diff --git a/docs/api/rhi/enums/blend-factor.md b/docs/api/rhi/enums/blend-factor.md deleted file mode 100644 index 391d9f14..00000000 --- a/docs/api/rhi/enums/blend-factor.md +++ /dev/null @@ -1,53 +0,0 @@ -# BlendFactor - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 混合因子枚举,定义颜色混合的权重因子 - -## 概述 - -BlendFactor 枚举定义了混合运算中使用的各种因子,用于控制源颜色和目标颜色的混合权重。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Zero` | 0 | -| `One` | 1 | -| `SrcColor` | 源颜色 | -| `InvSrcColor` | 1 - 源颜色 | -| `SrcAlpha` | 源 alpha 值 | -| `InvSrcAlpha` | 1 - 源 alpha 值 | -| `DstAlpha` | 目标 alpha 值 | -| `InvDstAlpha` | 1 - 目标 alpha 值 | -| `DstColor` | 目标颜色 | -| `InvDstColor` | 1 - 目标颜色 | -| `SrcAlphaSat` | 饱和的源 alpha 值 | -| `BlendFactor` | 自定义混合因子 | -| `InvBlendFactor` | 1 - 自定义混合因子 | -| `Src1Color` | 第二个源的 RGB | -| `InvSrc1Color` | 1 - 第二个源的 RGB | -| `Src1Alpha` | 第二个源的 alpha | -| `InvSrc1Alpha` | 1 - 第二个源的 alpha | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - BlendFactor srcFactor = BlendFactor::SrcAlpha; - BlendFactor dstFactor = BlendFactor::InvSrcAlpha; - - if (srcFactor == BlendFactor::One) { - // 完全使用源颜色 - } -} -``` - -## 相关文档 - -- [BlendOp](blend-op.md) - 混合操作枚举 -- [ColorWriteMask](color-write-mask.md) - 颜色写入掩码枚举 diff --git a/docs/api/rhi/enums/blend-op.md b/docs/api/rhi/enums/blend-op.md deleted file mode 100644 index a4c62a8c..00000000 --- a/docs/api/rhi/enums/blend-op.md +++ /dev/null @@ -1,40 +0,0 @@ -# BlendOp - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 混合操作枚举,定义颜色混合的运算方式 - -## 概述 - -BlendOp 枚举定义了源颜色和目标颜色之间的混合运算方式,用于实现各种透明和混合效果。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Add` | 加法混合(Src + Dst) | -| `Subtract` | 减法混合(Src - Dst) | -| `ReverseSubtract` | 反向减法混合(Dst - Src) | -| `Min` | 取最小值 | -| `Max` | 取最大值 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - BlendOp blendOp = BlendOp::Add; - - if (blendOp == BlendOp::Subtract) { - // 使用减法混合 - } -} -``` - -## 相关文档 - -- [BlendFactor](blend-factor.md) - 混合因子枚举 -- [LogicOp](logic-op.md) - 逻辑操作枚举 diff --git a/docs/api/rhi/enums/border-color.md b/docs/api/rhi/enums/border-color.md deleted file mode 100644 index f480b3ae..00000000 --- a/docs/api/rhi/enums/border-color.md +++ /dev/null @@ -1,38 +0,0 @@ -# BorderColor - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 边界颜色枚举,定义纹理采样边界颜色 - -## 概述 - -BorderColor 枚举定义了当 TextureAddressMode 为 Border 模式时使用的边界颜色。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `TransparentBlack` | 透明黑色 (0,0,0,0) | -| `OpaqueBlack` | 不透明黑色 (0,0,0,1) | -| `OpaqueWhite` | 不透明白色 (1,1,1,1) | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - BorderColor borderColor = BorderColor::TransparentBlack; - - if (borderColor == BorderColor::OpaqueWhite) { - // 使用白色边界 - } -} -``` - -## 相关文档 - -- [TextureAddressMode](texture-address-mode.md) - 纹理寻址模式枚举 -- [FilterMode](filter-mode.md) - 过滤模式枚举 diff --git a/docs/api/rhi/enums/buffer-type.md b/docs/api/rhi/enums/buffer-type.md deleted file mode 100644 index 5c2f0f28..00000000 --- a/docs/api/rhi/enums/buffer-type.md +++ /dev/null @@ -1,42 +0,0 @@ -# BufferType - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 缓冲区类型枚举,定义 GPU 缓冲区的用途类型 - -## 概述 - -BufferType 枚举定义了引擎中使用的各种 GPU 缓冲区类型,每种类型对应不同的用途和访问模式。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Vertex` | 顶点缓冲区 | -| `Index` | 索引缓冲区 | -| `Constant` | 常量缓冲区(CBV) | -| `ReadBack` | 回读缓冲区 | -| `Indirect` | 间接执行缓冲区 | -| `RaytracingAccelerationStructure` | 光线追踪加速结构 | -| `ShaderBindingTable` | 着色器绑定表 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - BufferType bufferType = BufferType::Vertex; - - if (bufferType == BufferType::Constant) { - // 常量缓冲区处理 - } -} -``` - -## 相关文档 - -- [TextureType](texture-type.md) - 纹理类型枚举 -- [DescriptorType](descriptor-type.md) - 描述符类型枚举 diff --git a/docs/api/rhi/enums/color-write-mask.md b/docs/api/rhi/enums/color-write-mask.md deleted file mode 100644 index 5a7ea7f2..00000000 --- a/docs/api/rhi/enums/color-write-mask.md +++ /dev/null @@ -1,41 +0,0 @@ -# ColorWriteMask - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 颜色写入掩码枚举,控制颜色通道的写入 - -## 概述 - -ColorWriteMask 枚举定义了哪些颜色通道可以被写入渲染目标,支持位运算组合。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Red = 1` | 红色通道 | -| `Green = 2` | 绿色通道 | -| `Blue = 4` | 蓝色通道 | -| `Alpha = 8` | Alpha 通道 | -| `All = 15` | 所有通道(Red\|Green\|Blue\|Alpha) | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - ColorWriteMask mask = ColorWriteMask::All; - ColorWriteMask rgbOnly = ColorWriteMask::Red | ColorWriteMask::Green | ColorWriteMask::Blue; - - if (mask == ColorWriteMask::All) { - // 写入所有通道 - } -} -``` - -## 相关文档 - -- [BlendFactor](blend-factor.md) - 混合因子枚举 -- [LogicOp](logic-op.md) - 逻辑操作枚举 diff --git a/docs/api/rhi/enums/command-queue-type.md b/docs/api/rhi/enums/command-queue-type.md deleted file mode 100644 index 3e03861c..00000000 --- a/docs/api/rhi/enums/command-queue-type.md +++ /dev/null @@ -1,38 +0,0 @@ -# CommandQueueType - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 命令队列类型枚举,定义 GPU 命令队列的类型 - -## 概述 - -CommandQueueType 枚举定义了不同类型的 GPU 命令队列,用于提交渲染和计算命令。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Direct` | 直接命令队列(图形命令) | -| `Compute` | 计算命令队列 | -| `Copy` | 复制命令队列 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - CommandQueueType queueType = CommandQueueType::Direct; - - if (queueType == CommandQueueType::Compute) { - // 计算命令队列 - } -} -``` - -## 相关文档 - -- [PipelineType](pipeline-type.md) - 管线类型枚举 -- [CommandQueueType](command-queue-type.md) - 命令队列类型枚举 diff --git a/docs/api/rhi/enums/comparison-func.md b/docs/api/rhi/enums/comparison-func.md deleted file mode 100644 index 11110677..00000000 --- a/docs/api/rhi/enums/comparison-func.md +++ /dev/null @@ -1,43 +0,0 @@ -# ComparisonFunc - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 比较函数枚举,定义深度和模板测试的比较方式 - -## 概述 - -ComparisonFunc 枚举用于深度测试和模板测试中的比较操作,决定何时通过测试。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Never` | 永不通过 | -| `Less` | 小于比较 | -| `Equal` | 等于比较 | -| `LessEqual` | 小于等于比较 | -| `Greater` | 大于比较 | -| `NotEqual` | 不等于比较 | -| `GreaterEqual` | 大于等于比较 | -| `Always` | 永远通过 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - ComparisonFunc depthFunc = ComparisonFunc::Less; - - if (depthFunc == ComparisonFunc::Equal) { - // 等于深度时通过 - } -} -``` - -## 相关文档 - -- [StencilOp](stencil-op.md) - 模板操作枚举 -- [FilterMode](filter-mode.md) - 采样过滤模式枚举 diff --git a/docs/api/rhi/enums/cull-mode.md b/docs/api/rhi/enums/cull-mode.md deleted file mode 100644 index 9a208d9c..00000000 --- a/docs/api/rhi/enums/cull-mode.md +++ /dev/null @@ -1,38 +0,0 @@ -# CullMode - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 背面剔除模式枚举,控制图元的剔除方式 - -## 概述 - -CullMode 枚举用于控制 GPU 渲染时的背面剔除模式,决定哪些几何图元被丢弃以优化渲染性能。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `None` | 不进行剔除,显示所有图元 | -| `Front` | 剔除正面图元 | -| `Back` | 剔除背面图元(默认值) | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - CullMode cullMode = CullMode::Back; - - if (cullMode == CullMode::None) { - // 不进行剔除 - } -} -``` - -## 相关文档 - -- [FillMode](fill-mode.md) - 填充模式枚举 -- [ShaderType](shader-type.md) - 着色器类型枚举 diff --git a/docs/api/rhi/enums/descriptor-heap-type.md b/docs/api/rhi/enums/descriptor-heap-type.md deleted file mode 100644 index 51b78190..00000000 --- a/docs/api/rhi/enums/descriptor-heap-type.md +++ /dev/null @@ -1,39 +0,0 @@ -# DescriptorHeapType - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 描述符堆类型枚举,定义描述符堆的用途类型 - -## 概述 - -DescriptorHeapType 枚举定义了 GPU 描述符堆的类型,决定了堆中包含的描述符种类。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `CBV_SRV_UAV` | 常量缓冲区、Shader资源、无序访问视图堆 | -| `Sampler` | 采样器堆 | -| `RTV` | 渲染目标视图堆 | -| `DSV` | 深度模板视图堆 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - DescriptorHeapType heapType = DescriptorHeapType::CBV_SRV_UAV; - - if (heapType == DescriptorHeapType::Sampler) { - // 采样器堆 - } -} -``` - -## 相关文档 - -- [DescriptorType](descriptor-type.md) - 描述符类型枚举 -- [RootParameterType](root-parameter-type.md) - 根参数类型枚举 diff --git a/docs/api/rhi/enums/descriptor-type.md b/docs/api/rhi/enums/descriptor-type.md deleted file mode 100644 index cd7ac515..00000000 --- a/docs/api/rhi/enums/descriptor-type.md +++ /dev/null @@ -1,41 +0,0 @@ -# DescriptorType - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 描述符类型枚举,定义 GPU 描述符资源的类型 - -## 概述 - -DescriptorType 枚举定义了 RHI 层使用的各种描述符类型,用于绑定资源到渲染管线。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `CBV` | 常量缓冲区视图 | -| `SRV` | 着色器资源视图 | -| `UAV` | 无序访问视图 | -| `Sampler` | 采样器描述符 | -| `RTV` | 渲染目标视图 | -| `DSV` | 深度模板视图 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - DescriptorType descType = DescriptorType::CBV; - - if (descType == DescriptorType::SRV) { - // 着色器资源视图处理 - } -} -``` - -## 相关文档 - -- [DescriptorHeapType](descriptor-heap-type.md) - 描述符堆类型枚举 -- [BufferType](buffer-type.md) - 缓冲区类型枚举 diff --git a/docs/api/rhi/enums/enums.md b/docs/api/rhi/enums/enums.md deleted file mode 100644 index eb9a5b14..00000000 --- a/docs/api/rhi/enums/enums.md +++ /dev/null @@ -1,454 +0,0 @@ -# RHIEnums - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**头文件**: `XCEngine/RHI/RHIEnums.h` - -**描述**: RHI 模块中使用的所有枚举类型汇总。 - -## 概述 - -本模块汇总了 RHI 模块中定义的所有枚举类型,用于配置渲染管线的各种状态和参数。 - -## 着色器类型 - -### ShaderType - -着色器类型枚举。 - -| 枚举值 | 描述 | -|--------|------| -| `Vertex` | 顶点着色器 | -| `Fragment` | 片元着色器 (像素着色器) | -| `Geometry` | 几何着色器 | -| `Compute` | 计算着色器 | -| `TessControl` | 曲面细分控制着色器 | -| `TessEvaluation` | 曲面细分评估着色器 | -| `Hull` | 外壳着色器 (Hull shader) | -| `Domain` | 域着色器 (Domain shader) | -| `Amplification` | 放大着色器 (Mesh Shader) | -| `Mesh` | 网格着色器 | -| `Library` | 着色器库 | - -### ShaderVisibility - -着色器可见性,控制根签名参数对哪些着色器可见。 - -| 枚举值 | 描述 | -|--------|------| -| `All` | 对所有着色器可见 | -| `Vertex` | 仅对顶点着色器可见 | -| `Hull` | 仅对外壳着色器可见 | -| `Domain` | 仅对域着色器可见 | -| `Geometry` | 仅对几何着色器可见 | -| `Pixel` | 仅对像素着色器可见 | -| `Amplification` | 仅对放大着色器可见 | -| `Mesh` | 仅对网格着色器可见 | - -## 图元设置 - -### CullMode - -背面剔除模式。 - -| 枚举值 | 描述 | -|--------|------| -| `None` | 不剔除 | -| `Front` | 剔除正面 | -| `Back` | 剔除背面 | - -### FillMode - -填充模式。 - -| 枚举值 | 描述 | -|--------|------| -| `Wireframe` | 线框模式 | -| `Solid` | 实体模式 | - -### PrimitiveTopology - -图元拓扑类型。 - -| 枚举值 | 描述 | -|--------|------| -| `Undefined` | 未定义 | -| `PointList` | 点列表 | -| `LineList` | 线段列表 | -| `LineStrip` | 线段条带 | -| `TriangleList` | 三角形列表 | -| `TriangleStrip` | 三角形条带 | -| `LineListAdj` | 带邻接的线段列表 | -| `LineStripAdj` | 带邻接的线段条带 | -| `TriangleListAdj` | 带邻接的三角形列表 | -| `TriangleStripAdj` | 带邻接的三角形条带 | -| `PatchList` | 补丁列表 (用于曲面细分) | - -## 混合操作 - -### BlendOp - -混合操作。 - -| 枚举值 | 描述 | -|--------|------| -| `Add` | 加法 | -| `Subtract` | 减法 (Src - Dst) | -| `ReverseSubtract` | 反向减法 (Dst - Src) | -| `Min` | 最小值 | -| `Max` | 最大值 | - -### BlendFactor - -混合因子。 - -| 枚举值 | 描述 | -|--------|------| -| `Zero` | 0 | -| `One` | 1 | -| `SrcColor` | 源颜色 | -| `InvSrcColor` | 源颜色的逆 | -| `SrcAlpha` | 源透明度 | -| `InvSrcAlpha` | 源透明度的逆 | -| `DstAlpha` | 目标透明度 | -| `InvDstAlpha` | 目标透明度的逆 | -| `DstColor` | 目标颜色 | -| `InvDstColor` | 目标颜色的逆 | -| `SrcAlphaSat` | 源透明度饱和值 | -| `BlendFactor` | 混合因子 | -| `InvBlendFactor` | 混合因子的逆 | -| `Src1Color` | 源颜色 1 | -| `InvSrc1Color` | 源颜色 1 的逆 | -| `Src1Alpha` | 源透明度 1 | -| `InvSrc1Alpha` | 源透明度 1 的逆 | - -### LogicOp - -逻辑操作。 - -| 枚举值 | 描述 | -|--------|------| -| `Clear` | 清除 | -| `Set` | 设置 | -| `Copy` | 复制 | -| `CopyInverted` | 反转复制 | -| `Noop` | 无操作 | -| `Invert` | 反转 | -| `And` | 与 | -| `Nand` | 与非 | -| `Or` | 或 | -| `Nor` | 或非 | -| `Xor` | 异或 | -| `Equiv` | 等价 | -| `AndReverse` | 反向与 | -| `AndInverted` | 反向与 (输入反转) | -| `OrReverse` | 反向或 | -| `OrInverted` | 反向或 (输入反转) | - -### ColorWriteMask - -颜色写入掩码,控制颜色通道写入。 - -| 枚举值 | 值 | 描述 | -|--------|---|------| -| `Red` | 1 | 红色通道 | -| `Green` | 2 | 绿色通道 | -| `Blue` | 4 | 蓝色通道 | -| `Alpha` | 8 | 透明度通道 | -| `All` | 15 | 所有通道 | - -**使用示例**: - -```cpp -// 组合多个通道 -ColorWriteMask mask = ColorWriteMask::Red | ColorWriteMask::Green | ColorWriteMask::Blue; -// 或者使用 All -ColorWriteMask mask = ColorWriteMask::All; -``` - -## 深度和模板 - -### ComparisonFunc - -比较函数,用于深度/模板测试。 - -| 枚举值 | 描述 | -|--------|------| -| `Never` | 从不通过 | -| `Less` | 小于 | -| `Equal` | 等于 | -| `LessEqual` | 小于等于 | -| `Greater` | 大于 | -| `NotEqual` | 不等于 | -| `GreaterEqual` | 大于等于 | -| `Always` | 永远通过 | - -### StencilOp - -模板操作。 - -| 枚举值 | 描述 | -|--------|------| -| `Keep` | 保持当前值 | -| `Zero` | 设为 0 | -| `Replace` | 替换为参考值 | -| `IncrSat` | 增加并饱和 | -| `DecrSat` | 减少并饱和 | -| `Invert` | 反转位 | -| `Incr` | 增加 (溢出回绕) | -| `Decr` | 减少 (溢出回绕) | - -## 纹理采样 - -### FilterMode - -采样器过滤模式。 - -| 枚举值 | 描述 | -|--------|------| -| `Point` | 点采样 | -| `Linear` | 线性采样 | -| `Anisotropic` | 各向异性采样 | -| `ComparisonPoint` | 比较点采样 | -| `ComparisonLinear` | 比较线性采样 | -| `ComparisonAnisotropic` | 比较各向异性采样 | -| `MinimumPoint` | 最小值点采样 | -| `MinimumLinear` | 最小值线性采样 | -| `MinimumAnisotropic` | 最小值各向异性采样 | -| `MaximumPoint` | 最大值点采样 | -| `MaximumLinear` | 最大值线性采样 | -| `MaximumAnisotropic` | 最大值各向异性采样 | - -### TextureAddressMode - -纹理寻址模式。 - -| 枚举值 | 描述 | -|--------|------| -| `Wrap` | 重复寻址 | -| `Mirror` | 镜像寻址 | -| `Clamp` | 钳制寻址 | -| `Border` | 边框颜色寻址 | -| `MirrorOnce` | 单次镜像寻址 | - -### BorderColor - -边框颜色。 - -| 枚举值 | 描述 | -|--------|------| -| `TransparentBlack` | 透明黑色 (0,0,0,0) | -| `OpaqueBlack` | 不透明黑色 (0,0,0,1) | -| `OpaqueWhite` | 不透明白色 (1,1,1,1) | - -## 纹理和缓冲区类型 - -### TextureType - -纹理类型。 - -| 枚举值 | 描述 | -|--------|------| -| `Texture1D` | 1D 纹理 | -| `Texture2D` | 2D 纹理 | -| `Texture2DArray` | 2D 纹理数组 | -| `Texture3D` | 3D 纹理 | -| `TextureCube` | 立方体纹理 | -| `TextureCubeArray` | 立方体纹理数组 | - -### BufferType - -缓冲区类型。 - -| 枚举值 | 描述 | -|--------|------| -| `Vertex` | 顶点缓冲区 | -| `Index` | 索引缓冲区 | -| `Constant` | 常量缓冲区 (CBV) | -| `ReadBack` | 回读缓冲区 | -| `Indirect` | 间接执行缓冲区 | -| `RaytracingAccelerationStructure` | 光线追踪加速结构 | -| `ShaderBindingTable` | 着色器绑定表 | - -### Format - -纹理和缓冲区格式。 - -| 枚举值 | 描述 | -|--------|------| -| `Unknown` | 未知格式 | -| `R8_UNorm` | 单通道 8 位归一化 | -| `R8G8_UNorm` | 双通道 8 位归一化 | -| `R8G8B8A8_UNorm` | 四通道 8 位归一化 | -| `R16G16B16A16_Float` | 四通道 16 位浮点 | -| `R32G32B32A32_Float` | 四通道 32 位浮点 | -| `R16_Float` | 单通道 16 位浮点 | -| `R32_Float` | 单通道 32 位浮点 | -| `D16_UNorm` | 16 位深度 | -| `D24_UNorm_S8_UInt` | 24 位深度 + 8 位模板 | -| `D32_Float` | 32 位深度 | -| `BC1_UNorm` | BC1 压缩格式 | -| `BC2_UNorm` | BC2 压缩格式 | -| `BC3_UNorm` | BC3 压缩格式 | -| `BC4_UNorm` | BC4 压缩格式 | -| `BC5_UNorm` | BC5 压缩格式 | -| `BC6H_UF16` | BC6H 压缩格式 (无符号) | -| `BC7_UNorm` | BC7 压缩格式 | -| `R32G32B32A32_UInt` | 四通道 32 位无符号整数 | -| `R32_UInt` | 单通道 32 位无符号整数 | - -## 资源和内存 - -### ResourceStates - -资源状态,描述资源当前的使用方式。 - -| 枚举值 | 描述 | -|--------|------| -| `Common` | 通用状态 | -| `VertexAndConstantBuffer` | 顶点缓冲/常量缓冲 | -| `IndexBuffer` | 索引缓冲 | -| `RenderTarget` | 渲染目标 | -| `UnorderedAccess` | 无序访问 | -| `DepthWrite` | 深度写入 | -| `DepthRead` | 深度读取 | -| `NonPixelShaderResource` | 非像素着色器资源 | -| `PixelShaderResource` | 像素着色器资源 | -| `CopySrc` | 复制源 | -| `CopyDst` | 复制目标 | -| `Present` | 显示呈现 | -| `GenericRead` | 通用读取 | - -### HeapType - -内存堆类型。 - -| 枚举值 | 描述 | -|--------|------| -| `Default` | 默认堆 (GPU 直接访问) | -| `Upload` | 上传堆 (CPU 写入 GPU 读取) | -| `Readback` | 回读堆 (GPU 写入 CPU 读取) | -| `Custom` | 自定义堆 | - -## 描述符类型 - -### DescriptorType - -描述符类型。 - -| 枚举值 | 描述 | -|--------|------| -| `CBV` | 常量缓冲区视图 | -| `SRV` | 着色器资源视图 | -| `UAV` | 无序访问视图 | -| `Sampler` | 采样器 | -| `RTV` | 渲染目标视图 | -| `DSV` | 深度模板视图 | - -### DescriptorHeapType - -描述符堆类型。 - -| 枚举值 | 描述 | -|--------|------| -| `CBV_SRV_UAV` | CBV/SRV/UAV 混合堆 | -| `Sampler` | 采样器堆 | -| `RTV` | 渲染目标视图堆 | -| `DSV` | 深度模板视图堆 | - -### RootParameterType - -根参数类型。 - -| 枚举值 | 描述 | -|--------|------| -| `DescriptorTable` | 描述符表 | -| `Constants` | 常量 (32-bit 常量) | -| `CBV` | 常量缓冲区视图 | -| `SRV` | 着色器资源视图 | -| `UAV` | 无序访问视图 | - -## 命令相关 - -### CommandQueueType - -命令队列类型。 - -| 枚举值 | 描述 | -|--------|------| -| `Direct` | 直接命令队列 (图形/计算) | -| `Compute` | 计算命令队列 | -| `Copy` | 复制命令队列 | - -### PipelineType - -管线类型。 - -| 枚举值 | 描述 | -|--------|------| -| `Graphics` | 图形管线 | -| `Compute` | 计算管线 | -| `Raytracing` | 光线追踪管线 | - -### LoadAction - -加载操作,渲染通道开始时的加载行为。 - -| 枚举值 | 描述 | -|--------|------| -| `Undefined` | 未定义 | -| `Load` | 加载现有内容 | -| `Clear` | 清除为指定值 | - -### StoreAction - -存储操作,渲染通道结束时的存储行为。 - -| 枚举值 | 描述 | -|--------|------| -| `Undefined` | 未定义 | -| `Store` | 存储结果 | -| `Resolve` | 解析 (多重采样) | -| `StoreAndResolve` | 存储并解析 | -| `Discard` | 丢弃 | - -### PresentFlags - -呈现标志。 - -| 枚举值 | 描述 | -|--------|------| -| `None` | 无标志 | -| `AllowTearing` | 允许垂直同步撕裂 | -| `StrictlyTimedFrame` | 严格计时帧 | -| `AllowDisplayLatencyWaitableObject` | 允许显示延迟等待对象 | - -### QueryType - -查询类型。 - -| 枚举值 | 描述 | -|--------|------| -| `Occlusion` | 遮挡查询 | -| `Timestamp` | 时间戳查询 | -| `PipelineStatistics` | 管线统计查询 | - -## RHI 后端 - -### RHIType - -RHI 后端类型。 - -| 枚举值 | 描述 | -|--------|------| -| `D3D12` | DirectX 12 | -| `OpenGL` | OpenGL | -| `Vulkan` | Vulkan (预留) | -| `Metal` | Metal (预留) | - -## 相关文档 - -- [../rhi.md](../rhi.md) - RHI 模块总览 -- [RHITypes](../types/types.md) - 结构体类型汇总 diff --git a/docs/api/rhi/enums/fill-mode.md b/docs/api/rhi/enums/fill-mode.md deleted file mode 100644 index 9527e0a4..00000000 --- a/docs/api/rhi/enums/fill-mode.md +++ /dev/null @@ -1,37 +0,0 @@ -# FillMode - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 填充模式枚举,控制几何图形的渲染方式 - -## 概述 - -FillMode 枚举定义了几何图形的渲染填充方式,用于控制渲染输出是实体填充还是线框模式。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Wireframe` | 线框模式,只渲染图元边缘 | -| `Solid` | 实体模式,填充图元内部(默认值) | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - FillMode fillMode = FillMode::Solid; - - if (fillMode == FillMode::Wireframe) { - // 线框渲染模式 - } -} -``` - -## 相关文档 - -- [CullMode](cull-mode.md) - 背面剔除模式枚举 -- [PrimitiveTopology](primitive-topology.md) - 图元拓扑枚举 diff --git a/docs/api/rhi/enums/filter-mode.md b/docs/api/rhi/enums/filter-mode.md deleted file mode 100644 index ef895408..00000000 --- a/docs/api/rhi/enums/filter-mode.md +++ /dev/null @@ -1,47 +0,0 @@ -# FilterMode - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 过滤模式枚举,定义纹理采样的过滤方式 - -## 概述 - -FilterMode 枚举定义了纹理采样时使用的过滤模式,包括点过滤、线性过滤和各向异性过滤。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Point` | 点采样 | -| `Linear` | 线性过滤 | -| `Anisotropic` | 各向异性过滤 | -| `ComparisonPoint` | 比较点采样 | -| `ComparisonLinear` | 比较线性过滤 | -| `ComparisonAnisotropic` | 比较各向异性过滤 | -| `MinimumPoint` | 最小值点采样 | -| `MinimumLinear` | 最小值线性过滤 | -| `MinimumAnisotropic` | 最小值各向异性过滤 | -| `MaximumPoint` | 最大值点采样 | -| `MaximumLinear` | 最大值线性过滤 | -| `MaximumAnisotropic` | 最大值各向异性过滤 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - FilterMode filterMode = FilterMode::Linear; - - if (filterMode == FilterMode::Anisotropic) { - // 各向异性过滤 - } -} -``` - -## 相关文档 - -- [TextureAddressMode](texture-address-mode.md) - 纹理寻址模式枚举 -- [ComparisonFunc](comparison-func.md) - 比较函数枚举 diff --git a/docs/api/rhi/enums/format.md b/docs/api/rhi/enums/format.md deleted file mode 100644 index b76b5bf5..00000000 --- a/docs/api/rhi/enums/format.md +++ /dev/null @@ -1,55 +0,0 @@ -# Format - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 格式枚举,定义 GPU 资源的像素格式 - -## 概述 - -Format 枚举定义了引擎支持的各种纹理和缓冲区格式,包括颜色格式和深度格式。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Unknown` | 未知格式 | -| `R8_UNorm` | 单通道 8 位归一化 | -| `R8G8_UNorm` | 双通道 8 位归一化 | -| `R8G8B8A8_UNorm` | 四通道 8 位归一化 | -| `R16G16B16A16_Float` | 四通道 16 位浮点 | -| `R32G32B32A32_Float` | 四通道 32 位浮点 | -| `R16_Float` | 单通道 16 位浮点 | -| `R32_Float` | 单通道 32 位浮点 | -| `D16_UNorm` | 16 位深度格式 | -| `D24_UNorm_S8_UInt` | 24 位深度 8 位模板格式 | -| `D32_Float` | 32 位浮点深度格式 | -| `BC1_UNorm` | 压缩格式 BC1 | -| `BC2_UNorm` | 压缩格式 BC2 | -| `BC3_UNorm` | 压缩格式 BC3 | -| `BC4_UNorm` | 单通道压缩格式 BC4 | -| `BC5_UNorm` | 双通道压缩格式 BC5 | -| `BC6H_UF16` | HDR 压缩格式 BC6H | -| `BC7_UNorm` | 高质量压缩格式 BC7 | -| `R32G32B32A32_UInt` | 四通道 32 位无符号整数 | -| `R32_UInt` | 单通道 32 位无符号整数 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - Format format = Format::R8G8B8A8_UNorm; - - if (format == Format::D32_Float) { - // 深度格式 - } -} -``` - -## 相关文档 - -- [TextureType](texture-type.md) - 纹理类型枚举 -- [BufferType](buffer-type.md) - 缓冲区类型枚举 diff --git a/docs/api/rhi/enums/heap-type.md b/docs/api/rhi/enums/heap-type.md deleted file mode 100644 index f77f74f9..00000000 --- a/docs/api/rhi/enums/heap-type.md +++ /dev/null @@ -1,39 +0,0 @@ -# HeapType - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 堆类型枚举,定义 GPU 内存堆的类型 - -## 概述 - -HeapType 枚举定义了 GPU 内存分配的不同堆类型,每种类型有不同的访问模式和用途。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Default` | 默认堆,GPU 最优访问 | -| `Upload` | 上传堆,CPU 可写 GPU 可读 | -| `Readback` | 回读堆,CPU 可读 GPU 可写 | -| `Custom` | 自定义堆类型 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - HeapType heapType = HeapType::Default; - - if (heapType == HeapType::Upload) { - // 上传堆 - } -} -``` - -## 相关文档 - -- [ResourceStates](resource-states.md) - 资源状态枚举 -- [BufferType](buffer-type.md) - 缓冲区类型枚举 diff --git a/docs/api/rhi/enums/load-action.md b/docs/api/rhi/enums/load-action.md deleted file mode 100644 index a30b9338..00000000 --- a/docs/api/rhi/enums/load-action.md +++ /dev/null @@ -1,38 +0,0 @@ -# LoadAction - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 加载操作枚举,定义渲染目标加载时的操作 - -## 概述 - -LoadAction 枚举定义了资源加载时的行为,用于控制渲染目标在渲染开始前的状态。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Undefined` | 未定义,不执行加载 | -| `Load` | 加载现有内容 | -| `Clear` | 清除为指定颜色/深度值 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - LoadAction loadAction = LoadAction::Clear; - - if (loadAction == LoadAction::Load) { - // 保留现有内容 - } -} -``` - -## 相关文档 - -- [StoreAction](store-action.md) - 存储操作枚举 -- [LoadAction](load-action.md) - 加载操作枚举 diff --git a/docs/api/rhi/enums/logic-op.md b/docs/api/rhi/enums/logic-op.md deleted file mode 100644 index 4f2af3fa..00000000 --- a/docs/api/rhi/enums/logic-op.md +++ /dev/null @@ -1,51 +0,0 @@ -# LogicOp - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 逻辑操作枚举,定义颜色混合时的逻辑运算 - -## 概述 - -LogicOp 枚举定义了像素颜色上的逻辑运算操作,用于实现各种颜色混合效果。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Clear` | 清除为 0 | -| `Set` | 设置为 1 | -| `Copy` | 复制源值 | -| `CopyInverted` | 复制反转源值 | -| `Noop` | 无操作 | -| `Invert` | 反转目标值 | -| `And` | 源与目标 | -| `Nand` | 源与非目标 | -| `Or` | 源或目标 | -| `Nor` | 源或非目标 | -| `Xor` | 源异或目标 | -| `Equiv` | 源异或非目标 | -| `AndReverse` | 反转源与目标 | -| `AndInverted` | 源与反转目标 | -| `OrReverse` | 反转源或目标 | -| `OrInverted` | 源或反转目标 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - LogicOp logicOp = LogicOp::Copy; - - if (logicOp == LogicOp::Xor) { - // 异或操作 - } -} -``` - -## 相关文档 - -- [BlendOp](blend-op.md) - 混合操作枚举 -- [BlendFactor](blend-factor.md) - 混合因子枚举 diff --git a/docs/api/rhi/enums/pipeline-type.md b/docs/api/rhi/enums/pipeline-type.md deleted file mode 100644 index 20f712fb..00000000 --- a/docs/api/rhi/enums/pipeline-type.md +++ /dev/null @@ -1,38 +0,0 @@ -# PipelineType - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 管线类型枚举,定义渲染管线的类型 - -## 概述 - -PipelineType 枚举定义了引擎支持的渲染管线类型,包括图形管线、计算管线和光线追踪管线。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Graphics` | 图形渲染管线 | -| `Compute` | 计算管线 | -| `Raytracing` | 光线追踪管线 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - PipelineType pipelineType = PipelineType::Graphics; - - if (pipelineType == PipelineType::Raytracing) { - // 光线追踪渲染 - } -} -``` - -## 相关文档 - -- [ShaderType](shader-type.md) - 着色器类型枚举 -- [CommandQueueType](command-queue-type.md) - 命令队列类型枚举 diff --git a/docs/api/rhi/enums/present-flags.md b/docs/api/rhi/enums/present-flags.md deleted file mode 100644 index 244ee7e9..00000000 --- a/docs/api/rhi/enums/present-flags.md +++ /dev/null @@ -1,39 +0,0 @@ -# PresentFlags - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 显示标志枚举,定义帧显示的选项 - -## 概述 - -PresentFlags 枚举定义了_present_操作的标志,用于控制交换链呈现行为。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `None` | 无特殊标志 | -| `AllowTearing` | 允许垂直同步撕裂 | -| `StrictlyTimedFrame` | 严格计时帧 | -| `AllowDisplayLatencyWaitableObject` | 允许显示延迟等待对象 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - PresentFlags flags = PresentFlags::AllowTearing; - - if (flags == PresentFlags::None) { - // 标准呈现 - } -} -``` - -## 相关文档 - -- [StoreAction](store-action.md) - 存储操作枚举 -- [ResourceStates](resource-states.md) - 资源状态枚举 diff --git a/docs/api/rhi/enums/primitive-topology.md b/docs/api/rhi/enums/primitive-topology.md deleted file mode 100644 index 4d5c1500..00000000 --- a/docs/api/rhi/enums/primitive-topology.md +++ /dev/null @@ -1,46 +0,0 @@ -# PrimitiveTopology - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 图元拓扑枚举,定义几何图元的绘制方式 - -## 概述 - -PrimitiveTopology 枚举定义了如何解释顶点数据以形成几何图元,是渲染管线的重要参数。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Undefined` | 未定义拓扑 | -| `PointList` | 点列表 | -| `LineList` | 线段列表 | -| `LineStrip` | 线段条带 | -| `TriangleList` | 三角形列表 | -| `TriangleStrip` | 三角形条带 | -| `LineListAdj` | 带邻接信息的线段列表 | -| `LineStripAdj` | 带邻接信息的线段条带 | -| `TriangleListAdj` | 带邻接信息的三角形列表 | -| `TriangleStripAdj` | 带邻接信息的三角形条带 | -| `PatchList` | 补丁列表(细分几何) | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - PrimitiveTopology topology = PrimitiveTopology::TriangleList; - - if (topology == PrimitiveTopology::LineStrip) { - // 线段条带渲染 - } -} -``` - -## 相关文档 - -- [FillMode](fill-mode.md) - 填充模式枚举 -- [ShaderType](shader-type.md) - 着色器类型枚举 diff --git a/docs/api/rhi/enums/query-type.md b/docs/api/rhi/enums/query-type.md deleted file mode 100644 index d49d4c98..00000000 --- a/docs/api/rhi/enums/query-type.md +++ /dev/null @@ -1,38 +0,0 @@ -# QueryType - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 查询类型枚举,定义 GPU 查询的类型 - -## 概述 - -QueryType 枚举定义了引擎支持的 GPU 查询类型,用于获取渲染管线的各种统计信息。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Occlusion` | 遮挡查询 | -| `Timestamp` | 时间戳查询 | -| `PipelineStatistics` | 管线统计查询 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - QueryType queryType = QueryType::Timestamp; - - if (queryType == QueryType::Occlusion) { - // 遮挡查询 - } -} -``` - -## 相关文档 - -- [DescriptorType](descriptor-type.md) - 描述符类型枚举 -- [ResourceStates](resource-states.md) - 资源状态枚举 diff --git a/docs/api/rhi/enums/resource-states.md b/docs/api/rhi/enums/resource-states.md deleted file mode 100644 index 7799b6fe..00000000 --- a/docs/api/rhi/enums/resource-states.md +++ /dev/null @@ -1,48 +0,0 @@ -# ResourceStates - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 资源状态枚举,定义 GPU 资源的使用状态 - -## 概述 - -ResourceStates 枚举定义了 GPU 资源的当前状态,用于资源 barriers 和同步管理。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Common` | 通用状态 | -| `VertexAndConstantBuffer` | 顶点或常量缓冲区 | -| `IndexBuffer` | 索引缓冲区 | -| `RenderTarget` | 渲染目标 | -| `UnorderedAccess` | 无序访问 | -| `DepthWrite` | 深度写入 | -| `DepthRead` | 深度读取 | -| `NonPixelShaderResource` | 非像素着色器资源 | -| `PixelShaderResource` | 像素着色器资源 | -| `CopySrc` | 复制源 | -| `CopyDst` | 复制目标 | -| `Present` | 呈现状态 | -| `GenericRead` | 通用读取 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - ResourceStates state = ResourceStates::RenderTarget; - - if (state == ResourceStates::Common) { - // 通用状态 - } -} -``` - -## 相关文档 - -- [HeapType](heap-type.md) - 堆类型枚举 -- [BufferType](buffer-type.md) - 缓冲区类型枚举 diff --git a/docs/api/rhi/enums/rhi-type.md b/docs/api/rhi/enums/rhi-type.md deleted file mode 100644 index f673e8db..00000000 --- a/docs/api/rhi/enums/rhi-type.md +++ /dev/null @@ -1,39 +0,0 @@ -# RHIType - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: RHI 类型枚举,定义底层图形 API 的类型 - -## 概述 - -RHIType 枚举定义了引擎支持的底层图形 API 类型,用于抽象不同平台的图形接口。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `D3D12` | DirectX 12 | -| `OpenGL` | OpenGL | -| `Vulkan` | Vulkan | -| `Metal` | Apple Metal | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - RHIType rhiType = RHIType::D3D12; - - if (rhiType == RHIType::Vulkan) { - // Vulkan 特定处理 - } -} -``` - -## 相关文档 - -- [PipelineType](pipeline-type.md) - 管线类型枚举 -- [CommandQueueType](command-queue-type.md) - 命令队列类型枚举 diff --git a/docs/api/rhi/enums/root-parameter-type.md b/docs/api/rhi/enums/root-parameter-type.md deleted file mode 100644 index 44f600e1..00000000 --- a/docs/api/rhi/enums/root-parameter-type.md +++ /dev/null @@ -1,40 +0,0 @@ -# RootParameterType - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 根参数类型枚举,定义根签名中参数的类型 - -## 概述 - -RootParameterType 枚举定义了根签名中参数的不同类型,用于配置渲染管线的资源绑定。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `DescriptorTable` | 描述符表 | -| `Constants` | 内联常量(32位常量) | -| `CBV` | 内联常量缓冲区视图 | -| `SRV` | 内联着色器资源视图 | -| `UAV` | 内联无序访问视图 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - RootParameterType paramType = RootParameterType::DescriptorTable; - - if (paramType == RootParameterType::Constants) { - // 内联常量 - } -} -``` - -## 相关文档 - -- [DescriptorType](descriptor-type.md) - 描述符类型枚举 -- [ShaderVisibility](shader-visibility.md) - 着色器可见性枚举 diff --git a/docs/api/rhi/enums/shader-type.md b/docs/api/rhi/enums/shader-type.md deleted file mode 100644 index cb05bf45..00000000 --- a/docs/api/rhi/enums/shader-type.md +++ /dev/null @@ -1,47 +0,0 @@ -# ShaderType - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 着色器类型枚举,定义不同阶段的着色器类型 - -## 概述 - -ShaderType 枚举定义了 GPU 渲染管线中不同阶段的着色器类型。这些类型对应于图形渲染和计算任务中的各个着色器阶段。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Vertex` | 顶点着色器,处理顶点变换 | -| `Fragment` | 片元着色器,处理像素着色 | -| `Geometry` | 几何着色器,处理图元操作 | -| `Compute` | 计算着色器,用于通用计算 | -| `TessControl` | 细分控制着色器 | -| `TessEvaluation` | 细分评估着色器 | -| `Hull` | 外壳着色器(DirectX 11) | -| `Domain` | 域着色器(DirectX 11) | -| `Amplification` | 放大着色器(Mesh Shader) | -| `Mesh` | 网格着色器 | -| `Library` | 着色器库 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - ShaderType vertexShader = ShaderType::Vertex; - ShaderType computeShader = ShaderType::Compute; - - if (vertexShader == ShaderType::Vertex) { - // 处理顶点着色器 - } -} -``` - -## 相关文档 - -- [CullMode](cull-mode.md) - 渲染状态枚举 -- [PipelineType](pipeline-type.md) - 管线类型枚举 diff --git a/docs/api/rhi/enums/shader-visibility.md b/docs/api/rhi/enums/shader-visibility.md deleted file mode 100644 index 19b3db3f..00000000 --- a/docs/api/rhi/enums/shader-visibility.md +++ /dev/null @@ -1,43 +0,0 @@ -# ShaderVisibility - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 着色器可见性枚举,定义根签名参数对哪些着色器阶段可见 - -## 概述 - -ShaderVisibility 枚举控制根签名中的描述符或常量对渲染管线中哪些着色器阶段可见。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `All` | 对所有着色器阶段可见 | -| `Vertex` | 仅对顶点着色器可见 | -| `Hull` | 仅对外壳着色器可见 | -| `Domain` | 仅对域着色器可见 | -| `Geometry` | 仅对几何着色器可见 | -| `Pixel` | 仅对像素着色器可见 | -| `Amplification` | 仅对放大着色器可见 | -| `Mesh` | 仅对网格着色器可见 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - ShaderVisibility visibility = ShaderVisibility::All; - - if (visibility == ShaderVisibility::Pixel) { - // 仅像素着色器可见 - } -} -``` - -## 相关文档 - -- [ShaderType](shader-type.md) - 着色器类型枚举 -- [RootParameterType](root-parameter-type.md) - 根参数类型枚举 diff --git a/docs/api/rhi/enums/stencil-op.md b/docs/api/rhi/enums/stencil-op.md deleted file mode 100644 index d49478c0..00000000 --- a/docs/api/rhi/enums/stencil-op.md +++ /dev/null @@ -1,43 +0,0 @@ -# StencilOp - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 模板操作枚举,定义模板测试失败时的操作 - -## 概述 - -StencilOp 枚举定义了当模板测试失败时对模板缓冲区执行的操作,用于实现各种遮罩和剪裁效果。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Keep` | 保持现有模板值 | -| `Zero` | 将模板值设为 0 | -| `Replace` | 用参考值替换模板值 | -| `IncrSat` | 递增模板值,饱和到最大值 | -| `DecrSat` | 递减模板值,饱和到最小值 | -| `Invert` | 按位翻转模板值 | -| `Incr` | 递增模板值(可回绕) | -| `Decr` | 递减模板值(可回绕) | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - StencilOp failOp = StencilOp::Keep; - - if (failOp == StencilOp::Replace) { - // 替换模板值 - } -} -``` - -## 相关文档 - -- [ComparisonFunc](comparison-func.md) - 比较函数枚举 -- [LoadAction](load-action.md) - 加载操作枚举 diff --git a/docs/api/rhi/enums/store-action.md b/docs/api/rhi/enums/store-action.md deleted file mode 100644 index c4eeef14..00000000 --- a/docs/api/rhi/enums/store-action.md +++ /dev/null @@ -1,40 +0,0 @@ -# StoreAction - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 存储操作枚举,定义渲染目标存储时的操作 - -## 概述 - -StoreAction 枚举定义了资源存储时的行为,用于控制渲染结果如何保存到目标资源。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Undefined` | 未定义,不执行存储 | -| `Store` | 存储渲染结果 | -| `Resolve` | 解析多重采样 | -| `StoreAndResolve` | 存储并解析 | -| `Discard` | 丢弃渲染结果 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - StoreAction storeAction = StoreAction::Store; - - if (storeAction == StoreAction::Resolve) { - // 解析多重采样 - } -} -``` - -## 相关文档 - -- [LoadAction](load-action.md) - 加载操作枚举 -- [PresentFlags](present-flags.md) - 显示标志枚举 diff --git a/docs/api/rhi/enums/texture-address-mode.md b/docs/api/rhi/enums/texture-address-mode.md deleted file mode 100644 index a3188dd2..00000000 --- a/docs/api/rhi/enums/texture-address-mode.md +++ /dev/null @@ -1,40 +0,0 @@ -# TextureAddressMode - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 纹理寻址模式枚举,定义纹理坐标超出范围时的行为 - -## 概述 - -TextureAddressMode 枚举定义了当纹理坐标超出 [0, 1] 范围时的采样行为。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Wrap` | 重复寻址 | -| `Mirror` | 镜像重复寻址 | -| `Clamp` | 夹取到边缘 | -| `Border` | 使用边界颜色 | -| `MirrorOnce` | 单次镜像后夹取 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - TextureAddressMode addressMode = TextureAddressMode::Wrap; - - if (addressMode == TextureAddressMode::Clamp) { - // 夹取到边缘 - } -} -``` - -## 相关文档 - -- [FilterMode](filter-mode.md) - 过滤模式枚举 -- [BorderColor](border-color.md) - 边界颜色枚举 diff --git a/docs/api/rhi/enums/texture-type.md b/docs/api/rhi/enums/texture-type.md deleted file mode 100644 index 759fde21..00000000 --- a/docs/api/rhi/enums/texture-type.md +++ /dev/null @@ -1,41 +0,0 @@ -# TextureType - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 纹理类型枚举,定义不同维度的纹理类型 - -## 概述 - -TextureType 枚举定义了引擎支持的各种纹理类型,包括 1D、2D、3D 纹理以及纹理数组和立方体贴图。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Texture1D` | 一维纹理 | -| `Texture2D` | 二维纹理 | -| `Texture2DArray` | 二维纹理数组 | -| `Texture3D` | 三维纹理 | -| `TextureCube` | 立方体贴图 | -| `TextureCubeArray` | 立方体贴图数组 | - -## 使用示例 - -```cpp -#include "RHI/RHIEnums.h" - -void Example() { - TextureType texType = TextureType::Texture2D; - - if (texType == TextureType::TextureCube) { - // 立方体贴图处理 - } -} -``` - -## 相关文档 - -- [BufferType](buffer-type.md) - 缓冲区类型枚举 -- [DescriptorType](descriptor-type.md) - 描述符类型枚举 diff --git a/docs/api/rhi/factory/create-rhi-device-string.md b/docs/api/rhi/factory/create-rhi-device-string.md deleted file mode 100644 index cb8a55ab..00000000 --- a/docs/api/rhi/factory/create-rhi-device-string.md +++ /dev/null @@ -1,59 +0,0 @@ -# RHIFactory::CreateRHIDevice - -```cpp -static RHIDevice* CreateRHIDevice(const std::string& typeName); -``` - -根据指定的 RHI 类型名称创建一个新的 RHI 设备实例。 - -**参数:** -- `typeName` - RHI 类型的字符串名称,支持的值包括: - - `"D3D12"` - DirectX 12 - - `"OpenGL"` - OpenGL - - `"Vulkan"` - Vulkan - - `"Metal"` - Metal - -**返回:** 新创建的 RHIDevice 指针,如果创建失败则返回 nullptr。 - -**异常:** 无 - -**线程安全:** ❌ 该方法本身是线程安全的,但返回的 RHIDevice 实例通常不是线程安全的。 - -**复杂度:** O(n),其中 n 为 typeName 字符串长度 - -**示例:** - -```cpp -#include "XCEngine/RHI/RHIFactory.h" -#include "XCEngine/RHI/RHIDevice.h" -#include - -using namespace XCEngine::RHI; - -int main() { - RHIDevice* device = RHIFactory::CreateRHIDevice("Vulkan"); - if (!device) { - std::cerr << "Failed to create Vulkan device" << std::endl; - return 1; - } - - RHIDeviceDesc desc; - if (!device->Initialize(desc)) { - std::cerr << "Failed to initialize device" << std::endl; - delete device; - return 1; - } - - const RHIDeviceInfo& info = device->GetDeviceInfo(); - std::cout << "Device created: " << info.deviceName << std::endl; - - device->Shutdown(); - delete device; - return 0; -} -``` - -## 相关文档 - -- [RHIFactory](factory.md) - 返回类总览 -- [`CreateRHIDevice(RHIType)`](create-rhi-device-type.md) - 根据枚举类型创建设备 diff --git a/docs/api/rhi/factory/create-rhi-device-type.md b/docs/api/rhi/factory/create-rhi-device-type.md deleted file mode 100644 index 0243fbbc..00000000 --- a/docs/api/rhi/factory/create-rhi-device-type.md +++ /dev/null @@ -1,59 +0,0 @@ -# RHIFactory::CreateRHIDevice - -```cpp -static RHIDevice* CreateRHIDevice(RHIType type); -``` - -根据指定的 RHI 类型创建一个新的 RHI 设备实例。 - -**参数:** -- `type` - RHI 类型,指定要创建的图形 API 类型,可选值包括: - - `RHIType::D3D12` - DirectX 12 - - `RHIType::OpenGL` - OpenGL - - `RHIType::Vulkan` - Vulkan - - `RHIType::Metal` - Metal - -**返回:** 新创建的 RHIDevice 指针,如果创建失败则返回 nullptr。 - -**异常:** 无 - -**线程安全:** ❌ 该方法本身是线程安全的,但返回的 RHIDevice 实例通常不是线程安全的。 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/RHI/RHIFactory.h" -#include "XCEngine/RHI/RHIDevice.h" -#include - -using namespace XCEngine::RHI; - -int main() { - RHIDevice* device = RHIFactory::CreateRHIDevice(RHIType::D3D12); - if (!device) { - std::cerr << "Failed to create D3D12 device" << std::endl; - return 1; - } - - RHIDeviceDesc desc; - if (!device->Initialize(desc)) { - std::cerr << "Failed to initialize device" << std::endl; - delete device; - return 1; - } - - const RHIDeviceInfo& info = device->GetDeviceInfo(); - std::cout << "Device created: " << info.deviceName << std::endl; - - device->Shutdown(); - delete device; - return 0; -} -``` - -## 相关文档 - -- [RHIFactory](factory.md) - 返回类总览 -- [`CreateRHIDevice(string)`](create-rhi-device-string.md) - 根据字符串名称创建设备 diff --git a/docs/api/rhi/factory/destructor.md b/docs/api/rhi/factory/destructor.md deleted file mode 100644 index b89e7488..00000000 --- a/docs/api/rhi/factory/destructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHIFactory::~RHIFactory - -```cpp -virtual ~RHIFactory() = default; -``` - -虚析构函数,确保派生类对象通过基类指针删除时能正确调用析构函数。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// RHIFactory 是静态工厂类,通常不需要直接销毁 -// 但如果存在派生类,可以通过基类指针删除 -RHIFactory* factory = /* 某些情况下获取的派生类实例 */; -delete factory; // 正确调用析构函数 -``` - -## 相关文档 - -- [RHIFactory 总览](factory.md) - 返回类总览 -- [CreateRHIDevice](create-rhi-device-type.md) - 创建设备 diff --git a/docs/api/rhi/factory/factory.md b/docs/api/rhi/factory/factory.md deleted file mode 100644 index 27e9cb9f..00000000 --- a/docs/api/rhi/factory/factory.md +++ /dev/null @@ -1,50 +0,0 @@ -# RHIFactory - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` (static methods only) - -**头文件**: `XCEngine/RHI/RHIFactory.h` - -**描述**: RHI 设备工厂,用于创建不同图形 API 后端的渲染设备。 - -## 概述 - -`RHIFactory` 是静态工厂类,提供统一的接口来创建不同后端的 `RHIDevice` 实例。通过 `RHIType` 枚举指定要创建的后端类型。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`~RHIFactory`](destructor.md) | 虚析构函数 | -| [`CreateRHIDevice(RHIType)`](create-rhi-device-type.md) | 使用枚举类型创建 RHI 设备 | -| [`CreateRHIDevice(std::string)`](create-rhi-device-string.md) | 使用字符串创建 RHI 设备 | - -## 类型映射 - -| RHIType | typeName 参数值 | -|----------|-----------------| -| `RHIType::D3D12` | `"D3D12"` | -| `RHIType::OpenGL` | `"OpenGL"` | -| `RHIType::Vulkan` | `"Vulkan"` | -| `RHIType::Metal` | `"Metal"` | - -## 使用示例 - -```cpp -// 方法1:使用枚举创建 -RHIDevice* d3d12Device = RHIFactory::CreateRHIDevice(RHIType::D3D12); - -// 方法2:使用字符串创建 -RHIDevice* glDevice = RHIFactory::CreateRHIDevice("OpenGL"); - -// 方法3:根据配置选择 -std::string backend = "D3D12"; -RHIDevice* device = RHIFactory::CreateRHIDevice(backend); -``` - -## 相关文档 - -- [../rhi/rhi.md](../rhi.md) - RHI 模块总览 -- [RHIDevice](../device/device.md) - 渲染设备 -- [RHIEnums](../enums/enums.md) - RHIType 枚举定义 diff --git a/docs/api/rhi/fence/constructor.md b/docs/api/rhi/fence/constructor.md deleted file mode 100644 index e827fc5f..00000000 --- a/docs/api/rhi/fence/constructor.md +++ /dev/null @@ -1,28 +0,0 @@ -# RHIFence::RHIFence - -```cpp -RHIFence() = default; -``` - -默认构造函数,创建空的 RHIFence 对象。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过设备创建围栏 -RHIFence* fence = device->CreateFence(desc); -// fence 现在是一个有效的围栏引用 -``` - -## 相关文档 - -- [RHIFence 总览](fence.md) - 返回类总览 -- [CreateFence](../device/create-fence.md) - 创建围栏 diff --git a/docs/api/rhi/fence/destructor.md b/docs/api/rhi/fence/destructor.md deleted file mode 100644 index 55cb25b7..00000000 --- a/docs/api/rhi/fence/destructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHIFence::~RHIFence - -```cpp -virtual ~RHIFence() = default; -``` - -虚析构函数,确保派生类对象通过基类指针删除时能正确调用析构函数。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过基类指针销毁围栏对象 -RHIFence* fence = device->CreateFence(desc); -// ... 使用 fence ... -delete fence; // 自动调用派生类析构函数 -``` - -## 相关文档 - -- [RHIFence 总览](fence.md) - 返回类总览 -- [Shutdown](shutdown.md) - 关闭围栏 diff --git a/docs/api/rhi/fence/fence.md b/docs/api/rhi/fence/fence.md deleted file mode 100644 index 1266a2a4..00000000 --- a/docs/api/rhi/fence/fence.md +++ /dev/null @@ -1,55 +0,0 @@ -# RHIFence - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` (abstract) - -**头文件**: `XCEngine/RHI/RHIFence.h` - -**描述**: 围栏接口,用于 GPU 同步 - -## 概述 - -RHIFence 是 RHI(Render Hardware Interface)子系统中的围栏抽象接口,用于在 CPU 和 GPU 之间进行同步操作。围栏是一种常用的 GPU 同步机制,允许 CPU 等待 GPU 完成特定任务,或让 GPU 等待 CPU 提交特定命令。 - -作为抽象基类,RHIFence 定义了一组纯虚接口,具体实现由底层图形 API(如 DirectX 12、Vulkan)提供。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`RHIFence`](constructor.md) | 默认构造函数 | -| [`~RHIFence`](destructor.md) | 虚析构函数 | -| [`Shutdown`](shutdown.md) | 关闭围栏并释放资源 | -| [`Signal`](signal.md) | 发送信号(无参数版本) | -| [`Signal`](signal-value.md) | 发送信号(带值版本) | -| [`Wait`](wait.md) | 等待围栏达到指定值 | -| [`GetCompletedValue`](get-completed-value.md) | 获取已完成的值 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | - -## 使用示例 - -```cpp -#include "XCEngine/RHI/RHIFence.h" - -// 假设通过 RHI 设备创建围栏 -RHIFence* fence = device->CreateFence(); - -// 提交 GPU 命令... - -// 发送信号 -fence->Signal(); - -// 在 CPU 端等待 GPU 完成 -fence->Wait(fence->GetCompletedValue()); - -// 获取原生句柄用于平台特定操作 -void* nativeHandle = fence->GetNativeHandle(); - -// 关闭围栏 -fence->Shutdown(); -``` - -## 相关文档 - -- [RHI 模块总览](../rhi.md) - RHI 模块介绍 diff --git a/docs/api/rhi/fence/get-completed-value.md b/docs/api/rhi/fence/get-completed-value.md deleted file mode 100644 index 4d1c9188..00000000 --- a/docs/api/rhi/fence/get-completed-value.md +++ /dev/null @@ -1,21 +0,0 @@ -# RHIFence::GetCompletedValue - -```cpp -virtual uint64_t GetCompletedValue() const = 0; -``` - -获取已完成信号值。 - -**参数:** 无 - -**返回值:** (uint64_t) 已完成的信号值 - -**示例:** - -```cpp -uint64_t value = fence->GetCompletedValue(); -``` - -## 相关文档 - -- [RHIFence 总览](fence.md) - 返回类总览 diff --git a/docs/api/rhi/fence/get-native-handle.md b/docs/api/rhi/fence/get-native-handle.md deleted file mode 100644 index 838e8c69..00000000 --- a/docs/api/rhi/fence/get-native-handle.md +++ /dev/null @@ -1,17 +0,0 @@ -# RHIFence::GetNativeHandle - -```cpp -virtual void* GetNativeHandle() = 0; -``` - -获取原生 API 句柄。 - -**参数:** 无 - -**返回值:** (void*) 原生栅栏句柄 - -**复杂度:** O(1) - -## 相关文档 - -- [RHIFence 总览](fence.md) - 返回类总览 diff --git a/docs/api/rhi/fence/is-signaled.md b/docs/api/rhi/fence/is-signaled.md deleted file mode 100644 index af51c57b..00000000 --- a/docs/api/rhi/fence/is-signaled.md +++ /dev/null @@ -1,23 +0,0 @@ -# RHIFence::IsSignaled - -```cpp -virtual bool IsSignaled() const = 0; -``` - -检查栅栏是否被信号触发。 - -**参数:** 无 - -**返回值:** (bool) 如果栅栏已被信号触发返回 true,否则返回 false - -**示例:** - -```cpp -if (fence->IsSignaled()) { - // 栅栏已完成 -} -``` - -## 相关文档 - -- [RHIFence 总览](fence.md) - 返回类总览 diff --git a/docs/api/rhi/fence/shutdown.md b/docs/api/rhi/fence/shutdown.md deleted file mode 100644 index e3f44d1c..00000000 --- a/docs/api/rhi/fence/shutdown.md +++ /dev/null @@ -1,28 +0,0 @@ -# RHIFence::Shutdown - -```cpp -virtual void Shutdown() = 0; -``` - -关闭围栏并释放所有相关资源。此方法将围栏置于不可用状态,任何后续调用行为未定义。 - -**线程安全**:❌ - -**复杂度**:O(1) - -**示例**: - -```cpp -RHIFence* fence = device->CreateFence(); - -// 使用围栏... -fence->Signal(); - -// 关闭围栏,释放资源 -fence->Shutdown(); -fence = nullptr; -``` - -## 相关文档 - -- [RHIFence](fence.md) - 返回类总览 diff --git a/docs/api/rhi/fence/signal-value.md b/docs/api/rhi/fence/signal-value.md deleted file mode 100644 index 4b2acad4..00000000 --- a/docs/api/rhi/fence/signal-value.md +++ /dev/null @@ -1,34 +0,0 @@ -# RHIFence::Signal - -```cpp -virtual void Signal(uint64_t value) = 0; -``` - -将围栏设置为指定的值并通知 GPU。该方法允许设置自定义的围栏值,用于更精细的同步控制。 - -**参数:** -- `value` - 要设置的围栏值,一个 64 位无符号整数 - -**返回:** 无 - -**线程安全**:❌ - -**复杂度**:O(1) - -**示例**: - -```cpp -RHIFence* fence = device->CreateFence(); - -// 设置围栏值为特定标记 -const uint64_t kFrameFenceValue = 1000ULL; -fence->Signal(kFrameFenceValue); - -// 等待直到围栏达到指定值 -fence->Wait(kFrameFenceValue); -``` - -## 相关文档 - -- [RHIFence](fence.md) - 返回类总览 -- [Signal](signal.md) - 无参数版本的 Signal diff --git a/docs/api/rhi/fence/signal.md b/docs/api/rhi/fence/signal.md deleted file mode 100644 index ab50c2a8..00000000 --- a/docs/api/rhi/fence/signal.md +++ /dev/null @@ -1,32 +0,0 @@ -# RHIFence::Signal - -```cpp -virtual void Signal() = 0; -``` - -将围栏值设置为当前设备的信号值,并通知 GPU 该围栏已被触发。此方法使围栏处于有信号状态,CPU 和 GPU 可以据此进行同步操作。 - -**参数:** 无 - -**返回:** 无 - -**线程安全**:❌ - -**复杂度**:O(1) - -**示例**: - -```cpp -RHIFence* fence = device->CreateFence(); - -// 提交 GPU 命令后发送信号 -fence->Signal(); - -// 或者在 CPU 端等待 -fence->Wait(fence->GetCompletedValue()); -``` - -## 相关文档 - -- [RHIFence](fence.md) - 返回类总览 -- [Signal(value)](signal-value.md) - 带值版本的 Signal diff --git a/docs/api/rhi/fence/wait.md b/docs/api/rhi/fence/wait.md deleted file mode 100644 index 16956013..00000000 --- a/docs/api/rhi/fence/wait.md +++ /dev/null @@ -1,35 +0,0 @@ -# RHIFence::Wait - -```cpp -virtual void Wait(uint64_t value) = 0; -``` - -阻塞当前线程,直到围栏值达到或超过指定值。此方法用于 CPU 端等待 GPU 完成特定任务。 - -**参数:** -- `value` - 要等待的围栏值 - -**返回:** 无 - -**线程安全**:❌ - -**复杂度**:O(n),具体取决于 GPU 完成指定值所需时间 - -**示例**: - -```cpp -RHIFence* fence = device->CreateFence(); - -fence->Signal(500ULL); - -// 执行其他 CPU 工作... - -// 等待 GPU 完成到指定值 -fence->Wait(500ULL); - -// 继续后续处理 -``` - -## 相关文档 - -- [RHIFence](fence.md) - 返回类总览 diff --git a/docs/api/rhi/framebuffer/framebuffer.md b/docs/api/rhi/framebuffer/framebuffer.md deleted file mode 100644 index 2ebc407a..00000000 --- a/docs/api/rhi/framebuffer/framebuffer.md +++ /dev/null @@ -1,54 +0,0 @@ -# RHIFramebuffer - -**命名空间**: `XCEngine::RHI` - -**类型**: `class (abstract)` - -**头文件**: `XCEngine/RHI/RHIFramebuffer.h` - -**描述**: 帧缓冲抽象接口,封装渲染目标帧缓冲的创建和管理。 - -## 概述 - -`RHIFramebuffer` 是 RHI 抽象层的帧缓冲接口,用于管理渲染目标(Render Target)的帧缓冲对象。它代表一个可用的帧缓冲结构,包含颜色附件、深度附件和模板附件。不同图形 API 后端(OpenGL、D3D12)通过实现此接口提供各自的帧缓冲管理机制。 - -帧缓冲是渲染管线中的核心对象,用于: -- 存储渲染操作的颜色、深度、模板数据 -- 作为纹理输入传递给后续渲染步骤 -- 支持多重渲染目标(MRT)和延迟渲染 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Initialize`](initialize.md) | 初始化帧缓冲 | -| [`Shutdown`](shutdown.md) | 关闭帧缓冲 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | -| [`GetWidth`](get-width.md) | 获取帧缓冲宽度 | -| [`GetHeight`](get-height.md) | 获取帧缓冲高度 | -| [`IsValid`](is-valid.md) | 检查帧缓冲是否有效 | - -## 使用示例 - -```cpp -#include -#include - -// 通过 RHIDevice 创建帧缓冲 -RHIFramebuffer* framebuffer = device->CreateFramebuffer( - renderPass, - width, height, - colorAttachmentCount, - colorAttachments, - depthStencilAttachment -); - -if (framebuffer && framebuffer->IsValid()) { - // 使用帧缓冲进行渲染 - framebuffer->Shutdown(); -} -``` - -## 相关文档 - -- [RHIRenderPass](../render-pass/render-pass.md) - 渲染通道接口 diff --git a/docs/api/rhi/framebuffer/get-height.md b/docs/api/rhi/framebuffer/get-height.md deleted file mode 100644 index 9511c116..00000000 --- a/docs/api/rhi/framebuffer/get-height.md +++ /dev/null @@ -1,17 +0,0 @@ -# RHIFramebuffer::GetHeight - -获取帧缓冲的高度。 - -```cpp -virtual uint32_t GetHeight() const = 0; -``` - -**返回:** `uint32_t` - 帧缓冲高度(像素) - -**线程安全:** ✅ - -**示例:** - -```cpp -uint32_t height = framebuffer->GetHeight(); -``` diff --git a/docs/api/rhi/framebuffer/get-native-handle.md b/docs/api/rhi/framebuffer/get-native-handle.md deleted file mode 100644 index c8eae108..00000000 --- a/docs/api/rhi/framebuffer/get-native-handle.md +++ /dev/null @@ -1,25 +0,0 @@ -# RHIFramebuffer::GetNativeHandle - -获取帧缓冲的原生句柄。 - -```cpp -virtual void* GetNativeHandle() = 0; -``` - -返回底层图形 API 的帧缓冲句柄。不同后端返回不同类型: -- OpenGL: 返回 `GLuint`(帧缓冲对象 ID) -- D3D12: 返回 `ID3D12Resource*` 指针 - -**返回:** `void*` - 原生句柄 - -**线程安全:** ❌ - -**示例:** - -```cpp -void* handle = framebuffer->GetNativeHandle(); -#ifdef XCENGINE_OPENGL - GLuint fbo = static_cast(reinterpret_cast(handle)); - glBindFramebuffer(GL_FRAMEBUFFER, fbo); -#endif -``` diff --git a/docs/api/rhi/framebuffer/get-width.md b/docs/api/rhi/framebuffer/get-width.md deleted file mode 100644 index bdb84cf2..00000000 --- a/docs/api/rhi/framebuffer/get-width.md +++ /dev/null @@ -1,17 +0,0 @@ -# RHIFramebuffer::GetWidth - -获取帧缓冲的宽度。 - -```cpp -virtual uint32_t GetWidth() const = 0; -``` - -**返回:** `uint32_t` - 帧缓冲宽度(像素) - -**线程安全:** ✅ - -**示例:** - -```cpp -uint32_t width = framebuffer->GetWidth(); -``` diff --git a/docs/api/rhi/framebuffer/initialize.md b/docs/api/rhi/framebuffer/initialize.md deleted file mode 100644 index b93a31e4..00000000 --- a/docs/api/rhi/framebuffer/initialize.md +++ /dev/null @@ -1,49 +0,0 @@ -# RHIFramebuffer::Initialize - -初始化帧缓冲对象。 - -```cpp -virtual bool Initialize( - class RHIRenderPass* renderPass, - uint32_t width, - uint32_t height, - uint32_t colorAttachmentCount, - RHIResourceView** colorAttachments, - RHIResourceView* depthStencilAttachment -) = 0; -``` - -根据指定的渲染通道和附件配置,创建并初始化帧缓冲对象。 - -**参数:** -- `renderPass` - 关联的渲染通道对象 -- `width` - 帧缓冲宽度(像素) -- `height` - 帧缓冲高度(像素) -- `colorAttachmentCount` - 颜色附件数量 -- `colorAttachments` - 颜色附件资源视图数组 -- `depthStencilAttachment` - 深度模板附件资源视图,可为 `nullptr` - -**返回:** `bool` - 初始化成功返回 `true`,失败返回 `false` - -**线程安全:** ❌ - -**注意:** -- `width` 和 `height` 必须大于 0 -- `colorAttachments` 数组长度必须与 `colorAttachmentCount` 匹配 -- 所有附件的尺寸必须与指定的 `width`、`height` 一致 -- 帧缓冲创建后,其尺寸不可更改,需调用 `Shutdown` 后重新初始化 - -**示例:** - -```cpp -// 创建带有颜色和深度附件的帧缓冲 -RHIResourceView* colorViews[1] = { colorRTView }; -RHIResourceView* depthView = depthStencilView; - -bool success = framebuffer->Initialize( - renderPass, - 1920, 1080, - 1, colorViews, - depthView -); -``` diff --git a/docs/api/rhi/framebuffer/is-valid.md b/docs/api/rhi/framebuffer/is-valid.md deleted file mode 100644 index e13a9a4f..00000000 --- a/docs/api/rhi/framebuffer/is-valid.md +++ /dev/null @@ -1,27 +0,0 @@ -# RHIFramebuffer::IsValid - -检查帧缓冲是否有效。 - -```cpp -virtual bool IsValid() const = 0; -``` - -判断帧缓冲是否已正确初始化且可用于渲染操作。 - -**返回:** `bool` - 帧缓冲有效返回 `true`,无效返回 `false` - -**线程安全:** ✅ - -**注意:** -- 返回 `false` 可能原因:未初始化、初始化失败、已被 `Shutdown` -- 在调用 `Initialize` 前调用此方法会返回 `false` - -**示例:** - -```cpp -if (framebuffer->IsValid()) { - // 执行渲染操作 -} else { - // 处理无效帧缓冲 -} -``` diff --git a/docs/api/rhi/framebuffer/shutdown.md b/docs/api/rhi/framebuffer/shutdown.md deleted file mode 100644 index 968d998d..00000000 --- a/docs/api/rhi/framebuffer/shutdown.md +++ /dev/null @@ -1,21 +0,0 @@ -# RHIFramebuffer::Shutdown - -关闭帧缓冲并释放相关资源。 - -```cpp -virtual void Shutdown() = 0; -``` - -销毁帧缓冲对象,释放底层图形 API 资源。调用后,帧缓冲不再有效,需要重新调用 `Initialize` 才能使用。 - -**线程安全:** ❌ - -**注意:** -- 调用此方法后,帧缓冲对象仍可被安全地重复调用 `Shutdown` -- 确保在帧缓冲未被任何活跃渲染操作使用时调用 - -**示例:** - -```cpp -framebuffer->Shutdown(); -``` diff --git a/docs/api/rhi/opengl/README.md b/docs/api/rhi/opengl/README.md deleted file mode 100644 index f3ec7d3a..00000000 --- a/docs/api/rhi/opengl/README.md +++ /dev/null @@ -1,26 +0,0 @@ -# OpenGL 后端组件 - -OpenGL 后端已创建以下组件文件夹和文档: - -- `device/` - OpenGLDevice -- `buffer/` - OpenGLBuffer -- `texture/` - OpenGLTexture -- `command-list/` - OpenGLCommandList -- `command-queue/` - OpenGLCommandQueue -- `swap-chain/` - OpenGLSwapChain -- `fence/` - OpenGLFence -- `shader/` - OpenGLShader -- `pipeline-state/` - OpenGLPipelineState -- `sampler/` - OpenGLSampler -- `vertex-array/` - OpenGLVertexArray -- `render-target-view/` - OpenGLRenderTargetView -- `depth-stencil-view/` - OpenGLDepthStencilView - -每个组件文件夹包含: -- `{component}.md` - 类总览 -- `methods.md` - 方法详细文档 - -## 相关文档 - -- [OpenGL 后端总览](opengl.md) -- [RHI 抽象层](opengl.md) diff --git a/docs/api/rhi/opengl/buffer/bind-base.md b/docs/api/rhi/opengl/buffer/bind-base.md deleted file mode 100644 index 9776fe53..00000000 --- a/docs/api/rhi/opengl/buffer/bind-base.md +++ /dev/null @@ -1,21 +0,0 @@ -# OpenGLBuffer::BindBase - -```cpp -void BindBase(unsigned int target, unsigned int index) const; -``` - -将缓冲区绑定到固定的 binding point。 - -**参数:** -- `target` - OpenGL target (如 GL_ARRAY_BUFFER, GL_ELEMENT_ARRAY_BUFFER) -- `index` - binding point 索引 - -**示例:** - -```cpp -buffer.BindBase(GL_UNIFORM_BUFFER, 0); -``` - -## 相关文档 - -- [OpenGLBuffer](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/buffer/bind.md b/docs/api/rhi/opengl/buffer/bind.md deleted file mode 100644 index 8305ff01..00000000 --- a/docs/api/rhi/opengl/buffer/bind.md +++ /dev/null @@ -1,17 +0,0 @@ -# OpenGLBuffer::Bind - -```cpp -void Bind() const; -``` - -绑定缓冲区到 OpenGL 目标。 - -**示例:** - -```cpp -buffer.Bind(); -``` - -## 相关文档 - -- [OpenGLBuffer 总览](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/buffer/buffer.md b/docs/api/rhi/opengl/buffer/buffer.md deleted file mode 100644 index dc5adf34..00000000 --- a/docs/api/rhi/opengl/buffer/buffer.md +++ /dev/null @@ -1,38 +0,0 @@ -# OpenGLBuffer - -**命名空间**: `XCEngine::RHI` - -**描述**: OpenGL 缓冲区的实现,继承自 `RHIBuffer`。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Initialize`](initialize.md) | 初始化缓冲区 | -| [`InitializeVertexBuffer`](initialize-vertex-buffer.md) | 初始化顶点缓冲 | -| [`InitializeIndexBuffer`](initialize-index-buffer.md) | 初始化索引缓冲 | -| [`Shutdown`](../../buffer/shutdown.md) | 关闭缓冲区 | -| [`Bind`](bind.md) | 绑定缓冲区 | -| [`Unbind`](unbind.md) | 解绑缓冲区 | -| [`BindBase`](bind-base.md) | 绑定到基准点 | -| [`Map`](map.md) | 映射缓冲区 | -| [`Unmap`](unmap.md) | 取消映射 | -| [`SetData`](set-data.md) | 设置数据 | -| [`GetID`](get-id.md) | 获取 OpenGL 缓冲 ID | -| [`GetSize`](../../buffer/get-size.md) | 获取缓冲区大小 | -| [`GetType`](get-type.md) | 获取缓冲区类型 | -| [`IsDynamic`](is-dynamic.md) | 检查是否动态 | -| [`GetBufferType`](../../buffer/get-buffer-type.md) | 获取缓冲区类型 | -| [`SetBufferType`](../../buffer/set-buffer-type.md) | 设置缓冲区类型 | -| [`GetStride`](../../buffer/get-stride.md) | 获取步长 | -| [`SetStride`](../../buffer/set-stride.md) | 设置步长 | -| [`GetNativeHandle`](../../buffer/get-native-handle.md) | 获取原生句柄 | -| [`GetState`](../../buffer/get-state.md) | 获取资源状态 | -| [`SetState`](../../buffer/set-state.md) | 设置资源状态 | -| [`GetName`](../../buffer/get-name.md) | 获取资源名称 | -| [`SetName`](../../buffer/set-name.md) | 设置资源名称 | - -## 相关文档 - -- [OpenGL 后端总览](../opengl.md) -- [RHIBuffer](../../buffer/buffer.md) - 抽象缓冲区接口 diff --git a/docs/api/rhi/opengl/buffer/get-id.md b/docs/api/rhi/opengl/buffer/get-id.md deleted file mode 100644 index f6c2a314..00000000 --- a/docs/api/rhi/opengl/buffer/get-id.md +++ /dev/null @@ -1,20 +0,0 @@ -# OpenGLBuffer::GetID - -```cpp -unsigned int GetID() const; -``` - -获取 OpenGL buffer 的 GLuint ID。 - -**返回:** OpenGL buffer ID - -**示例:** - -```cpp -unsigned int id = buffer.GetID(); -glBindBuffer(GL_ARRAY_BUFFER, id); -``` - -## 相关文档 - -- [OpenGLBuffer](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/buffer/get-type.md b/docs/api/rhi/opengl/buffer/get-type.md deleted file mode 100644 index feb3bccb..00000000 --- a/docs/api/rhi/opengl/buffer/get-type.md +++ /dev/null @@ -1,19 +0,0 @@ -# OpenGLBuffer::GetType - -```cpp -OpenGLBufferType GetType() const; -``` - -获取缓冲区类型。 - -**返回:** OpenGL 缓冲区类型 - -**示例:** - -```cpp -OpenGLBufferType type = buffer.GetType(); -``` - -## 相关文档 - -- [OpenGLBuffer 总览](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/buffer/initialize-index-buffer.md b/docs/api/rhi/opengl/buffer/initialize-index-buffer.md deleted file mode 100644 index bc23db6c..00000000 --- a/docs/api/rhi/opengl/buffer/initialize-index-buffer.md +++ /dev/null @@ -1,25 +0,0 @@ -# OpenGLBuffer::InitializeIndexBuffer - -```cpp -bool InitializeIndexBuffer(const void* data, size_t size) -``` - -初始化索引缓冲区。 - -**参数:** -- `data` - 索引数据指针 -- `size` - 数据大小(字节) - -**返回:** 成功返回 true - -**示例:** - -```cpp -uint32_t indices[] = { 0, 1, 2 }; -OpenGLBuffer buffer; -buffer.InitializeIndexBuffer(indices, sizeof(indices)); -``` - -## 相关文档 - -- [OpenGLBuffer](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/buffer/initialize-vertex-buffer.md b/docs/api/rhi/opengl/buffer/initialize-vertex-buffer.md deleted file mode 100644 index e216d9e5..00000000 --- a/docs/api/rhi/opengl/buffer/initialize-vertex-buffer.md +++ /dev/null @@ -1,25 +0,0 @@ -# OpenGLBuffer::InitializeVertexBuffer - -```cpp -bool InitializeVertexBuffer(const void* data, size_t size) -``` - -初始化顶点缓冲区。 - -**参数:** -- `data` - 顶点数据指针 -- `size` - 数据大小(字节) - -**返回:** 成功返回 true - -**示例:** - -```cpp -float vertices[] = { 0.0f, 0.5f, 0.0f }; -OpenGLBuffer buffer; -buffer.InitializeVertexBuffer(vertices, sizeof(vertices)); -``` - -## 相关文档 - -- [OpenGLBuffer](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/buffer/initialize.md b/docs/api/rhi/opengl/buffer/initialize.md deleted file mode 100644 index 9ccb8ac0..00000000 --- a/docs/api/rhi/opengl/buffer/initialize.md +++ /dev/null @@ -1,26 +0,0 @@ -# OpenGLBuffer::Initialize - -```cpp -bool Initialize(OpenGLBufferType type, size_t size, const void* data = nullptr, bool dynamic = false); -``` - -初始化 OpenGL 缓冲区。 - -**参数:** -- `type` - 缓冲区类型 -- `size` - 缓冲区大小(字节) -- `data` - 初始数据指针(可选) -- `dynamic` - 是否为动态缓冲区 - -**返回:** 成功返回 true - -**示例:** - -```cpp -OpenGLBuffer buffer; -buffer.Initialize(OpenGLBufferType::Vertex, sizeof(vertices), vertices); -``` - -## 相关文档 - -- [OpenGLBuffer 总览](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/buffer/is-dynamic.md b/docs/api/rhi/opengl/buffer/is-dynamic.md deleted file mode 100644 index ad4642a9..00000000 --- a/docs/api/rhi/opengl/buffer/is-dynamic.md +++ /dev/null @@ -1,24 +0,0 @@ -# OpenGLBuffer::IsDynamic - -```cpp -bool IsDynamic() const; -``` - -判断缓冲区是否为动态缓冲区。 - -**返回:** 如果是动态缓冲区返回 true - -**示例:** - -```cpp -if (buffer.IsDynamic()) { - // 动态缓冲区可以直接 Map/Unmap - void* data = buffer.Map(); - // ... - buffer.Unmap(); -} -``` - -## 相关文档 - -- [OpenGLBuffer](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/buffer/map.md b/docs/api/rhi/opengl/buffer/map.md deleted file mode 100644 index 42fc8da1..00000000 --- a/docs/api/rhi/opengl/buffer/map.md +++ /dev/null @@ -1,27 +0,0 @@ -# OpenGLBuffer::Map - -```cpp -void* Map() override; -``` - -映射缓冲区到客户端地址空间,使用 `GL_WRITE_ONLY` 访问模式。 - -**返回:** 指向缓冲区数据的指针 - -**示例:** - -```cpp -void* data = buffer.Map(); -if (data) { - memcpy(data, vertices, size); - buffer.Unmap(); -} -``` - -**注意:** 此方法以 `GL_WRITE_ONLY` 模式映射缓冲区,适用于写入操作。 - -## 相关文档 - -- [OpenGLBuffer 总览](buffer.md) - 返回类总览 -- [Unmap](unmap.md) - 取消映射缓冲区 -- [SetData](set-data.md) - 设置缓冲区数据 \ No newline at end of file diff --git a/docs/api/rhi/opengl/buffer/set-data.md b/docs/api/rhi/opengl/buffer/set-data.md deleted file mode 100644 index d2b110c3..00000000 --- a/docs/api/rhi/opengl/buffer/set-data.md +++ /dev/null @@ -1,30 +0,0 @@ -# OpenGLBuffer::SetData - -```cpp -void SetData(const void* data, size_t size, size_t offset = 0) override; -``` - -设置缓冲区数据。支持部分更新:当 `offset == 0` 且 `size` 等于缓冲区大小时,使用 `glBufferData` 替换整个缓冲区;否则使用 `glBufferSubData` 进行部分更新。 - -**参数:** -- `data` - 要写入的数据指针 -- `size` - 数据大小(字节) -- `offset` - 缓冲区内的偏移量(默认 0) - -**示例:** - -```cpp -// 更新整个缓冲区 -buffer.SetData(vertices, sizeof(vertices)); - -// 部分更新 -buffer.SetData(newVertices, sizeof(newVertices), sizeof(vertices)); -``` - -**注意:** 动态缓冲区使用 `GL_DYNAMIC_DRAW`,静态缓冲区使用 `GL_STATIC_DRAW`。 - -## 相关文档 - -- [OpenGLBuffer 总览](buffer.md) - 返回类总览 -- [Map](map.md) - 映射缓冲区方式写入 -- [Initialize](initialize.md) - 初始化缓冲区 \ No newline at end of file diff --git a/docs/api/rhi/opengl/buffer/unbind.md b/docs/api/rhi/opengl/buffer/unbind.md deleted file mode 100644 index 63209b58..00000000 --- a/docs/api/rhi/opengl/buffer/unbind.md +++ /dev/null @@ -1,17 +0,0 @@ -# OpenGLBuffer::Unbind - -```cpp -void Unbind() const; -``` - -解除绑定缓冲区。 - -**示例:** - -```cpp -buffer.Unbind(); -``` - -## 相关文档 - -- [OpenGLBuffer 总览](buffer.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/buffer/unmap.md b/docs/api/rhi/opengl/buffer/unmap.md deleted file mode 100644 index f5db1575..00000000 --- a/docs/api/rhi/opengl/buffer/unmap.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLBuffer::Unmap - -```cpp -void Unmap() override; -``` - -取消映射缓冲区,使数据对 GPU 可见。 - -**示例:** - -```cpp -void* data = buffer.Map(); -if (data) { - memcpy(data, vertices, size); - buffer.Unmap(); -} -``` - -## 相关文档 - -- [OpenGLBuffer 总览](buffer.md) - 返回类总览 -- [Map](map.md) - 映射缓冲区到客户端地址空间 \ No newline at end of file diff --git a/docs/api/rhi/opengl/command-list/clear-color.md b/docs/api/rhi/opengl/command-list/clear-color.md deleted file mode 100644 index 6c7638f1..00000000 --- a/docs/api/rhi/opengl/command-list/clear-color.md +++ /dev/null @@ -1,23 +0,0 @@ -# OpenGLCommandList::ClearColor - -```cpp -void ClearColor(float r, float g, float b, float a) -``` - -清除颜色缓冲区。 - -**参数:** -- `r` - 红色分量 (0.0-1.0) -- `g` - 绿色分量 (0.0-1.0) -- `b` - 蓝色分量 (0.0-1.0) -- `a` - 透明度分量 (0.0-1.0) - -**示例:** - -```cpp -commandList->ClearColor(0.0f, 0.0f, 0.0f, 1.0f); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/clear-depth-stencil.md b/docs/api/rhi/opengl/command-list/clear-depth-stencil.md deleted file mode 100644 index b81f0fa6..00000000 --- a/docs/api/rhi/opengl/command-list/clear-depth-stencil.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLCommandList::ClearDepthStencil - -```cpp -void ClearDepthStencil(void* depthStencil, float depth, uint8_t stencil) -``` - -清除深度模板目标。 - -**参数:** -- `depthStencil` - 深度模板目标指针 -- `depth` - 深度值 -- `stencil` - 模板值 - -**示例:** - -```cpp -commandList->ClearDepthStencil(depthStencil, 1.0f, 0); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/clear-depth.md b/docs/api/rhi/opengl/command-list/clear-depth.md deleted file mode 100644 index 66bea50f..00000000 --- a/docs/api/rhi/opengl/command-list/clear-depth.md +++ /dev/null @@ -1,20 +0,0 @@ -# OpenGLCommandList::ClearDepth - -```cpp -void ClearDepth(float depth) -``` - -清除深度缓冲区。 - -**参数:** -- `depth` - 深度值 (0.0-1.0) - -**示例:** - -```cpp -commandList->ClearDepth(1.0f); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/clear-render-target.md b/docs/api/rhi/opengl/command-list/clear-render-target.md deleted file mode 100644 index e3c1063b..00000000 --- a/docs/api/rhi/opengl/command-list/clear-render-target.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLCommandList::ClearRenderTarget - -```cpp -void ClearRenderTarget(void* renderTarget, const float color[4]) -``` - -清除渲染目标。 - -**参数:** -- `renderTarget` - 渲染目标指针 -- `color` - 清除颜色 [r, g, b, a] - -**示例:** - -```cpp -float color[4] = { 0.0f, 0.0f, 0.0f, 1.0f }; -commandList->ClearRenderTarget(renderTarget, color); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/clear-stencil.md b/docs/api/rhi/opengl/command-list/clear-stencil.md deleted file mode 100644 index 5a26581a..00000000 --- a/docs/api/rhi/opengl/command-list/clear-stencil.md +++ /dev/null @@ -1,20 +0,0 @@ -# OpenGLCommandList::ClearStencil - -```cpp -void ClearStencil(int stencil) -``` - -清除模板缓冲区。 - -**参数:** -- `stencil` - 模板值 - -**示例:** - -```cpp -commandList->ClearStencil(0); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/clear.md b/docs/api/rhi/opengl/command-list/clear.md deleted file mode 100644 index ddc0988b..00000000 --- a/docs/api/rhi/opengl/command-list/clear.md +++ /dev/null @@ -1,45 +0,0 @@ -# OpenGLCommandList::Clear - -```cpp -void Clear(float r, float g, float b, float a, unsigned int buffers) -``` - -清除指定的缓冲区。 - -**参数:** -- `r` - 清除颜色红色分量(范围 0.0f - 1.0f) -- `g` - 清除颜色绿色分量(范围 0.0f - 1.0f) -- `b` - 清除颜色蓝色分量(范围 0.0f - 1.0f) -- `a` - 清除颜色 Alpha 分量(范围 0.0f - 1.0f) -- `buffers` - 要清除的缓冲区标志,使用 `ClearFlag` 枚举值的位或组合: - - `ClearFlag::Color` (1) - 清除颜色缓冲区 - - `ClearFlag::Depth` (2) - 清除深度缓冲区 - - `ClearFlag::Stencil` (4) - 清除模板缓冲区 - -**返回值**:无 - -**示例:** - -```cpp -// 清除颜色缓冲区 -commandList->Clear(0.0f, 0.0f, 0.0f, 1.0f, static_cast(ClearFlag::Color)); - -// 清除颜色和深度缓冲区 -commandList->Clear(0.0f, 0.0f, 0.0f, 1.0f, - static_cast(ClearFlag::Color) | - static_cast(ClearFlag::Depth)); - -// 清除所有缓冲区 -commandList->Clear(0.0f, 0.0f, 0.0f, 1.0f, - static_cast(ClearFlag::Color) | - static_cast(ClearFlag::Depth) | - static_cast(ClearFlag::Stencil)); -``` - -## 相关文档 - -- [OpenGLCommandList 总览](command-list.md) - 返回类总览 -- [ClearColor](clear-color.md) - 仅清除颜色缓冲区 -- [ClearDepth](clear-depth.md) - 仅清除深度缓冲区 -- [ClearStencil](clear-stencil.md) - 仅清除模板缓冲区 -- [ClearDepthStencil](clear-depth-stencil.md) - 清除深度和模板缓冲区 diff --git a/docs/api/rhi/opengl/command-list/command-list.md b/docs/api/rhi/opengl/command-list/command-list.md deleted file mode 100644 index 0d6d9d2c..00000000 --- a/docs/api/rhi/opengl/command-list/command-list.md +++ /dev/null @@ -1,115 +0,0 @@ -# OpenGLCommandList - -**命名空间**: `XCEngine::RHI` - -**描述**: OpenGL 命令列表实现,继承自 `RHICommandList`。提供 OpenGL 图形 API 的命令录制与执行接口,支持底层 OpenGL 状态操作以及跨平台 RHI 抽象接口。 - -## 概述 - -`OpenGLCommandList` 是 XCEngine RHI(渲染硬件接口)层在 OpenGL 后端的实现类。它封装了 OpenGL 图形命令的调用,提供了两类接口: - -1. **RHI 抽象接口**:继承自 `RHICommandList`,提供跨后端一致性接口 -2. **OpenGL 特有方法**:底层逃逸接口,用于需要直接操作 OpenGL 状态的场景 - -## 公共方法 - -### 生命周期 - -| 方法 | 描述 | -|------|------| -| [`Shutdown`](opengl-methods.md#shutdown) | 关闭命令列表(占位实现) | -| [`Reset`](opengl-methods.md#reset) | 重置命令列表(占位实现) | -| [`Close`](opengl-methods.md#close) | 关闭命令列表(占位实现) | - -### 清除操作 - -| 方法 | 描述 | -|------|------| -| [`Clear`](clear.md) | 清除指定缓冲区 | -| [`ClearColor`](clear-color.md) | 清除颜色缓冲区 | -| [`ClearDepth`](clear-depth.md) | 清除深度缓冲区 | -| [`ClearStencil`](clear-stencil.md) | 清除模板缓冲区 | -| [`ClearDepthStencil`](clear-depth-stencil.md) | 清除深度和模板缓冲区 | -| [`ClearRenderTarget`](clear-render-target.md) | 清除渲染目标 | - -### 状态设置 - -| 方法 | 描述 | -|------|------| -| [`SetPipelineState`](set-pipeline-state.md) | 设置管线状态 | -| [`SetVertexBuffer`](set-vertex-buffer.md) | 设置顶点缓冲区 | -| [`SetVertexBuffers`](set-vertex-buffers.md) | 批量设置顶点缓冲区 | -| [`SetIndexBuffer`](set-index-buffer.md) | 设置索引缓冲区 | -| [`SetRenderTargets`](set-render-targets.md) | 设置渲染目标 | -| [`SetDepthStencilState`](set-depth-stencil-state.md) | 设置深度模板状态 | -| [`SetStencilRef`](set-stencil-ref.md) | 设置模板引用值 | -| [`SetBlendState`](set-blend-state.md) | 设置混合状态 | -| [`SetBlendFactor`](set-blend-factor.md) | 设置混合因子颜色 | -| [`SetPrimitiveTopology`](set-primitive-topology.md) | 设置图元拓扑 | - -### 视口与裁剪 - -| 方法 | 描述 | -|------|------| -| [`SetViewport`](set-viewport.md) | 设置视口 | -| [`SetViewports`](set-viewports.md) | 批量设置视口 | -| [`SetScissorRect`](set-scissor-rect.md) | 设置裁剪矩形 | -| [`SetScissorRects`](set-scissor-rects.md) | 批量设置裁剪矩形 | - -### 绘制 - -| 方法 | 描述 | -|------|------| -| [`Draw`](draw.md) | 绘制非索引图元 | -| [`DrawIndexed`](draw-indexed.md) | 绘制索引图元 | - -### 计算 - -| 方法 | 描述 | -|------|------| -| [`Dispatch`](dispatch.md) | 分发计算任务 | -| [`CopyResource`](copy-resource.md) | 复制资源(占位实现) | -| [`TransitionBarrier`](transition-barrier.md) | 资源状态转换(占位实现) | - -### OpenGL 特有方法 - -| 方法 | 描述 | -|------|------| -| [`OpenGLMethods`](opengl-methods.md) | 底层 OpenGL 逃逸接口 | - -## 使用示例 - -```cpp -#include "XCEngine/RHI/OpenGL/OpenGLCommandList.h" - -using namespace XCEngine::RHI; - -// 创建命令列表 -OpenGLCommandList* cmdList = new OpenGLCommandList(); - -// 清除颜色缓冲区 -cmdList->ClearColor(0.0f, 0.0f, 0.0f, 1.0f); - -// 设置视口 -Viewport viewport; -viewport.topLeftX = 0.0f; -viewport.topLeftY = 0.0f; -viewport.width = 800.0f; -viewport.height = 600.0f; -viewport.minDepth = 0.0f; -viewport.maxDepth = 1.0f; -cmdList->SetViewport(viewport); - -// 绑定 shader program -cmdList->UseShader(shaderProgram); - -// 绘制 -cmdList->Draw(3, 1, 0, 0); - -delete cmdList; -``` - -## 相关文档 - -- [OpenGL 后端总览](../opengl.md) -- [RHICommandList](../../command-list/command-list.md) - 抽象命令列表接口 diff --git a/docs/api/rhi/opengl/command-list/copy-resource.md b/docs/api/rhi/opengl/command-list/copy-resource.md deleted file mode 100644 index f06886c7..00000000 --- a/docs/api/rhi/opengl/command-list/copy-resource.md +++ /dev/null @@ -1,21 +0,0 @@ -# OpenGLCommandList::CopyResource - -```cpp -void CopyResource(void* dst, void* src) -``` - -复制资源。 - -**参数:** -- `dst` - 目标资源指针 -- `src` - 源资源指针 - -**示例:** - -```cpp -commandList->CopyResource(dstTexture, srcTexture); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/dispatch.md b/docs/api/rhi/opengl/command-list/dispatch.md deleted file mode 100644 index b3b80aa5..00000000 --- a/docs/api/rhi/opengl/command-list/dispatch.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLCommandList::Dispatch - -```cpp -void Dispatch(uint32_t x, uint32_t y, uint32_t z) -``` - -分发计算着色器。 - -**参数:** -- `x` - X 方向线程组数量 -- `y` - Y 方向线程组数量 -- `z` - Z 方向线程组数量 - -**示例:** - -```cpp -commandList->Dispatch(8, 8, 1); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/draw-indexed.md b/docs/api/rhi/opengl/command-list/draw-indexed.md deleted file mode 100644 index 7f4f6915..00000000 --- a/docs/api/rhi/opengl/command-list/draw-indexed.md +++ /dev/null @@ -1,24 +0,0 @@ -# OpenGLCommandList::DrawIndexed - -```cpp -void DrawIndexed(uint32_t indexCount, uint32_t instanceCount, uint32_t startIndex, int32_t baseVertex, uint32_t startInstance) -``` - -绘制索引图元。 - -**参数:** -- `indexCount` - 索引数量 -- `instanceCount` - 实例数量 -- `startIndex` - 起始索引 -- `baseVertex` - 基础顶点 -- `startInstance` - 起始实例 - -**示例:** - -```cpp -commandList->DrawIndexed(6, 1, 0, 0, 0); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/draw.md b/docs/api/rhi/opengl/command-list/draw.md deleted file mode 100644 index ea0d9de2..00000000 --- a/docs/api/rhi/opengl/command-list/draw.md +++ /dev/null @@ -1,37 +0,0 @@ -# OpenGLCommandList::Draw - -```cpp -void Draw(uint32_t vertexCount, uint32_t instanceCount, uint32_t startVertex, uint32_t startInstance) -``` - -绘制非索引图元(实例化绘制)。 - -**参数:** -- `vertexCount` - 每个实例的顶点数量 -- `instanceCount` - 要绘制的实例数量 -- `startVertex` - 第一个顶点的索引 -- `startInstance` - 第一个实例的 ID - -**返回值**:无 - -**详细描述**: -此方法使用 `glDrawArraysInstanced` 执行实例化绘制。当 `instanceCount` 为 1 时,等同于普通的非实例化绘制。 - -**示例:** - -```cpp -// 绘制单个实例(相当于 glDrawArrays) -commandList->Draw(3, 1, 0, 0); - -// 绘制 100 个实例 -commandList->Draw(3, 100, 0, 0); - -// 绘制多个实例,从实例 ID 10 开始 -commandList->Draw(3, 50, 0, 10); -``` - -## 相关文档 - -- [OpenGLCommandList 总览](command-list.md) - 返回类总览 -- [DrawIndexed](draw-indexed.md) - 索引绘制 -- [OpenGL 特有 Draw 方法](opengl-methods.md#draw-primitivetype) - 使用 PrimitiveType 的版本 diff --git a/docs/api/rhi/opengl/command-list/opengl-methods.md b/docs/api/rhi/opengl/command-list/opengl-methods.md deleted file mode 100644 index 45d97a87..00000000 --- a/docs/api/rhi/opengl/command-list/opengl-methods.md +++ /dev/null @@ -1,1128 +0,0 @@ -# OpenGLCommandList - OpenGL 特有方法 - -以下方法是 `OpenGLCommandList` 中 OpenGL 特有的底层逃逸方法。这些方法不存在于 RHI 抽象接口中,用于需要直接操作 OpenGL 状态的高级场景。 - -**注意**:这些方法直接映射到对应的 OpenGL 函数,调用时需确保 OpenGL 上下文已正确设置。 - -## 生命周期(占位实现) - -### Shutdown - -```cpp -void Shutdown() -``` - -关闭命令列表并释放资源。当前为空实现。 - -### Reset - -```cpp -void Reset() -``` - -重置命令列表状态。当前为空实现。 - -### Close - -```cpp -void Close() -``` - -关闭命令列表。当前为空实现。 - ---- - -## 顶点缓冲区(OpenGL 逃逸) - -### SetVertexBuffer (GL uint) - -```cpp -void SetVertexBuffer(unsigned int buffer, size_t offset, size_t stride) -``` - -直接使用 OpenGL buffer ID 设置顶点缓冲区。 - -**参数:** -- `buffer` - OpenGL buffer 对象的名称(ID) -- `offset` - 缓冲区中的字节偏移量 -- `stride` - 顶点之间的字节 stride - -**返回值**:无 - -**示例:** - -```cpp -cmdList->SetVertexBuffer(vbo, 0, sizeof(Vertex)); -``` - -### SetVertexBuffers (GL uint) - -```cpp -void SetVertexBuffers(unsigned int startSlot, unsigned int count, const unsigned int* buffers, const size_t* offsets, const size_t* strides) -``` - -批量设置多个顶点缓冲区。 - -**参数:** -- `startSlot` - 起始顶点属性槽位 -- `count` - 缓冲区数量 -- `buffers` - OpenGL buffer ID 数组 -- `offsets` - 偏移量数组 -- `strides` - stride 数组 - -**返回值**:无 - -### SetIndexBuffer (GL uint) - -```cpp -void SetIndexBuffer(unsigned int buffer, unsigned int type) -void SetIndexBuffer(unsigned int buffer, unsigned int type, size_t offset) -``` - -直接设置索引缓冲区。 - -**参数:** -- `buffer` - OpenGL buffer ID -- `type` - 索引数据类型(如 GL_UNSIGNED_INT) -- `offset` - 缓冲区中的字节偏移量(可选) - -**返回值**:无 - ---- - -## 顶点数组 - -### BindVertexArray - -```cpp -void BindVertexArray(unsigned int vao) -void BindVertexArray(unsigned int vao, unsigned int indexBuffer, unsigned int indexType) -``` - -绑定顶点数组对象(VAO),可同时设置索引缓冲区。 - -**参数:** -- `vao` - 顶点数组对象 ID -- `indexBuffer` - 索引缓冲区 ID(可选) -- `indexType` - 索引数据类型(可选) - -**返回值**:无 - -**示例:** - -```cpp -cmdList->BindVertexArray(vao); -``` - -### UseShader - -```cpp -void UseShader(unsigned int program) -``` - -激活 OpenGL shader program。 - -**参数:** -- `program` - Shader program ID - -**返回值**:无 - -**示例:** - -```cpp -cmdList->UseShader(shaderProgram); -``` - ---- - -## 视口与裁剪 - -### SetViewport (int) - -```cpp -void SetViewport(int x, int y, int width, int height) -``` - -使用整数参数设置视口。 - -**参数:** -- `x` - 视口左下角 X 坐标 -- `y` - 视口左下角 Y 坐标 -- `width` - 视口宽度 -- `height` - 视口高度 - -**返回值**:无 - -### SetViewport (float) - -```cpp -void SetViewport(float x, float y, float width, float height, float minDepth, float maxDepth) -``` - -使用浮点参数设置视口,包含深度范围。 - -**参数:** -- `x` - 视口左下角 X 坐标 -- `y` - 视口左下角 Y 坐标 -- `width` - 视口宽度 -- `height` - 视口高度 -- `minDepth` - 最小深度值(通常为 0.0) -- `maxDepth` - 最大深度值(通常为 1.0) - -**返回值**:无 - -### SetViewports - -```cpp -void SetViewports(unsigned int count, const float* viewports) -``` - -批量设置多个视口。 - -**参数:** -- `count` - 视口数量 -- `viewports` - 视口数组,每6个浮点数表示一个视口(x, y, width, height, minDepth, maxDepth) - -**返回值**:无 - -**示例:** - -```cpp -float viewports[12] = { - 0.0f, 0.0f, 800.0f, 600.0f, 0.0f, 1.0f, - 400.0f, 0.0f, 400.0f, 600.0f, 0.0f, 1.0f -}; -cmdList->SetViewports(2, viewports); -``` - -### SetScissor - -```cpp -void SetScissor(int x, int y, int width, int height) -``` - -设置裁剪矩形。 - -**参数:** -- `x` - 裁剪矩形左下角 X 坐标 -- `y` - 裁剪矩形左下角 Y 坐标 -- `width` - 裁剪矩形宽度 -- `height` - 裁剪矩形高度 - -**返回值**:无 - -### SetScissorRects - -```cpp -void SetScissorRects(unsigned int count, const int* rects) -``` - -批量设置裁剪矩形。 - -**参数:** -- `count` - 裁剪矩形数量 -- `rects` - 裁剪矩形数组,每4个整数表示一个矩形(x, y, width, height) - -**返回值**:无 - -### EnableScissorTest - -```cpp -void EnableScissorTest(bool enable) -``` - -启用或禁用裁剪测试。 - -**参数:** -- `enable` - true 启用,false 禁用 - -**返回值**:无 - ---- - -## 深度测试 - -### EnableDepthTest - -```cpp -void EnableDepthTest(bool enable) -``` - -启用或禁用深度测试。 - -**参数:** -- `enable` - true 启用,false 禁用 - -**返回值**:无 - -### EnableDepthWrite - -```cpp -void EnableDepthWrite(bool enable) -``` - -启用或禁用深度写入。 - -**参数:** -- `enable` - true 启用深度写入,false 禁用 - -**返回值**:无 - -### SetDepthFunc - -```cpp -void SetDepthFunc(unsigned int func) -``` - -设置深度比较函数。 - -**参数:** -- `func` - OpenGL 比较函数(GL_NEVER, GL_LESS, GL_EQUAL, GL_LEQUAL, GL_GREATER, GL_NOTEQUAL, GL_GEQUAL, GL_ALWAYS) - -**返回值**:无 - ---- - -## 模板测试 - -### EnableStencilTest - -```cpp -void EnableStencilTest(bool enable) -``` - -启用或禁用模板测试。 - -**参数:** -- `enable` - true 启用,false 禁用 - -**返回值**:无 - -### SetStencilFunc - -```cpp -void SetStencilFunc(unsigned int func, int ref, unsigned int mask) -``` - -设置模板测试函数和参考值。 - -**参数:** -- `func` - OpenGL 比较函数 -- `ref` - 模板参考值 -- `mask` - 模板缓冲区读写掩码 - -**返回值**:无 - -### SetStencilOp - -```cpp -void SetStencilOp(unsigned int fail, unsigned int zfail, unsigned int zpass) -``` - -设置模板缓冲区操作。 - -**参数:** -- `fail` - 模板测试失败时的操作(如 GL_KEEP, GL_ZERO, GL_REPLACE) -- `zfail` - 模板测试通过但深度测试失败时的操作 -- `zpass` - 两者都通过时的操作 - -**返回值**:无 - ---- - -## 混合 - -### EnableBlending - -```cpp -void EnableBlending(bool enable) -``` - -启用或禁用颜色混合。 - -**参数:** -- `enable` - true 启用,false 禁用 - -**返回值**:无 - -### SetBlendFunc - -```cpp -void SetBlendFunc(unsigned int src, unsigned int dst) -``` - -设置混合函数。 - -**参数:** -- `src` - 源混合因子(如 GL_ONE, GL_SRC_ALPHA, GL_DST_ALPHA) -- `dst` - 目标混合因子 - -**返回值**:无 - -**示例:** - -```cpp -cmdList->SetBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); -``` - -### SetBlendFuncSeparate - -```cpp -void SetBlendFuncSeparate(unsigned int srcRGB, unsigned int dstRGB, unsigned int srcAlpha, unsigned int dstAlpha) -``` - -分别设置 RGB 和 Alpha 的混合函数。 - -**参数:** -- `srcRGB` - RGB 源混合因子 -- `dstRGB` - RGB 目标混合因子 -- `srcAlpha` - Alpha 源混合因子 -- `dstAlpha` - Alpha 目标混合因子 - -**返回值**:无 - -### SetBlendEquation - -```cpp -void SetBlendEquation(unsigned int mode) -``` - -设置混合方程。 - -**参数:** -- `mode` - 混合方程模式(GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX) - -**返回值**:无 - -### SetBlendColor - -```cpp -void SetBlendColor(float r, float g, float b, float a) -``` - -设置混合常量颜色。 - -**参数:** -- `r` - 红色分量 -- `g` - 绿色分量 -- `b` - 蓝色分量 -- `a` - Alpha 分量 - -**返回值**:无 - ---- - -## 光栅化 - -### EnableCulling - -```cpp -void EnableCulling(bool enable) -``` - -启用或禁用面剔除。 - -**参数:** -- `enable` - true 启用,false 禁用 - -**返回值**:无 - -### SetCullFace - -```cpp -void SetCullFace(unsigned int face) -``` - -设置要剔除的面。 - -**参数:** -- `face` - OpenGL 面模式(GL_FRONT, GL_BACK, GL_FRONT_AND_BACK) - -**返回值**:无 - -### SetFrontFace - -```cpp -void SetFrontFace(unsigned int face) -``` - -设置正面顶点的缠绕顺序。 - -**参数:** -- `face` - GL_CW(顺时针)或 GL_CCW(逆时针) - -**返回值**:无 - -### SetPolygonMode - -```cpp -void SetPolygonMode(unsigned int mode) -``` - -设置多边形光栅化模式。 - -**参数:** -- `mode` - 光栅化模式(GL_POINT, GL_LINE, GL_FILL) - -**返回值**:无 - -### SetPolygonOffset - -```cpp -void SetPolygonOffset(float factor, float units) -``` - -设置多边形深度偏移。 - -**参数:** -- `factor` - 深度偏移因子 -- `units` - 深度偏移单位 - -**返回值**:无 - -### SetPrimitiveType - -```cpp -void SetPrimitiveType(PrimitiveType type) -``` - -设置图元类型(内部状态保存,不直接调用 GL)。 - -**参数:** -- `type` - 图元类型枚举 - -**返回值**:无 - ---- - -## 绘制(OpenGL 类型) - -### Draw (PrimitiveType) - -```cpp -void Draw(PrimitiveType type, unsigned int vertexCount, unsigned int startVertex) -``` - -绘制非索引图元。 - -**参数:** -- `type` - 图元类型 -- `vertexCount` - 顶点数量 -- `startVertex` - 起始顶点偏移 - -**返回值**:无 - -**示例:** - -```cpp -cmdList->Draw(PrimitiveType::Triangles, 3, 0); -``` - -### DrawInstanced - -```cpp -void DrawInstanced(PrimitiveType type, unsigned int vertexCount, unsigned int instanceCount, unsigned int startVertex, unsigned int startInstance) -``` - -实例化绘制。 - -**参数:** -- `type` - 图元类型 -- `vertexCount` - 每个实例的顶点数量 -- `instanceCount` - 实例数量 -- `startVertex` - 起始顶点偏移 -- `startInstance` - 起始实例 ID - -**返回值**:无 - -### DrawIndexed (PrimitiveType) - -```cpp -void DrawIndexed(PrimitiveType type, unsigned int indexCount, unsigned int startIndex, int baseVertex) -``` - -绘制索引图元。 - -**参数:** -- `type` - 图元类型 -- `indexCount` - 索引数量 -- `startIndex` - 起始索引偏移 -- `baseVertex` - 基础顶点偏移(当前实现中未使用) - -**返回值**:无 - -### DrawIndexedInstanced - -```cpp -void DrawIndexedInstanced(PrimitiveType type, unsigned int indexCount, unsigned int instanceCount, unsigned int startIndex, int baseVertex, unsigned int startInstance) -``` - -实例化索引绘制。 - -**参数:** -- `type` - 图元类型 -- `indexCount` - 索引数量 -- `instanceCount` - 实例数量 -- `startIndex` - 起始索引偏移 -- `baseVertex` - 基础顶点偏移(当前实现中未使用) -- `startInstance` - 起始实例 ID - -**返回值**:无 - -### DrawIndirect - -```cpp -void DrawIndirect(PrimitiveType type, unsigned int buffer, size_t offset, unsigned int drawCount, unsigned int stride) -``` - -间接绘制命令。 - -**参数:** -- `type` - 图元类型 -- `buffer` - 包含绘制参数的缓冲区 -- `offset` - 缓冲区中的字节偏移 -- `drawCount` - 绘制命令数量(当前实现中未使用) -- `stride` - 绘制参数结构 stride(当前实现中未使用) - -**返回值**:无 - -### DrawIndexedIndirect - -```cpp -void DrawIndexedIndirect(PrimitiveType type, unsigned int buffer, size_t offset, unsigned int drawCount, unsigned int stride) -``` - -间接索引绘制命令。 - -**参数:** -- `type` - 图元类型 -- `buffer` - 包含绘制参数的缓冲区 -- `offset` - 缓冲区中的字节偏移 -- `drawCount` - 绘制命令数量(当前实现中未使用) -- `stride` - 绘制参数结构 stride(当前实现中未使用) - -**返回值**:无 - -### MultiDrawArrays - -```cpp -void MultiDrawArrays(PrimitiveType type, const int* first, const int* count, unsigned int drawCount) -``` - -多重绘制。 - -**参数:** -- `type` - 图元类型 -- `first` - 每个绘制命令的起始索引数组 -- `count` - 每个绘制命令的顶点数量数组 -- `drawCount` - 绘制命令数量 - -**返回值**:无 - -### MultiDrawElements - -```cpp -void MultiDrawElements(PrimitiveType type, const int* count, unsigned int type_, const void* const* indices, unsigned int drawCount) -``` - -多重索引绘制。 - -**参数:** -- `type` - 图元类型 -- `count` - 每个绘制命令的索引数量数组 -- `type_` - 索引数据类型 -- `indices` - 索引指针数组 -- `drawCount` - 绘制命令数量 - -**返回值**:无 - ---- - -## 计算着色器 - -### DispatchIndirect - -```cpp -void DispatchIndirect(unsigned int buffer, size_t offset) -``` - -间接分发计算着色器。 - -**参数:** -- `buffer` - 包含分发参数的缓冲区 -- `offset` - 缓冲区中的字节偏移 - -**返回值**:无 - -### DispatchCompute - -```cpp -void DispatchCompute(unsigned int x, unsigned int y, unsigned int z, unsigned int groupX, unsigned int groupY, unsigned int groupZ) -``` - -分发计算着色器(带参数版本)。 - -**参数:** -- `x`, `y`, `z` - 工作组尺寸参数(当前实现中未使用) -- `groupX`, `groupY`, `groupZ` - 工作组数量 - -**返回值**:无 - ---- - -## 内存屏障 - -### MemoryBarrier - -```cpp -void MemoryBarrier(unsigned int barriers) -``` - -设置内存屏障。 - -**参数:** -- `barriers` - OpenGL 屏障标志(如 GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT, GL_SHADER_STORAGE_BARRIER_BIT) - -**返回值**:无 - -### TextureBarrier - -```cpp -void TextureBarrier() -``` - -设置纹理屏障。 - -**返回值**:无 - ---- - -## 纹理绑定 - -### BindTexture - -```cpp -void BindTexture(unsigned int target, unsigned int unit, unsigned int texture) -``` - -绑定纹理到纹理单元。 - -**参数:** -- `target` - 纹理目标(GL_TEXTURE_2D, GL_TEXTURE_3D 等) -- `unit` - 纹理单元索引 -- `texture` - 纹理对象 ID - -**返回值**:无 - -**示例:** - -```cpp -cmdList->BindTexture(GL_TEXTURE_2D, 0, textureID); -``` - -### BindTextures - -```cpp -void BindTextures(unsigned int first, unsigned int count, const unsigned int* textures) -``` - -批量绑定纹理。 - -**参数:** -- `first` - 起始纹理单元 -- `count` - 纹理数量 -- `textures` - 纹理 ID 数组 - -**返回值**:无 - -### BindSampler - -```cpp -void BindSampler(unsigned int unit, unsigned int sampler) -``` - -绑定采样器。 - -**参数:** -- `unit` - 纹理单元索引 -- `sampler` - 采样器对象 ID - -**返回值**:无 - -### BindSamplers - -```cpp -void BindSamplers(unsigned int first, unsigned int count, const unsigned int* samplers) -``` - -批量绑定采样器。 - -**参数:** -- `first` - 起始纹理单元 -- `count` - 采样器数量 -- `samplers` - 采样器 ID 数组 - -**返回值**:无 - -### BindImageTexture - -```cpp -void BindImageTexture(unsigned int unit, unsigned int texture, int level, bool layered, int layer, unsigned int access, unsigned int format) -``` - -绑定纹理为图像单元。 - -**参数:** -- `unit` - 图像单元索引 -- `texture` - 纹理对象 ID -- `level` - Mipmap 级别 -- `layered` - 是否绑定整个纹理数组 -- `layer` - 数组层索引 -- `access` - 访问权限(GL_READ_ONLY, GL_WRITE_ONLY, GL_READ_WRITE) -- `format` - 纹理格式 - -**返回值**:无 - ---- - -## 缓冲区绑定 - -### BindBufferBase - -```cpp -void BindBufferBase(unsigned int target, unsigned int index, unsigned int buffer) -``` - -绑定缓冲区到固定 binding point。 - -**参数:** -- `target` - 缓冲区目标(如 GL_UNIFORM_BUFFER, GL_SHADER_STORAGE_BUFFER) -- `index` - Binding point 索引 -- `buffer` - 缓冲区对象 ID - -**返回值**:无 - -### BindBufferRange - -```cpp -void BindBufferRange(unsigned int target, unsigned int index, unsigned int buffer, size_t offset, size_t size) -``` - -绑定缓冲区到范围 binding point。 - -**参数:** -- `target` - 缓冲区目标 -- `index` - Binding point 索引 -- `buffer` - 缓冲区对象 ID -- `offset` - 缓冲区中的字节偏移 -- `size` - 绑定范围大小 - -**返回值**:无 - ---- - -## OpenGL 状态 - -### Enable / Disable - -```cpp -void Enable(unsigned int cap) -void Disable(unsigned int cap) -void Enablei(unsigned int cap, unsigned int index) -void Disablei(unsigned int cap, unsigned int index) -``` - -启用或禁用 GL capability。 - -**参数:** -- `cap` - OpenGL capability 标识符 -- `index` - 目标索引(用于 indexed capabilities) - -**返回值**:无 - -**示例:** - -```cpp -cmdList->Enable(GL_PROGRAM_POINT_SIZE); -``` - ---- - -## Uniform 设置 - -### SetUniform1i / SetUniform1f - -```cpp -void SetUniform1i(int location, int v) -void SetUniform1f(int location, float v) -``` - -设置单个 uniform 变量。 - -**参数:** -- `location` - Uniform 变量位置 -- `v` - 值 - -**返回值**:无 - -### SetUniform2f - -```cpp -void SetUniform2f(int location, float x, float y) -``` - -设置 vec2 uniform 变量。 - -**参数:** -- `location` - Uniform 变量位置 -- `x`, `y` - 向量分量 - -**返回值**:无 - -### SetUniform3f - -```cpp -void SetUniform3f(int location, float x, float y, float z) -``` - -设置 vec3 uniform 变量。 - -**参数:** -- `location` - Uniform 变量位置 -- `x`, `y`, `z` - 向量分量 - -**返回值**:无 - -### SetUniform4f - -```cpp -void SetUniform4f(int location, float x, float y, float z, float w) -``` - -设置 vec4 uniform 变量。 - -**参数:** -- `location` - Uniform 变量位置 -- `x`, `y`, `z`, `w` - 向量分量 - -**返回值**:无 - -### SetUniform1fv / SetUniform2fv / SetUniform3fv / SetUniform4fv - -```cpp -void SetUniform1fv(int location, int count, const float* v) -void SetUniform2fv(int location, int count, const float* v) -void SetUniform3fv(int location, int count, const float* v) -void SetUniform4fv(int location, int count, const float* v) -``` - -设置 float 数组 uniform 变量。 - -**参数:** -- `location` - Uniform 变量位置 -- `count` - 数组元素数量 -- `v` - 值数组指针 - -**返回值**:无 - -**示例:** - -```cpp -float vec3Array[3] = {1.0f, 2.0f, 3.0f}; -cmdList->SetUniform3fv(location, 1, vec3Array); -``` - -### SetUniformMatrix4fv - -```cpp -void SetUniformMatrix4fv(int location, int count, bool transpose, const float* v) -``` - -设置矩阵 uniform 变量。 - -**参数:** -- `location` - Uniform 变量位置 -- `count` - 矩阵数量 -- `transpose` - 是否转置矩阵 -- `v` - 矩阵数据指针 - -**返回值**:无 - ---- - -## Shader 程序 - -### UseProgram - -```cpp -void UseProgram(unsigned int program) -``` - -激活 shader program。 - -**参数:** -- `program` - Program 对象 ID - -**返回值**:无 - -### BindFragDataLocation - -```cpp -void BindFragDataLocation(unsigned int program, unsigned int colorNumber, const char* name) -void BindFragDataLocationIndexed(unsigned int program, unsigned int colorNumber, unsigned int index, const char* name) -``` - -设置 fragment shader 颜色输出绑定。 - -**参数:** -- `program` - Program 对象 ID -- `colorNumber` - 颜色缓冲区编号 -- `index` - 颜色索引(用于双源混合) -- `name` - Fragment shader 中的输出变量名 - -**返回值**:无 - ---- - -## 查询 - -### BeginQuery / EndQuery - -```cpp -void BeginQuery(unsigned int target, unsigned int id) -void EndQuery(unsigned int target) -``` - -开始或结束查询。 - -**参数:** -- `target` - 查询目标(如 GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED) -- `id` - 查询对象 ID - -**返回值**:无 - -### GetQueryObjectiv / GetQueryObjectuiv - -```cpp -void GetQueryObjectiv(unsigned int id, unsigned int pname, int* params) -void GetQueryObjectuiv(unsigned int id, unsigned int pname, unsigned int* params) -``` - -获取查询结果。 - -**参数:** -- `id` - 查询对象 ID -- `pname` - 查询参数(如 GL_QUERY_RESULT, GL_QUERY_RESULT_AVAILABLE) -- `params` - 结果输出数组 - -**返回值**:无 - ---- - -## Framebuffer 操作 - -### ReadPixels - -```cpp -void ReadPixels(int x, int y, int width, int height, unsigned int format, unsigned int type, void* data) -``` - -读取像素数据。 - -**参数:** -- `x`, `y` - 读取区域左下角坐标 -- `width`, `height` - 读取区域尺寸 -- `format` - 像素格式(GL_RED, GL_GREEN, GL_BLUE, GL_RGBA 等) -- `type` - 数据类型(GL_UNSIGNED_BYTE, GL_FLOAT 等) -- `data` - 输出数据缓冲区 - -**返回值**:无 - -### BlitFramebuffer - -```cpp -void BlitFramebuffer(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, unsigned int mask, unsigned int filter) -``` - -Blit 帧缓冲区。 - -**参数:** -- `srcX0, srcY0, srcX1, srcY1` - 源区域 -- `dstX0, dstY0, dstX1, dstY1` - 目标区域 -- `mask` - Blit 缓冲区掩码 -- `filter` - 过滤方式(GL_NEAREST, GL_LINEAR) - -**返回值**:无 - -### CopyImageSubData - -```cpp -void CopyImageSubData(unsigned int srcName, unsigned int srcTarget, int srcLevel, int srcX, int srcY, int srcZ, unsigned int dstName, unsigned int dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int width, int height, int depth) -``` - -复制图像子数据。 - -**参数:** -- `srcName` - 源纹理 ID -- `srcTarget` - 源纹理目标 -- `srcLevel` - 源 Mipmap 级别 -- `srcX/Y/Z` - 源区域偏移 -- `dstName` - 目标纹理 ID -- `dstTarget` - 目标纹理目标 -- `dstLevel` - 目标 Mipmap 级别 -- `dstX/Y/Z` - 目标区域偏移 -- `width/height/depth` - 复制区域尺寸 - -**返回值**:无 - -### InvalidateFramebuffer - -```cpp -void InvalidateFramebuffer(unsigned int target, unsigned int count, const unsigned int* attachments) -void InvalidateSubFramebuffer(unsigned int target, unsigned int count, const unsigned int* attachments, int x, int y, int width, int height) -``` - -使帧缓冲区失效。 - -**参数:** -- `target` - 帧缓冲区目标 -- `count` - 附件数量 -- `attachments` - 附件数组 -- `x, y, width, height` - 子区域坐标(仅 InvalidateSubFramebuffer) - -**返回值**:无 - ---- - -## 调试 - -### PushDebugGroup / PopDebugGroup - -```cpp -void PushDebugGroup(unsigned int source, unsigned int id, int length, const char* message) -void PopDebugGroup() -``` - -推送或弹出调试组。 - -**参数:** -- `source` - 调试源(GL_DEBUG_SOURCE_API, GL_DEBUG_SOURCE_WINDOW_SYSTEM 等) -- `id` - 调试消息 ID -- `length` - 消息长度(-1 表示 null 终止) -- `message` - 调试消息 - -**返回值**:无 - -**示例:** - -```cpp -cmdList->PushDebugGroup(GL_DEBUG_SOURCE_APPLICATION, 1, -1, "Begin Frame"); -cmdList->Draw(PrimitiveType::Triangles, 3, 0); -cmdList->PopDebugGroup(); -``` - ---- - -## 相关文档 - -- [OpenGLCommandList 总览](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/set-blend-factor.md b/docs/api/rhi/opengl/command-list/set-blend-factor.md deleted file mode 100644 index 27c00f63..00000000 --- a/docs/api/rhi/opengl/command-list/set-blend-factor.md +++ /dev/null @@ -1,21 +0,0 @@ -# OpenGLCommandList::SetBlendFactor - -```cpp -void SetBlendFactor(const float factor[4]) -``` - -设置混合因子。 - -**参数:** -- `factor` - 混合因子数组 [r, g, b, a] - -**示例:** - -```cpp -float factor[4] = { 1.0f, 1.0f, 1.0f, 1.0f }; -commandList->SetBlendFactor(factor); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/set-blend-state.md b/docs/api/rhi/opengl/command-list/set-blend-state.md deleted file mode 100644 index 01d20259..00000000 --- a/docs/api/rhi/opengl/command-list/set-blend-state.md +++ /dev/null @@ -1,43 +0,0 @@ -# OpenGLCommandList::SetBlendState - -```cpp -void SetBlendState(const BlendState& state) -``` - -设置颜色混合状态。 - -**参数:** -- `state` - 混合状态结构,包含以下成员: - - `alphaToCoverageEnable` - Alpha to coverage 使能标志 - - `renderTargets[0]` - 渲染目标混合配置(以第一个为例): - - `blendEnable` - 混合使能标志 - - `srcBlend` - RGB 源混合因子(参见 `BlendFactor` 枚举) - - `dstBlend` - RGB 目标混合因子 - - `srcBlendAlpha` - Alpha 源混合因子 - - `dstBlendAlpha` - Alpha 目标混合因子 - - `blendOp` - RGB 混合操作(参见 `BlendOp` 枚举) - - `blendOpAlpha` - Alpha 混合操作 - -**返回值**:无 - -**示例:** - -```cpp -BlendState state; -state.alphaToCoverageEnable = false; -state.renderTargets[0].blendEnable = true; -state.renderTargets[0].srcBlend = BlendFactor::SrcAlpha; -state.renderTargets[0].dstBlend = BlendFactor::InvSrcAlpha; -state.renderTargets[0].srcBlendAlpha = BlendFactor::One; -state.renderTargets[0].dstBlendAlpha = BlendFactor::InvSrcAlpha; -state.renderTargets[0].blendOp = BlendOp::Add; -state.renderTargets[0].blendOpAlpha = BlendOp::Add; -commandList->SetBlendState(state); -``` - -## 相关文档 - -- [OpenGLCommandList 总览](command-list.md) - 返回类总览 -- [SetBlendFactor](set-blend-factor.md) - 设置混合常量颜色 -- [BlendFactor](../../enums/blend-factor.md) - 混合因子枚举 -- [BlendOp](../../enums/blend-op.md) - 混合操作枚举 diff --git a/docs/api/rhi/opengl/command-list/set-depth-stencil-state.md b/docs/api/rhi/opengl/command-list/set-depth-stencil-state.md deleted file mode 100644 index a7111ada..00000000 --- a/docs/api/rhi/opengl/command-list/set-depth-stencil-state.md +++ /dev/null @@ -1,24 +0,0 @@ -# OpenGLCommandList::SetDepthStencilState - -```cpp -void SetDepthStencilState(const DepthStencilState& state) -``` - -设置深度模板状态。 - -**参数:** -- `state` - 深度模板状态结构 - -**示例:** - -```cpp -DepthStencilState state; -state.depthEnable = true; -state.depthWriteEnable = true; -state.depthFunc = ComparisonFunc::Less; -commandList->SetDepthStencilState(state); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/set-index-buffer.md b/docs/api/rhi/opengl/command-list/set-index-buffer.md deleted file mode 100644 index 12fafe2b..00000000 --- a/docs/api/rhi/opengl/command-list/set-index-buffer.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLCommandList::SetIndexBuffer - -```cpp -void SetIndexBuffer(void* buffer, uint64_t offset, Format format) -``` - -设置索引缓冲区。 - -**参数:** -- `buffer` - 缓冲区指针 -- `offset` - 数据偏移 -- `format` - 索引格式 - -**示例:** - -```cpp -commandList->SetIndexBuffer(indexBuffer, 0, Format::R32_UINT); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/set-pipeline-state.md b/docs/api/rhi/opengl/command-list/set-pipeline-state.md deleted file mode 100644 index a035992e..00000000 --- a/docs/api/rhi/opengl/command-list/set-pipeline-state.md +++ /dev/null @@ -1,20 +0,0 @@ -# OpenGLCommandList::SetPipelineState - -```cpp -void SetPipelineState(void* pipelineState) -``` - -设置渲染管线状态。 - -**参数:** -- `pipelineState` - 管线状态对象指针 - -**示例:** - -```cpp -commandList->SetPipelineState(pipelineState); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/set-primitive-topology.md b/docs/api/rhi/opengl/command-list/set-primitive-topology.md deleted file mode 100644 index 8ddb42c1..00000000 --- a/docs/api/rhi/opengl/command-list/set-primitive-topology.md +++ /dev/null @@ -1,20 +0,0 @@ -# OpenGLCommandList::SetPrimitiveTopology - -```cpp -void SetPrimitiveTopology(PrimitiveTopology topology) -``` - -设置图元拓扑类型。 - -**参数:** -- `topology` - 图元拓扑类型 - -**示例:** - -```cpp -commandList->SetPrimitiveTopology(PrimitiveTopology::TriangleList); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/set-render-targets.md b/docs/api/rhi/opengl/command-list/set-render-targets.md deleted file mode 100644 index 081eb74b..00000000 --- a/docs/api/rhi/opengl/command-list/set-render-targets.md +++ /dev/null @@ -1,23 +0,0 @@ -# OpenGLCommandList::SetRenderTargets - -```cpp -void SetRenderTargets(uint32_t count, void** renderTargets, void* depthStencil = nullptr) -``` - -设置渲染目标。 - -**参数:** -- `count` - 渲染目标数量 -- `renderTargets` - 渲染目标指针数组 -- `depthStencil` - 深度模板缓冲区指针(可选) - -**示例:** - -```cpp -void* targets[1] = { colorTarget }; -commandList->SetRenderTargets(1, targets, depthStencil); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/set-scissor-rect.md b/docs/api/rhi/opengl/command-list/set-scissor-rect.md deleted file mode 100644 index 4434bbaa..00000000 --- a/docs/api/rhi/opengl/command-list/set-scissor-rect.md +++ /dev/null @@ -1,23 +0,0 @@ -# OpenGLCommandList::SetScissorRect - -```cpp -void SetScissorRect(const Rect& rect) -``` - -设置裁剪矩形。 - -**参数:** -- `rect` - 裁剪矩形结构 - -**示例:** - -```cpp -Rect rect; -rect.x = 0; rect.y = 0; -rect.width = 800; rect.height = 600; -commandList->SetScissorRect(rect); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/set-scissor-rects.md b/docs/api/rhi/opengl/command-list/set-scissor-rects.md deleted file mode 100644 index d3567b65..00000000 --- a/docs/api/rhi/opengl/command-list/set-scissor-rects.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLCommandList::SetScissorRects - -```cpp -void SetScissorRects(uint32_t count, const Rect* rects) -``` - -批量设置裁剪矩形。 - -**参数:** -- `count` - 裁剪矩形数量 -- `rects` - 裁剪矩形数组指针 - -**示例:** - -```cpp -Rect rects[2] = { ... }; -commandList->SetScissorRects(2, rects); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/set-stencil-ref.md b/docs/api/rhi/opengl/command-list/set-stencil-ref.md deleted file mode 100644 index 1227c33d..00000000 --- a/docs/api/rhi/opengl/command-list/set-stencil-ref.md +++ /dev/null @@ -1,20 +0,0 @@ -# OpenGLCommandList::SetStencilRef - -```cpp -void SetStencilRef(uint8_t ref) -``` - -设置模板测试参考值。 - -**参数:** -- `ref` - 模板参考值 - -**示例:** - -```cpp -commandList->SetStencilRef(1); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/set-vertex-buffer.md b/docs/api/rhi/opengl/command-list/set-vertex-buffer.md deleted file mode 100644 index 8d1bdc0c..00000000 --- a/docs/api/rhi/opengl/command-list/set-vertex-buffer.md +++ /dev/null @@ -1,23 +0,0 @@ -# OpenGLCommandList::SetVertexBuffer - -```cpp -void SetVertexBuffer(uint32_t slot, void* buffer, uint64_t offset, uint32_t stride) -``` - -设置单个顶点缓冲区。 - -**参数:** -- `slot` - 顶点缓冲区槽位 -- `buffer` - 缓冲区指针 -- `offset` - 数据偏移 -- `stride` - 顶点跨度 - -**示例:** - -```cpp -commandList->SetVertexBuffer(0, vertexBuffer, 0, sizeof(Vertex)); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/set-vertex-buffers.md b/docs/api/rhi/opengl/command-list/set-vertex-buffers.md deleted file mode 100644 index f5647ddd..00000000 --- a/docs/api/rhi/opengl/command-list/set-vertex-buffers.md +++ /dev/null @@ -1,24 +0,0 @@ -# OpenGLCommandList::SetVertexBuffers - -```cpp -void SetVertexBuffers(uint32_t startSlot, uint32_t count, const uint64_t* buffers, const uint64_t* offsets, const uint32_t* strides) -``` - -批量设置顶点缓冲区。 - -**参数:** -- `startSlot` - 起始槽位 -- `count` - 缓冲区数量 -- `buffers` - 缓冲区指针数组 -- `offsets` - 偏移数组 -- `strides` - 跨度数组 - -**示例:** - -```cpp -commandList->SetVertexBuffers(0, 2, buffers, offsets, strides); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/set-viewport.md b/docs/api/rhi/opengl/command-list/set-viewport.md deleted file mode 100644 index ecc1c727..00000000 --- a/docs/api/rhi/opengl/command-list/set-viewport.md +++ /dev/null @@ -1,36 +0,0 @@ -# OpenGLCommandList::SetViewport - -```cpp -void SetViewport(const Viewport& viewport) -``` - -设置渲染视口区域。 - -**参数:** -- `viewport` - 视口结构,包含以下成员: - - `topLeftX` - 视口左下角 X 坐标 - - `topLeftY` - 视口左下角 Y 坐标 - - `width` - 视口宽度 - - `height` - 视口高度 - - `minDepth` - 最小深度值(通常为 0.0f) - - `maxDepth` - 最大深度值(通常为 1.0f) - -**返回值**:无 - -**示例:** - -```cpp -Viewport viewport; -viewport.topLeftX = 0.0f; -viewport.topLeftY = 0.0f; -viewport.width = 800.0f; -viewport.height = 600.0f; -viewport.minDepth = 0.0f; -viewport.maxDepth = 1.0f; -commandList->SetViewport(viewport); -``` - -## 相关文档 - -- [OpenGLCommandList 总览](command-list.md) - 返回类总览 -- [SetViewports](set-viewports.md) - 批量设置视口 diff --git a/docs/api/rhi/opengl/command-list/set-viewports.md b/docs/api/rhi/opengl/command-list/set-viewports.md deleted file mode 100644 index b513ef4f..00000000 --- a/docs/api/rhi/opengl/command-list/set-viewports.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLCommandList::SetViewports - -```cpp -void SetViewports(uint32_t count, const Viewport* viewports) -``` - -批量设置视口。 - -**参数:** -- `count` - 视口数量 -- `viewports` - 视口数组指针 - -**示例:** - -```cpp -Viewport viewports[2] = { ... }; -commandList->SetViewports(2, viewports); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-list/transition-barrier.md b/docs/api/rhi/opengl/command-list/transition-barrier.md deleted file mode 100644 index 0e4dda1c..00000000 --- a/docs/api/rhi/opengl/command-list/transition-barrier.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLCommandList::TransitionBarrier - -```cpp -void TransitionBarrier(void* resource, ResourceStates stateBefore, ResourceStates stateAfter) -``` - -设置资源状态转换屏障。 - -**参数:** -- `resource` - 资源指针 -- `stateBefore` - 转换前状态 -- `stateAfter` - 转换后状态 - -**示例:** - -```cpp -commandList->TransitionBarrier(texture, ResourceStates::RenderTarget, ResourceStates::Common); -``` - -## 相关文档 - -- [OpenGLCommandList](command-list.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/command-queue/command-queue.md b/docs/api/rhi/opengl/command-queue/command-queue.md deleted file mode 100644 index d706be84..00000000 --- a/docs/api/rhi/opengl/command-queue/command-queue.md +++ /dev/null @@ -1,30 +0,0 @@ -# OpenGLCommandQueue - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` - -**描述**: OpenGL 命令队列实现,继承自 `RHICommandQueue`。 - -## 概述 - -OpenGL 采用立即模式(Immediate Mode)渲染,与 D3D12 的命令列表模式不同。OpenGLCommandQueue 作为 RHI 抽象层接口实现,当前大多数方法为存根(stub)实现,实际渲染操作通过 OpenGL 命令直接执行。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Shutdown`](shutdown.md) | 关闭命令队列 | -| [`ExecuteCommandLists`](execute-command-lists.md) | 执行命令列表 | -| [`Signal`](signal.md) | 信号围栏 | -| [`Wait`](wait.md) | 等待围栏 | -| [`GetCompletedValue`](get-completed-value.md) | 获取完成值 | -| [`WaitForIdle`](wait-for-idle.md) | 等待空闲 | -| [`GetType`](get-type.md) | 获取队列类型 | -| [`GetTimestampFrequency`](get-timestamp-frequency.md) | 获取时间戳频率 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | - -## 相关文档 - -- [OpenGL 后端总览](../opengl.md) -- [RHICommandQueue](../../command-queue/command-queue.md) - 抽象命令队列接口 \ No newline at end of file diff --git a/docs/api/rhi/opengl/command-queue/execute-command-lists.md b/docs/api/rhi/opengl/command-queue/execute-command-lists.md deleted file mode 100644 index d07537c6..00000000 --- a/docs/api/rhi/opengl/command-queue/execute-command-lists.md +++ /dev/null @@ -1,24 +0,0 @@ -# OpenGLCommandQueue::ExecuteCommandLists - -```cpp -void ExecuteCommandLists(uint32_t count, void** lists) -``` - -**详细描述**: 执行命令列表。OpenGL 采用立即模式,此方法当前为存根实现,实际渲染通过 OpenGL 命令直接执行。 - -**参数:** -- `count` - 命令列表数量 -- `lists` - 命令列表指针数组 - -**返回值:** 无 - -**示例:** - -```cpp -void* lists[] = { commandList }; -commandQueue->ExecuteCommandLists(1, lists); -``` - -## 相关文档 - -- [OpenGLCommandQueue](command-queue.md) - 返回至类概览 \ No newline at end of file diff --git a/docs/api/rhi/opengl/command-queue/get-completed-value.md b/docs/api/rhi/opengl/command-queue/get-completed-value.md deleted file mode 100644 index bdbbd281..00000000 --- a/docs/api/rhi/opengl/command-queue/get-completed-value.md +++ /dev/null @@ -1,19 +0,0 @@ -# OpenGLCommandQueue::GetCompletedValue - -```cpp -uint64_t GetCompletedValue() -``` - -**详细描述**: 获取围栏已完成的值。由于 OpenGLCommandQueue 为存根实现,此方法始终返回 0。 - -**返回值:** `uint64_t` - 已完成的围栏值,当前固定返回 0 - -**示例:** - -```cpp -uint64_t value = commandQueue->GetCompletedValue(); -``` - -## 相关文档 - -- [OpenGLCommandQueue](command-queue.md) - 返回至类概览 \ No newline at end of file diff --git a/docs/api/rhi/opengl/command-queue/get-native-handle.md b/docs/api/rhi/opengl/command-queue/get-native-handle.md deleted file mode 100644 index 91667a81..00000000 --- a/docs/api/rhi/opengl/command-queue/get-native-handle.md +++ /dev/null @@ -1,19 +0,0 @@ -# OpenGLCommandQueue::GetNativeHandle - -```cpp -void* GetNativeHandle() -``` - -**详细描述**: 获取原生句柄。OpenGLCommandQueue 当前为存根实现,因此始终返回 `nullptr`。 - -**返回值:** `void*` - 原生句柄指针,OpenGL 实现当前返回 `nullptr` - -**示例:** - -```cpp -void* handle = commandQueue->GetNativeHandle(); -``` - -## 相关文档 - -- [OpenGLCommandQueue](command-queue.md) - 返回至类概览 \ No newline at end of file diff --git a/docs/api/rhi/opengl/command-queue/get-timestamp-frequency.md b/docs/api/rhi/opengl/command-queue/get-timestamp-frequency.md deleted file mode 100644 index 3a614d09..00000000 --- a/docs/api/rhi/opengl/command-queue/get-timestamp-frequency.md +++ /dev/null @@ -1,19 +0,0 @@ -# OpenGLCommandQueue::GetTimestampFrequency - -```cpp -uint64_t GetTimestampFrequency() const -``` - -**详细描述**: 获取时间戳频率。OpenGLCommandQueue 为存根实现,此方法始终返回 0,表示不支持时间戳查询。 - -**返回值:** `uint64_t` - 时间戳频率(Hz),当前固定返回 0 - -**示例:** - -```cpp -uint64_t frequency = commandQueue->GetTimestampFrequency(); -``` - -## 相关文档 - -- [OpenGLCommandQueue](command-queue.md) - 返回至类概览 \ No newline at end of file diff --git a/docs/api/rhi/opengl/command-queue/get-type.md b/docs/api/rhi/opengl/command-queue/get-type.md deleted file mode 100644 index a83864a6..00000000 --- a/docs/api/rhi/opengl/command-queue/get-type.md +++ /dev/null @@ -1,19 +0,0 @@ -# OpenGLCommandQueue::GetType - -```cpp -CommandQueueType GetType() const -``` - -**详细描述**: 获取命令队列类型。OpenGLCommandQueue 固定返回 `CommandQueueType::Direct`,表示直接命令队列。 - -**返回值:** `CommandQueueType` - 命令队列类型,当前固定返回 `CommandQueueType::Direct` - -**示例:** - -```cpp -CommandQueueType type = commandQueue->GetType(); -``` - -## 相关文档 - -- [OpenGLCommandQueue](command-queue.md) - 返回至类概览 \ No newline at end of file diff --git a/docs/api/rhi/opengl/command-queue/shutdown.md b/docs/api/rhi/opengl/command-queue/shutdown.md deleted file mode 100644 index fa7385f1..00000000 --- a/docs/api/rhi/opengl/command-queue/shutdown.md +++ /dev/null @@ -1,13 +0,0 @@ -# OpenGLCommandQueue::Shutdown - -```cpp -void Shutdown() -``` - -**详细描述**: 关闭命令队列并释放相关资源。OpenGLCommandQueue 当前为存根实现,此方法为空实现。 - -**返回值:** 无 - -## 相关文档 - -- [OpenGLCommandQueue](command-queue.md) - 返回至类概览 \ No newline at end of file diff --git a/docs/api/rhi/opengl/command-queue/signal.md b/docs/api/rhi/opengl/command-queue/signal.md deleted file mode 100644 index f36e9295..00000000 --- a/docs/api/rhi/opengl/command-queue/signal.md +++ /dev/null @@ -1,23 +0,0 @@ -# OpenGLCommandQueue::Signal - -```cpp -void Signal(RHIFence* fence, uint64_t value) -``` - -**详细描述**: 向围栏发送信号。OpenGLCommandQueue 当前为存根实现,此方法为空实现。 - -**参数:** -- `fence` - 围栏指针 -- `value` - 信号值 - -**返回值:** 无 - -**示例:** - -```cpp -commandQueue->Signal(fence, 1); -``` - -## 相关文档 - -- [OpenGLCommandQueue](command-queue.md) - 返回至类概览 \ No newline at end of file diff --git a/docs/api/rhi/opengl/command-queue/wait-for-idle.md b/docs/api/rhi/opengl/command-queue/wait-for-idle.md deleted file mode 100644 index 091d12a9..00000000 --- a/docs/api/rhi/opengl/command-queue/wait-for-idle.md +++ /dev/null @@ -1,19 +0,0 @@ -# OpenGLCommandQueue::WaitForIdle - -```cpp -void WaitForIdle() -``` - -**详细描述**: 等待命令队列空闲。OpenGLCommandQueue 当前为存根实现,此方法为空实现。 - -**返回值:** 无 - -**示例:** - -```cpp -commandQueue->WaitForIdle(); -``` - -## 相关文档 - -- [OpenGLCommandQueue](command-queue.md) - 返回至类概览 \ No newline at end of file diff --git a/docs/api/rhi/opengl/command-queue/wait.md b/docs/api/rhi/opengl/command-queue/wait.md deleted file mode 100644 index b4d4b138..00000000 --- a/docs/api/rhi/opengl/command-queue/wait.md +++ /dev/null @@ -1,23 +0,0 @@ -# OpenGLCommandQueue::Wait - -```cpp -void Wait(RHIFence* fence, uint64_t value) -``` - -**详细描述**: 等待围栏达到指定值。OpenGLCommandQueue 当前为存根实现,此方法为空实现。 - -**参数:** -- `fence` - 围栏指针 -- `value` - 等待的围栏值 - -**返回值:** 无 - -**示例:** - -```cpp -commandQueue->Wait(fence, 1); -``` - -## 相关文档 - -- [OpenGLCommandQueue](command-queue.md) - 返回至类概览 \ No newline at end of file diff --git a/docs/api/rhi/opengl/depth-stencil-view/bind-framebuffer.md b/docs/api/rhi/opengl/depth-stencil-view/bind-framebuffer.md deleted file mode 100644 index 0d94b417..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/bind-framebuffer.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLDepthStencilView::BindFramebuffer - -```cpp -static void BindFramebuffer(unsigned int framebuffer) -``` - -静态方法,将指定帧缓冲区绑定为当前深度模板帧缓冲区。 - -**参数:** -- `framebuffer` - 帧缓冲区 ID(0 表示解除绑定) - -**返回值:** `void` - -**示例:** - -```cpp -OpenGLDepthStencilView::BindFramebuffer(dsv.GetFramebuffer()); -``` - -## 相关文档 - -- [OpenGLDepthStencilView](depth-stencil-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/depth-stencil-view/bind.md b/docs/api/rhi/opengl/depth-stencil-view/bind.md deleted file mode 100644 index bf3562d3..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/bind.md +++ /dev/null @@ -1,17 +0,0 @@ -# OpenGLDepthStencilView::Bind - -```cpp -void Bind(); -``` - -将深度模板视图的帧缓冲对象绑定到当前 OpenGL 上下文。绑定后,后续的深度测试和模板测试将使用此视图。 - -**返回值:** `void` - -## 相关文档 - -- [OpenGLDepthStencilView 总览](depth-stencil-view.md) - 返回类总览 - -## 相关文档 - -- [OpenGLDepthStencilView 总览](depth-stencil-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/depth-stencil-view/clear-depth-stencil.md b/docs/api/rhi/opengl/depth-stencil-view/clear-depth-stencil.md deleted file mode 100644 index 9acc3e3b..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/clear-depth-stencil.md +++ /dev/null @@ -1,23 +0,0 @@ -# OpenGLDepthStencilView::ClearDepthStencil - -```cpp -void ClearDepthStencil(float depth, uint8_t stencil) -``` - -同时清除深度和模板缓冲区。此操作会先绑定帧缓冲,然后执行清除。 - -**参数:** -- `depth` - 深度值(通常为 0.0 到 1.0) -- `stencil` - 模板值(0-255) - -**返回值:** `void` - -**示例:** - -```cpp -dsv.ClearDepthStencil(1.0f, 0); -``` - -## 相关文档 - -- [OpenGLDepthStencilView](depth-stencil-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/depth-stencil-view/clear-depth.md b/docs/api/rhi/opengl/depth-stencil-view/clear-depth.md deleted file mode 100644 index 0e4e32f6..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/clear-depth.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLDepthStencilView::ClearDepth - -```cpp -void ClearDepth(float depth) -``` - -清除深度缓冲区的深度值为指定值。此操作会先绑定帧缓冲,然后执行清除。 - -**参数:** -- `depth` - 深度值(通常为 0.0 到 1.0) - -**返回值:** `void` - -**示例:** - -```cpp -dsv.ClearDepth(1.0f); -``` - -## 相关文档 - -- [OpenGLDepthStencilView](depth-stencil-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/depth-stencil-view/clear-stencil.md b/docs/api/rhi/opengl/depth-stencil-view/clear-stencil.md deleted file mode 100644 index 60c36918..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/clear-stencil.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLDepthStencilView::ClearStencil - -```cpp -void ClearStencil(uint8_t stencil) -``` - -清除模板缓冲区的模板值为指定值。此操作会先绑定帧缓冲,然后执行清除。 - -**参数:** -- `stencil` - 模板值(0-255) - -**返回值:** `void` - -**示例:** - -```cpp -dsv.ClearStencil(0); -``` - -## 相关文档 - -- [OpenGLDepthStencilView](depth-stencil-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/depth-stencil-view/constructor.md b/docs/api/rhi/opengl/depth-stencil-view/constructor.md deleted file mode 100644 index 22aeb4d7..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/constructor.md +++ /dev/null @@ -1,11 +0,0 @@ -# OpenGLDepthStencilView::OpenGLDepthStencilView - -```cpp -OpenGLDepthStencilView(); -``` - -默认构造函数,创建一个空的深度模板视图对象。 - -## 相关文档 - -- [OpenGLDepthStencilView 总览](depth-stencil-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/depth-stencil-view/depth-stencil-format.md b/docs/api/rhi/opengl/depth-stencil-view/depth-stencil-format.md deleted file mode 100644 index 2f49e7f8..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/depth-stencil-format.md +++ /dev/null @@ -1,19 +0,0 @@ -# DepthStencilFormat - -**命名空间**: `XCEngine::RHI` - -**描述**: 深度模板格式枚举。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `D16_UNORM` | 16 位无符号归一化深度格式 | -| `D24_UNORM_S8_UINT` | 24 位无符号归一化深度格式,8 位模板 | -| `D32_FLOAT` | 32 位浮点深度格式 | -| `D32_FLOAT_S8X24_UINT` | 32 位浮点深度格式,8 位模板,24 位未使用 | - -## 相关文档 - -- [OpenGLDepthStencilView 总览](depth-stencil-view.md) - 返回类总览 -- [OpenGLDepthStencilViewDesc](openGLDepthStencilViewDesc.md) - 深度模板视图描述结构体 diff --git a/docs/api/rhi/opengl/depth-stencil-view/depth-stencil-type.md b/docs/api/rhi/opengl/depth-stencil-view/depth-stencil-type.md deleted file mode 100644 index 0b753c6d..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/depth-stencil-type.md +++ /dev/null @@ -1,18 +0,0 @@ -# DepthStencilType - -**命名空间**: `XCEngine::RHI` - -**描述**: 深度模板类型枚举。 - -## 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `Texture2D` | 2D 纹理 | -| `Texture2DArray` | 2D 纹理数组 | -| `TextureCube` | 立方体贴图 | - -## 相关文档 - -- [OpenGLDepthStencilView 总览](depth-stencil-view.md) - 返回类总览 -- [OpenGLDepthStencilViewDesc](openGLDepthStencilViewDesc.md) - 深度模板视图描述结构体 diff --git a/docs/api/rhi/opengl/depth-stencil-view/depth-stencil-view.md b/docs/api/rhi/opengl/depth-stencil-view/depth-stencil-view.md deleted file mode 100644 index 322671ed..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/depth-stencil-view.md +++ /dev/null @@ -1,45 +0,0 @@ -# OpenGLDepthStencilView - -**命名空间**: `XCEngine::RHI` - -**描述**: OpenGL 深度模板视图实现,用于管理深度缓冲区和模板缓冲区的帧缓冲对象。 - -## 概述 - -`OpenGLDepthStencilView` 类封装了 OpenGL 深度模板视图(Depth-Stencil View)的功能,通过帧缓冲对象(Framebuffer Object)管理深度缓冲区和模板缓冲区。该类支持多种纹理类型,包括 2D 纹理、2D 纹理数组和立方体贴图。 - -主要功能: -- 创建和管理深度模板帧缓冲对象 -- 绑定/解绑深度模板视图到渲染管线 -- 清除深度缓冲区和/或模板缓冲区的值 -- 查询视图相关的纹理和帧缓冲信息 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`OpenGLDepthStencilView`](constructor.md) | 构造函数 | -| [`~OpenGLDepthStencilView`](destructor.md) | 析构函数 | -| [`Initialize`](initialize.md) | 初始化深度模板视图 | -| [`InitializeCubemap`](initialize-cubemap.md) | 初始化立方体贴图深度模板视图 | -| [`Shutdown`](shutdown.md) | 关闭深度模板视图 | -| [`Bind`](bind.md) | 绑定深度模板视图 | -| [`Unbind`](unbind.md) | 解绑深度模板视图 | -| [`ClearDepth`](clear-depth.md) | 清除深度 | -| [`ClearStencil`](clear-stencil.md) | 清除模板 | -| [`ClearDepthStencil`](clear-depth-stencil.md) | 清除深度和模板 | -| [`GetFramebuffer`](get-framebuffer.md) | 获取帧缓冲 | -| [`GetTexture`](get-texture.md) | 获取纹理 | -| [`GetMipLevel`](get-mip-level.md) | 获取 Mip 级别 | -| [`BindFramebuffer`](bind-framebuffer.md) | 绑定帧缓冲 | -| [`UnbindFramebuffer`](unbind-framebuffer.md) | 解绑帧缓冲 | - -## 相关结构体与枚举 - -- [`OpenGLDepthStencilViewDesc`](openGLDepthStencilViewDesc.md) - 深度模板视图描述结构体 -- [`DepthStencilFormat`](depth-stencil-format.md) - 深度模板格式枚举 -- [`DepthStencilType`](depth-stencil-type.md) - 深度模板类型枚举 - -## 相关文档 - -- [OpenGL 后端总览](../opengl.md) diff --git a/docs/api/rhi/opengl/depth-stencil-view/destructor.md b/docs/api/rhi/opengl/depth-stencil-view/destructor.md deleted file mode 100644 index e8ea6fe9..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/destructor.md +++ /dev/null @@ -1,11 +0,0 @@ -# OpenGLDepthStencilView::~OpenGLDepthStencilView - -```cpp -~OpenGLDepthStencilView(); -``` - -析构函数,自动调用 `Shutdown()` 释放资源。 - -## 相关文档 - -- [OpenGLDepthStencilView 总览](depth-stencil-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/depth-stencil-view/get-framebuffer.md b/docs/api/rhi/opengl/depth-stencil-view/get-framebuffer.md deleted file mode 100644 index 0bebce59..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/get-framebuffer.md +++ /dev/null @@ -1,19 +0,0 @@ -# OpenGLDepthStencilView::GetFramebuffer - -```cpp -unsigned int GetFramebuffer() const -``` - -获取与此深度模板视图关联的帧缓冲对象 ID。 - -**返回:** `unsigned int` - 帧缓冲区 OpenGL 对象 ID - -**示例:** - -```cpp -unsigned int fbo = dsv.GetFramebuffer(); -``` - -## 相关文档 - -- [OpenGLDepthStencilView](depth-stencil-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/depth-stencil-view/get-mip-level.md b/docs/api/rhi/opengl/depth-stencil-view/get-mip-level.md deleted file mode 100644 index 58d52e02..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/get-mip-level.md +++ /dev/null @@ -1,19 +0,0 @@ -# OpenGLDepthStencilView::GetMipLevel - -```cpp -int GetMipLevel() const -``` - -获取此深度模板视图所绑定的 mipmap 级别。 - -**返回:** `int` - mip 级别索引 - -**示例:** - -```cpp -int mipLevel = dsv.GetMipLevel(); -``` - -## 相关文档 - -- [OpenGLDepthStencilView](depth-stencil-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/depth-stencil-view/get-size.md b/docs/api/rhi/opengl/depth-stencil-view/get-size.md deleted file mode 100644 index f32d9d7c..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/get-size.md +++ /dev/null @@ -1,14 +0,0 @@ -# OpenGLDepthStencilView::GetWidth / GetHeight - -```cpp -int GetWidth() const; -int GetHeight() const; -``` - -获取深度模板视图的宽度和高度(以像素为单位)。 - -**返回:** `int` - 视图的宽度/高度值 - -## 相关文档 - -- [OpenGLDepthStencilView 总览](depth-stencil-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/depth-stencil-view/get-texture.md b/docs/api/rhi/opengl/depth-stencil-view/get-texture.md deleted file mode 100644 index 379c2200..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/get-texture.md +++ /dev/null @@ -1,19 +0,0 @@ -# OpenGLDepthStencilView::GetTexture - -```cpp -unsigned int GetTexture() const -``` - -获取创建此深度模板视图时使用的原始纹理对象 ID。 - -**返回:** `unsigned int` - 纹理 OpenGL 对象 ID - -**示例:** - -```cpp -unsigned int tex = dsv.GetTexture(); -``` - -## 相关文档 - -- [OpenGLDepthStencilView](depth-stencil-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/depth-stencil-view/initialize-cubemap.md b/docs/api/rhi/opengl/depth-stencil-view/initialize-cubemap.md deleted file mode 100644 index 40a5d861..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/initialize-cubemap.md +++ /dev/null @@ -1,25 +0,0 @@ -# OpenGLDepthStencilView::InitializeCubemap - -```cpp -bool InitializeCubemap(unsigned int cubemap, int face, int mipLevel = 0) -``` - -初始化立方体贴图的深度模板视图。 - -**参数:** -- `cubemap` - 立方体贴图对象 ID -- `face` - 立方体贴面索引(0-5) -- `mipLevel` - mipmap 级别(默认为 0) - -**返回:** `bool` - 成功返回 true,失败返回 false - -**示例:** - -```cpp -OpenGLDepthStencilView dsv; -dsv.InitializeCubemap(cubemapTexture, 0, 0); -``` - -## 相关文档 - -- [OpenGLDepthStencilView](depth-stencil-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/depth-stencil-view/initialize.md b/docs/api/rhi/opengl/depth-stencil-view/initialize.md deleted file mode 100644 index b3aa6ee9..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/initialize.md +++ /dev/null @@ -1,62 +0,0 @@ -# OpenGLDepthStencilView::Initialize - -初始化深度模板视图。 - -## 重载 1 - -```cpp -bool Initialize(unsigned int texture, const OpenGLDepthStencilViewDesc& desc); -``` - -使用描述结构体初始化深度模板视图,将指定的 OpenGL 纹理创建为深度模板帧缓冲对象。 - -**参数:** -- `texture` - OpenGL 纹理 ID -- `desc` - 深度模板视图描述结构体 - -**返回:** 成功返回 `true`,失败返回 `false`。失败时帧缓冲不会被创建。 - -**示例:** - -```cpp -OpenGLDepthStencilView dsv; -OpenGLDepthStencilViewDesc desc; -desc.type = DepthStencilType::Texture2D; -desc.mipLevel = 0; -desc.baseArraySlice = 0; -desc.arraySize = 1; -dsv.Initialize(textureID, desc); -``` - -## 重载 2 - -```cpp -bool Initialize(unsigned int texture, int mipLevel = 0); -``` - -使用简单参数初始化深度模板视图。 - -**参数:** -- `texture` - OpenGL 纹理 ID -- `mipLevel` - mipmap 级别(默认为 0) - -**返回:** 成功返回 true,失败返回 false - -**示例:** - -```cpp -// 使用描述结构体初始化 -OpenGLDepthStencilViewDesc desc; -desc.type = DepthStencilType::Texture2D; -desc.mipLevel = 0; -desc.baseArraySlice = 0; -desc.arraySize = 1; -dsv.Initialize(textureID, desc); - -// 使用简单参数初始化 -dsv.Initialize(textureID, 0); -``` - -## 相关文档 - -- [OpenGLDepthStencilView 总览](depth-stencil-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/depth-stencil-view/openGLDepthStencilViewDesc.md b/docs/api/rhi/opengl/depth-stencil-view/openGLDepthStencilViewDesc.md deleted file mode 100644 index fdbafd04..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/openGLDepthStencilViewDesc.md +++ /dev/null @@ -1,30 +0,0 @@ -# OpenGLDepthStencilViewDesc - -**命名空间**: `XCEngine::RHI` - -**描述**: 深度模板视图描述结构体。 - -## 成员变量 - -| 成员 | 类型 | 默认值 | 描述 | -|------|------|--------|------| -| `type` | `DepthStencilType` | `Texture2D` | 深度模板视图类型 | -| `mipLevel` | `int` | `0` | mipmap 级别 | -| `baseArraySlice` | `int` | `0` | 数组起始索引 | -| `arraySize` | `int` | `1` | 数组大小 | -| `layer` | `int` | `0` | 层索引 | - -## 示例 - -```cpp -OpenGLDepthStencilViewDesc desc; -desc.type = DepthStencilType::Texture2D; -desc.mipLevel = 0; -desc.baseArraySlice = 0; -desc.arraySize = 1; -desc.layer = 0; -``` - -## 相关文档 - -- [OpenGLDepthStencilView 总览](depth-stencil-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/depth-stencil-view/shutdown.md b/docs/api/rhi/opengl/depth-stencil-view/shutdown.md deleted file mode 100644 index e231b213..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/shutdown.md +++ /dev/null @@ -1,17 +0,0 @@ -# OpenGLDepthStencilView::Shutdown - -```cpp -void Shutdown(); -``` - -关闭深度模板视图,释放关联的帧缓冲对象资源。调用此方法后会删除帧缓冲并将内部状态重置为初始值。 - -**返回值:** `void` - -## 相关文档 - -- [OpenGLDepthStencilView 总览](depth-stencil-view.md) - 返回类总览 - -## 相关文档 - -- [OpenGLDepthStencilView 总览](depth-stencil-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/depth-stencil-view/unbind-framebuffer.md b/docs/api/rhi/opengl/depth-stencil-view/unbind-framebuffer.md deleted file mode 100644 index 932cb27a..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/unbind-framebuffer.md +++ /dev/null @@ -1,19 +0,0 @@ -# OpenGLDepthStencilView::UnbindFramebuffer - -```cpp -static void UnbindFramebuffer() -``` - -静态方法,将默认帧缓冲(framebuffer 0)绑定为当前深度模板帧缓冲区,用于解除任何自定义深度模板帧缓冲的绑定。 - -**返回值:** `void` - -**示例:** - -```cpp -OpenGLDepthStencilView::UnbindFramebuffer(); -``` - -## 相关文档 - -- [OpenGLDepthStencilView](depth-stencil-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/depth-stencil-view/unbind.md b/docs/api/rhi/opengl/depth-stencil-view/unbind.md deleted file mode 100644 index 98ba8a57..00000000 --- a/docs/api/rhi/opengl/depth-stencil-view/unbind.md +++ /dev/null @@ -1,17 +0,0 @@ -# OpenGLDepthStencilView::Unbind - -```cpp -void Unbind(); -``` - -解除深度模板视图的帧缓冲绑定,将主帧缓冲(默认帧缓冲)重新绑定到当前 OpenGL 上下文。 - -**返回值:** `void` - -## 相关文档 - -- [OpenGLDepthStencilView 总览](depth-stencil-view.md) - 返回类总览 - -## 相关文档 - -- [OpenGLDepthStencilView 总览](depth-stencil-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/device/compile-shader.md b/docs/api/rhi/opengl/device/compile-shader.md deleted file mode 100644 index bfa91ed8..00000000 --- a/docs/api/rhi/opengl/device/compile-shader.md +++ /dev/null @@ -1,73 +0,0 @@ -# OpenGLDevice::CompileShader - -```cpp -RHIShader* CompileShader(const ShaderCompileDesc& desc) override -``` - -编译着色器程序。 - -## 详细描述 - -从文件加载并编译着色器代码。 - -### 支持的着色器类型 - -通过 `profile` 参数指定: -- `"vs"` / `"vert"` - 顶点着色器 -- `"fs"` / `"frag"` - 片段着色器 -- `"gs"` - 几何着色器 -- `"cs"` / `"compute"` - 计算着色器 -- `"ts"` / `"tess"` - 曲面细分着色器 - -### 着色器编译流程 - -1. 从文件读取着色器源码 -2. 根据 `profile` 选择着色器类型 -3. 编译着色器源码 -4. 链接程序(如果需要) - -## 参数 - -- `desc` - 着色器编译描述符 - -### ShaderCompileDesc 字段 - -| 字段 | 描述 | -|------|------| -| `fileName` | 着色器文件路径(宽字符) | -| `entryPoint` | 入口点名称(默认 "main") | -| `profile` | 着色器配置文件(如 "vs", "fs") | - -## 返回值 - -`RHIShader*` - 创建的着色器指针,编译失败返回包含错误的着色器对象 - -## 注意事项 - -- `fileName` 使用宽字符 (`std::wstring`) -- `entryPoint` 和 `profile` 从宽字符转换为窄字符 -- 如果 `fileName` 为空,不执行编译但仍返回着色器对象 -- 返回的着色器对象归调用者所有,需自行管理生命周期 - -## 示例 - -```cpp -ShaderCompileDesc vsDesc; -vsDesc.fileName = L"shaders/triangle.vert"; -vsDesc.entryPoint = L"main"; -vsDesc.profile = L"vs"; - -RHIShader* vertexShader = device.CompileShader(vsDesc); - -ShaderCompileDesc fsDesc; -fsDesc.fileName = L"shaders/triangle.frag"; -fsDesc.entryPoint = L"main"; -fsDesc.profile = L"fs"; - -RHIShader* fragmentShader = device.CompileShader(fsDesc); -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 类总览 -- [OpenGLShader](../shader/shader.md) - OpenGL 着色器实现 diff --git a/docs/api/rhi/opengl/device/constructor.md b/docs/api/rhi/opengl/device/constructor.md deleted file mode 100644 index ed4e8f0e..00000000 --- a/docs/api/rhi/opengl/device/constructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# OpenGLDevice::OpenGLDevice - -```cpp -OpenGLDevice() -``` - -默认构造函数,创建一个未初始化的 `OpenGLDevice` 实例。 - -## 详细描述 - -构造函数创建 `OpenGLDevice` 对象并初始化内部状态: -- `m_window` 设为 `nullptr` -- `m_initialized` 设为 `false` -- `m_ownsWindow` 设为 `false` - -设备在使用前必须调用 `Initialize()` 或 `InitializeWithExistingWindow()` 进行初始化。 - -## 示例 - -```cpp -OpenGLDevice* device = new OpenGLDevice(); -// 后续需要调用 Initialize() 进行初始化 -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 类总览 -- [Initialize](initialize.md) - 初始化设备 -- [InitializeWithExistingWindow](initialize-with-existing-window.md) - 使用现有窗口初始化 diff --git a/docs/api/rhi/opengl/device/create-buffer.md b/docs/api/rhi/opengl/device/create-buffer.md deleted file mode 100644 index 28446f3e..00000000 --- a/docs/api/rhi/opengl/device/create-buffer.md +++ /dev/null @@ -1,67 +0,0 @@ -# OpenGLDevice::CreateBuffer - -```cpp -RHIBuffer* CreateBuffer(const BufferDesc& desc) override -``` - -创建 OpenGL 缓冲区对象。 - -## 详细描述 - -根据 `BufferDesc` 创建一个 OpenGL 缓冲区对象。缓冲区类型映射: - -| BufferDesc.bufferType | OpenGLBufferType | -|----------------------|------------------| -| 0 (默认) | Vertex (顶点缓冲区) | -| 1 | Index (索引缓冲区) | -| 2 | Uniform (常量缓冲区/Uniform Buffer) | - -### 缓冲区类型 - -- **Vertex Buffer**: 存储顶点属性数据(位置、法线、UV 等) -- **Index Buffer**: 存储顶点索引,用于索引绘制 -- **Uniform Buffer**: 存储着色器 uniforms 数据 - -## 参数 - -- `desc` - 缓冲区描述符 - -### BufferDesc 字段 - -| 字段 | 描述 | -|------|------| -| `bufferType` | 缓冲区类型 (0=顶点, 1=索引, 2=Uniform) | -| `size` | 缓冲区大小(字节) | - -## 返回值 - -`RHIBuffer*` - 创建的缓冲区指针,失败返回 `nullptr` - -## 注意事项 - -- 当前实现创建的缓冲区初始数据为 `nullptr`(空缓冲区) -- 缓冲区创建后可使用 `OpenGLBuffer` 的接口进行数据更新 -- 返回的缓冲区对象归调用者所有,需自行管理生命周期 - -## 示例 - -```cpp -// 创建顶点缓冲区 -BufferDesc vertexDesc; -vertexDesc.bufferType = 0; // Vertex -vertexDesc.size = sizeof(Vertex) * vertexCount; - -RHIBuffer* vertexBuffer = device.CreateBuffer(vertexDesc); - -// 创建索引缓冲区 -BufferDesc indexDesc; -indexDesc.bufferType = 1; // Index -indexDesc.size = sizeof(uint32_t) * indexCount; - -RHIBuffer* indexBuffer = device.CreateBuffer(indexDesc); -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 类总览 -- [OpenGLBuffer](../buffer/buffer.md) - OpenGL 缓冲区实现 diff --git a/docs/api/rhi/opengl/device/create-command-list.md b/docs/api/rhi/opengl/device/create-command-list.md deleted file mode 100644 index cdc318bc..00000000 --- a/docs/api/rhi/opengl/device/create-command-list.md +++ /dev/null @@ -1,49 +0,0 @@ -# OpenGLDevice::CreateCommandList - -```cpp -RHICommandList* CreateCommandList(const CommandListDesc& desc) override -``` - -创建 OpenGL 命令列表对象。 - -## 详细描述 - -创建用于记录 GPU 命令的命令列表对象。 - -### OpenGL 实现 - -当前实现创建基本的 `OpenGLCommandList`,支持: -- 命令录制 -- 命令重放 - -## 参数 - -- `desc` - 命令列表描述符 - -## 返回值 - -`RHICommandList*` - 创建的命令列表指针 - -## 注意事项 - -- 返回的命令列表对象归调用者所有,需自行管理生命周期 -- 命令列表使用前可能需要额外初始化步骤 - -## 示例 - -```cpp -CommandListDesc cmdDesc; -RHICommandList* cmdList = device.CreateCommandList(cmdDesc); - -// 录制命令 -cmdList->Begin(); -cmdList->Draw(...); -cmdList->End(); - -// 提交命令 -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 类总览 -- [OpenGLCommandList](../command-list/command-list.md) - OpenGL 命令列表实现 diff --git a/docs/api/rhi/opengl/device/create-command-queue.md b/docs/api/rhi/opengl/device/create-command-queue.md deleted file mode 100644 index 92eff891..00000000 --- a/docs/api/rhi/opengl/device/create-command-queue.md +++ /dev/null @@ -1,45 +0,0 @@ -# OpenGLDevice::CreateCommandQueue - -```cpp -RHICommandQueue* CreateCommandQueue(const CommandQueueDesc& desc) override -``` - -创建 OpenGL 命令队列对象。 - -## 详细描述 - -创建用于管理命令列表提交的命令队列。 - -### OpenGL 实现 - -当前实现创建 `OpenGLCommandQueue`,用于: -- 命令列表提交 -- 命令同步 - -## 参数 - -- `desc` - 命令队列描述符 - -## 返回值 - -`RHICommandQueue*` - 创建的命令队列指针 - -## 注意事项 - -- 返回的命令队列对象归调用者所有,需自行管理生命周期 -- OpenGL 本身没有显式的命令队列概念,此为抽象接口实现 - -## 示例 - -```cpp -CommandQueueDesc queueDesc; -RHICommandQueue* queue = device.CreateCommandQueue(queueDesc); - -// 提交命令列表到队列 -queue->ExecuteCommandList(cmdList); -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 类总览 -- [OpenGLCommandQueue](../command-queue/command-queue.md) - OpenGL 命令队列实现 diff --git a/docs/api/rhi/opengl/device/create-fence.md b/docs/api/rhi/opengl/device/create-fence.md deleted file mode 100644 index 5dbfc431..00000000 --- a/docs/api/rhi/opengl/device/create-fence.md +++ /dev/null @@ -1,56 +0,0 @@ -# OpenGLDevice::CreateFence - -```cpp -RHIFence* CreateFence(const FenceDesc& desc) override -``` - -创建同步栅栏对象。 - -## 详细描述 - -创建用于 GPU/CPU 同步的栅栏对象。 - -### FenceDesc 字段 - -| 字段 | 描述 | -|------|------| -| `initialValue` | 初始值(0=未 signaled, >0=signaled) | - -### 行为 - -- `initialValue > 0`: 创建时栅栏处于 signaled 状态 -- `initialValue == 0`: 创建时栅栏处于未 signaled 状态 - -## 参数 - -- `desc` - 栅栏描述符 - -## 返回值 - -`RHIFence*` - 创建的栅栏指针 - -## 注意事项 - -- 返回的栅栏对象归调用者所有,需自行管理生命周期 -- 栅栏用于同步 GPU 命令执行和 CPU 代码执行 - -## 示例 - -```cpp -FenceDesc fenceDesc; -fenceDesc.initialValue = 0; - -RHIFence* fence = device.CreateFence(fenceDesc); - -// 等待栅栏 -while (!fence->IsSignaled()) { - // 等待或做其他工作 -} - -// GPU 命令完成,栅栏 signaled -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 类总览 -- [OpenGLFence](../fence/fence.md) - OpenGL 栅栏实现 diff --git a/docs/api/rhi/opengl/device/create-pipeline-state.md b/docs/api/rhi/opengl/device/create-pipeline-state.md deleted file mode 100644 index 66da60a6..00000000 --- a/docs/api/rhi/opengl/device/create-pipeline-state.md +++ /dev/null @@ -1,53 +0,0 @@ -# OpenGLDevice::CreatePipelineState - -```cpp -RHIPipelineState* CreatePipelineState(const PipelineStateDesc& desc) override -``` - -创建图形管线状态对象。 - -## 详细描述 - -创建封装完整渲染管线状态的 `RHIPipelineState` 对象。 - -### 管线组件 - -- 顶点/片段着色器 -- 顶点格式 -- 光栅化状态 -- 混合状态 -- 深度/模板状态 -- 渲染目标格式 - -## 参数 - -- `desc` - 管线状态描述符 - -## 返回值 - -`RHIPipelineState*` - 创建的管线状态指针 - -## 注意事项 - -- 返回的管线状态对象归调用者所有,需自行管理生命周期 -- 管线状态创建后可通过 `RHIPipelineState` 接口配置 - -## 示例 - -```cpp -PipelineStateDesc psoDesc; -psoDesc.vertexShader = vertexShader; -psoDesc.fragmentShader = fragmentShader; -psoDesc.vertexFormat = vertexFormat; -// ... 设置其他管线状态 - -RHIPipelineState* pso = device.CreatePipelineState(psoDesc); - -// 绑定管线状态 -pso->Bind(); -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 类总览 -- [OpenGLPipelineState](../pipeline-state/pipeline-state.md) - OpenGL 管线状态实现 diff --git a/docs/api/rhi/opengl/device/create-render-window.md b/docs/api/rhi/opengl/device/create-render-window.md deleted file mode 100644 index 24a800bb..00000000 --- a/docs/api/rhi/opengl/device/create-render-window.md +++ /dev/null @@ -1,28 +0,0 @@ -# OpenGLDevice::CreateRenderWindow - -```cpp -bool CreateRenderWindow(int width, int height, const char* title, bool enableDebug = false) -``` - -创建并初始化一个新的 GLFW 窗口,同时初始化 OpenGL 上下文。 - -**参数:** -- `width` - 窗口宽度(像素) -- `height` - 窗口高度(像素) -- `title` - 窗口标题 -- `enableDebug` - 是否启用 OpenGL 调试上下文(可选,默认为 false) - -**返回:** `bool` - 成功返回 true,失败返回 false - -**示例:** - -```cpp -OpenGLDevice device; -if (device.CreateRenderWindow(1280, 720, "XCEngine", false)) { - // 窗口创建成功,可以开始渲染循环 -} -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/device/create-sampler.md b/docs/api/rhi/opengl/device/create-sampler.md deleted file mode 100644 index 870564e8..00000000 --- a/docs/api/rhi/opengl/device/create-sampler.md +++ /dev/null @@ -1,65 +0,0 @@ -# OpenGLDevice::CreateSampler - -```cpp -RHISampler* CreateSampler(const SamplerDesc& desc) override -``` - -创建纹理采样器对象。 - -## 详细描述 - -创建配置纹理采样参数的状态对象。 - -### 默认采样参数 - -当前实现使用默认采样参数(`OpenGLSamplerDesc` 零初始化): - -| 参数 | 默认值 | -|------|--------| -| 过滤模式 | 线性 | -| 地址模式 | Clamp | -| 各向异性 | 关闭 | - -## 参数 - -- `desc` - 采样器描述符 - -### SamplerDesc 字段 - -| 字段 | 描述 | -|------|------| -| `minFilter` | 缩小过滤模式 | -| `magFilter` | 放大过滤模式 | -| `addressU/V/W` | UVW 坐标寻址模式 | -| `maxAnisotropy` | 最大各向异性级别 | - -## 返回值 - -`RHISampler*` - 创建的采样器指针 - -## 注意事项 - -- 返回的采样器对象归调用者所有,需自行管理生命周期 -- 当前实现忽略输入的 `desc`,使用默认参数 -- 采样器需要绑定到纹理单元才能使用 - -## 示例 - -```cpp -SamplerDesc samplerDesc; -samplerDesc.minFilter = FilterMode::Linear; -samplerDesc.magFilter = FilterMode::Linear; -samplerDesc.addressU = AddressMode::Clamp; -samplerDesc.addressV = AddressMode::Clamp; -samplerDesc.maxAnisotropy = 16; - -RHISampler* sampler = device.CreateSampler(samplerDesc); - -// 绑定到纹理单元 -sampler->Bind(0); -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 类总览 -- [OpenGLSampler](../sampler/sampler.md) - OpenGL 采样器实现 diff --git a/docs/api/rhi/opengl/device/create-swap-chain.md b/docs/api/rhi/opengl/device/create-swap-chain.md deleted file mode 100644 index c9750810..00000000 --- a/docs/api/rhi/opengl/device/create-swap-chain.md +++ /dev/null @@ -1,61 +0,0 @@ -# OpenGLDevice::CreateSwapChain - -```cpp -RHISwapChain* CreateSwapChain(const SwapChainDesc& desc) override -``` - -创建 OpenGL 交换链对象。 - -## 详细描述 - -创建与设备窗口关联的交换链,用于管理前后缓冲区的交换。 - -### 交换链行为 - -- 使用窗口的当前尺寸初始化交换链 -- 通过 `SwapBuffers()` 执行缓冲区交换 -- 交换链与 GLFW 窗口 (`m_window`) 关联 - -## 参数 - -- `desc` - 交换链描述符 - -### SwapChainDesc 字段 - -| 字段 | 描述 | -|------|------| -| `width` | 缓冲区宽度 | -| `height` | 缓冲区高度 | - -## 返回值 - -`RHISwapChain*` - 创建的交换链指针 - -## 注意事项 - -- 如果 `m_window` 为 `nullptr`,交换链创建失败 -- 返回的交换链对象归调用者所有,需自行管理生命周期 -- 交换链尺寸应与窗口尺寸匹配 - -## 示例 - -```cpp -SwapChainDesc swapDesc; -swapDesc.width = 1280; -swapDesc.height = 720; - -RHISwapChain* swapChain = device.CreateSwapChain(swapDesc); - -// 在渲染循环中使用 -while (!device.ShouldClose()) { - device.PollEvents(); - renderScene(); - device.SwapBuffers(); -} -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 类总览 -- [OpenGLSwapChain](../swap-chain/swap-chain.md) - OpenGL 交换链实现 -- [SwapBuffers](swap-buffers.md) - 交换缓冲区 diff --git a/docs/api/rhi/opengl/device/create-texture.md b/docs/api/rhi/opengl/device/create-texture.md deleted file mode 100644 index 2a684d44..00000000 --- a/docs/api/rhi/opengl/device/create-texture.md +++ /dev/null @@ -1,81 +0,0 @@ -# OpenGLDevice::CreateTexture - -```cpp -RHITexture* CreateTexture(const TextureDesc& desc) override -``` - -创建 OpenGL 纹理对象。 - -## 详细描述 - -根据 `TextureDesc` 创建一个 OpenGL 纹理对象。纹理类型映射: - -| TextureDesc.textureType | OpenGLTextureType | -|------------------------|-------------------| -| 0 | Texture1D | -| 1 (默认) | Texture2D | -| 2 | Texture3D | -| 3 | TextureCube | - -### 纹理格式 - -当前实现固定使用 `RGBA8` (RGBA, 8 bits per channel) 格式。 - -### 纹理参数 - -| 参数 | 值 | -|------|-----| -| 格式 | RGBA8 | -| Mipmap | 根据 `desc.mipLevels` | -| 类型 | GL_UNSIGNED_BYTE | - -## 参数 - -- `desc` - 纹理描述符 - -### TextureDesc 字段 - -| 字段 | 描述 | -|------|------| -| `textureType` | 纹理类型 (0=1D, 1=2D, 2=3D, 3=Cube) | -| `width` | 纹理宽度 | -| `height` | 纹理高度 | -| `depth` | 纹理深度(用于 3D 纹理) | -| `mipLevels` | Mipmap 级别数量 | - -## 返回值 - -`RHITexture*` - 创建的纹理指针 - -## 注意事项 - -- 当前实现创建的纹理初始数据为 `nullptr`(空纹理) -- 返回的纹理对象归调用者所有,需自行管理生命周期 -- 1D 纹理使用 `height=1`,3D 纹理使用 `depth` 参数 - -## 示例 - -```cpp -// 创建 2D 纹理 -TextureDesc tex2dDesc; -tex2dDesc.textureType = 1; // Texture2D -tex2dDesc.width = 1024; -tex2dDesc.height = 1024; -tex2dDesc.mipLevels = 1; - -RHITexture* tex2d = device.CreateTexture(tex2dDesc); - -// 创建立方体纹理 -TextureDesc texCubeDesc; -texCubeDesc.textureType = 3; // TextureCube -texCubeDesc.width = 512; -texCubeDesc.height = 512; -texCubeDesc.mipLevels = 1; - -RHITexture* texCube = device.CreateTexture(texCubeDesc); -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 类总览 -- [OpenGLTexture](../texture/texture.md) - OpenGL 纹理实现 diff --git a/docs/api/rhi/opengl/device/destructor.md b/docs/api/rhi/opengl/device/destructor.md deleted file mode 100644 index cba0dccc..00000000 --- a/docs/api/rhi/opengl/device/destructor.md +++ /dev/null @@ -1,33 +0,0 @@ -# OpenGLDevice::~OpenGLDevice - -```cpp -~OpenGLDevice() override -``` - -析构函数,销毁 `OpenGLDevice` 实例。 - -## 详细描述 - -析构函数调用 `Shutdown()` 清理资源: -- 如果设备拥有窗口 (`m_ownsWindow == true`),则销毁 GLFW 窗口 -- 重置所有内部状态 - -## 注意事项 - -- 建议在销毁前显式调用 `Shutdown()` 以确保资源正确释放 -- 析构函数是虚函数,支持多态删除 - -## 示例 - -```cpp -{ - OpenGLDevice device; - device.Initialize(desc); - // ... 使用设备 -} // 析构时自动调用 Shutdown() -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 类总览 -- [Shutdown](shutdown.md) - 关闭设备 diff --git a/docs/api/rhi/opengl/device/device.md b/docs/api/rhi/opengl/device/device.md deleted file mode 100644 index ec728f58..00000000 --- a/docs/api/rhi/opengl/device/device.md +++ /dev/null @@ -1,85 +0,0 @@ -# OpenGLDevice - -**命名空间**: `XCEngine::RHI` - -**继承自**: `RHIDevice` - -**描述**: OpenGL 设备的实现,基于 Windows 原生窗口(HWND)和 Glad 提供 OpenGL 图形渲染能力。 - -## 概述 - -`OpenGLDevice` 是 XCEngine RHI 模块的 OpenGL 后端实现,通过 Windows HWND 管理窗口上下文,使用 Glad 加载 OpenGL 函数。它继承自抽象接口 `RHIDevice`,提供与具体图形 API 无关的统一接口。 - -### 主要功能 - -- 基于 Windows HWND 的窗口管理和事件处理 -- OpenGL 3.3 Core Profile 上下文初始化 -- 使用 Glad 动态加载 OpenGL 函数 -- 设备能力查询和信息收集 -- 渲染资源创建(缓冲区、纹理、着色器等) - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`OpenGLDevice`](constructor.md) | 构造函数 | -| [`~OpenGLDevice`](destructor.md) | 析构函数 | -| [`Initialize`](initialize.md) | 初始化设备 | -| [`Shutdown`](shutdown.md) | 关闭设备 | -| [`InitializeWithExistingWindow`](initialize-with-existing-window.md) | 使用现有窗口初始化 | -| [`MakeContextCurrent`](make-context-current.md) | 使 OpenGL 上下文为当前上下文 | -| [`GetNativeContext`](get-native-context.md) | 获取 OpenGL 渲染上下文句柄 | -| [`CreateBuffer`](create-buffer.md) | 创建缓冲区 | -| [`CreateTexture`](create-texture.md) | 创建纹理 | -| [`CreateSwapChain`](create-swap-chain.md) | 创建交换链 | -| [`CreateCommandList`](create-command-list.md) | 创建命令列表 | -| [`CreateCommandQueue`](create-command-queue.md) | 创建命令队列 | -| [`CreateShader`](../../device/create-shader.md) | 创建着色器 | -| [`CreatePipelineState`](create-pipeline-state.md) | 创建管线状态 | -| [`CreateFence`](create-fence.md) | 创建栅栏 | -| [`CreateSampler`](create-sampler.md) | 创建采样器 | -| [`GetCapabilities`](get-capabilities.md) | 获取设备能力 | -| [`GetDeviceInfo`](get-device-info.md) | 获取设备信息 | -| [`GetNativeDevice`](get-native-device.md) | 获取原生设备 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | - -## 使用示例 - -```cpp -#include "XCEngine/RHI/OpenGL/OpenGLDevice.h" - -using namespace XCEngine::RHI; - -// 创建并初始化 OpenGL 设备 -OpenGLDevice device; -RHIDeviceDesc desc; -desc.width = 1280; -desc.height = 720; -desc.appName = L"XCEngine App"; -desc.enableDebugLayer = true; - -if (!device.Initialize(desc)) { - return false; -} - -// 渲染循环 -// (OpenGL 采用立即模式,渲染逻辑在主循环中执行) - -// 清理 -device.Shutdown(); -``` - -### 使用已有 Windows 窗口 - -```cpp -OpenGLDevice device; -HWND existingWindow = /* 获取 Windows 窗口句柄 */; -if (device.InitializeWithExistingWindow(existingWindow)) { - // 使用已有窗口继续渲染 -} -``` - -## 相关文档 - -- [OpenGL 后端总览](../opengl.md) -- [RHIDevice](../../device/device.md) - 抽象设备接口 diff --git a/docs/api/rhi/opengl/device/get-capabilities.md b/docs/api/rhi/opengl/device/get-capabilities.md deleted file mode 100644 index abb9fdf6..00000000 --- a/docs/api/rhi/opengl/device/get-capabilities.md +++ /dev/null @@ -1,57 +0,0 @@ -# OpenGLDevice::GetCapabilities - -```cpp -const RHICapabilities& GetCapabilities() const override -``` - -获取 OpenGL 设备能力。 - -## 详细描述 - -返回设备的硬件能力和特性支持信息。能力信息在 `InitializeWithExistingWindow()` 期间通过查询 OpenGL 获得。 - -### 查询的能力项 - -| 能力字段 | 描述 | OpenGL 查询 | -|----------|------|-------------| -| `majorVersion` | OpenGL 主版本 | GL_MAJOR_VERSION | -| `minorVersion` | OpenGL 次版本 | GL_MINOR_VERSION | -| `bSupportsGeometryShaders` | 几何着色器支持 | 始终 true | -| `bSupportsComputeShaders` | 计算着色器支持 | GL_VERSION >= 4.3 | -| `bSupportsTessellation` | 曲面细分支持 | GL_VERSION >= 4.1 | -| `bSupportsExplicitMultiThreading` | 多线程支持 | 始终 false | -| `maxTexture2DSize` | 2D 纹理最大尺寸 | GL_MAX_TEXTURE_SIZE | -| `maxTextureCubeSize` | 立方体贴图最大尺寸 | GL_MAX_CUBE_MAP_TEXTURE_SIZE | -| `maxRenderTargets` | 最大渲染目标数 | GL_MAX_DRAW_BUFFERS | -| `maxColorAttachments` | 最大颜色附件数 | GL_MAX_DRAW_BUFFERS | -| `maxViewports` | 最大视口数 | GL_MAX_VIEWPORTS | -| `maxAnisotropy` | 最大各向异性级别 | GL_MAX_TEXTURE_MAX_ANISOTROPY | -| `maxVertexAttribs` | 最大顶点属性数 | GL_MAX_VERTEX_ATTRIBS | - -## 返回值 - -`const RHICapabilities&` - 设备能力结构的常量引用 - -## 复杂度 - -O(1) - 返回内部缓存的能力信息 - -## 示例 - -```cpp -const RHICapabilities& caps = device.GetCapabilities(); - -std::cout << "OpenGL Version: " << caps.majorVersion << "." << caps.minorVersion << std::endl; -std::cout << "Max Texture Size: " << caps.maxTexture2DSize << std::endl; -std::cout << "Max Render Targets: " << caps.maxRenderTargets << std::endl; - -if (caps.bSupportsComputeShaders) { - std::cout << "Compute shaders supported" << std::endl; -} -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 类总览 -- [RHICapabilities](../../capabilities/capabilities.md) - 能力结构定义 -- [GetDeviceInfo](get-device-info.md) - 获取设备信息 diff --git a/docs/api/rhi/opengl/device/get-context.md b/docs/api/rhi/opengl/device/get-context.md deleted file mode 100644 index 85dee92b..00000000 --- a/docs/api/rhi/opengl/device/get-context.md +++ /dev/null @@ -1,31 +0,0 @@ -# OpenGLDevice::GetContext - -获取 OpenGL 渲染上下文(Rendering Context)。 - -```cpp -HGLRC GetContext() const; -``` - -返回 OpenGL 渲染上下文的句柄。 - -**参数:** 无 - -**返回:** `HGLRC` - OpenGL 渲染上下文句柄 - -**线程安全:** ❌ - -**注意:** 此方法返回原生 OpenGL 渲染上下文句柄,可用于 `wglShareLists`、`wglMakeCurrent` 等原生 OpenGL 上下文操作。大多数情况下不需要直接使用此方法。 - -**示例:** - -```cpp -HGLRC hglrc = device.GetContext(); -// 可以使用 hglrc 进行原生 OpenGL 上下文操作 -HGLRC currentContext = wglGetCurrentContext(); -``` - -## 相关文档 - -- [OpenGLDevice 总览](device.md) - 返回类总览 -- [GetDC](get-dc.md) - 获取 Windows 设备上下文 -- [GetWindow](get-window.md) - 获取 GLFW 窗口指针 \ No newline at end of file diff --git a/docs/api/rhi/opengl/device/get-dc.md b/docs/api/rhi/opengl/device/get-dc.md deleted file mode 100644 index 2ecf9468..00000000 --- a/docs/api/rhi/opengl/device/get-dc.md +++ /dev/null @@ -1,31 +0,0 @@ -# OpenGLDevice::GetDC - -获取 OpenGL 设备的设备上下文(Device Context)。 - -```cpp -HDC GetDC() const; -``` - -返回与 OpenGL 渲染上下文关联的 Windows 设备上下文句柄。 - -**参数:** 无 - -**返回:** `HDC` - Windows 设备上下文句柄 - -**线程安全:** ❌ - -**注意:** 此方法返回原生 Windows HDC,可用于低级 GDI 操作或与原生 Windows OpenGL 上下文交互。大多数情况下不需要直接使用此方法。 - -**示例:** - -```cpp -HDC hdc = device.GetDC(); -// 可以使用 hdc 进行原生 Windows OpenGL 操作 -HDC currentDC = wglGetCurrentDC(); -``` - -## 相关文档 - -- [OpenGLDevice 总览](device.md) - 返回类总览 -- [GetContext](get-context.md) - 获取 OpenGL 渲染上下文 -- [GetWindow](get-window.md) - 获取 GLFW 窗口指针 \ No newline at end of file diff --git a/docs/api/rhi/opengl/device/get-device-info-impl.md b/docs/api/rhi/opengl/device/get-device-info-impl.md deleted file mode 100644 index c6fbc87a..00000000 --- a/docs/api/rhi/opengl/device/get-device-info-impl.md +++ /dev/null @@ -1,39 +0,0 @@ -# OpenGLDevice::GetDeviceInfoImpl - -```cpp -const RHIDeviceInfo& GetDeviceInfoImpl() const -``` - -获取设备信息的内部实现。 - -## 详细描述 - -返回存储在设备中的 `RHIDeviceInfo` 结构,包含 OpenGL 设备的具体信息: -- **vendor**: GPU 厂商名称 -- **renderer**: GPU 渲染器名称 -- **version**: OpenGL 驱动版本 -- **majorVersion**: OpenGL 主版本号 -- **minorVersion**: OpenGL 次版本号 - -此方法直接返回内部缓存的设备信息,无需额外查询。 - -## 返回值 - -`const RHIDeviceInfo&` - 设备信息结构的常量引用 - -## 复杂度 - -O(1) - -## 示例 - -```cpp -const RHIDeviceInfo& info = device.GetDeviceInfoImpl(); -std::wcout << L"GPU: " << info.renderer << std::endl; -std::wcout << L"OpenGL Version: " << info.majorVersion << L"." << info.minorVersion << std::endl; -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 类总览 -- [GetDeviceInfo](get-device-info.md) - 获取设备信息(公共接口) diff --git a/docs/api/rhi/opengl/device/get-device-info.md b/docs/api/rhi/opengl/device/get-device-info.md deleted file mode 100644 index 32976147..00000000 --- a/docs/api/rhi/opengl/device/get-device-info.md +++ /dev/null @@ -1,53 +0,0 @@ -# OpenGLDevice::GetDeviceInfo - -```cpp -const RHIDeviceInfo& GetDeviceInfo() const override -``` - -获取 OpenGL 设备信息。 - -## 详细描述 - -返回设备的标识和版本信息。设备信息在 `InitializeWithExistingWindow()` 期间通过 `glGetString()` 和 `glGetIntegerv()` 查询获得。 - -### 设备信息内容 - -| 信息字段 | 描述 | OpenGL 来源 | -|----------|------|-------------| -| `vendor` | GPU 厂商 | GL_VENDOR | -| `renderer` | GPU 渲染器名称 | GL_RENDERER | -| `version` | OpenGL 版本字符串 | GL_VERSION | -| `majorVersion` | OpenGL 主版本号 | GL_MAJOR_VERSION | -| `minorVersion` | OpenGL 次版本号 | GL_MINOR_VERSION | - -### 厂商示例 - -- **NVIDIA**: "NVIDIA Corporation" -- **AMD**: "AMD" 或 "Advanced Micro Devices, Inc." -- **Intel**: "Intel" 或 "Intel Corporation" - -## 返回值 - -`const RHIDeviceInfo&` - 设备信息结构的常量引用 - -## 复杂度 - -O(1) - 返回内部缓存的设备信息 - -## 示例 - -```cpp -const RHIDeviceInfo& info = device.GetDeviceInfo(); - -std::wcout << L"Vendor: " << info.vendor << std::endl; -std::wcout << L"Renderer: " << info.renderer << std::endl; -std::wcout << L"Version: " << info.version << std::endl; -std::cout << "GL Version: " << info.majorVersion << "." << info.minorVersion << std::endl; -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 类总览 -- [RHIDeviceInfo](../../types/types.md) - 设备信息结构定义 -- [GetCapabilities](get-capabilities.md) - 获取设备能力 -- [GetDeviceInfoImpl](get-device-info-impl.md) - 获取设备信息实现 diff --git a/docs/api/rhi/opengl/device/get-native-context.md b/docs/api/rhi/opengl/device/get-native-context.md deleted file mode 100644 index 3133437e..00000000 --- a/docs/api/rhi/opengl/device/get-native-context.md +++ /dev/null @@ -1,13 +0,0 @@ -# OpenGLDevice::GetNativeContext - -获取 OpenGL 渲染上下文句柄。 - -```cpp -void* GetNativeContext() const; -``` - -**返回:** `void*` - OpenGL 渲染上下文句柄(HGLRC) - -## 相关文档 - -- [OpenGLDevice 总览](device.md) diff --git a/docs/api/rhi/opengl/device/get-native-device.md b/docs/api/rhi/opengl/device/get-native-device.md deleted file mode 100644 index be03fc3c..00000000 --- a/docs/api/rhi/opengl/device/get-native-device.md +++ /dev/null @@ -1,35 +0,0 @@ -# OpenGLDevice::GetNativeDevice - -```cpp -void* GetNativeDevice() override -``` - -获取原生图形设备指针。 - -## 详细描述 - -返回原生图形 API 的设备指针。OpenGL 是一种状态机模型,没有传统意义上的"设备"对象,因此此方法返回 `nullptr`。 - -## 返回值 - -`void*` - 始终返回 `nullptr`(OpenGL 无原生设备对象) - -## 注意事项 - -- OpenGL 使用隐式状态机模式,不需要显式的设备对象 -- 如需获取 OpenGL 上下文相关信息,使用 `GetCapabilities()` 或 `GetDeviceInfo()` -- 如需获取窗口句柄,使用 `GetWindow()` 方法 - -## 示例 - -```cpp -void* native = device.GetNativeDevice(); -// 注意:当前实现返回 nullptr -// OpenGL 为状态机,无需设备对象 -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 类总览 -- [GetWindow](get-window.md) - 获取 GLFW 窗口 -- [GetCapabilities](get-capabilities.md) - 获取设备能力 diff --git a/docs/api/rhi/opengl/device/get-native-handle.md b/docs/api/rhi/opengl/device/get-native-handle.md deleted file mode 100644 index b6735a84..00000000 --- a/docs/api/rhi/opengl/device/get-native-handle.md +++ /dev/null @@ -1,26 +0,0 @@ -# OpenGLDevice::GetNativeHandle - -```cpp -void* GetNativeHandle() const -``` - -获取原生窗口或渲染上下文句柄。 - -**返回:** `void*` - 原生句柄(当前实现返回 `nullptr`) - -**复杂度:** O(1) - -**注意:** 此方法当前实现返回 `nullptr`。使用 `GetWindow()` 获取 GLFW 窗口指针。 - -**示例:** - -```cpp -void* handle = device.GetNativeHandle(); -// 注意:当前实现返回 nullptr -GLFWwindow* window = device.GetWindow(); // 使用此方法获取窗口 -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 返回类总览 -- [GetWindow](get-window.md) - 获取 GLFW 窗口指针 diff --git a/docs/api/rhi/opengl/device/get-window.md b/docs/api/rhi/opengl/device/get-window.md deleted file mode 100644 index 288b5da2..00000000 --- a/docs/api/rhi/opengl/device/get-window.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLDevice::GetWindow - -```cpp -GLFWwindow* GetWindow() const -``` - -获取关联的 GLFW 窗口指针。 - -**返回:** `GLFWwindow*` - GLFW 窗口指针 - -**示例:** - -```cpp -GLFWwindow* window = device.GetWindow(); -if (window) { - glfwSetWindowTitle(window, "New Title"); -} -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/device/initialize-with-existing-window.md b/docs/api/rhi/opengl/device/initialize-with-existing-window.md deleted file mode 100644 index 939fd699..00000000 --- a/docs/api/rhi/opengl/device/initialize-with-existing-window.md +++ /dev/null @@ -1,26 +0,0 @@ -# OpenGLDevice::InitializeWithExistingWindow - -```cpp -bool InitializeWithExistingWindow(GLFWwindow* window) -``` - -使用已有的 GLFW 窗口初始化 OpenGL 设备,不会创建新窗口或管理窗口生命周期。 - -**参数:** -- `window` - 已存在的 GLFWwindow 指针 - -**返回:** `bool` - 成功返回 true,失败返回 false - -**示例:** - -```cpp -GLFWwindow* existingWindow = glfwCreateWindow(1280, 720, "Existing", nullptr, nullptr); -OpenGLDevice device; -if (device.InitializeWithExistingWindow(existingWindow)) { - // 使用已有窗口初始化设备 -} -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/device/initialize.md b/docs/api/rhi/opengl/device/initialize.md deleted file mode 100644 index 527ab646..00000000 --- a/docs/api/rhi/opengl/device/initialize.md +++ /dev/null @@ -1,64 +0,0 @@ -# OpenGLDevice::Initialize - -```cpp -bool Initialize(const RHIDeviceDesc& desc) override -``` - -初始化 OpenGL 设备。 - -## 详细描述 - -根据 `RHIDeviceDesc` 初始化 OpenGL 设备。初始化过程包括: - -1. **检查是否已初始化**: 如果已初始化,直接返回 `true` -2. **窗口处理**: - - 如果 `desc.windowHandle` 提供现有窗口,调用 `InitializeWithExistingWindow()` - - 否则调用 `CreateRenderWindow()` 创建新窗口 -3. **GLFW 初始化**: 确保 GLFW 库已初始化 -4. **OpenGL 上下文**: 创建 OpenGL 3.3 Core Profile 上下文 -5. **Glad 加载**: 使用 Glad 动态加载 OpenGL 函数 -6. **设备信息收集**: 获取 GPU 厂商、渲染器、版本等信息 -7. **能力查询**: 查询并存储 OpenGL 设备能力 - -### RHIDeviceDesc 字段说明 - -| 字段 | 描述 | -|------|------| -| `width` | 窗口宽度(当创建新窗口时) | -| `height` | 窗口高度(当创建新窗口时) | -| `appName` | 应用程序名称(用于窗口标题) | -| `enableDebugLayer` | 是否启用调试上下文 | -| `windowHandle` | 现有 GLFW 窗口句柄(可选) | - -## 参数 - -- `desc` - 设备描述符,包含初始化参数 - -## 返回值 - -`bool` - 初始化成功返回 `true`,失败返回 `false` - -## 示例 - -```cpp -OpenGLDevice device; -RHIDeviceDesc desc; -desc.width = 1920; -desc.height = 1080; -desc.appName = L"My OpenGL App"; -desc.enableDebugLayer = true; - -if (!device.Initialize(desc)) { - // 处理初始化失败 - return; -} - -// 设备已就绪,可以开始渲染 -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 类总览 -- [CreateRenderWindow](create-render-window.md) - 创建渲染窗口 -- [InitializeWithExistingWindow](initialize-with-existing-window.md) - 使用现有窗口初始化 -- [Shutdown](shutdown.md) - 关闭设备 diff --git a/docs/api/rhi/opengl/device/make-context-current.md b/docs/api/rhi/opengl/device/make-context-current.md deleted file mode 100644 index 8a844503..00000000 --- a/docs/api/rhi/opengl/device/make-context-current.md +++ /dev/null @@ -1,13 +0,0 @@ -# OpenGLDevice::MakeContextCurrent - -使 OpenGL 上下文成为当前线程的活跃渲染上下文。 - -```cpp -bool MakeContextCurrent(); -``` - -**返回:** `bool` - 成功返回 true - -## 相关文档 - -- [OpenGLDevice 总览](device.md) diff --git a/docs/api/rhi/opengl/device/poll-events.md b/docs/api/rhi/opengl/device/poll-events.md deleted file mode 100644 index 4d26430a..00000000 --- a/docs/api/rhi/opengl/device/poll-events.md +++ /dev/null @@ -1,23 +0,0 @@ -# OpenGLDevice::PollEvents - -```cpp -bool PollEvents() -``` - -处理所有挂起的 GLFW 事件(窗口事件、输入事件等)。 - -**返回:** `bool` - 如果窗口应保持打开返回 true,如果窗口应关闭返回 false - -**示例:** - -```cpp -while (device.PollEvents()) { - // 渲染和交换缓冲区 - renderScene(); - device.SwapBuffers(); -} -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/device/set-should-close.md b/docs/api/rhi/opengl/device/set-should-close.md deleted file mode 100644 index 3cc22124..00000000 --- a/docs/api/rhi/opengl/device/set-should-close.md +++ /dev/null @@ -1,20 +0,0 @@ -# OpenGLDevice::SetShouldClose - -```cpp -void SetShouldClose(bool shouldClose) -``` - -设置窗口是否应该关闭的标志。 - -**参数:** -- `shouldClose` - true 表示窗口应该关闭,false 表示保持打开 - -**示例:** - -```cpp -device.SetShouldClose(true); // 请求关闭窗口 -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/device/should-close.md b/docs/api/rhi/opengl/device/should-close.md deleted file mode 100644 index c75d4f5b..00000000 --- a/docs/api/rhi/opengl/device/should-close.md +++ /dev/null @@ -1,23 +0,0 @@ -# OpenGLDevice::ShouldClose - -```cpp -bool ShouldClose() const -``` - -检查窗口是否应该关闭。 - -**返回:** `bool` - 如果窗口应该关闭返回 true,否则返回 false - -**示例:** - -```cpp -while (!device.ShouldClose()) { - device.PollEvents(); - renderScene(); - device.SwapBuffers(); -} -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/device/shutdown.md b/docs/api/rhi/opengl/device/shutdown.md deleted file mode 100644 index 2f554580..00000000 --- a/docs/api/rhi/opengl/device/shutdown.md +++ /dev/null @@ -1,49 +0,0 @@ -# OpenGLDevice::Shutdown - -```cpp -void Shutdown() override -``` - -关闭 OpenGL 设备并释放相关资源。 - -## 详细描述 - -关闭 OpenGL 设备并执行清理操作: - -1. **窗口销毁**: 如果设备拥有窗口 (`m_ownsWindow == true`),调用 `glfwDestroyWindow()` 销毁 GLFW 窗口 -2. **状态重置**: - - `m_window` 设为 `nullptr` - - `m_initialized` 设为 `false` - - `m_ownsWindow` 设为 `false` - -### 窗口所有权 - -设备可能通过两种方式获得窗口: -- **自有窗口**: 通过 `CreateRenderWindow()` 创建,设备负责销毁 -- **外部窗口**: 通过 `InitializeWithExistingWindow()` 传入,设备不负责销毁 - -## 注意事项 - -- 多次调用 `Shutdown()` 是安全的 -- 销毁窗口后,与该窗口关联的 OpenGL 上下文将无效 -- 建议在程序结束前显式调用 `Shutdown()` - -## 示例 - -```cpp -{ - OpenGLDevice device; - device.Initialize(desc); - - // ... 使用设备进行渲染 - - device.Shutdown(); // 显式关闭 -} -// 或等待析构函数自动调用 -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 类总览 -- [Initialize](initialize.md) - 初始化设备 -- [CreateRenderWindow](create-render-window.md) - 创建渲染窗口 diff --git a/docs/api/rhi/opengl/device/swap-buffers.md b/docs/api/rhi/opengl/device/swap-buffers.md deleted file mode 100644 index 444d30d7..00000000 --- a/docs/api/rhi/opengl/device/swap-buffers.md +++ /dev/null @@ -1,19 +0,0 @@ -# OpenGLDevice::SwapBuffers - -```cpp -void SwapBuffers() -``` - -交换前后缓冲区,将渲染内容显示到屏幕上。 - -**示例:** - -```cpp -// 渲染完成后交换缓冲区 -renderScene(); -device.SwapBuffers(); -``` - -## 相关文档 - -- [OpenGLDevice](device.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/fence/fence.md b/docs/api/rhi/opengl/fence/fence.md deleted file mode 100644 index 12c97e70..00000000 --- a/docs/api/rhi/opengl/fence/fence.md +++ /dev/null @@ -1,44 +0,0 @@ -# OpenGLFence - -**命名空间**: `XCEngine::RHI` - -**描述**: OpenGL 栅栏同步实现,继承自 `RHIFence`。使用 OpenGL `GLsync` 对象实现 CPU-GPU 同步机制。 - -## 概述 - -`OpenGLFence` 提供基于 OpenGL 同步对象(`GLsync`)的栅栏实现,用于 CPU-GPU 同步。当 GPU 完成特定操作后,栅栏会被设置为 signaled 状态,CPU 可以通过 `Wait` 方法等待该状态。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`OpenGLFence`](../../../threading/lambda-task/constructor.md) | 构造函数 | -| [`Initialize`](initialize.md) | 初始化栅栏,设置初始值 | -| [`Shutdown`](shutdown.md) | 关闭栅栏,释放 GLsync 资源 | -| [`Signal`](signal.md) | 信号栅栏(重载:有无参数版本) | -| [`Wait`](wait.md) | 等待栅栏达到指定值 | -| [`GetCompletedValue`](get-completed-value.md) | 获取已完成的栅栏值 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生 GLsync 句柄 | - -## 使用示例 - -```cpp -#include "XCEngine/RHI/OpenGL/OpenGLFence.h" - -using namespace XCEngine::RHI; - -// 创建并初始化栅栏 -OpenGLFence fence; -fence.Initialize(0); - -// 执行 GPU 操作后信号栅栏 -fence.Signal(); - -// 等待栅栏,最多等待 1 秒 -fence.Wait(1); -``` - -## 相关文档 - -- [OpenGL 后端总览](../opengl.md) -- [RHIFence](../../fence/fence.md) - 抽象栅栏接口 diff --git a/docs/api/rhi/opengl/fence/get-completed-value.md b/docs/api/rhi/opengl/fence/get-completed-value.md deleted file mode 100644 index 9566180f..00000000 --- a/docs/api/rhi/opengl/fence/get-completed-value.md +++ /dev/null @@ -1,41 +0,0 @@ -# OpenGLFence::GetCompletedValue - -```cpp -uint64_t GetCompletedValue() const override; -``` - -获取已完成的最大栅栏值。 - -## 详细描述 - -返回 `m_completedValue`,表示已确认完成的栅栏值。每次 `Wait()` 成功返回且同步对象已信号时更新。 - -此值用于判断在 `Wait(value)` 中指定的栅栏值是否已完成。 - -## 参数 - -无 - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `uint64_t` | 已完成的栅栏值 | - -## 示例 - -```cpp -OpenGLFence fence; -fence.Initialize(false); -fence.Signal(5); -fence.Wait(1000000000); // 等待完成后 - -uint64_t completed = fence.GetCompletedValue(); -// completed >= 5 -``` - -## 相关文档 - -- [OpenGLFence 总览](fence.md) - 返回类总览 -- [GetCurrentValue](get-current-value.md) - 获取当前栅栏值 -- [Wait](wait.md) - 等待特定栅栏值 diff --git a/docs/api/rhi/opengl/fence/get-current-value.md b/docs/api/rhi/opengl/fence/get-current-value.md deleted file mode 100644 index 810a814b..00000000 --- a/docs/api/rhi/opengl/fence/get-current-value.md +++ /dev/null @@ -1,41 +0,0 @@ -# OpenGLFence::GetCurrentValue - -```cpp -uint64_t GetCurrentValue() const; -``` - -获取栅栏的当前值。 - -## 详细描述 - -返回 `m_fenceValue`,表示栅栏的最新值。每次调用 `Signal()` 时更新。 - -## 参数 - -无 - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `uint64_t` | 当前栅栏值 | - -## 示例 - -```cpp -OpenGLFence fence; -fence.Initialize(false); - -uint64_t initial = fence.GetCurrentValue(); // 0 - -fence.Signal(); -uint64_t afterSignal = fence.GetCurrentValue(); // 1 - -fence.Signal(10); -uint64_t afterValue = fence.GetCurrentValue(); // 10 -``` - -## 相关文档 - -- [OpenGLFence 总览](fence.md) - 返回类总览 -- [GetCompletedValue](get-completed-value.md) - 获取已完成的栅栏值 diff --git a/docs/api/rhi/opengl/fence/get-native-handle.md b/docs/api/rhi/opengl/fence/get-native-handle.md deleted file mode 100644 index 3fbe7973..00000000 --- a/docs/api/rhi/opengl/fence/get-native-handle.md +++ /dev/null @@ -1,43 +0,0 @@ -# OpenGLFence::GetNativeHandle - -```cpp -void* GetNativeHandle() override; -``` - -获取 OpenGL 同步对象句柄。 - -## 详细描述 - -返回指向 `GLsync` 对象的指针。返回值为 `m_sync`,类型为 `void*`。 - -## 参数 - -无 - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `void*` | OpenGL `GLsync` 句柄。如果未调用过 `Signal()`,则返回 `nullptr` | - -## 复杂度 - -O(1) - 常数时间 - -## 示例 - -```cpp -OpenGLFence fence; -fence.Initialize(false); -fence.Signal(); - -void* handle = fence.GetNativeHandle(); -if (handle != nullptr) { - // 可以传递给其他 OpenGL 函数 - GLsync sync = static_cast(handle); -} -``` - -## 相关文档 - -- [OpenGLFence 总览](fence.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/fence/get-status.md b/docs/api/rhi/opengl/fence/get-status.md deleted file mode 100644 index fff16e5d..00000000 --- a/docs/api/rhi/opengl/fence/get-status.md +++ /dev/null @@ -1,50 +0,0 @@ -# OpenGLFence::GetStatus - -```cpp -FenceStatus GetStatus() const; -``` - -获取栅栏的当前状态。 - -## 详细描述 - -此方法查询 OpenGL 同步对象的实际状态: - -1. 如果 `m_sync` 为 `nullptr`,返回软件层面的 `m_signaled` 状态 -2. 如果 `m_sync` 存在,调用 `glGetSynciv(sync, GL_SYNC_STATUS, ...)` 查询 OpenGL 状态 -3. 根据 `GL_SYNC_STATUS` 返回 `FenceStatus::Signaled` 或 `FenceStatus::Unsignaled` - -与 `IsSignaled()` 的区别: -- `GetStatus()`:查询 OpenGL 同步对象状态,更准确但有 GPU 开销 -- `IsSignaled()`:返回软件标志,快速但不反映 GPU 实际状态 - -## 参数 - -无 - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `FenceStatus` | 栅栏状态,值为以下之一: | -| | `FenceStatus::Signaled` - 栅栏已signaled,GPU 操作已完成 | -| | `FenceStatus::Unsignaled` - 栅栏未signaled,GPU 操作未完成 | -| | `FenceStatus::Error` - 此实现不会返回此值(错误处理在底层) | - -## 示例 - -```cpp -OpenGLFence fence; -fence.Initialize(false); -fence.Signal(); - -FenceStatus status = fence.GetStatus(); -if (status == FenceStatus::Signaled) { - // GPU 操作已完成 -} -``` - -## 相关文档 - -- [OpenGLFence 总览](fence.md) - 返回类总览 -- [IsSignaled](is-signaled.md) - 快速状态检查 diff --git a/docs/api/rhi/opengl/fence/initialize.md b/docs/api/rhi/opengl/fence/initialize.md deleted file mode 100644 index 03838756..00000000 --- a/docs/api/rhi/opengl/fence/initialize.md +++ /dev/null @@ -1,41 +0,0 @@ -# OpenGLFence::Initialize - -```cpp -bool Initialize(bool signaled = false); -``` - -初始化 OpenGLFence 实例,设置栅栏的初始值和状态。 - -## 详细描述 - -此方法不创建 OpenGL 同步对象(`GLsync`),仅初始化内部状态。`GLsync` 对象在首次调用 `Signal()` 时才被创建。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `signaled` | `bool` | 初始是否为 signaled 状态。默认为 `false`(Unsignaled) | - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `bool` | 始终返回 `true`。初始化成功 | - -## 示例 - -```cpp -OpenGLFence fence; -// 创建为 unsignaled 状态 -fence.Initialize(false); - -// 或创建为 already signaled 状态 -OpenGLFence fence2; -fence2.Initialize(true); -``` - -## 相关文档 - -- [OpenGLFence 总览](fence.md) - 返回类总览 -- [Signal](signal.md) - 创建 GLsync 对象 -- [Shutdown](shutdown.md) - 释放资源 diff --git a/docs/api/rhi/opengl/fence/is-signaled.md b/docs/api/rhi/opengl/fence/is-signaled.md deleted file mode 100644 index 45f240e0..00000000 --- a/docs/api/rhi/opengl/fence/is-signaled.md +++ /dev/null @@ -1,43 +0,0 @@ -# OpenGLFence::IsSignaled - -```cpp -bool IsSignaled() const override; -``` - -检查栅栏是否处于 signaled 状态。 - -## 详细描述 - -此方法返回软件层面的 `m_signaled` 标志状态,不查询 OpenGL 同步对象。 - -与 `GetStatus()` 的区别: -- `IsSignaled()`:返回软件标志,快速但可能不反映 GPU 实际状态 -- `GetStatus()`:查询 `GLsync` 对象的 OpenGL 状态,结果更准确但有额外开销 - -## 参数 - -无 - -## 返回值 - -| 类型 | 描述 | -|------|------| -| `bool` | `true` 表示栅栏已信号,`false` 表示未信号 | - -## 示例 - -```cpp -OpenGLFence fence; -fence.Initialize(false); - -if (fence.IsSignaled()) { - // 操作已完成 -} else { - // 操作未完成 -} -``` - -## 相关文档 - -- [OpenGLFence 总览](fence.md) - 返回类总览 -- [GetStatus](get-status.md) - 查询 OpenGL 同步状态 diff --git a/docs/api/rhi/opengl/fence/reset.md b/docs/api/rhi/opengl/fence/reset.md deleted file mode 100644 index 94d739f6..00000000 --- a/docs/api/rhi/opengl/fence/reset.md +++ /dev/null @@ -1,47 +0,0 @@ -# OpenGLFence::Reset - -```cpp -void Reset(); -``` - -重置栅栏为 unsignaled 状态。 - -## 详细描述 - -此方法执行以下操作: - -1. 如果存在 `m_sync`,调用 `glDeleteSync()` 删除 OpenGL 同步对象 -2. 将 `m_sync` 置为 `nullptr` -3. 将 `m_signaled` 设置为 `false` - -重置后,栅栏的 `IsSignaled()` 将返回 `false`,可重新用于新的同步操作。 - -## 参数 - -无 - -## 返回值 - -无 - -## 示例 - -```cpp -OpenGLFence fence; -fence.Initialize(false); -fence.Signal(); - -// 使用后重置 -fence.Reset(); - -// 此时 IsSignaled() 返回 false -if (!fence.IsSignaled()) { - // 可以重新使用 -} -``` - -## 相关文档 - -- [OpenGLFence 总览](fence.md) - 返回类总览 -- [Signal](signal.md) - 信号栅栏 -- [IsSignaled](is-signaled.md) - 检查状态 diff --git a/docs/api/rhi/opengl/fence/shutdown.md b/docs/api/rhi/opengl/fence/shutdown.md deleted file mode 100644 index 4cde248e..00000000 --- a/docs/api/rhi/opengl/fence/shutdown.md +++ /dev/null @@ -1,39 +0,0 @@ -# OpenGLFence::Shutdown - -```cpp -void Shutdown() override; -``` - -释放 OpenGL 栅栏资源。 - -## 详细描述 - -如果 `m_sync` 不为 `nullptr`,调用 `glDeleteSync()` 删除 OpenGL 同步对象,然后将 `m_sync` 置为 `nullptr`。 - -此方法由析构函数自动调用,确保资源正确释放。 - -## 参数 - -无 - -## 返回值 - -无 - -## 示例 - -```cpp -OpenGLFence fence; -fence.Initialize(false); -fence.Signal(); - -// 显式关闭,释放 GLsync 资源 -fence.Shutdown(); - -// fence 对象销毁时会再次调用 Shutdown,但已是安全操作 -``` - -## 相关文档 - -- [OpenGLFence 总览](fence.md) - 返回类总览 -- [Initialize](initialize.md) - 初始化 diff --git a/docs/api/rhi/opengl/fence/signal.md b/docs/api/rhi/opengl/fence/signal.md deleted file mode 100644 index d14d6ea5..00000000 --- a/docs/api/rhi/opengl/fence/signal.md +++ /dev/null @@ -1,48 +0,0 @@ -# OpenGLFence::Signal - -```cpp -void Signal() override; -void Signal(uint64_t value) override; -``` - -将栅栏设置为 signaled 状态,通知等待的线程操作完成。 - -## 详细描述 - -`Signal()` 执行以下操作: - -1. 调用 `glFlush()` 确保所有挂起的 OpenGL 命令已发送到 GPU -2. 增加 `m_fenceValue`(无参版本)或设置为指定值 -3. 设置 `m_signaled = true` -4. 如果 `m_sync` 已存在,先删除旧对象 -5. 调用 `glFenceSync()` 创建新的 `GLsync` 对象 - -## 参数 - -| 重载 | 参数 | 类型 | 描述 | -|------|------|------|------| -| `Signal()` | 无 | - | 将栅栏值增加 1 | -| `Signal(uint64_t value)` | `value` | `uint64_t` | 设置栅栏为指定值 | - -## 返回值 - -无 - -## 示例 - -```cpp -OpenGLFence fence; -fence.Initialize(false); - -// 无参版本:栅栏值 +1 -fence.Signal(); - -// 带值版本:设置指定栅栏值 -fence.Signal(5); -``` - -## 相关文档 - -- [OpenGLFence 总览](fence.md) - 返回类总览 -- [Wait](wait.md) - 等待栅栏 -- [Initialize](initialize.md) - 初始化 diff --git a/docs/api/rhi/opengl/fence/wait.md b/docs/api/rhi/opengl/fence/wait.md deleted file mode 100644 index be6fbb5c..00000000 --- a/docs/api/rhi/opengl/fence/wait.md +++ /dev/null @@ -1,50 +0,0 @@ -# OpenGLFence::Wait - -```cpp -void Wait(uint64_t timeoutNs) override; -``` - -等待栅栏达到 signaled 状态或超时。 - -## 详细描述 - -此方法尝试等待 `m_sync`(OpenGL 同步对象)变为 signaled 状态: - -- **未信号或无同步对象**:直接调用 `glFinish()` 阻塞 CPU,直到 GPU 完成所有命令,然后将 `m_completedValue` 更新为 `m_fenceValue` -- **已信号状态**:调用 `glClientWaitSync()` 尝试获取同步状态,支持超时 -- **timeout = 0**:立即返回,不阻塞 - -内部使用 `GL_SYNC_FLUSH_COMMANDS_BIT` 标志确保客户端命令已刷新。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `timeoutNs` | `uint64_t` | 超时时间,以纳秒为单位。为 `0` 时立即返回 | - -## 返回值 - -无 - -## 示例 - -```cpp -OpenGLFence fence; -fence.Initialize(false); -fence.Signal(); - -// 等待最多 1 秒 (1000000000 ns) -fence.Wait(1000000000); - -// 等待最多 100 毫秒 -fence.Wait(100000000); - -// timeout = 0 立即返回 -fence.Wait(0); -``` - -## 相关文档 - -- [OpenGLFence 总览](fence.md) - 返回类总览 -- [Signal](signal.md) - 信号栅栏 -- [IsSignaled](is-signaled.md) - 非阻塞检查状态 diff --git a/docs/api/rhi/opengl/opengl.md b/docs/api/rhi/opengl/opengl.md deleted file mode 100644 index c8483083..00000000 --- a/docs/api/rhi/opengl/opengl.md +++ /dev/null @@ -1,41 +0,0 @@ -# OpenGL 后端概览 - -**命名空间**: `XCEngine::RHI` - -**类型**: `module` - -**描述**: OpenGL 后端实现模块,基于 GLFW 和现代 OpenGL (Core Profile)。 - -## 组件列表 - -| 组件 | 文档 | -|------|------| -| [OpenGLDevice](device/device.md) | OpenGL 设备实现 | -| [OpenGLBuffer](buffer/buffer.md) | OpenGL 缓冲区实现 | -| [OpenGLTexture](texture/texture.md) | OpenGL 纹理实现 | -| [OpenGLCommandList](command-list/command-list.md) | OpenGL 命令列表实现 | -| [OpenGLCommandQueue](command-queue/command-queue.md) | OpenGL 命令队列实现 | -| [OpenGLSwapChain](swap-chain/swap-chain.md) | OpenGL 交换链实现 | -| [OpenGLFence](fence/fence.md) | OpenGL 同步栅栏实现 | -| [OpenGLShader](shader/shader.md) | OpenGL 着色器实现 | -| [OpenGLPipelineState](pipeline-state/pipeline-state.md) | OpenGL 管线状态实现 | -| [OpenGLSampler](sampler/sampler.md) | OpenGL 采样器实现 | -| [OpenGLVertexArray](vertex-array/vertex-array.md) | OpenGL 顶点数组实现 | -| [OpenGLRenderTargetView](render-target-view/render-target-view.md) | OpenGL 渲染目标实现 | -| [OpenGLDepthStencilView](depth-stencil-view/depth-stencil-view.md) | OpenGL 深度模板实现 | - -## 与 D3D12 的差异 - -| 方面 | D3D12 | OpenGL | -|------|-------|--------| -| 模式 | 命令列表录制 | 立即模式 | -| 状态管理 | 显式资源状态 | OpenGL 状态机 | -| 描述符 | 描述符堆 + 句柄 | 绑定点 | -| 管线状态 | PSO(不可变) | 可变状态 | -| 内存管理 | 显式显存管理 | 驱动自动管理 | -| 多线程 | 需要 Bundle | 上下文共享 | - -## 相关文档 - -- [RHI 模块总览](../rhi.md) - RHI 模块总览 -- [D3D12 后端](../../d3d12/d3d12.md) diff --git a/docs/api/rhi/opengl/pipeline-state/apply-blend.md b/docs/api/rhi/opengl/pipeline-state/apply-blend.md deleted file mode 100644 index c4fcc3be..00000000 --- a/docs/api/rhi/opengl/pipeline-state/apply-blend.md +++ /dev/null @@ -1,21 +0,0 @@ -# OpenGLPipelineState::ApplyBlend - -```cpp -void ApplyBlend(); -``` - -应用混合状态到 OpenGL。 - -**线程安全:** ❌ - -**示例:** - -```cpp -pipelineState->SetBlendState(blendState); -pipelineState->ApplyBlend(); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [Apply](apply.md) - 应用所有状态 diff --git a/docs/api/rhi/opengl/pipeline-state/apply-depth-stencil.md b/docs/api/rhi/opengl/pipeline-state/apply-depth-stencil.md deleted file mode 100644 index 24702420..00000000 --- a/docs/api/rhi/opengl/pipeline-state/apply-depth-stencil.md +++ /dev/null @@ -1,21 +0,0 @@ -# OpenGLPipelineState::ApplyDepthStencil - -```cpp -void ApplyDepthStencil(); -``` - -应用深度模板状态到 OpenGL。 - -**线程安全:** ❌ - -**示例:** - -```cpp -pipelineState->SetDepthStencilState(dsState); -pipelineState->ApplyDepthStencil(); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [Apply](apply.md) - 应用所有状态 diff --git a/docs/api/rhi/opengl/pipeline-state/apply-rasterizer.md b/docs/api/rhi/opengl/pipeline-state/apply-rasterizer.md deleted file mode 100644 index 45fd9c9a..00000000 --- a/docs/api/rhi/opengl/pipeline-state/apply-rasterizer.md +++ /dev/null @@ -1,21 +0,0 @@ -# OpenGLPipelineState::ApplyRasterizer - -```cpp -void ApplyRasterizer(); -``` - -应用光栅化状态到 OpenGL。 - -**线程安全:** ❌ - -**示例:** - -```cpp -pipelineState->SetRasterizerState(rsState); -pipelineState->ApplyRasterizer(); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [Apply](apply.md) - 应用所有状态 diff --git a/docs/api/rhi/opengl/pipeline-state/apply-scissor.md b/docs/api/rhi/opengl/pipeline-state/apply-scissor.md deleted file mode 100644 index 8716bf27..00000000 --- a/docs/api/rhi/opengl/pipeline-state/apply-scissor.md +++ /dev/null @@ -1,21 +0,0 @@ -# OpenGLPipelineState::ApplyScissor - -```cpp -void ApplyScissor(); -``` - -应用裁剪状态到 OpenGL。 - -**线程安全:** ❌ - -**示例:** - -```cpp -pipelineState->SetScissor(scissor); -pipelineState->ApplyScissor(); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [Apply](apply.md) - 应用所有状态 diff --git a/docs/api/rhi/opengl/pipeline-state/apply-viewport.md b/docs/api/rhi/opengl/pipeline-state/apply-viewport.md deleted file mode 100644 index 2bcbe67d..00000000 --- a/docs/api/rhi/opengl/pipeline-state/apply-viewport.md +++ /dev/null @@ -1,21 +0,0 @@ -# OpenGLPipelineState::ApplyViewport - -```cpp -void ApplyViewport(); -``` - -应用视口状态到 OpenGL。 - -**线程安全:** ❌ - -**示例:** - -```cpp -pipelineState->SetViewport(viewport); -pipelineState->ApplyViewport(); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [Apply](apply.md) - 应用所有状态 diff --git a/docs/api/rhi/opengl/pipeline-state/apply.md b/docs/api/rhi/opengl/pipeline-state/apply.md deleted file mode 100644 index 1878101d..00000000 --- a/docs/api/rhi/opengl/pipeline-state/apply.md +++ /dev/null @@ -1,27 +0,0 @@ -# OpenGLPipelineState::Apply - -```cpp -void Apply(); -``` - -应用所有管线状态(深度模板、混合、光栅化、视口、裁剪)。 - -**线程安全:** ❌ - -**示例:** - -```cpp -pipelineState->SetDepthStencilState(dsState); -pipelineState->SetBlendState(blendState); -pipelineState->SetRasterizerState(rsState); -pipelineState->SetViewport(viewport); -pipelineState->SetScissor(scissor); -pipelineState->Apply(); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [ApplyDepthStencil](apply-depth-stencil.md) - 仅应用深度模板 -- [ApplyBlend](apply-blend.md) - 仅应用混合 -- [ApplyRasterizer](apply-rasterizer.md) - 仅应用光栅化 diff --git a/docs/api/rhi/opengl/pipeline-state/attach-shader.md b/docs/api/rhi/opengl/pipeline-state/attach-shader.md deleted file mode 100644 index db348116..00000000 --- a/docs/api/rhi/opengl/pipeline-state/attach-shader.md +++ /dev/null @@ -1,23 +0,0 @@ -# OpenGLPipelineState::AttachShader - -```cpp -void AttachShader(unsigned int program); -``` - -附加 OpenGL 着色器程序到管线状态。 - -**参数:** -- `program` - OpenGL 着色器程序 ID - -**线程安全:** ❌ - -**示例:** - -```cpp -pipelineState->AttachShader(shaderProgram); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [DetachShader](detach-shader.md) - 分离着色器程序 diff --git a/docs/api/rhi/opengl/pipeline-state/bind.md b/docs/api/rhi/opengl/pipeline-state/bind.md deleted file mode 100644 index b5e77914..00000000 --- a/docs/api/rhi/opengl/pipeline-state/bind.md +++ /dev/null @@ -1,24 +0,0 @@ -# OpenGLPipelineState::Bind - -```cpp -void Bind() override; -``` - -绑定管线状态到当前渲染上下文。 - -**线程安全:** ❌ - -**注意:** 如果 shader 已附加(通过 `AttachShader`),则调用 `glUseProgram`。然后调用 `Apply()` 应用所有状态。 - -**示例:** - -```cpp -pipelineState->AttachShader(program); -pipelineState->Bind(); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [Unbind](unbind.md) - 解绑管线状态 -- [AttachShader](attach-shader.md) - 附加着色器 diff --git a/docs/api/rhi/opengl/pipeline-state/clear.md b/docs/api/rhi/opengl/pipeline-state/clear.md deleted file mode 100644 index 7ef8b309..00000000 --- a/docs/api/rhi/opengl/pipeline-state/clear.md +++ /dev/null @@ -1,31 +0,0 @@ -# OpenGLPipelineState::Clear - -```cpp -void Clear(unsigned int buffers); -``` - -清除指定的缓冲区。 - -**参数:** -- `buffers` - 要清除的缓冲区标志位 - - `1` - 颜色缓冲区 (`GL_COLOR_BUFFER_BIT`) - - `2` - 深度缓冲区 (`GL_DEPTH_BUFFER_BIT`) - - `4` - 模板缓冲区 (`GL_STENCIL_BUFFER_BIT`) - -**线程安全:** ❌ - -**注意:** 调用此方法前应先通过 `SetClearColor` 设置清除颜色。 - -**示例:** - -```cpp -pipelineState->SetClearColor(0.0f, 0.0f, 0.0f, 1.0f); -pipelineState->Clear(0x1); // 清除颜色缓冲 -pipelineState->Clear(0x3); // 清除颜色和深度缓冲 -pipelineState->Clear(0x7); // 清除所有缓冲 -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [SetClearColor](set-clear-color.md) - 设置清除颜色 diff --git a/docs/api/rhi/opengl/pipeline-state/constructor.md b/docs/api/rhi/opengl/pipeline-state/constructor.md deleted file mode 100644 index ca49c45e..00000000 --- a/docs/api/rhi/opengl/pipeline-state/constructor.md +++ /dev/null @@ -1,21 +0,0 @@ -# OpenGLPipelineState::OpenGLPipelineState - -```cpp -OpenGLPipelineState(); -``` - -构造一个 `OpenGLPipelineState` 对象。 - -**线程安全:** ❌ - -**注意:** 初始化清除颜色为 (0, 0, 0, 0),program 句柄为 0,附加标志为 false。 - -**示例:** - -```cpp -auto* pipelineState = new OpenGLPipelineState(); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/pipeline-state/destructor.md b/docs/api/rhi/opengl/pipeline-state/destructor.md deleted file mode 100644 index 1fde42d3..00000000 --- a/docs/api/rhi/opengl/pipeline-state/destructor.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLPipelineState::~OpenGLPipelineState - -```cpp -~OpenGLPipelineState() override; -``` - -销毁 `OpenGLPipelineState` 对象。 - -**线程安全:** ❌ - -**注意:** 不会调用 `Shutdown()`,如果资源需要释放,应在销毁前手动调用 `Shutdown()`。 - -**示例:** - -```cpp -delete pipelineState; -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [Shutdown](shutdown.md) - 关闭管线状态 diff --git a/docs/api/rhi/opengl/pipeline-state/detach-shader.md b/docs/api/rhi/opengl/pipeline-state/detach-shader.md deleted file mode 100644 index 3b98083d..00000000 --- a/docs/api/rhi/opengl/pipeline-state/detach-shader.md +++ /dev/null @@ -1,20 +0,0 @@ -# OpenGLPipelineState::DetachShader - -```cpp -void DetachShader(); -``` - -从管线状态分离着色器程序。 - -**线程安全:** ❌ - -**示例:** - -```cpp -pipelineState->DetachShader(); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [AttachShader](attach-shader.md) - 附加着色器程序 diff --git a/docs/api/rhi/opengl/pipeline-state/get-blend-state.md b/docs/api/rhi/opengl/pipeline-state/get-blend-state.md deleted file mode 100644 index 9f3a3187..00000000 --- a/docs/api/rhi/opengl/pipeline-state/get-blend-state.md +++ /dev/null @@ -1,25 +0,0 @@ -# OpenGLPipelineState::GetBlendState - -```cpp -const OpenGLBlendState& GetBlendState() const; -``` - -获取当前混合状态。 - -**返回:** 混合状态结构体引用 - -**线程安全:** ❌ - -**示例:** - -```cpp -const auto& blendState = pipelineState->GetBlendState(); -if (blendState.blendEnable) { - // blend is enabled -} -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [SetBlendState](set-blend-state.md) - 设置混合状态 diff --git a/docs/api/rhi/opengl/pipeline-state/get-depth-stencil-state.md b/docs/api/rhi/opengl/pipeline-state/get-depth-stencil-state.md deleted file mode 100644 index 6f98d6f1..00000000 --- a/docs/api/rhi/opengl/pipeline-state/get-depth-stencil-state.md +++ /dev/null @@ -1,25 +0,0 @@ -# OpenGLPipelineState::GetDepthStencilState - -```cpp -const OpenGLDepthStencilState& GetDepthStencilState() const; -``` - -获取当前深度模板状态。 - -**返回:** 深度模板状态结构体引用 - -**线程安全:** ❌ - -**示例:** - -```cpp -const auto& dsState = pipelineState->GetDepthStencilState(); -if (dsState.depthTestEnable) { - // depth test is enabled -} -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [SetDepthStencilState](set-depth-stencil-state.md) - 设置深度模板状态 diff --git a/docs/api/rhi/opengl/pipeline-state/get-native-handle.md b/docs/api/rhi/opengl/pipeline-state/get-native-handle.md deleted file mode 100644 index 998b5fe2..00000000 --- a/docs/api/rhi/opengl/pipeline-state/get-native-handle.md +++ /dev/null @@ -1,26 +0,0 @@ -# OpenGLPipelineState::GetNativeHandle - -```cpp -void* GetNativeHandle() override; -``` - -获取 OpenGL shader program 的原生句柄。 - -**返回:** -- OpenGL: `void*` 指向 `GLuint` 类型的 program 值 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -void* handle = pipelineState->GetNativeHandle(); -GLuint program = static_cast(reinterpret_cast(handle)); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [AttachShader](attach-shader.md) - 附加着色器 diff --git a/docs/api/rhi/opengl/pipeline-state/get-rasterizer-state.md b/docs/api/rhi/opengl/pipeline-state/get-rasterizer-state.md deleted file mode 100644 index 333563d3..00000000 --- a/docs/api/rhi/opengl/pipeline-state/get-rasterizer-state.md +++ /dev/null @@ -1,25 +0,0 @@ -# OpenGLPipelineState::GetRasterizerState - -```cpp -const OpenGLRasterizerState& GetRasterizerState() const; -``` - -获取当前光栅化状态。 - -**返回:** 光栅化状态结构体引用 - -**线程安全:** ❌ - -**示例:** - -```cpp -const auto& rsState = pipelineState->GetRasterizerState(); -if (rsState.cullFaceEnable) { - // culling is enabled -} -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [SetRasterizerState](set-rasterizer-state.md) - 设置光栅化状态 diff --git a/docs/api/rhi/opengl/pipeline-state/get-type.md b/docs/api/rhi/opengl/pipeline-state/get-type.md deleted file mode 100644 index e2d8eba0..00000000 --- a/docs/api/rhi/opengl/pipeline-state/get-type.md +++ /dev/null @@ -1,27 +0,0 @@ -# OpenGLPipelineState::GetType - -```cpp -PipelineType GetType() const override; -``` - -获取管线类型。 - -**返回:** `PipelineType::Graphics` - OpenGL 只支持图形管线 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -PipelineType type = pipelineState->GetType(); -if (type == PipelineType::Graphics) { - // graphics pipeline -} -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [RHIPipelineState 总览](../../pipeline-state/pipeline-state.md) - 抽象管线状态接口 diff --git a/docs/api/rhi/opengl/pipeline-state/pipeline-state.md b/docs/api/rhi/opengl/pipeline-state/pipeline-state.md deleted file mode 100644 index 719b510c..00000000 --- a/docs/api/rhi/opengl/pipeline-state/pipeline-state.md +++ /dev/null @@ -1,40 +0,0 @@ -# OpenGLPipelineState - -**命名空间**: `XCEngine::RHI` - -**描述**: OpenGL 管线状态对象实现,继承自 `RHIPipelineState`。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`OpenGLPipelineState`](constructor.md) | 构造函数 | -| [`~OpenGLPipelineState`](destructor.md) | 析构函数 | -| [`Shutdown`](shutdown.md) | 关闭管线状态 | -| [`Bind`](bind.md) | 绑定管线状态 | -| [`Unbind`](unbind.md) | 解绑管线状态 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | -| [`GetType`](get-type.md) | 获取管线类型 | -| [`SetDepthStencilState`](set-depth-stencil-state.md) | 设置深度模板状态 | -| [`SetBlendState`](set-blend-state.md) | 设置混合状态 | -| [`SetRasterizerState`](set-rasterizer-state.md) | 设置光栅化状态 | -| [`SetViewport`](set-viewport.md) | 设置视口 | -| [`SetScissor`](set-scissor.md) | 设置裁剪 | -| [`Apply`](apply.md) | 应用管线状态 | -| [`ApplyDepthStencil`](apply-depth-stencil.md) | 应用深度模板状态 | -| [`ApplyBlend`](apply-blend.md) | 应用混合状态 | -| [`ApplyRasterizer`](apply-rasterizer.md) | 应用光栅化状态 | -| [`ApplyViewport`](apply-viewport.md) | 应用视口 | -| [`ApplyScissor`](apply-scissor.md) | 应用裁剪 | -| [`SetClearColor`](set-clear-color.md) | 设置清除颜色 | -| [`Clear`](clear.md) | 清除 | -| [`AttachShader`](attach-shader.md) | 附加着色器 | -| [`DetachShader`](detach-shader.md) | 分离着色器 | -| [`GetDepthStencilState`](get-depth-stencil-state.md) | 获取深度模板状态 | -| [`GetBlendState`](get-blend-state.md) | 获取混合状态 | -| [`GetRasterizerState`](get-rasterizer-state.md) | 获取光栅化状态 | - -## 相关文档 - -- [OpenGL 后端总览](../opengl.md) -- [RHIPipelineState](../../pipeline-state/pipeline-state.md) - 抽象管线状态接口 diff --git a/docs/api/rhi/opengl/pipeline-state/set-blend-state.md b/docs/api/rhi/opengl/pipeline-state/set-blend-state.md deleted file mode 100644 index 5f121d59..00000000 --- a/docs/api/rhi/opengl/pipeline-state/set-blend-state.md +++ /dev/null @@ -1,27 +0,0 @@ -# OpenGLPipelineState::SetBlendState - -```cpp -void SetBlendState(const OpenGLBlendState& state); -``` - -设置混合状态。 - -**参数:** -- `state` - 混合状态结构体 - -**线程安全:** ❌ - -**示例:** - -```cpp -OpenGLBlendState blendState; -blendState.blendEnable = true; -blendState.srcBlend = BlendFactor::SrcAlpha; -blendState.dstBlend = BlendFactor::InvSrcAlpha; -pipelineState->SetBlendState(blendState); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [GetBlendState](get-blend-state.md) - 获取混合状态 diff --git a/docs/api/rhi/opengl/pipeline-state/set-clear-color.md b/docs/api/rhi/opengl/pipeline-state/set-clear-color.md deleted file mode 100644 index eca1f25b..00000000 --- a/docs/api/rhi/opengl/pipeline-state/set-clear-color.md +++ /dev/null @@ -1,26 +0,0 @@ -# OpenGLPipelineState::SetClearColor - -```cpp -void SetClearColor(float r, float g, float b, float a); -``` - -设置清除颜色值。 - -**参数:** -- `r` - 红色通道 (0.0 ~ 1.0) -- `g` - 绿色通道 (0.0 ~ 1.0) -- `b` - 蓝色通道 (0.0 ~ 1.0) -- `a` - Alpha 通道 (0.0 ~ 1.0) - -**线程安全:** ❌ - -**示例:** - -```cpp -pipelineState->SetClearColor(0.1f, 0.1f, 0.1f, 1.0f); -pipelineState->Clear(GL_COLOR_BUFFER_BIT); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/pipeline-state/set-depth-stencil-state.md b/docs/api/rhi/opengl/pipeline-state/set-depth-stencil-state.md deleted file mode 100644 index e6346536..00000000 --- a/docs/api/rhi/opengl/pipeline-state/set-depth-stencil-state.md +++ /dev/null @@ -1,27 +0,0 @@ -# OpenGLPipelineState::SetDepthStencilState - -```cpp -void SetDepthStencilState(const OpenGLDepthStencilState& state); -``` - -设置深度模板状态。 - -**参数:** -- `state` - 深度模板状态结构体 - -**线程安全:** ❌ - -**示例:** - -```cpp -OpenGLDepthStencilState dsState; -dsState.depthTestEnable = true; -dsState.depthWriteEnable = true; -dsState.depthFunc = ComparisonFunc::Less; -pipelineState->SetDepthStencilState(dsState); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [GetDepthStencilState](get-depth-stencil-state.md) - 获取深度模板状态 diff --git a/docs/api/rhi/opengl/pipeline-state/set-logical-operation.md b/docs/api/rhi/opengl/pipeline-state/set-logical-operation.md deleted file mode 100644 index 531f5441..00000000 --- a/docs/api/rhi/opengl/pipeline-state/set-logical-operation.md +++ /dev/null @@ -1,25 +0,0 @@ -# OpenGLPipelineState::SetLogicalOperation - -```cpp -void SetLogicalOperation(const LogicalOperation& state); -``` - -设置逻辑操作状态。 - -**参数:** -- `state` - 逻辑操作状态结构体 - -**线程安全:** ❌ - -**示例:** - -```cpp -LogicalOperation op; -op.enable = false; -op.operation = 0; -pipelineState->SetLogicalOperation(op); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/pipeline-state/set-rasterizer-state.md b/docs/api/rhi/opengl/pipeline-state/set-rasterizer-state.md deleted file mode 100644 index c46b9911..00000000 --- a/docs/api/rhi/opengl/pipeline-state/set-rasterizer-state.md +++ /dev/null @@ -1,27 +0,0 @@ -# OpenGLPipelineState::SetRasterizerState - -```cpp -void SetRasterizerState(const OpenGLRasterizerState& state); -``` - -设置光栅化状态。 - -**参数:** -- `state` - 光栅化状态结构体 - -**线程安全:** ❌ - -**示例:** - -```cpp -OpenGLRasterizerState rsState; -rsState.cullFaceEnable = true; -rsState.cullFace = CullFace::Back; -rsState.frontFace = FrontFace::CounterClockwise; -pipelineState->SetRasterizerState(rsState); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [GetRasterizerState](get-rasterizer-state.md) - 获取光栅化状态 diff --git a/docs/api/rhi/opengl/pipeline-state/set-scissor.md b/docs/api/rhi/opengl/pipeline-state/set-scissor.md deleted file mode 100644 index d9301885..00000000 --- a/docs/api/rhi/opengl/pipeline-state/set-scissor.md +++ /dev/null @@ -1,29 +0,0 @@ -# OpenGLPipelineState::SetScissor - -```cpp -void SetScissor(const ScissorState& state); -``` - -设置裁剪状态。 - -**参数:** -- `state` - 裁剪状态结构体 - -**线程安全:** ❌ - -**示例:** - -```cpp -ScissorState scissor; -scissor.enable = true; -scissor.x = 0; -scissor.y = 0; -scissor.width = 1920; -scissor.height = 1080; -pipelineState->SetScissor(scissor); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [ApplyScissor](apply-scissor.md) - 应用裁剪状态 diff --git a/docs/api/rhi/opengl/pipeline-state/set-viewport.md b/docs/api/rhi/opengl/pipeline-state/set-viewport.md deleted file mode 100644 index 1e5e5f1b..00000000 --- a/docs/api/rhi/opengl/pipeline-state/set-viewport.md +++ /dev/null @@ -1,30 +0,0 @@ -# OpenGLPipelineState::SetViewport - -```cpp -void SetViewport(const ViewportState& state); -``` - -设置视口状态。 - -**参数:** -- `state` - 视口状态结构体 - -**线程安全:** ❌ - -**示例:** - -```cpp -ViewportState viewport; -viewport.x = 0; -viewport.y = 0; -viewport.width = 1920; -viewport.height = 1080; -viewport.minDepth = 0.0f; -viewport.maxDepth = 1.0f; -pipelineState->SetViewport(viewport); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [ApplyViewport](apply-viewport.md) - 应用视口状态 diff --git a/docs/api/rhi/opengl/pipeline-state/shutdown.md b/docs/api/rhi/opengl/pipeline-state/shutdown.md deleted file mode 100644 index f8d5ed82..00000000 --- a/docs/api/rhi/opengl/pipeline-state/shutdown.md +++ /dev/null @@ -1,21 +0,0 @@ -# OpenGLPipelineState::Shutdown - -```cpp -void Shutdown() override; -``` - -关闭管线状态并释放资源。 - -**线程安全:** ❌ - -**注意:** 此方法将 shader program 置零,但不会调用 glDeleteProgram。 - -**示例:** - -```cpp -pipelineState->Shutdown(); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/pipeline-state/unbind.md b/docs/api/rhi/opengl/pipeline-state/unbind.md deleted file mode 100644 index ade1f334..00000000 --- a/docs/api/rhi/opengl/pipeline-state/unbind.md +++ /dev/null @@ -1,20 +0,0 @@ -# OpenGLPipelineState::Unbind - -```cpp -void Unbind() override; -``` - -解绑管线状态,将当前 program 设为 0。 - -**线程安全:** ❌ - -**示例:** - -```cpp -pipelineState->Unbind(); -``` - -## 相关文档 - -- [OpenGLPipelineState 总览](pipeline-state.md) - 返回类总览 -- [Bind](bind.md) - 绑定管线状态 diff --git a/docs/api/rhi/opengl/render-target-view/bind-framebuffer.md b/docs/api/rhi/opengl/render-target-view/bind-framebuffer.md deleted file mode 100644 index 969ff3f2..00000000 --- a/docs/api/rhi/opengl/render-target-view/bind-framebuffer.md +++ /dev/null @@ -1,20 +0,0 @@ -# OpenGLRenderTargetView::BindFramebuffer - -```cpp -static void BindFramebuffer(unsigned int framebuffer) -``` - -静态方法,将指定帧缓冲区绑定为当前渲染目标。 - -**参数:** -- `framebuffer` - 帧缓冲区 ID(0 表示解除绑定) - -**示例:** - -```cpp -OpenGLRenderTargetView::BindFramebuffer(rtv.GetFramebuffer()); -``` - -## 相关文档 - -- [OpenGLRenderTargetView](render-target-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/render-target-view/bind.md b/docs/api/rhi/opengl/render-target-view/bind.md deleted file mode 100644 index 4c603d72..00000000 --- a/docs/api/rhi/opengl/render-target-view/bind.md +++ /dev/null @@ -1,36 +0,0 @@ -# OpenGLRenderTargetView::Bind - -```cpp -void Bind(unsigned int slot = 0); -void Bind(unsigned int count, const unsigned int* framebuffers, const int* drawBuffers); -``` - -绑定渲染目标视图作为当前渲染目标。 - -**重载 1 参数:** -- `slot` - 绑定槽位(预留参数,当前实现中未使用) - -**重载 2 参数:** -- `count` - 帧缓冲区数量 -- `framebuffers` - 帧缓冲区 ID 数组 -- `drawBuffers` - 对应每个帧缓冲区的绘制缓冲附件 - -**行为说明:** -- 当 `count` 为 1 时,直接绑定单个帧缓冲区 -- 当 `count` 大于 1 时,启用多重渲染目标(MRT),依次绑定各帧缓冲区并设置绘制缓冲附件 - -**示例:** - -```cpp -// 单帧缓冲绑定 -rtv.Bind(); - -// 多帧缓冲绑定 -unsigned int fbos[] = { fbo1, fbo2 }; -int attachments[] = { GL_COLOR_ATTACHMENT0, GL_COLOR_ATTACHMENT1 }; -rtv.Bind(2, fbos, attachments); -``` - -## 相关文档 - -- [OpenGLRenderTargetView 总览](render-target-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/render-target-view/clear.md b/docs/api/rhi/opengl/render-target-view/clear.md deleted file mode 100644 index 484830db..00000000 --- a/docs/api/rhi/opengl/render-target-view/clear.md +++ /dev/null @@ -1,36 +0,0 @@ -# OpenGLRenderTargetView::Clear - -```cpp -void Clear(float r, float g, float b, float a); -void Clear(float r, float g, float b, float a, float depth, uint8_t stencil); -``` - -清除渲染目标视图的颜色缓冲区和可选的深度/模板缓冲区。 - -**重载 1 参数(仅清除颜色):** -- `r` - 红色分量(0.0f - 1.0f) -- `g` - 绿色分量(0.0f - 1.0f) -- `b` - 蓝色分量(0.0f - 1.0f) -- `a` - Alpha 分量(0.0f - 1.0f) - -**重载 2 参数(清除颜色、深度和模板):** -- `r` - 红色分量 -- `g` - 绿色分量 -- `b` - 蓝色分量 -- `a` - Alpha 分量 -- `depth` - 深度值(通常 0.0f 或 1.0f) -- `stencil` - 模板值(0-255) - -**示例:** - -```cpp -// 仅清除颜色缓冲 -rtv.Clear(0.1f, 0.1f, 0.1f, 1.0f); - -// 清除颜色、深度和模板缓冲 -rtv.Clear(0.1f, 0.1f, 0.1f, 1.0f, 1.0f, 0); -``` - -## 相关文档 - -- [OpenGLRenderTargetView 总览](render-target-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/render-target-view/get-framebuffer.md b/docs/api/rhi/opengl/render-target-view/get-framebuffer.md deleted file mode 100644 index cb6d40fc..00000000 --- a/docs/api/rhi/opengl/render-target-view/get-framebuffer.md +++ /dev/null @@ -1,19 +0,0 @@ -# OpenGLRenderTargetView::GetFramebuffer - -```cpp -unsigned int GetFramebuffer() const -``` - -获取帧缓冲区对象 ID。 - -**返回:** `unsigned int` - 帧缓冲区 ID - -**示例:** - -```cpp -unsigned int fbo = rtv.GetFramebuffer(); -``` - -## 相关文档 - -- [OpenGLRenderTargetView](render-target-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/render-target-view/get-height.md b/docs/api/rhi/opengl/render-target-view/get-height.md deleted file mode 100644 index 3bbfc9e6..00000000 --- a/docs/api/rhi/opengl/render-target-view/get-height.md +++ /dev/null @@ -1,19 +0,0 @@ -# OpenGLRenderTargetView::GetHeight - -```cpp -int GetHeight() const; -``` - -获取渲染目标视图的高度(像素)。 - -**返回:** `int` - 渲染目标高度 - -**示例:** - -```cpp -int height = rtv.GetHeight(); -``` - -## 相关文档 - -- [OpenGLRenderTargetView 总览](render-target-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/render-target-view/get-mip-level.md b/docs/api/rhi/opengl/render-target-view/get-mip-level.md deleted file mode 100644 index a791bad8..00000000 --- a/docs/api/rhi/opengl/render-target-view/get-mip-level.md +++ /dev/null @@ -1,19 +0,0 @@ -# OpenGLRenderTargetView::GetMipLevel - -```cpp -int GetMipLevel() const -``` - -获取 mipmap 级别。 - -**返回:** `int` - mip 级别 - -**示例:** - -```cpp -int mipLevel = rtv.GetMipLevel(); -``` - -## 相关文档 - -- [OpenGLRenderTargetView](render-target-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/render-target-view/get-size.md b/docs/api/rhi/opengl/render-target-view/get-size.md deleted file mode 100644 index fde66303..00000000 --- a/docs/api/rhi/opengl/render-target-view/get-size.md +++ /dev/null @@ -1,19 +0,0 @@ -# OpenGLRenderTargetView::GetWidth - -```cpp -int GetWidth() const; -``` - -获取渲染目标视图的宽度(像素)。 - -**返回:** `int` - 渲染目标宽度 - -**示例:** - -```cpp -int width = rtv.GetWidth(); -``` - -## 相关文档 - -- [OpenGLRenderTargetView 总览](render-target-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/render-target-view/get-texture.md b/docs/api/rhi/opengl/render-target-view/get-texture.md deleted file mode 100644 index e3b9af55..00000000 --- a/docs/api/rhi/opengl/render-target-view/get-texture.md +++ /dev/null @@ -1,19 +0,0 @@ -# OpenGLRenderTargetView::GetTexture - -```cpp -unsigned int GetTexture() const -``` - -获取关联的纹理对象 ID。 - -**返回:** `unsigned int` - 纹理 ID - -**示例:** - -```cpp -unsigned int tex = rtv.GetTexture(); -``` - -## 相关文档 - -- [OpenGLRenderTargetView](render-target-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/render-target-view/initialize-cubemap.md b/docs/api/rhi/opengl/render-target-view/initialize-cubemap.md deleted file mode 100644 index b960da50..00000000 --- a/docs/api/rhi/opengl/render-target-view/initialize-cubemap.md +++ /dev/null @@ -1,25 +0,0 @@ -# OpenGLRenderTargetView::InitializeCubemap - -```cpp -bool InitializeCubemap(unsigned int cubemap, int face, int mipLevel = 0) -``` - -初始化立方体贴图的渲染目标视图。 - -**参数:** -- `cubemap` - 立方体贴图对象 ID -- `face` - 立方体贴面索引(0-5) -- `mipLevel` - mipmap 级别(默认为 0) - -**返回:** `bool` - 成功返回 true,失败返回 false - -**示例:** - -```cpp -OpenGLRenderTargetView rtv; -rtv.InitializeCubemap(cubemapTexture, 0, 0); -``` - -## 相关文档 - -- [OpenGLRenderTargetView](render-target-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/render-target-view/initialize.md b/docs/api/rhi/opengl/render-target-view/initialize.md deleted file mode 100644 index 9a208cbb..00000000 --- a/docs/api/rhi/opengl/render-target-view/initialize.md +++ /dev/null @@ -1,29 +0,0 @@ -# OpenGLRenderTargetView::Initialize - -```cpp -bool Initialize(unsigned int texture, const OpenGLRenderTargetViewDesc& desc); -bool Initialize(unsigned int texture, int mipLevel = 0); -``` - -初始化渲染目标视图。 - -**重载 1 参数:** -- `texture` - OpenGL 纹理 ID -- `desc` - 渲染目标视图描述 - -**重载 2 参数:** -- `texture` - OpenGL 纹理 ID -- `mipLevel` - mipmap 级别(默认为 0) - -**返回:** `bool` - 成功返回 true,失败返回 false - -**示例:** - -```cpp -OpenGLRenderTargetView rtv; -rtv.Initialize(texture, 0); -``` - -## 相关文档 - -- [OpenGLRenderTargetView 总览](render-target-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/render-target-view/render-target-view.md b/docs/api/rhi/opengl/render-target-view/render-target-view.md deleted file mode 100644 index 1ed6ab19..00000000 --- a/docs/api/rhi/opengl/render-target-view/render-target-view.md +++ /dev/null @@ -1,86 +0,0 @@ -# OpenGLRenderTargetView - -**命名空间**: `XCEngine::RHI` - -**描述**: OpenGL 渲染目标视图实现,用于将纹理绑定为渲染目标进行渲染输出。 - -## 类型定义 - -### RenderTargetType - -```cpp -enum class RenderTargetType { - Texture2D, // 2D 纹理 - Texture2DArray, // 2D 纹理数组 - Texture3D, // 3D 纹理 - TextureCube, // 立方体贴图 - TextureCubeArray // 立方体贴图数组 -}; -``` - -### OpenGLRenderTargetViewDesc - -```cpp -struct OpenGLRenderTargetViewDesc { - RenderTargetType type = RenderTargetType::Texture2D; // 渲染目标类型 - int mipLevel = 0; // Mip 级别 - int baseArraySlice = 0; // 数组起始索引 - int arraySize = 1; // 数组大小 - int layer = 0; // 层级(用于 3D 纹理) - uint32_t format = 0; // 格式 -}; -``` - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Initialize`](initialize.md) | 初始化渲染目标视图(2 个重载) | -| [`InitializeCubemap`](initialize-cubemap.md) | 初始化立方体贴图渲染目标视图 | -| [`Shutdown`](shutdown.md) | 关闭渲染目标视图 | -| [`Bind`](bind.md) | 绑定渲染目标视图(2 个重载) | -| [`Unbind`](unbind.md) | 解绑渲染目标视图 | -| [`Clear`](clear.md) | 清除(2 个重载) | -| [`GetFramebuffer`](get-framebuffer.md) | 获取帧缓冲 | -| [`GetTexture`](get-texture.md) | 获取纹理 | -| [`GetMipLevel`](get-mip-level.md) | 获取 Mip 级别 | -| [`BindFramebuffer`](bind-framebuffer.md) | 绑定帧缓冲 | -| [`UnbindFramebuffer`](unbind-framebuffer.md) | 解绑帧缓冲 | - -## 使用示例 - -```cpp -#include "XCEngine/RHI/OpenGL/OpenGLRenderTargetView.h" - -void RenderToTexture() { - OpenGLRenderTargetView rtv; - - // 初始化为 2D 纹理渲染目标 - if (rtv.Initialize(textureID, 0)) { - rtv.Bind(); - rtv.Clear(0.0f, 0.0f, 0.0f, 1.0f); - // 执行渲染... - rtv.Unbind(); - } - - rtv.Shutdown(); -} - -void RenderToCubemap() { - OpenGLRenderTargetView rtv; - - // 初始化为立方体贴图的第一面 - if (rtv.InitializeCubemap(cubemapID, 0, 0)) { - rtv.Bind(); - rtv.Clear(0.0f, 0.0f, 0.0f, 1.0f); - // 执行渲染... - rtv.Unbind(); - } - - rtv.Shutdown(); -} -``` - -## 相关文档 - -- [OpenGL 后端总览](../opengl.md) diff --git a/docs/api/rhi/opengl/render-target-view/shutdown.md b/docs/api/rhi/opengl/render-target-view/shutdown.md deleted file mode 100644 index f99c1b07..00000000 --- a/docs/api/rhi/opengl/render-target-view/shutdown.md +++ /dev/null @@ -1,24 +0,0 @@ -# OpenGLRenderTargetView::Shutdown - -```cpp -void Shutdown(); -``` - -关闭渲染目标视图,释放关联的帧缓冲区资源。此方法会在析构时自动调用,但也可手动调用以提前释放资源。 - -**注意:** 此方法仅删除帧缓冲区对象,不会删除关联的纹理对象。 - -**示例:** - -```cpp -OpenGLRenderTargetView rtv; -rtv.Initialize(texture, 0); - -// 使用 rtv... - -rtv.Shutdown(); // 释放帧缓冲区资源 -``` - -## 相关文档 - -- [OpenGLRenderTargetView 总览](render-target-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/render-target-view/unbind-framebuffer.md b/docs/api/rhi/opengl/render-target-view/unbind-framebuffer.md deleted file mode 100644 index b90f020e..00000000 --- a/docs/api/rhi/opengl/render-target-view/unbind-framebuffer.md +++ /dev/null @@ -1,17 +0,0 @@ -# OpenGLRenderTargetView::UnbindFramebuffer - -```cpp -static void UnbindFramebuffer() -``` - -静态方法,解除当前渲染目标帧缓冲区的绑定。 - -**示例:** - -```cpp -OpenGLRenderTargetView::UnbindFramebuffer(); -``` - -## 相关文档 - -- [OpenGLRenderTargetView](render-target-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/render-target-view/unbind.md b/docs/api/rhi/opengl/render-target-view/unbind.md deleted file mode 100644 index b9e59043..00000000 --- a/docs/api/rhi/opengl/render-target-view/unbind.md +++ /dev/null @@ -1,19 +0,0 @@ -# OpenGLRenderTargetView::Unbind - -```cpp -void Unbind(); -``` - -解除当前渲染目标视图的绑定,将默认帧缓冲区(framebuffer 0)设为当前渲染目标。 - -**示例:** - -```cpp -rtv.Bind(); -// 执行渲染... -rtv.Unbind(); // 解除绑定,恢复默认帧缓冲 -``` - -## 相关文档 - -- [OpenGLRenderTargetView 总览](render-target-view.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/sampler/bind.md b/docs/api/rhi/opengl/sampler/bind.md deleted file mode 100644 index 141a0f5c..00000000 --- a/docs/api/rhi/opengl/sampler/bind.md +++ /dev/null @@ -1,26 +0,0 @@ -# OpenGLSampler::Bind - -```cpp -void Bind(unsigned int unit); -``` - -绑定采样器到指定纹理单元。调用 `glBindSampler` 将采样器对象绑定到对应的纹理单元,后续纹理采样操作将使用该采样器。 - -**参数:** -- `unit` - 纹理单元编号,通常为 0-15 - -**返回:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -sampler.Bind(0); -``` - -## 相关文档 - -- [OpenGLSampler 总览](sampler.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/sampler/constructor.md b/docs/api/rhi/opengl/sampler/constructor.md deleted file mode 100644 index d103099e..00000000 --- a/docs/api/rhi/opengl/sampler/constructor.md +++ /dev/null @@ -1,23 +0,0 @@ -# OpenGLSampler::OpenGLSampler - -```cpp -OpenGLSampler(); -``` - -构造一个空的 OpenGLSampler 对象。实际采样器 ID 在调用 `Initialize` 之前无效(为 0)。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(1) - -**示例:** - -```cpp -OpenGLSampler sampler; -``` - -## 相关文档 - -- [OpenGLSampler 总览](sampler.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/sampler/get-id.md b/docs/api/rhi/opengl/sampler/get-id.md deleted file mode 100644 index 62564275..00000000 --- a/docs/api/rhi/opengl/sampler/get-id.md +++ /dev/null @@ -1,27 +0,0 @@ -# OpenGLSampler::GetID - -```cpp -unsigned int GetID() const; -unsigned int GetID() override; -``` - -获取 OpenGL 采样器对象 ID。返回 `glGenSamplers` 生成的采样器对象名称。 - -**参数:** 无 - -**返回:** `unsigned int` - OpenGL 采样器 ID - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -unsigned int samplerID = sampler.GetID(); -glBindSampler(0, samplerID); -``` - -## 相关文档 - -- [OpenGLSampler](sampler.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/sampler/initialize.md b/docs/api/rhi/opengl/sampler/initialize.md deleted file mode 100644 index ba380f12..00000000 --- a/docs/api/rhi/opengl/sampler/initialize.md +++ /dev/null @@ -1,48 +0,0 @@ -# OpenGLSampler::Initialize - -```cpp -bool Initialize(const OpenGLSamplerDesc& desc); -``` - -初始化采样器。创建 OpenGL 采样器对象并根据描述符设置各项参数,包括过滤模式、环绕模式、各向异性级别和 LOD 范围。 - -**参数:** -- `desc` - 采样器描述符,包含以下字段: - - `minFilter` - 缩小过滤模式 - - `magFilter` - 放大过滤模式 - - `wrapS` - S轴环绕模式 - - `wrapT` - T轴环绕模式 - - `wrapR` - R轴环绕模式 - - `maxAnisotropy` - 各向异性级别 - - `minLod` - 最小 LOD 值 - - `maxLod` - 最大 LOD 值 - - `compareMode` - 比较模式(当前实现未使用) - - `compareFunc` - 比较函数(当前实现未使用) - -**返回:** 成功返回 `true`,失败返回 `false` - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -OpenGLSamplerDesc desc; -desc.minFilter = SamplerFilter::LinearMipmapLinear; -desc.magFilter = SamplerFilter::Linear; -desc.wrapS = SamplerWrapMode::Repeat; -desc.wrapT = SamplerWrapMode::Repeat; -desc.maxAnisotropy = 16.0f; -desc.minLod = -1000.0f; -desc.maxLod = 1000.0f; - -OpenGLSampler sampler; -if (sampler.Initialize(desc)) { - // 采样器初始化成功 -} -``` - -## 相关文档 - -- [OpenGLSampler 总览](sampler.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/sampler/sampler.md b/docs/api/rhi/opengl/sampler/sampler.md deleted file mode 100644 index 1f268e4a..00000000 --- a/docs/api/rhi/opengl/sampler/sampler.md +++ /dev/null @@ -1,72 +0,0 @@ -# OpenGLSampler - -## 命名空间 - -`XCEngine::RHI` - -## 头文件 - -`XCEngine/RHI/OpenGL/OpenGLSampler.h` - -## 类型 - -| 类型 | 说明 | -|------|------| -| `OpenGLSampler` | OpenGL 采样器封装类,继承自 `RHISampler` | -| `OpenGLSamplerDesc` | 采样器描述结构体 | -| `SamplerWrapMode` | 采样器环绕模式枚举 | -| `SamplerFilter` | 采样器滤镜模式枚举 | -| `SamplerCompareMode` | 采样器比较模式枚举 | - -## 描述 - -OpenGL 采样器实现,继承自 `RHISampler`。 - -## 概述 - -`OpenGLSampler` 是 RHI 抽象层对 OpenGL 纹理采样器的封装。通过 `OpenGLSamplerDesc` 配置采样参数(过滤模式、环绕模式、各向异性、LOD 等),`Initialize` 方法创建 OpenGL 采样器对象,`Bind`/`Unbind` 控制采样器与纹理单元的绑定状态。 - -**关键特性:** -- 支持点采样、线性采样、各向异性采样 -- 支持 Repeat、Mirror、Clamp、Border 等寻址模式 -- 支持 Mipmap 多级渐远纹理过滤 -- 支持各向异性过滤和 LOD 范围控制 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`OpenGLSampler`](constructor.md) | 构造函数 | -| [`Initialize`](initialize.md) | 初始化采样器(OpenGL 特有) | -| [`Shutdown`](shutdown.md) | 关闭采样器 | -| [`Bind`](bind.md) | 绑定采样器到纹理单元 | -| [`Unbind`](unbind.md) | 解绑采样器 | -| [`GetID`](get-id.md) | 获取采样器 ID | -| [`GetNativeHandle`](../../sampler/get-native-handle.md) | 获取原生句柄(继承自 `RHISampler`) | - -## 使用示例 - -```cpp -#include "XCEngine/RHI/OpenGL/OpenGLSampler.h" - -using namespace XCEngine::RHI; - -OpenGLSamplerDesc desc; -desc.minFilter = SamplerFilter::LinearMipmapLinear; -desc.magFilter = SamplerFilter::Linear; -desc.wrapS = SamplerWrapMode::Repeat; -desc.wrapT = SamplerWrapMode::Repeat; -desc.maxAnisotropy = 16.0f; - -OpenGLSampler sampler; -if (sampler.Initialize(desc)) { - sampler.Bind(0); - sampler.Unbind(0); - sampler.Shutdown(); -} -``` - -## 相关文档 - -- [OpenGL 后端总览](../opengl.md) -- [RHISampler](../../sampler/sampler.md) - 抽象采样器接口 diff --git a/docs/api/rhi/opengl/sampler/shutdown.md b/docs/api/rhi/opengl/sampler/shutdown.md deleted file mode 100644 index 1f1f8de4..00000000 --- a/docs/api/rhi/opengl/sampler/shutdown.md +++ /dev/null @@ -1,29 +0,0 @@ -# OpenGLSampler::Shutdown - -```cpp -void Shutdown() override; -``` - -关闭采样器。释放 OpenGL 采样器对象,调用 `glDeleteSamplers` 删除采样器并重置 ID 为 0。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -OpenGLSampler sampler; -if (sampler.Initialize(desc)) { - sampler.Bind(0); - sampler.Shutdown(); -} -``` - -## 相关文档 - -- [OpenGLSampler 总览](sampler.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/sampler/unbind.md b/docs/api/rhi/opengl/sampler/unbind.md deleted file mode 100644 index 466f47d1..00000000 --- a/docs/api/rhi/opengl/sampler/unbind.md +++ /dev/null @@ -1,26 +0,0 @@ -# OpenGLSampler::Unbind - -```cpp -void Unbind(unsigned int unit); -``` - -解绑采样器。将指定纹理单元的采样器绑定解除,实际调用 `glBindSampler(unit, 0)`。 - -**参数:** -- `unit` - 纹理单元编号,通常为 0-15 - -**返回:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -sampler.Unbind(0); -``` - -## 相关文档 - -- [OpenGLSampler 总览](sampler.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/shader/compile-compute.md b/docs/api/rhi/opengl/shader/compile-compute.md deleted file mode 100644 index f5d05cd7..00000000 --- a/docs/api/rhi/opengl/shader/compile-compute.md +++ /dev/null @@ -1,30 +0,0 @@ -# OpenGLShader::CompileCompute - -```cpp -bool CompileCompute(const char* computeSource); -``` - -从源代码编译计算着色器。 - -**参数:** -- `computeSource` - 计算着色器源代码 - -**返回:** 成功返回 `true`,失败返回 `false` - -**线程安全:** ❌ - -**示例:** - -```cpp -const char* cs = R"( - #version 430 core - layout(local_size_x = 16, local_size_y = 16) in; - void main() { /* compute logic */ } -)"; -shader->CompileCompute(cs); -``` - -## 相关文档 - -- [OpenGLShader 总览](shader.md) - 返回类总览 -- [Compile (VS+FS)](compile-vs-fs.md) - 图形着色器版本 diff --git a/docs/api/rhi/opengl/shader/compile-from-file-vs-fs.md b/docs/api/rhi/opengl/shader/compile-from-file-vs-fs.md deleted file mode 100644 index 7ed115a1..00000000 --- a/docs/api/rhi/opengl/shader/compile-from-file-vs-fs.md +++ /dev/null @@ -1,25 +0,0 @@ -# OpenGLShader::CompileFromFile (VS+FS) - -```cpp -bool CompileFromFile(const char* vertexPath, const char* fragmentPath); -``` - -从文件编译顶点着色器和片段着色器。 - -**参数:** -- `vertexPath` - 顶点着色器文件路径 -- `fragmentPath` - 片段着色器文件路径 - -**返回:** 成功返回 `true`,失败返回 `false` - -**示例:** - -```cpp -shader->CompileFromFile("shaders/vertex.glsl", "shaders/fragment.glsl"); -shader->Use(); -``` - -## 相关文档 - -- [OpenGLShader 总览](shader.md) - 返回类总览 -- [CompileFromFile (VS+GS+FS)](compile-from-file-vs-gs-fs.md) - 带几何着色器版本 diff --git a/docs/api/rhi/opengl/shader/compile-from-file-vs-gs-fs.md b/docs/api/rhi/opengl/shader/compile-from-file-vs-gs-fs.md deleted file mode 100644 index b79c5170..00000000 --- a/docs/api/rhi/opengl/shader/compile-from-file-vs-gs-fs.md +++ /dev/null @@ -1,26 +0,0 @@ -# OpenGLShader::CompileFromFile (VS+GS+FS) - -```cpp -bool CompileFromFile(const char* vertexPath, const char* fragmentPath, const char* geometryPath); -``` - -从文件编译顶点着色器、几何着色器和片段着色器。 - -**参数:** -- `vertexPath` - 顶点着色器文件路径 -- `fragmentPath` - 片段着色器文件路径 -- `geometryPath` - 几何着色器文件路径 - -**返回:** 成功返回 `true`,失败返回 `false` - -**示例:** - -```cpp -shader->CompileFromFile("shaders/vertex.glsl", "shaders/fragment.glsl", "shaders/geometry.glsl"); -shader->Use(); -``` - -## 相关文档 - -- [OpenGLShader 总览](shader.md) - 返回类总览 -- [CompileFromFile (VS+FS)](compile-from-file-vs-fs.md) - 不带几何着色器版本 diff --git a/docs/api/rhi/opengl/shader/compile-type.md b/docs/api/rhi/opengl/shader/compile-type.md deleted file mode 100644 index 41656d78..00000000 --- a/docs/api/rhi/opengl/shader/compile-type.md +++ /dev/null @@ -1,31 +0,0 @@ -# OpenGLShader::Compile (单着色器) - -```cpp -bool Compile(const char* source, ShaderType type); -``` - -从源代码编译单个着色器(顶点、片段、几何、计算或细分着色器)。 - -**参数:** -- `source` - 着色器源代码 -- `type` - 着色器类型(`ShaderType::Vertex`、`ShaderType::Fragment`、`ShaderType::Geometry`、`ShaderType::Compute`、`ShaderType::TessControl`、`ShaderType::TessEvaluation`) - -**返回:** 成功返回 `true`,失败返回 `false` - -**线程安全:** ❌ - -**示例:** - -```cpp -const char* vs = R"( - #version 330 core - void main() { gl_Position = vec4(0.0); } -)"; -shader->Compile(vs, ShaderType::Vertex); -``` - -## 相关文档 - -- [OpenGLShader 总览](shader.md) - 返回类总览 -- [Compile (VS+FS)](compile-vs-fs.md) - 顶点+片段着色器版本 -- [CompileCompute](compile-compute.md) - 计算着色器版本 diff --git a/docs/api/rhi/opengl/shader/compile-vs-fs.md b/docs/api/rhi/opengl/shader/compile-vs-fs.md deleted file mode 100644 index 8aa96f4c..00000000 --- a/docs/api/rhi/opengl/shader/compile-vs-fs.md +++ /dev/null @@ -1,34 +0,0 @@ -# OpenGLShader::Compile (VS+FS) - -```cpp -bool Compile(const char* vertexSource, const char* fragmentSource); -``` - -从源代码编译顶点着色器和片段着色器。 - -**参数:** -- `vertexSource` - 顶点着色器源代码 -- `fragmentSource` - 片段着色器源代码 - -**返回:** 成功返回 `true`,失败返回 `false` - -**示例:** - -```cpp -const char* vs = R"( - #version 330 core - void main() { gl_Position = vec4(0.0); } -)"; -const char* fs = R"( - #version 330 core - out vec4 color; - void main() { color = vec4(1.0); } -)"; -shader->Compile(vs, fs); -shader->Use(); -``` - -## 相关文档 - -- [OpenGLShader 总览](shader.md) - 返回类总览 -- [CompileCompute](compile-compute.md) - 计算着色器版本 diff --git a/docs/api/rhi/opengl/shader/get-id.md b/docs/api/rhi/opengl/shader/get-id.md deleted file mode 100644 index d628f61a..00000000 --- a/docs/api/rhi/opengl/shader/get-id.md +++ /dev/null @@ -1,23 +0,0 @@ -# OpenGLShader::GetID - -```cpp -unsigned int GetID() const; -``` - -获取 OpenGL 着色器程序 ID。 - -**返回:** OpenGL 程序对象 ID - -**线程安全:** ❌ - -**示例:** - -```cpp -unsigned int programId = shader->GetID(); -glUseProgram(programId); -``` - -## 相关文档 - -- [OpenGLShader 总览](shader.md) - 返回类总览 -- [GetNativeHandle](../../shader/get-native-handle.md) - 原生句柄 diff --git a/docs/api/rhi/opengl/shader/get-uniform-location.md b/docs/api/rhi/opengl/shader/get-uniform-location.md deleted file mode 100644 index aa658d07..00000000 --- a/docs/api/rhi/opengl/shader/get-uniform-location.md +++ /dev/null @@ -1,27 +0,0 @@ -# OpenGLShader::GetUniformLocation - -```cpp -int GetUniformLocation(const char* name) const; -``` - -获取 Uniform 变量的位置索引。 - -**参数:** -- `name` - Uniform 变量名称 - -**返回:** Uniform 位置索引,失败返回 -1 - -**线程安全:** ❌ - -**示例:** - -```cpp -int loc = shader->GetUniformLocation("modelMatrix"); -if (loc != -1) { - glUniformMatrix4fv(loc, 1, GL_FALSE, &modelMatrix[0][0]); -} -``` - -## 相关文档 - -- [OpenGLShader 总览](shader.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/shader/set-float-array.md b/docs/api/rhi/opengl/shader/set-float-array.md deleted file mode 100644 index 4852a204..00000000 --- a/docs/api/rhi/opengl/shader/set-float-array.md +++ /dev/null @@ -1,26 +0,0 @@ -# OpenGLShader::SetFloatArray - -```cpp -void SetFloatArray(const char* name, const float* values, unsigned int count); -``` - -设置浮点数数组 Uniform 变量。 - -**参数:** -- `name` - Uniform 变量名称 -- `values` - 浮点数数组指针 -- `count` - 数组元素数量 - -**线程安全:** ❌ - -**示例:** - -```cpp -float weights[] = { 0.25f, 0.25f, 0.25f, 0.25f }; -shader->SetFloatArray("vertexWeights", weights, 4); -``` - -## 相关文档 - -- [OpenGLShader 总览](shader.md) - 返回类总览 -- [SetFloat](../../shader/set-float.md) - 单个浮点数版本 diff --git a/docs/api/rhi/opengl/shader/set-int-array.md b/docs/api/rhi/opengl/shader/set-int-array.md deleted file mode 100644 index 600f662d..00000000 --- a/docs/api/rhi/opengl/shader/set-int-array.md +++ /dev/null @@ -1,26 +0,0 @@ -# OpenGLShader::SetIntArray - -```cpp -void SetIntArray(const char* name, const int* values, unsigned int count); -``` - -设置整数数组 Uniform 变量。 - -**参数:** -- `name` - Uniform 变量名称 -- `values` - 整数数组指针 -- `count` - 数组元素数量 - -**线程安全:** ❌ - -**示例:** - -```cpp -int indices[] = { 0, 1, 2, 3 }; -shader->SetIntArray("boneIndices", indices, 4); -``` - -## 相关文档 - -- [OpenGLShader 总览](shader.md) - 返回类总览 -- [SetInt](../../shader/set-int.md) - 单个整数版本 diff --git a/docs/api/rhi/opengl/shader/set-mat2.md b/docs/api/rhi/opengl/shader/set-mat2.md deleted file mode 100644 index 1be1e4f1..00000000 --- a/docs/api/rhi/opengl/shader/set-mat2.md +++ /dev/null @@ -1,34 +0,0 @@ -# OpenGLShader::SetMat2 - -设置 2x2 矩阵 uniform 变量。 - -```cpp -void SetMat2(const char* name, const float* value); -``` - -通过名称查找并设置着色器中的 2x2 变换矩阵 uniform 变量。矩阵按列主序存储。 - -**参数:** -- `name` - uniform 变量名称 -- `value` - 指向 4 个 float 元素的数组指针(列主序排列) - -**返回:** 无 - -**线程安全:** ❌(需要在渲染线程调用) - -**示例:** - -```cpp -// 设置 2x2 旋转矩阵 -float rotation[4] = { - cos(angle), sin(angle), // 第一列 - -sin(angle), cos(angle) // 第二列 -}; -shader->SetMat2("u_rotation", rotation); -``` - -## 相关文档 - -- [OpenGLShader 总览](shader.md) - 返回类总览 -- [SetMat3](set-mat3.md) - 设置 3x3 矩阵 -- [SetMat4](../../shader/set-mat4.md) - 设置 4x4 矩阵 \ No newline at end of file diff --git a/docs/api/rhi/opengl/shader/set-mat3.md b/docs/api/rhi/opengl/shader/set-mat3.md deleted file mode 100644 index a9820d1d..00000000 --- a/docs/api/rhi/opengl/shader/set-mat3.md +++ /dev/null @@ -1,35 +0,0 @@ -# OpenGLShader::SetMat3 - -设置 3x3 矩阵 uniform 变量。 - -```cpp -void SetMat3(const char* name, const float* value); -``` - -通过名称查找并设置着色器中的 3x3 变换矩阵 uniform 变量。矩阵按列主序存储。常见用途包括设置法线矩阵、模型矩阵的 3x3 部分等。 - -**参数:** -- `name` - uniform 变量名称 -- `value` - 指向 9 个 float 元素的数组指针(列主序排列) - -**返回:** 无 - -**线程安全:** ❌(需要在渲染线程调用) - -**示例:** - -```cpp -// 设置 3x3 法线矩阵 -float normalMatrix[9] = { - 1.0f, 0.0f, 0.0f, // 第一列 - 0.0f, 1.0f, 0.0f, // 第二列 - 0.0f, 0.0f, 1.0f // 第三列 -}; -shader->SetMat3("u_normalMatrix", normalMatrix); -``` - -## 相关文档 - -- [OpenGLShader 总览](shader.md) - 返回类总览 -- [SetMat2](set-mat2.md) - 设置 2x2 矩阵 -- [SetMat4](../../shader/set-mat4.md) - 设置 4x4 矩阵 \ No newline at end of file diff --git a/docs/api/rhi/opengl/shader/set-mat4-array.md b/docs/api/rhi/opengl/shader/set-mat4-array.md deleted file mode 100644 index 24d6655d..00000000 --- a/docs/api/rhi/opengl/shader/set-mat4-array.md +++ /dev/null @@ -1,44 +0,0 @@ -# OpenGLShader::SetMat4Array - -设置 4x4 矩阵数组 uniform 变量。 - -```cpp -void SetMat4Array(const char* name, const float* values, unsigned int count); -``` - -通过名称查找并设置着色器中的 4x4 矩阵数组 uniform 变量。矩阵按列主序存储。 - -**参数:** -- `name` - uniform 变量名称 -- `values` - 指向 `count * 16` 个 float 元素的数组指针(列主序排列) -- `count` - 矩阵数量 - -**返回:** 无 - -**线程安全:** ❌(需要在渲染线程调用) - -**示例:** - -```cpp -// 设置多个变换矩阵(例如骨骼动画) -const unsigned int boneCount = 4; -float boneMatrices[4 * 16] = { - // 第一个矩阵 - 1.0f, 0.0f, 0.0f, 0.0f, - 0.0f, 1.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 1.0f, 0.0f, - 0.0f, 0.0f, 0.0f, 1.0f, - // 第二个矩阵 - 0.5f, 0.0f, 0.0f, 0.0f, - 0.0f, 0.5f, 0.0f, 0.0f, - 0.0f, 0.0f, 0.5f, 0.0f, - 0.0f, 0.0f, 0.0f, 1.0f, - // ...更多矩阵 -}; -shader->SetMat4Array("u_boneMatrices", boneMatrices, boneCount); -``` - -## 相关文档 - -- [OpenGLShader 总览](shader.md) - 返回类总览 -- [SetMat4 (single)](../../shader/set-mat4.md) - 设置单个 4x4 矩阵 \ No newline at end of file diff --git a/docs/api/rhi/opengl/shader/set-vec3-array.md b/docs/api/rhi/opengl/shader/set-vec3-array.md deleted file mode 100644 index b7625f9a..00000000 --- a/docs/api/rhi/opengl/shader/set-vec3-array.md +++ /dev/null @@ -1,35 +0,0 @@ -# OpenGLShader::SetVec3 - -设置三维向量 uniform 变量(数组重载版本)。 - -```cpp -void SetVec3(const char* name, const float* values); -``` - -通过名称查找并设置着色器中的三维向量 uniform 变量,使用浮点数数组作为输入。 - -**参数:** -- `name` - uniform 变量名称 -- `values` - 指向 3 个 float 元素的数组指针 - -**返回:** 无 - -**线程安全:** ❌(需要在渲染线程调用) - -**示例:** - -```cpp -// 设置光照方向 -float lightDir[3] = { 0.5f, 1.0f, 0.3f }; -shader->SetVec3("u_lightDir", lightDir); - -// 设置法线 -float normal[3] = { 0.0f, 1.0f, 0.0f }; -shader->SetVec3("u_normal", normal); -``` - -## 相关文档 - -- [OpenGLShader 总览](shader.md) - 返回类总览 -- [SetVec3 (xyz)](../../shader/set-vec3.md) - xyz分量版本 -- [SetVec4 (float*)](set-vec4-array.md) - 四维向量数组版本 \ No newline at end of file diff --git a/docs/api/rhi/opengl/shader/set-vec4-array.md b/docs/api/rhi/opengl/shader/set-vec4-array.md deleted file mode 100644 index f5d2d0c4..00000000 --- a/docs/api/rhi/opengl/shader/set-vec4-array.md +++ /dev/null @@ -1,35 +0,0 @@ -# OpenGLShader::SetVec4 - -设置四维向量 uniform 变量(数组重载版本)。 - -```cpp -void SetVec4(const char* name, const float* values); -``` - -通过名称查找并设置着色器中的四维向量 uniform 变量,使用浮点数数组作为输入。 - -**参数:** -- `name` - uniform 变量名称 -- `values` - 指向 4 个 float 元素的数组指针 - -**返回:** 无 - -**线程安全:** ❌(需要在渲染线程调用) - -**示例:** - -```cpp -// 设置颜色 -float color[4] = { 1.0f, 0.5f, 0.2f, 1.0f }; -shader->SetVec4("u_color", color); - -// 设置齐次坐标 -float position[4] = { 10.0f, 20.0f, 30.0f, 1.0f }; -shader->SetVec4("u_position", position); -``` - -## 相关文档 - -- [OpenGLShader 总览](shader.md) - 返回类总览 -- [SetVec4 (xyzw)](../../shader/set-vec4.md) - xyzw分量版本 -- [SetVec3 (float*)](set-vec3-array.md) - 三维向量数组版本 \ No newline at end of file diff --git a/docs/api/rhi/opengl/shader/shader.md b/docs/api/rhi/opengl/shader/shader.md deleted file mode 100644 index b04274a1..00000000 --- a/docs/api/rhi/opengl/shader/shader.md +++ /dev/null @@ -1,40 +0,0 @@ -# OpenGLShader - -**命名空间**: `XCEngine::RHI` - -**描述**: OpenGL 着色器实现,继承自 `RHIShader`。 - -## 公共方法 - -### 编译方法 - -| 方法 | 描述 | -|------|------| -| [`CompileFromFile`](compile-from-file-vs-fs.md) | 从文件编译顶点+片段着色器 | -| [`Compile`](compile-vs-fs.md) | 从源码编译顶点+片段着色器 | -| [`Compile`](compile-type.md) | 从源码编译单着色器 | -| [`CompileCompute`](compile-compute.md) | 编译计算着色器 | -| [`Shutdown`](../../shader/shutdown.md) | 关闭着色器 | - -### 绑定方法 - -| 方法 | 描述 | -|------|------| -| [`Use`](use.md) | 使用着色器 | -| [`Bind`](../../shader/bind.md) | 绑定着色器 | -| [`Unbind`](../../shader/unbind.md) | 解绑着色器 | - -### 查询方法 - -| 方法 | 描述 | -|------|------| -| [`GetUniformLocation`](get-uniform-location.md) | 获取 uniform 位置 | -| [`GetID`](get-id.md) | 获取着色器 ID | -| [`GetNativeHandle`](../../shader/get-native-handle.md) | 获取原生句柄 | -| [`IsValid`](../../shader/is-valid.md) | 检查是否有效 | -| [`GetType`](../../shader/get-type.md) | 获取着色器类型 | - -## 相关文档 - -- [OpenGL 后端总览](../opengl.md) -- [RHIShader](../../shader/shader.md) - 抽象着色器接口 diff --git a/docs/api/rhi/opengl/shader/use.md b/docs/api/rhi/opengl/shader/use.md deleted file mode 100644 index 91d4b18a..00000000 --- a/docs/api/rhi/opengl/shader/use.md +++ /dev/null @@ -1,21 +0,0 @@ -# OpenGLShader::Use - -```cpp -void Use() const; -``` - -激活并使用当前着色器程序。 - -**线程安全:** ❌ - -**示例:** - -```cpp -shader->Use(); -// 渲染操作使用此着色器 -``` - -## 相关文档 - -- [OpenGLShader 总览](shader.md) - 返回类总览 -- [Bind/Unbind](../../shader/bind.md) - 基类绑定接口 diff --git a/docs/api/rhi/opengl/swap-chain/constructor.md b/docs/api/rhi/opengl/swap-chain/constructor.md deleted file mode 100644 index 74ddeb19..00000000 --- a/docs/api/rhi/opengl/swap-chain/constructor.md +++ /dev/null @@ -1,24 +0,0 @@ -# OpenGLSwapChain::OpenGLSwapChain - -```cpp -OpenGLSwapChain(); -``` - -构造空的 OpenGL 交换链对象。 - -**注意:** -- 构造函数不初始化交换链,需调用 `Initialize` 方法完成初始化 -- 初始化参数由 `Initialize` 方法指定 - -**示例:** - -```cpp -OpenGLSwapChain swapChain; -swapChain.Initialize(window, true); -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) - 返回类总览 -- [Initialize](initialize.md) - 初始化方法 -- [析构函数](destructor.md) - 析构函数 diff --git a/docs/api/rhi/opengl/swap-chain/destructor.md b/docs/api/rhi/opengl/swap-chain/destructor.md deleted file mode 100644 index 9da425d9..00000000 --- a/docs/api/rhi/opengl/swap-chain/destructor.md +++ /dev/null @@ -1,27 +0,0 @@ -# OpenGLSwapChain::~OpenGLSwapChain - -```cpp -~OpenGLSwapChain() override; -``` - -销毁 OpenGL 交换链对象,自动调用 `Shutdown`。 - -**注意:** -- 析构函数自动调用 `Shutdown` 释放资源 -- 确保在销毁前调用 `Shutdown` 或确保交换链已初始化 - -**示例:** - -```cpp -{ - OpenGLSwapChain swapChain; - swapChain.Initialize(window, true); - // 使用交换链... -} // 析构函数自动调用 Shutdown -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) - 返回类总览 -- [Shutdown](shutdown.md) - 关闭方法 -- [构造函数](constructor.md) - 构造函数 diff --git a/docs/api/rhi/opengl/swap-chain/get-current-back-buffer-index.md b/docs/api/rhi/opengl/swap-chain/get-current-back-buffer-index.md deleted file mode 100644 index 1e91af8e..00000000 --- a/docs/api/rhi/opengl/swap-chain/get-current-back-buffer-index.md +++ /dev/null @@ -1,26 +0,0 @@ -# OpenGLSwapChain::GetCurrentBackBufferIndex - -```cpp -uint32_t GetCurrentBackBufferIndex() const override; -``` - -获取当前后台缓冲区的索引。 - -**返回:** 始终返回 0(OpenGL 交换链使用单一帧缓冲) - -**线程安全:** ❌ - -**注意:** -- OpenGL 交换链实现返回 0,因为使用单一帧缓冲而非多缓冲 -- 该方法继承自 `RHISwapChain` 抽象接口 - -**示例:** - -```cpp -uint32_t index = swapChain->GetCurrentBackBufferIndex(); -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) -- [GetCurrentBackBuffer](get-current-back-buffer.md) - 获取当前后台缓冲区 diff --git a/docs/api/rhi/opengl/swap-chain/get-current-back-buffer.md b/docs/api/rhi/opengl/swap-chain/get-current-back-buffer.md deleted file mode 100644 index 3f648a06..00000000 --- a/docs/api/rhi/opengl/swap-chain/get-current-back-buffer.md +++ /dev/null @@ -1,28 +0,0 @@ -# OpenGLSwapChain::GetCurrentBackBuffer - -```cpp -RHITexture* GetCurrentBackBuffer() override; -``` - -获取当前后台缓冲区纹理对象。 - -**返回:** `nullptr`(OpenGL 交换链不支持此方法) - -**线程安全:** ❌ - -**注意:** -- OpenGL 交换链基于 GLFW 窗口,不提供独立的后台缓冲区纹理 -- 该方法继承自 `RHISwapChain` 抽象接口 -- 如需渲染到纹理,请使用 Framebuffer Object (FBO) - -**示例:** - -```cpp -RHITexture* backBuffer = swapChain->GetCurrentBackBuffer(); -// 返回 nullptr -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) -- [GetCurrentBackBufferIndex](get-current-back-buffer-index.md) - 获取当前后台缓冲区索引 diff --git a/docs/api/rhi/opengl/swap-chain/get-framebuffer-height.md b/docs/api/rhi/opengl/swap-chain/get-framebuffer-height.md deleted file mode 100644 index 674cf4b5..00000000 --- a/docs/api/rhi/opengl/swap-chain/get-framebuffer-height.md +++ /dev/null @@ -1,26 +0,0 @@ -# OpenGLSwapChain::GetFramebufferHeight - -```cpp -int GetFramebufferHeight() const; -``` - -获取帧缓冲区高度。 - -**返回:** 帧缓冲区高度(像素) - -**线程安全:** ❌ - -**注意:** -- 帧缓冲区大小可能与窗口大小不同(HiDPI 显示) -- 通过 `glfwGetFramebufferSize` 获取 - -**示例:** - -```cpp -int fbHeight = swapChain->GetFramebufferHeight(); -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) -- [GetFramebufferWidth](get-framebuffer-width.md) - 获取帧缓冲宽度 diff --git a/docs/api/rhi/opengl/swap-chain/get-framebuffer-width.md b/docs/api/rhi/opengl/swap-chain/get-framebuffer-width.md deleted file mode 100644 index 010b61e8..00000000 --- a/docs/api/rhi/opengl/swap-chain/get-framebuffer-width.md +++ /dev/null @@ -1,26 +0,0 @@ -# OpenGLSwapChain::GetFramebufferWidth - -```cpp -int GetFramebufferWidth() const; -``` - -获取帧缓冲区宽度。 - -**返回:** 帧缓冲区宽度(像素) - -**线程安全:** ❌ - -**注意:** -- 帧缓冲区大小可能与窗口大小不同(HiDPI 显示) -- 通过 `glfwGetFramebufferSize` 获取 - -**示例:** - -```cpp -int fbWidth = swapChain->GetFramebufferWidth(); -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) -- [GetFramebufferHeight](get-framebuffer-height.md) - 获取帧缓冲高度 diff --git a/docs/api/rhi/opengl/swap-chain/get-height.md b/docs/api/rhi/opengl/swap-chain/get-height.md deleted file mode 100644 index 48782f46..00000000 --- a/docs/api/rhi/opengl/swap-chain/get-height.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLSwapChain::GetHeight - -```cpp -int GetHeight() const; -``` - -获取交换链的窗口高度。 - -**返回:** 窗口高度(像素) - -**线程安全:** ❌ - -**示例:** - -```cpp -int height = swapChain->GetHeight(); -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) -- [GetWidth](get-width.md) - 获取宽度 diff --git a/docs/api/rhi/opengl/swap-chain/get-native-handle.md b/docs/api/rhi/opengl/swap-chain/get-native-handle.md deleted file mode 100644 index c29870e4..00000000 --- a/docs/api/rhi/opengl/swap-chain/get-native-handle.md +++ /dev/null @@ -1,26 +0,0 @@ -# OpenGLSwapChain::GetNativeHandle - -```cpp -void* GetNativeHandle() override; -``` - -获取 OpenGL 交换链的原生句柄。 - -**返回:** `nullptr`(OpenGL 交换链不提供原生句柄) - -**线程安全:** ❌ - -**注意:** -- OpenGL 交换链基于 GLFW,不直接提供 OpenGL 句柄 -- 使用 `GetWindow()` 获取 GLFW 窗口指针 - -**示例:** - -```cpp -void* handle = swapChain->GetNativeHandle(); -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) - 返回类总览 -- [GetWindow](get-window.md) - 获取 GLFW 窗口 diff --git a/docs/api/rhi/opengl/swap-chain/get-width.md b/docs/api/rhi/opengl/swap-chain/get-width.md deleted file mode 100644 index 62fae284..00000000 --- a/docs/api/rhi/opengl/swap-chain/get-width.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLSwapChain::GetWidth - -```cpp -int GetWidth() const; -``` - -获取交换链的窗口宽度。 - -**返回:** 窗口宽度(像素) - -**线程安全:** ❌ - -**示例:** - -```cpp -int width = swapChain->GetWidth(); -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) -- [GetHeight](get-height.md) - 获取高度 diff --git a/docs/api/rhi/opengl/swap-chain/get-window.md b/docs/api/rhi/opengl/swap-chain/get-window.md deleted file mode 100644 index 3014baf5..00000000 --- a/docs/api/rhi/opengl/swap-chain/get-window.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLSwapChain::GetWindow - -```cpp -GLFWwindow* GetWindow() const; -``` - -获取关联的 GLFW 窗口指针。 - -**返回:** GLFW 窗口指针 - -**线程安全:** ❌ - -**示例:** - -```cpp -GLFWwindow* window = swapChain->GetWindow(); -glfwSetWindowTitle(window, "New Title"); -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/swap-chain/initialize-mode.md b/docs/api/rhi/opengl/swap-chain/initialize-mode.md deleted file mode 100644 index 96b9fa60..00000000 --- a/docs/api/rhi/opengl/swap-chain/initialize-mode.md +++ /dev/null @@ -1,25 +0,0 @@ -# OpenGLSwapChain::Initialize (mode) - -```cpp -bool Initialize(GLFWwindow* window, int width, int height, PresentMode mode = PresentMode::VSync); -``` - -使用指定显示模式初始化交换链。 - -**参数:** -- `window` - GLFW 窗口指针 -- `width` - 交换链宽度 -- `height` - 交换链高度 -- `mode` - 呈现模式(默认 VSync) - -**返回:** 成功返回 `true`,失败返回 `false` - -**示例:** - -```cpp -swapChain->Initialize(window, 1920, 1080, PresentMode::VSync); -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/swap-chain/initialize.md b/docs/api/rhi/opengl/swap-chain/initialize.md deleted file mode 100644 index 033c80ff..00000000 --- a/docs/api/rhi/opengl/swap-chain/initialize.md +++ /dev/null @@ -1,28 +0,0 @@ -# OpenGLSwapChain::Initialize - -使用已存在的窗口初始化 OpenGL 交换链。 - -```cpp -bool Initialize(OpenGLDevice* device, HWND window, int width, int height); -``` - -**参数:** -- `device` - OpenGL 设备指针 -- `window` - Win32 窗口句柄 -- `width` - 窗口宽度 -- `height` - 窗口高度 - -**返回:** 成功初始化返回 true - -**示例:** - -```cpp -OpenGLDevice device; -device.Initialize({}); -OpenGLSwapChain swapChain; -swapChain.Initialize(&device, hwnd, 1280, 720); -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/swap-chain/is-fullscreen.md b/docs/api/rhi/opengl/swap-chain/is-fullscreen.md deleted file mode 100644 index 080055ac..00000000 --- a/docs/api/rhi/opengl/swap-chain/is-fullscreen.md +++ /dev/null @@ -1,24 +0,0 @@ -# OpenGLSwapChain::IsFullscreen - -```cpp -bool IsFullscreen() const override; -``` - -查询是否处于全屏模式。 - -**返回:** `true` 表示全屏模式,`false` 表示窗口模式 - -**线程安全:** ❌ - -**示例:** - -```cpp -if (swapChain->IsFullscreen()) { - // 全屏模式 -} -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) - 返回类总览 -- [SetFullscreen](set-fullscreen.md) - 设置全屏模式 diff --git a/docs/api/rhi/opengl/swap-chain/is-vsync.md b/docs/api/rhi/opengl/swap-chain/is-vsync.md deleted file mode 100644 index 8182a608..00000000 --- a/docs/api/rhi/opengl/swap-chain/is-vsync.md +++ /dev/null @@ -1,24 +0,0 @@ -# OpenGLSwapChain::IsVSync - -```cpp -bool IsVSync() const; -``` - -查询垂直同步是否启用。 - -**返回:** `true` 表示启用垂直同步,`false` 表示禁用 - -**线程安全:** ❌ - -**示例:** - -```cpp -if (swapChain->IsVSync()) { - // 垂直同步已启用 -} -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) - 返回类总览 -- [SetVSync](set-vsync.md) - 设置垂直同步 diff --git a/docs/api/rhi/opengl/swap-chain/poll-events.md b/docs/api/rhi/opengl/swap-chain/poll-events.md deleted file mode 100644 index 5efe4f8b..00000000 --- a/docs/api/rhi/opengl/swap-chain/poll-events.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLSwapChain::PollEvents - -```cpp -void PollEvents() override; -``` - -处理所有待处理的窗口事件。 - -**线程安全:** ❌ - -**示例:** - -```cpp -while (!swapChain->ShouldClose()) { - swapChain->PollEvents(); - // 渲染逻辑 -} -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/swap-chain/present-mode.md b/docs/api/rhi/opengl/swap-chain/present-mode.md deleted file mode 100644 index 6a9ffdb7..00000000 --- a/docs/api/rhi/opengl/swap-chain/present-mode.md +++ /dev/null @@ -1,21 +0,0 @@ -# PresentMode - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 指定交换链的呈现模式,控制帧缓冲交换的同步方式。 - -## 枚举值 - -| 值 | 描述 | -|------|------| -| `Immediate` | 立即呈现,不等待垂直同步 | -| `VSync` | 等待垂直同步(默认) | -| `Mailbox` | 邮箱模式,三重缓冲 | -| `Fifo` | 先进先出,标准垂直同步 | - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) -- [SurfaceFormat](surface-format.md) diff --git a/docs/api/rhi/opengl/swap-chain/present.md b/docs/api/rhi/opengl/swap-chain/present.md deleted file mode 100644 index 7b866bab..00000000 --- a/docs/api/rhi/opengl/swap-chain/present.md +++ /dev/null @@ -1,24 +0,0 @@ -# OpenGLSwapChain::Present - -```cpp -void Present(uint32_t syncInterval = 1, uint32_t flags = 0) override; -``` - -呈现渲染结果到屏幕。 - -**参数:** -- `syncInterval` - 垂直同步间隔(0=立即,1+=等待垂直同步) -- `flags` - 呈现标志 - -**线程安全:** ❌ - -**示例:** - -```cpp -swapChain->Present(1, 0); -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) - 返回类总览 -- [SwapBuffers](swap-buffers.md) - 直接交换缓冲区 diff --git a/docs/api/rhi/opengl/swap-chain/resize.md b/docs/api/rhi/opengl/swap-chain/resize.md deleted file mode 100644 index ebdabfb3..00000000 --- a/docs/api/rhi/opengl/swap-chain/resize.md +++ /dev/null @@ -1,28 +0,0 @@ -# OpenGLSwapChain::Resize - -```cpp -void Resize(uint32_t width, uint32_t height) override; -``` - -调整交换链大小。 - -**参数:** -- `width` - 新的宽度 -- `height` - 新的高度 - -**注意:** -- OpenGL 实现目前不执行实际的调整大小操作 -- 仅更新内部宽度和高度记录 - -**线程安全:** ❌ - -**示例:** - -```cpp -swapChain->Resize(1920, 1080); -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) - 返回类总览 -- [RHISwapChain::Resize](../../swap-chain/resize.md) - 基类 resize 接口 diff --git a/docs/api/rhi/opengl/swap-chain/set-framebuffer-size.md b/docs/api/rhi/opengl/swap-chain/set-framebuffer-size.md deleted file mode 100644 index 8f701fdf..00000000 --- a/docs/api/rhi/opengl/swap-chain/set-framebuffer-size.md +++ /dev/null @@ -1,29 +0,0 @@ -# OpenGLSwapChain::SetFramebufferSize - -```cpp -void SetFramebufferSize(int width, int height); -``` - -设置帧缓冲区大小。 - -**参数:** -- `width` - 帧缓冲区宽度 -- `height` - 帧缓冲区高度 - -**线程安全:** ❌ - -**注意:** -- 此方法仅设置内部记录值,不实际调整帧缓冲对象 -- 用于同步 GLFW 报告的帧缓冲区大小 - -**示例:** - -```cpp -swapChain->SetFramebufferSize(1920, 1080); -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) -- [GetFramebufferWidth](get-framebuffer-width.md) - 获取帧缓冲宽度 -- [GetFramebufferHeight](get-framebuffer-height.md) - 获取帧缓冲高度 diff --git a/docs/api/rhi/opengl/swap-chain/set-fullscreen.md b/docs/api/rhi/opengl/swap-chain/set-fullscreen.md deleted file mode 100644 index 672af78d..00000000 --- a/docs/api/rhi/opengl/swap-chain/set-fullscreen.md +++ /dev/null @@ -1,23 +0,0 @@ -# OpenGLSwapChain::SetFullscreen - -```cpp -void SetFullscreen(bool fullscreen) override; -``` - -设置全屏模式。 - -**参数:** -- `fullscreen` - 是否切换到全屏模式 - -**线程安全:** ❌ - -**示例:** - -```cpp -swapChain->SetFullscreen(true); -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) - 返回类总览 -- [IsFullscreen](is-fullscreen.md) - 查询全屏状态 diff --git a/docs/api/rhi/opengl/swap-chain/set-should-close.md b/docs/api/rhi/opengl/swap-chain/set-should-close.md deleted file mode 100644 index efb60840..00000000 --- a/docs/api/rhi/opengl/swap-chain/set-should-close.md +++ /dev/null @@ -1,23 +0,0 @@ -# OpenGLSwapChain::SetShouldClose - -```cpp -void SetShouldClose(bool shouldClose) override; -``` - -设置窗口关闭标志。 - -**参数:** -- `shouldClose` - 是否应该关闭 - -**线程安全:** ❌ - -**示例:** - -```cpp -swapChain->SetShouldClose(true); -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) - 返回类总览 -- [ShouldClose](should-close.md) - 查询关闭标志 diff --git a/docs/api/rhi/opengl/swap-chain/set-vsync.md b/docs/api/rhi/opengl/swap-chain/set-vsync.md deleted file mode 100644 index 9c872262..00000000 --- a/docs/api/rhi/opengl/swap-chain/set-vsync.md +++ /dev/null @@ -1,23 +0,0 @@ -# OpenGLSwapChain::SetVSync - -```cpp -void SetVSync(bool enabled); -``` - -设置垂直同步开关。 - -**参数:** -- `enabled` - 是否启用垂直同步 - -**线程安全:** ❌ - -**示例:** - -```cpp -swapChain->SetVSync(true); -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) - 返回类总览 -- [IsVSync](is-vsync.md) - 查询垂直同步状态 diff --git a/docs/api/rhi/opengl/swap-chain/should-close.md b/docs/api/rhi/opengl/swap-chain/should-close.md deleted file mode 100644 index aa6049b6..00000000 --- a/docs/api/rhi/opengl/swap-chain/should-close.md +++ /dev/null @@ -1,25 +0,0 @@ -# OpenGLSwapChain::ShouldClose - -```cpp -bool ShouldClose() const override; -``` - -查询窗口是否应该关闭。 - -**返回:** `true` 表示应该关闭,`false` 表示继续运行 - -**线程安全:** ❌ - -**示例:** - -```cpp -while (!swapChain->ShouldClose()) { - swapChain->PollEvents(); - // 渲染逻辑 -} -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) - 返回类总览 -- [SetShouldClose](set-should-close.md) - 设置关闭标志 diff --git a/docs/api/rhi/opengl/swap-chain/shutdown.md b/docs/api/rhi/opengl/swap-chain/shutdown.md deleted file mode 100644 index 89106272..00000000 --- a/docs/api/rhi/opengl/swap-chain/shutdown.md +++ /dev/null @@ -1,24 +0,0 @@ -# OpenGLSwapChain::Shutdown - -```cpp -void Shutdown() override; -``` - -关闭交换链并释放资源。 - -**线程安全:** ❌ - -**注意:** -- 此方法由析构函数自动调用 -- 调用后交换链将处于未初始化状态 - -**示例:** - -```cpp -swapChain->Shutdown(); -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) - 返回类总览 -- [构造函数](constructor.md) - 构造函数 diff --git a/docs/api/rhi/opengl/swap-chain/surface-format.md b/docs/api/rhi/opengl/swap-chain/surface-format.md deleted file mode 100644 index 4b516ccd..00000000 --- a/docs/api/rhi/opengl/swap-chain/surface-format.md +++ /dev/null @@ -1,21 +0,0 @@ -# SurfaceFormat - -**命名空间**: `XCEngine::RHI` - -**类型**: `enum class` - -**描述**: 指定交换链的表面格式,控制颜色缓冲的像素格式。 - -## 枚举值 - -| 值 | 描述 | -|------|------| -| `RGBA8` | 8 位 RGBA(每个通道 8 位) | -| `RGBA16F` | 16 位浮点 RGBA | -| `RGBA32F` | 32 位浮点 RGBA | -| `BGRA8` | 8 位 BGRA | - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) -- [PresentMode](present-mode.md) diff --git a/docs/api/rhi/opengl/swap-chain/swap-buffers.md b/docs/api/rhi/opengl/swap-chain/swap-buffers.md deleted file mode 100644 index 771345b6..00000000 --- a/docs/api/rhi/opengl/swap-chain/swap-buffers.md +++ /dev/null @@ -1,20 +0,0 @@ -# OpenGLSwapChain::SwapBuffers - -```cpp -void SwapBuffers(); -``` - -直接交换前后缓冲区。 - -**线程安全:** ❌ - -**示例:** - -```cpp -swapChain->SwapBuffers(); -``` - -## 相关文档 - -- [OpenGLSwapChain 总览](swap-chain.md) - 返回类总览 -- [Present](present.md) - 呈现(带垂直同步) diff --git a/docs/api/rhi/opengl/swap-chain/swap-chain.md b/docs/api/rhi/opengl/swap-chain/swap-chain.md deleted file mode 100644 index 506c506a..00000000 --- a/docs/api/rhi/opengl/swap-chain/swap-chain.md +++ /dev/null @@ -1,63 +0,0 @@ -# OpenGLSwapChain - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` - -**描述**: OpenGL 交换链实现,继承自 `RHISwapChain`。基于 GLFW 窗口管理,用于 OpenGL 渲染的帧缓冲交换。 - -## 概述 - -`OpenGLSwapChain` 是 OpenGL 后端的交换链实现,负责管理渲染目标帧缓冲的呈现。它继承自 `RHISwapChain` 抽象接口,通过 GLFW 窗口系统进行帧缓冲交换。 - -### 枚举类型 - -| 枚举 | 描述 | -|------|------| -| [`PresentMode`](present-mode.md) | 呈现模式(Immediate/VSync/Mailbox/Fifo) | -| [`SurfaceFormat`](surface-format.md) | 表面格式(RGBA8/RGBA16F/RGBA32F/BGRA8) | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`OpenGLSwapChain`](constructor.md) | 构造函数 | -| [`~OpenGLSwapChain`](destructor.md) | 析构函数 | -| [`Initialize`](initialize.md) | 初始化交换链 | -| [`Shutdown`](shutdown.md) | 关闭交换链 | -| [`Present`](present.md) | 呈现画面 | -| [`SwapBuffers`](swap-buffers.md) | 交换缓冲 | -| [`Resize`](resize.md) | 调整交换链大小 | -| [`GetCurrentBackBufferIndex`](get-current-back-buffer-index.md) | 获取当前后台缓冲区索引 | -| [`GetCurrentBackBuffer`](get-current-back-buffer.md) | 获取当前后台缓冲区 | -| [`GetWidth`](get-width.md) | 获取宽度 | -| [`GetHeight`](get-height.md) | 获取高度 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | - -## 使用示例 - -```cpp -#include - -// 创建并初始化 -XCEngine::RHI::OpenGLSwapChain swapChain; -OpenGLDevice* device = /* 获取 OpenGLDevice */; -HWND window = /* 获取窗口句柄 */; -swapChain.Initialize(device, window, 1280, 720); - -// 游戏循环 -while (true) { - // 渲染逻辑 - Render(); - - swapChain.Present(1, 0); -} - -// 关闭 -swapChain.Shutdown(); -``` - -## 相关文档 - -- [OpenGL 后端总览](../opengl.md) -- [RHISwapChain](../../swap-chain/swap-chain.md) - 抽象交换链接口 diff --git a/docs/api/rhi/opengl/texture/bind-image.md b/docs/api/rhi/opengl/texture/bind-image.md deleted file mode 100644 index 78739611..00000000 --- a/docs/api/rhi/opengl/texture/bind-image.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLTexture::BindImage - -```cpp -void BindImage(int slot, bool read, bool write) const -``` - -将纹理绑定到图像单元,用于着色器图像访问。 - -**参数:** -- `slot` - 图像单元槽位 -- `read` - 是否可读 -- `write` - 是否可写 - -**示例:** - -```cpp -texture.BindImage(0, true, false); // 只读访问 -``` - -## 相关文档 - -- [OpenGLTexture](texture.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/texture/bind.md b/docs/api/rhi/opengl/texture/bind.md deleted file mode 100644 index a824589b..00000000 --- a/docs/api/rhi/opengl/texture/bind.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLTexture::Bind - -```cpp -void Bind(int slot = 0) const -``` - -将纹理绑定到纹理单元。 - -**参数:** -- `slot` - 纹理单元槽位(默认为 0) - -**示例:** - -```cpp -texture.Bind(0); // 绑定到纹理单元 0 -``` - -## 相关文档 - -- [OpenGLTexture](texture.md) - 返回类总览 -- [Unbind](unbind.md) - 解绑纹理 -- [BindImage](bind-image.md) - 绑定图像单元 diff --git a/docs/api/rhi/opengl/texture/constructors.md b/docs/api/rhi/opengl/texture/constructors.md deleted file mode 100644 index cde47820..00000000 --- a/docs/api/rhi/opengl/texture/constructors.md +++ /dev/null @@ -1,28 +0,0 @@ -# OpenGLTexture 构造与析构 - -## 构造函数 - -```cpp -OpenGLTexture() -``` - -创建 OpenGLTexture 对象,初始化内部状态。 - -**示例:** - -```cpp -OpenGLTexture texture; -``` - -## 析构函数 - -```cpp -~OpenGLTexture() override -``` - -销毁 OpenGLTexture 对象,自动调用 `Shutdown()` 释放资源。 - -## 相关文档 - -- [OpenGLTexture](texture.md) - 返回类总览 -- [Shutdown](../../texture/shutdown.md) - 关闭纹理 diff --git a/docs/api/rhi/opengl/texture/generate-mipmap.md b/docs/api/rhi/opengl/texture/generate-mipmap.md deleted file mode 100644 index b7126d0e..00000000 --- a/docs/api/rhi/opengl/texture/generate-mipmap.md +++ /dev/null @@ -1,18 +0,0 @@ -# OpenGLTexture::GenerateMipmap - -```cpp -void GenerateMipmap() -``` - -生成纹理的 mipmap。 - -**示例:** - -```cpp -texture.LoadFromFile("assets/textures/wood.jpg"); -texture.GenerateMipmap(); -``` - -## 相关文档 - -- [OpenGLTexture](texture.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/texture/get-id.md b/docs/api/rhi/opengl/texture/get-id.md deleted file mode 100644 index b43ecb99..00000000 --- a/docs/api/rhi/opengl/texture/get-id.md +++ /dev/null @@ -1,20 +0,0 @@ -# OpenGLTexture::GetID - -```cpp -unsigned int GetID() const -``` - -获取 OpenGL 纹理对象 ID。 - -**返回:** `unsigned int` - OpenGL 纹理 ID - -**示例:** - -```cpp -unsigned int texID = texture.GetID(); -glBindTexture(GL_TEXTURE_2D, texID); -``` - -## 相关文档 - -- [OpenGLTexture](texture.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/texture/get-opengl-type.md b/docs/api/rhi/opengl/texture/get-opengl-type.md deleted file mode 100644 index f9dcf687..00000000 --- a/docs/api/rhi/opengl/texture/get-opengl-type.md +++ /dev/null @@ -1,23 +0,0 @@ -# OpenGLTexture::GetOpenGLType - -```cpp -OpenGLTextureType GetOpenGLType() const -``` - -获取纹理的 OpenGL 类型。 - -**返回:** `OpenGLTextureType` - 纹理类型枚举值: -- `OpenGLTextureType::Texture1D` -- `OpenGLTextureType::Texture2D` -- `OpenGLTextureType::TextureCube` -- 等等 - -**示例:** - -```cpp -OpenGLTextureType type = texture.GetOpenGLType(); -``` - -## 相关文档 - -- [OpenGLTexture](texture.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/texture/initialize-2d.md b/docs/api/rhi/opengl/texture/initialize-2d.md deleted file mode 100644 index 14c1a663..00000000 --- a/docs/api/rhi/opengl/texture/initialize-2d.md +++ /dev/null @@ -1,28 +0,0 @@ -# OpenGLTexture::Initialize2D - -```cpp -bool Initialize2D(int width, int height, int channels, const void* data, bool generateMipmap = true) -``` - -初始化一个 2D 纹理。 - -**参数:** -- `width` - 纹理宽度(像素) -- `height` - 纹理高度(像素) -- `channels` - 通道数(1=R, 2=RG, 4=RGBA) -- `data` - 纹理数据指针(可以为 nullptr 创建空纹理) -- `generateMipmap` - 是否自动生成 mipmap(默认为 true) - -**返回:** `bool` - 成功返回 true,失败返回 false - -**示例:** - -```cpp -OpenGLTexture texture; -std::vector pixels(width * height * 4); -texture.Initialize2D(width, height, 4, pixels.data(), true); -``` - -## 相关文档 - -- [OpenGLTexture](texture.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/texture/initialize-cube-map.md b/docs/api/rhi/opengl/texture/initialize-cube-map.md deleted file mode 100644 index 0a5242f4..00000000 --- a/docs/api/rhi/opengl/texture/initialize-cube-map.md +++ /dev/null @@ -1,26 +0,0 @@ -# OpenGLTexture::InitializeCubeMap - -```cpp -bool InitializeCubeMap(int size, int mipLevels, OpenGLFormat format, const void* data = nullptr) -``` - -初始化一个立方体纹理。 - -**参数:** -- `size` - 立方体贴面的边长 -- `mipLevels` - mipmap 级别数量 -- `format` - 纹理格式(OpenGLFormat 枚举值) -- `data` - 纹理数据指针(可以为 nullptr) - -**返回:** `bool` - 成功返回 true,失败返回 false - -**示例:** - -```cpp -OpenGLTexture cubemap; -cubemap.InitializeCubeMap(512, 1, OpenGLFormat::RGBA8, nullptr); -``` - -## 相关文档 - -- [OpenGLTexture](texture.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/texture/initialize.md b/docs/api/rhi/opengl/texture/initialize.md deleted file mode 100644 index 864643e9..00000000 --- a/docs/api/rhi/opengl/texture/initialize.md +++ /dev/null @@ -1,31 +0,0 @@ -# OpenGLTexture::Initialize - -```cpp -bool Initialize(OpenGLTextureType type, int width, int height, int depth, int mipLevels, OpenGLFormat format, const void* data = nullptr) -``` - -初始化通用纹理。 - -**参数:** -- `type` - 纹理类型(`OpenGLTextureType::Texture1D`、`Texture2D`、`Texture3D` 等) -- `width` - 纹理宽度 -- `height` - 纹理高度 -- `depth` - 纹理深度(1D/2D 纹理为 1) -- `mipLevels` - mipmap 级别数量 -- `format` - 纹理格式(`OpenGLFormat` 枚举值) -- `data` - 纹理数据指针(可以为 nullptr 创建空纹理) - -**返回:** `bool` - 成功返回 true,失败返回 false - -**示例:** - -```cpp -OpenGLTexture texture; -texture.Initialize(OpenGLTextureType::Texture2D, 1024, 1024, 1, 1, OpenGLFormat::RGBA8, nullptr); -``` - -## 相关文档 - -- [OpenGLTexture](texture.md) - 返回类总览 -- [Initialize2D](initialize-2d.md) - 2D 纹理初始化 -- [InitializeCubeMap](initialize-cube-map.md) - 立方体贴图初始化 diff --git a/docs/api/rhi/opengl/texture/load-from-file.md b/docs/api/rhi/opengl/texture/load-from-file.md deleted file mode 100644 index be55ffc1..00000000 --- a/docs/api/rhi/opengl/texture/load-from-file.md +++ /dev/null @@ -1,26 +0,0 @@ -# OpenGLTexture::LoadFromFile - -```cpp -bool LoadFromFile(const char* path, bool flipVertical = true) -``` - -从图像文件加载纹理。 - -**参数:** -- `path` - 图像文件路径 -- `flipVertical` - 是否垂直翻转图像(默认为 true) - -**返回:** `bool` - 成功返回 true,失败返回 false - -**示例:** - -```cpp -OpenGLTexture texture; -if (texture.LoadFromFile("assets/textures/brick.jpg", true)) { - texture.GenerateMipmap(); -} -``` - -## 相关文档 - -- [OpenGLTexture](texture.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/texture/set-filtering.md b/docs/api/rhi/opengl/texture/set-filtering.md deleted file mode 100644 index 50f91f9a..00000000 --- a/docs/api/rhi/opengl/texture/set-filtering.md +++ /dev/null @@ -1,21 +0,0 @@ -# OpenGLTexture::SetFiltering - -```cpp -void SetFiltering(int minFilter, int magFilter) -``` - -设置纹理过滤模式。 - -**参数:** -- `minFilter` - 缩小过滤模式(GL_NEAREST, GL_LINEAR, GL_NEAREST_MIPMAP_NEAREST 等) -- `magFilter` - 放大过滤模式(GL_NEAREST, GL_LINEAR) - -**示例:** - -```cpp -texture.SetFiltering(GL_LINEAR_MIPMAP_LINEAR, GL_LINEAR); -``` - -## 相关文档 - -- [OpenGLTexture](texture.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/texture/set-format.md b/docs/api/rhi/opengl/texture/set-format.md deleted file mode 100644 index 226f6a0a..00000000 --- a/docs/api/rhi/opengl/texture/set-format.md +++ /dev/null @@ -1,21 +0,0 @@ -# OpenGLTexture::SetFormat - -```cpp -void SetFormat(Format format) -``` - -设置纹理格式。 - -**参数:** -- `format` - 纹理格式(`Format` 枚举值) - -**示例:** - -```cpp -texture.SetFormat(Format::R8G8B8A8_UNorm); -``` - -## 相关文档 - -- [OpenGLTexture](texture.md) - 返回类总览 -- [GetFormat](../../texture/get-format.md) - 获取纹理格式 diff --git a/docs/api/rhi/opengl/texture/set-wrapping.md b/docs/api/rhi/opengl/texture/set-wrapping.md deleted file mode 100644 index 879307cf..00000000 --- a/docs/api/rhi/opengl/texture/set-wrapping.md +++ /dev/null @@ -1,22 +0,0 @@ -# OpenGLTexture::SetWrapping - -```cpp -void SetWrapping(int wrapS, int wrapT, int wrapR = -1) -``` - -设置纹理环绕模式。 - -**参数:** -- `wrapS` - S 轴环绕模式(GL_REPEAT, GL_CLAMP_TO_EDGE 等) -- `wrapT` - T 轴环绕模式 -- `wrapR` - R 轴环绕模式(默认为 -1,表示与 wrapT 相同) - -**示例:** - -```cpp -texture.SetWrapping(GL_REPEAT, GL_REPEAT, GL_REPEAT); -``` - -## 相关文档 - -- [OpenGLTexture](texture.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/texture/texture.md b/docs/api/rhi/opengl/texture/texture.md deleted file mode 100644 index 8f071c17..00000000 --- a/docs/api/rhi/opengl/texture/texture.md +++ /dev/null @@ -1,42 +0,0 @@ -# OpenGLTexture - -**命名空间**: `XCEngine::RHI` - -**描述**: OpenGL 纹理的实现,继承自 `RHITexture`。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`OpenGLTexture`](constructors.md) | 构造函数 | -| [`~OpenGLTexture`](constructors.md#destructor) | 析构函数 | -| [`Initialize`](initialize.md) | 初始化通用纹理 | -| [`Initialize2D`](initialize-2d.md) | 初始化 2D 纹理 | -| [`InitializeCubeMap`](initialize-cube-map.md) | 初始化立方体贴图 | -| [`LoadFromFile`](load-from-file.md) | 从文件加载纹理 | -| [`Shutdown`](../../texture/shutdown.md) | 关闭纹理 | -| [`Bind`](bind.md) | 绑定纹理 | -| [`Unbind`](unbind.md) | 解绑纹理 | -| [`BindImage`](bind-image.md) | 绑定图像 | -| [`GenerateMipmap`](generate-mipmap.md) | 生成多级渐远纹理 | -| [`SetFiltering`](set-filtering.md) | 设置过滤模式 | -| [`SetWrapping`](set-wrapping.md) | 设置环绕模式 | -| [`GetID`](get-id.md) | 获取 OpenGL 纹理 ID | -| [`GetOpenGLType`](get-opengl-type.md) | 获取 OpenGL 纹理类型 | -| [`GetWidth`](../../texture/get-width.md) | 获取纹理宽度 | -| [`GetHeight`](../../texture/get-height.md) | 获取纹理高度 | -| [`GetDepth`](../../texture/get-depth.md) | 获取纹理深度 | -| [`GetMipLevels`](../../texture/get-mip-levels.md) | 获取 Mip 级别 | -| [`GetTextureType`](../../texture/get-texture-type.md) | 获取纹理类型 | -| [`GetNativeHandle`](../../texture/get-native-handle.md) | 获取原生句柄 | -| [`GetState`](../../texture/get-state.md) | 获取资源状态 | -| [`SetState`](../../texture/set-state.md) | 设置资源状态 | -| [`GetName`](../../texture/get-name.md) | 获取资源名称 | -| [`SetName`](../../texture/set-name.md) | 设置资源名称 | -| [`GetFormat`](../../texture/get-format.md) | 获取纹理格式 | -| [`SetFormat`](set-format.md) | 设置纹理格式 | - -## 相关文档 - -- [OpenGL 后端总览](../opengl.md) -- [RHITexture](../../texture/texture.md) - 抽象纹理接口 diff --git a/docs/api/rhi/opengl/texture/unbind.md b/docs/api/rhi/opengl/texture/unbind.md deleted file mode 100644 index 8e7b1212..00000000 --- a/docs/api/rhi/opengl/texture/unbind.md +++ /dev/null @@ -1,18 +0,0 @@ -# OpenGLTexture::Unbind - -```cpp -void Unbind() const -``` - -解绑纹理,将其从当前纹理单元分离。 - -**示例:** - -```cpp -texture.Unbind(); -``` - -## 相关文档 - -- [OpenGLTexture](texture.md) - 返回类总览 -- [Bind](bind.md) - 绑定纹理 diff --git a/docs/api/rhi/opengl/vertex-array/add-vertex-buffer.md b/docs/api/rhi/opengl/vertex-array/add-vertex-buffer.md deleted file mode 100644 index 0e6bdd3c..00000000 --- a/docs/api/rhi/opengl/vertex-array/add-vertex-buffer.md +++ /dev/null @@ -1,48 +0,0 @@ -# OpenGLVertexArray::AddVertexBuffer - -```cpp -void AddVertexBuffer(unsigned int buffer, const VertexAttribute& attribute) -``` - -添加顶点缓冲区并配置顶点属性。 - -**详细描述:** -将顶点缓冲区绑定到 VAO,并配置顶点属性的读取方式。调用时: -1. 绑定 VAO -2. 绑定顶点缓冲区 -3. 启用顶点属性数组 -4. 使用 `glVertexAttribPointer` 配置属性格式 -5. 解绑缓冲区和 VAO - -**参数:** -- `buffer` - OpenGL 缓冲区对象 ID(GL_ARRAY_BUFFER 类型) -- `attribute` - 顶点属性描述结构体 [`VertexAttribute`](vertex-attribute.md) - -**示例:** - -```cpp -// 位置属性 (对应着色器 layout(location = 0)) -VertexAttribute attr; -attr.index = 0; -attr.count = 3; // xyz 三个分量 -attr.type = GL_FLOAT; // float 类型 -attr.normalized = GL_FALSE; // 不归一化 -attr.stride = sizeof(Vertex); // 顶点结构体大小 -attr.offset = 0; // 位置在结构体起始处 -vao.AddVertexBuffer(positionVBO, attr); - -// 纹理坐标属性 (对应着色器 layout(location = 1)) -VertexAttribute texAttr; -texAttr.index = 1; -texAttr.count = 2; // uv 两个分量 -texAttr.type = GL_FLOAT; -texAttr.normalized = GL_FALSE; -texAttr.stride = sizeof(Vertex); -texAttr.offset = offsetof(Vertex, texCoord); // 纹理坐标偏移 -vao.AddVertexBuffer(texCoordVBO, texAttr); -``` - -## 相关文档 - -- [OpenGLVertexArray](vertex-array.md) - 返回类总览 -- [VertexAttribute](vertex-attribute.md) - 属性结构体详细说明 diff --git a/docs/api/rhi/opengl/vertex-array/bind.md b/docs/api/rhi/opengl/vertex-array/bind.md deleted file mode 100644 index 01d8847b..00000000 --- a/docs/api/rhi/opengl/vertex-array/bind.md +++ /dev/null @@ -1,18 +0,0 @@ -# OpenGLVertexArray::Bind - -```cpp -void Bind() const -``` - -绑定顶点数组对象到当前 OpenGL 上下文。 - -**示例:** - -```cpp -vao.Bind(); -glDrawElements(GL_TRIANGLES, indexCount, GL_UNSIGNED_INT, 0); -``` - -## 相关文档 - -- [OpenGLVertexArray](vertex-array.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/vertex-array/constructor.md b/docs/api/rhi/opengl/vertex-array/constructor.md deleted file mode 100644 index 9696f7ef..00000000 --- a/docs/api/rhi/opengl/vertex-array/constructor.md +++ /dev/null @@ -1,31 +0,0 @@ -# OpenGLVertexArray::OpenGLVertexArray - -```cpp -OpenGLVertexArray() -``` - -默认构造函数。初始化所有成员变量为默认值。 - -**详细描述:** -- `m_vao` = 0 -- `m_indexBuffer` = 0 -- `m_indexCount` = 0 -- `m_vertexBufferCount` = 0 - -不创建任何 OpenGL 资源,需调用 `Initialize()` 后才能使用。 - -**示例:** - -```cpp -OpenGLVertexArray vao; -// 此时 vao 未初始化,不能使用 Bind 等方法 -if (vao.Initialize()) { - vao.Bind(); // 现在可以使用了 -} -``` - -## 相关文档 - -- [OpenGLVertexArray](vertex-array.md) - 返回类总览 -- [Initialize](initialize.md) - 初始化方法 -- [Shutdown](shutdown.md) - 关闭方法 \ No newline at end of file diff --git a/docs/api/rhi/opengl/vertex-array/destructor.md b/docs/api/rhi/opengl/vertex-array/destructor.md deleted file mode 100644 index 7b1d2cb7..00000000 --- a/docs/api/rhi/opengl/vertex-array/destructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# OpenGLVertexArray::~OpenGLVertexArray - -```cpp -~OpenGLVertexArray() -``` - -析构函数。在对象销毁时自动调用 `Shutdown()` 释放 OpenGL 资源。 - -**详细描述:** -确保 VAO 资源被正确释放。如果 `Shutdown()` 尚未调用,会自动调用以释放 `glGenVertexArrays` 创建的资源。 - -**注意:** -- 不会释放关联的顶点缓冲区和索引缓冲区(它们通常由独立的缓冲区管理对象管理) -- 仅释放 `glGenVertexArrays` 生成的 VAO - -**示例:** - -```cpp -{ - OpenGLVertexArray vao; - vao.Initialize(); - // 使用 vao... -} // vao 超出作用域时自动调用析构函数,释放资源 -``` - -## 相关文档 - -- [OpenGLVertexArray](vertex-array.md) - 返回类总览 -- [Shutdown](shutdown.md) - 关闭方法 \ No newline at end of file diff --git a/docs/api/rhi/opengl/vertex-array/get-id.md b/docs/api/rhi/opengl/vertex-array/get-id.md deleted file mode 100644 index b391419e..00000000 --- a/docs/api/rhi/opengl/vertex-array/get-id.md +++ /dev/null @@ -1,20 +0,0 @@ -# OpenGLVertexArray::GetID - -```cpp -unsigned int GetID() const -``` - -获取 OpenGL 顶点数组对象 ID。 - -**返回:** `unsigned int` - VAO ID - -**示例:** - -```cpp -unsigned int vaoID = vao.GetID(); -glBindVertexArray(vaoID); -``` - -## 相关文档 - -- [OpenGLVertexArray](vertex-array.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/vertex-array/get-index-buffer.md b/docs/api/rhi/opengl/vertex-array/get-index-buffer.md deleted file mode 100644 index 9f2615dd..00000000 --- a/docs/api/rhi/opengl/vertex-array/get-index-buffer.md +++ /dev/null @@ -1,19 +0,0 @@ -# OpenGLVertexArray::GetIndexBuffer - -```cpp -unsigned int GetIndexBuffer() const -``` - -获取索引缓冲区 ID。 - -**返回:** `unsigned int` - 索引缓冲区 ID - -**示例:** - -```cpp -unsigned int ibo = vao.GetIndexBuffer(); -``` - -## 相关文档 - -- [OpenGLVertexArray](vertex-array.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/vertex-array/get-index-count.md b/docs/api/rhi/opengl/vertex-array/get-index-count.md deleted file mode 100644 index bf6867bc..00000000 --- a/docs/api/rhi/opengl/vertex-array/get-index-count.md +++ /dev/null @@ -1,29 +0,0 @@ -# OpenGLVertexArray::GetIndexCount - -```cpp -unsigned int GetIndexCount() const -``` - -获取索引数量。 - -**详细描述:** -返回 `m_indexCount` 成员的值。**注意**:当前实现中 `m_indexCount` 仅在构造函数中初始化为 0, -`SetIndexBuffer` 不会更新此值。如需获取索引数量,需在调用 `SetIndexBuffer` 后手动维护或通过其他方式获取。 - -**返回:** `unsigned int` - 索引数量(当前实现中始终为 0,需手动维护) - -**示例:** - -```cpp -// 注意:GetIndexCount() 总是返回 0 -// 建议自行维护索引数量 -unsigned int indexCount = /* 从外部获取或手动设置 */; -glDrawElements(GL_TRIANGLES, indexCount, GL_UNSIGNED_INT, 0); -``` - -**另见:** -- [SetIndexBuffer](set-index-buffer.md) - 设置索引缓冲(不更新 m_indexCount) - -## 相关文档 - -- [OpenGLVertexArray](vertex-array.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/vertex-array/initialize.md b/docs/api/rhi/opengl/vertex-array/initialize.md deleted file mode 100644 index fdd9344c..00000000 --- a/docs/api/rhi/opengl/vertex-array/initialize.md +++ /dev/null @@ -1,33 +0,0 @@ -# OpenGLVertexArray::Initialize - -```cpp -bool Initialize() -``` - -初始化 OpenGL 顶点数组对象。 - -**详细描述:** -调用 `glGenVertexArrays(1, &m_vao)` 生成一个新的顶点数组对象并存储其 ID。 -必须在使用 VAO 之前调用。 - -**返回:** `bool` - 始终返回 `true`(当前实现不进行错误检查) - -**注意:** -- 如果初始化失败,`m_vao` 将保持为 0 -- 当前实现不检查 OpenGL 错误,建议在调用前确保 OpenGL 上下文已创建 - -**示例:** - -```cpp -OpenGLVertexArray vao; -if (vao.Initialize()) { - // VAO 初始化成功,可以添加缓冲和绑定 - vao.AddVertexBuffer(vbo, positionAttr); - vao.Bind(); -} -``` - -## 相关文档 - -- [OpenGLVertexArray](vertex-array.md) - 返回类总览 -- [Shutdown](shutdown.md) - 关闭方法 diff --git a/docs/api/rhi/opengl/vertex-array/set-index-buffer.md b/docs/api/rhi/opengl/vertex-array/set-index-buffer.md deleted file mode 100644 index 4de6fe61..00000000 --- a/docs/api/rhi/opengl/vertex-array/set-index-buffer.md +++ /dev/null @@ -1,30 +0,0 @@ -# OpenGLVertexArray::SetIndexBuffer - -```cpp -void SetIndexBuffer(unsigned int buffer, unsigned int type) -``` - -设置索引缓冲区。 - -**详细描述:** -将索引缓冲区绑定到此 VAO。绑定后,绘制调用 `glDrawElements` 将使用此索引缓冲。 -注意:当前实现中 `type` 参数仅存储,不影响实际 OpenGL 调用;`m_indexCount` 也不会被更新, -需通过其他方式跟踪索引数量。 - -**参数:** -- `buffer` - OpenGL 缓冲区对象 ID(ELEMENT_ARRAY_BUFFER) -- `type` - 索引数据类型(`GL_UNSIGNED_BYTE`、`GL_UNSIGNED_SHORT`、`GL_UNSIGNED_INT`),当前未使用 - -**示例:** - -```cpp -vao.SetIndexBuffer(ibo, GL_UNSIGNED_INT); -``` - -**注意:** -- `m_indexCount` 在调用此方法后不会自动更新,需手动维护索引数量 -- 索引缓冲区的实际类型信息由 OpenGL 绑定时确定 - -## 相关文档 - -- [OpenGLVertexArray](vertex-array.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/vertex-array/shutdown.md b/docs/api/rhi/opengl/vertex-array/shutdown.md deleted file mode 100644 index 9181bb98..00000000 --- a/docs/api/rhi/opengl/vertex-array/shutdown.md +++ /dev/null @@ -1,32 +0,0 @@ -# OpenGLVertexArray::Shutdown - -```cpp -void Shutdown() -``` - -关闭顶点数组对象,释放 OpenGL 资源。 - -**详细描述:** -调用 `glDeleteVertexArrays(1, &m_vao)` 释放 VAO 资源,并将 `m_vao` 重置为 0。 - -**释放的资源:** -- `m_vao` - 顶点数组对象 - -**不释放的资源:** -- 顶点缓冲区(由独立的缓冲区管理对象管理) -- 索引缓冲区(由独立的缓冲区管理对象管理) - -**幂等性:** -可安全多次调用。如果 `m_vao` 为 0,则不执行任何操作。 - -**示例:** - -```cpp -vao.Shutdown(); // 释放 VAO -// 此后不能再调用 Bind() -``` - -## 相关文档 - -- [OpenGLVertexArray](vertex-array.md) - 返回类总览 -- [Initialize](initialize.md) - 初始化方法 diff --git a/docs/api/rhi/opengl/vertex-array/unbind.md b/docs/api/rhi/opengl/vertex-array/unbind.md deleted file mode 100644 index 23f9e399..00000000 --- a/docs/api/rhi/opengl/vertex-array/unbind.md +++ /dev/null @@ -1,17 +0,0 @@ -# OpenGLVertexArray::Unbind - -```cpp -void Unbind() const -``` - -解除当前绑定的顶点数组对象。 - -**示例:** - -```cpp -vao.Unbind(); -``` - -## 相关文档 - -- [OpenGLVertexArray](vertex-array.md) - 返回类总览 diff --git a/docs/api/rhi/opengl/vertex-array/vertex-array.md b/docs/api/rhi/opengl/vertex-array/vertex-array.md deleted file mode 100644 index 6510db5e..00000000 --- a/docs/api/rhi/opengl/vertex-array/vertex-array.md +++ /dev/null @@ -1,68 +0,0 @@ -# OpenGLVertexArray - -**命名空间**: `XCEngine::RHI` - -**描述**: OpenGL 顶点数组对象 (VAO) 封装。管理顶点属性配置和索引缓冲绑定。 - -## 概述 - -`OpenGLVertexArray` 封装了 OpenGL 顶点数组对象 (Vertex Array Object, VAO),用于: -- 存储顶点属性配置 -- 绑定顶点缓冲区和索引缓冲区 -- 提供便捷的绑定/解绑接口 - -## 类型 - -| 类型 | 描述 | -|------|------| -| [`VertexAttribute`](vertex-attribute.md) | 顶点属性描述结构体 | - -## 构造函数/析构函数 - -| 方法 | 描述 | -|------|------| -| [`OpenGLVertexArray()`](constructor.md) | 默认构造函数 | -| [`~OpenGLVertexArray()`](destructor.md) | 析构函数,调用 `Shutdown()` 释放资源 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Initialize`](initialize.md) | 初始化顶点数组,生成 VAO | -| [`AddVertexBuffer`](add-vertex-buffer.md) | 添加顶点缓冲并配置属性 | -| [`SetIndexBuffer`](set-index-buffer.md) | 设置索引缓冲 | -| [`Shutdown`](shutdown.md) | 关闭顶点数组,释放 VAO 资源 | -| [`Bind`](bind.md) | 绑定顶点数组到当前 OpenGL 上下文 | -| [`Unbind`](unbind.md) | 解绑顶点数组 | -| [`GetID`](get-id.md) | 获取 OpenGL VAO ID | -| [`GetIndexBuffer`](get-index-buffer.md) | 获取索引缓冲区 ID | -| [`GetIndexCount`](get-index-count.md) | 获取索引数量(需手动维护) | - -## 使用示例 - -```cpp -// 创建 VAO -OpenGLVertexArray vao; -vao.Initialize(); - -// 添加顶点缓冲和属性 -vao.AddVertexBuffer(vbo, positionAttr); -vao.AddVertexBuffer(vbo, normalAttr); -vao.AddVertexBuffer(vbo, texCoordAttr); - -// 设置索引缓冲 -vao.SetIndexBuffer(ibo, GL_UNSIGNED_INT); - -// 绑定并绘制 -vao.Bind(); -glDrawElements(GL_TRIANGLES, indexCount, GL_UNSIGNED_INT, 0); -vao.Unbind(); - -// 销毁 -vao.Shutdown(); -``` - -## 相关文档 - -- [OpenGL 后端总览](../opengl.md) -- [VertexAttribute 结构体](vertex-attribute.md) diff --git a/docs/api/rhi/opengl/vertex-array/vertex-attribute.md b/docs/api/rhi/opengl/vertex-array/vertex-attribute.md deleted file mode 100644 index bb5a0dd4..00000000 --- a/docs/api/rhi/opengl/vertex-array/vertex-attribute.md +++ /dev/null @@ -1,72 +0,0 @@ -# VertexAttribute - -**命名空间**: `XCEngine::RHI` - -**描述**: 顶点属性描述结构体,用于定义顶点缓冲区中单个属性的布局。 - -## 成员 - -| 成员 | 类型 | 描述 | -|------|------|------| -| `index` | `unsigned int` | 属性索引,对应着色器中 `layout(location = n)` | -| `count` | `int` | 分量数量(1-4),如位置用 3,纹理坐标用 2 | -| `type` | `unsigned int` | OpenGL 数据类型,如 `GL_FLOAT`、`GL_INT` | -| `normalized` | `bool` | 是否归一化Fixed-point类型 | -| `stride` | `size_t` | 连续顶点属性之间的字节偏移 | -| `offset` | `size_t` | 此属性在顶点结构体中的字节偏移 | - -## 类型取值参考 - -| 类型常量 | 描述 | -|----------|------| -| `GL_BYTE` | 有符号字节 | -| `GL_UNSIGNED_BYTE` | 无符号字节 | -| `GL_SHORT` | 有符号短整型 | -| `GL_UNSIGNED_SHORT` | 无符号短整型 | -| `GL_INT` | 有符号整型 | -| `GL_UNSIGNED_INT` | 无符号整型 | -| `GL_FLOAT` | 单精度浮点 | -| `GL_DOUBLE` | 双精度浮点 | - -## 使用示例 - -```cpp -// 定义顶点结构体 -struct Vertex { - float position[3]; - float normal[3]; - float texCoord[2]; -}; - -// 位置属性 (index=0) -VertexAttribute posAttr; -posAttr.index = 0; -posAttr.count = 3; -posAttr.type = GL_FLOAT; -posAttr.normalized = GL_FALSE; -posAttr.stride = sizeof(Vertex); -posAttr.offset = 0; - -// 法线属性 (index=1) -VertexAttribute normalAttr; -normalAttr.index = 1; -normalAttr.count = 3; -normalAttr.type = GL_FLOAT; -normalAttr.normalized = GL_FALSE; -normalAttr.stride = sizeof(Vertex); -normalAttr.offset = offsetof(Vertex, normal); - -// 纹理坐标属性 (index=2) -VertexAttribute texAttr; -texAttr.index = 2; -texAttr.count = 2; -texAttr.type = GL_FLOAT; -texAttr.normalized = GL_FALSE; -texAttr.stride = sizeof(Vertex); -texAttr.offset = offsetof(Vertex, texCoord); -``` - -## 相关文档 - -- [OpenGLVertexArray](vertex-array.md) - 返回类总览 -- [AddVertexBuffer](add-vertex-buffer.md) - 添加顶点缓冲方法 \ No newline at end of file diff --git a/docs/api/rhi/pipeline-layout/constructor.md b/docs/api/rhi/pipeline-layout/constructor.md deleted file mode 100644 index 451ab8c2..00000000 --- a/docs/api/rhi/pipeline-layout/constructor.md +++ /dev/null @@ -1,27 +0,0 @@ -# RHIPipelineLayout::RHIPipelineLayout - -```cpp -RHIPipelineLayout() = default; -``` - -默认构造函数,创建空的 RHIPipelineLayout 对象。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过设备创建管线布局 -RHIPipelineLayout* layout = device->CreatePipelineLayout(desc); -// layout 现在是一个有效的管线布局引用 -``` - -## 相关文档 - -- [RHIPipelineLayout 总览](pipeline-layout.md) - 返回类总览 diff --git a/docs/api/rhi/pipeline-layout/destructor.md b/docs/api/rhi/pipeline-layout/destructor.md deleted file mode 100644 index 0f22e5c6..00000000 --- a/docs/api/rhi/pipeline-layout/destructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHIPipelineLayout::~RHIPipelineLayout - -```cpp -virtual ~RHIPipelineLayout() = default; -``` - -虚析构函数,确保派生类对象通过基类指针删除时能正确调用析构函数。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过基类指针销毁管线布局对象 -RHIPipelineLayout* layout = device->CreatePipelineLayout(desc); -// ... 使用 layout ... -delete layout; // 自动调用派生类析构函数 -``` - -## 相关文档 - -- [RHIPipelineLayout 总览](pipeline-layout.md) - 返回类总览 -- [Shutdown](shutdown.md) - 关闭管线布局 diff --git a/docs/api/rhi/pipeline-layout/get-native-handle.md b/docs/api/rhi/pipeline-layout/get-native-handle.md deleted file mode 100644 index d7f40dcf..00000000 --- a/docs/api/rhi/pipeline-layout/get-native-handle.md +++ /dev/null @@ -1,25 +0,0 @@ -# RHIPipelineLayout::GetNativeHandle - -```cpp -virtual void* GetNativeHandle() = 0; -``` - -获取原生 API 句柄。 - -**参数:** 无 - -**返回:** 原生管线布局句柄(类型为 `void*`,需要根据实际图形API进行类型转换) - -**复杂度:** O(1) - -## 示例代码 - -```cpp -// 获取 D3D12 管线布局句柄 -void* nativeHandle = pipelineLayout->GetNativeHandle(); -// D3D12PipelineLayout* d3d12Layout = static_cast(nativeHandle); -``` - -## 相关文档 - -- [RHIPipelineLayout 总览](pipeline-layout.md) - 返回类总览 diff --git a/docs/api/rhi/pipeline-layout/initialize.md b/docs/api/rhi/pipeline-layout/initialize.md deleted file mode 100644 index 3a55823a..00000000 --- a/docs/api/rhi/pipeline-layout/initialize.md +++ /dev/null @@ -1,38 +0,0 @@ -# RHIPipelineLayout::Initialize - -```cpp -virtual bool Initialize(const RHIPipelineLayoutDesc& desc) = 0; -``` - -初始化管线布局。 - -**参数:** -- `desc` - 管线布局描述符,包含以下成员: - - `constantBufferCount` - 常量缓冲区数量 - - `textureCount` - 纹理数量 - - `samplerCount` - 采样器数量 - - `uavCount` - 无序访问视图数量 - -**返回:** 成功返回 `true`,失败返回 `false` - -**复杂度:** O(1) - -## 示例代码 - -```cpp -RHIPipelineLayoutDesc desc; -desc.constantBufferCount = 2; -desc.textureCount = 4; -desc.samplerCount = 2; -desc.uavCount = 1; - -if (pipelineLayout->Initialize(desc)) { - // 初始化成功,可以继续使用 -} else { - // 初始化失败,处理错误 -} -``` - -## 相关文档 - -- [RHIPipelineLayout 总览](pipeline-layout.md) - 返回类总览 diff --git a/docs/api/rhi/pipeline-layout/pipeline-layout.md b/docs/api/rhi/pipeline-layout/pipeline-layout.md deleted file mode 100644 index 8ca3c368..00000000 --- a/docs/api/rhi/pipeline-layout/pipeline-layout.md +++ /dev/null @@ -1,53 +0,0 @@ -# RHIPipelineLayout - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` (abstract) - -**头文件**: `XCEngine/RHI/RHIPipelineLayout.h` - -**描述**: GPU 渲染管线布局抽象接口,用于定义着色器资源的绑定布局。 - -## 概述 - -`RHIPipelineLayout` 是 RHI(Rendering Hardware Interface)模块的核心类之一,负责描述GPU渲染管线中着色器资源的绑定布局。它定义了管线中使用的常量缓冲区、纹理采样器和无序访问视图的数量和配置。作为抽象基类,`RHIPipelineLayout` 需要由具体的图形API实现(如 D3D12、OpenGL)提供具体实现。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`RHIPipelineLayout`](constructor.md) | 默认构造函数 | -| [`~RHIPipelineLayout`](destructor.md) | 虚析构函数 | -| [`Initialize`](initialize.md) | 初始化管线布局 | -| [`Shutdown`](shutdown.md) | 关闭并释放资源 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | - -## 使用示例 - -```cpp -#include -#include - -// 创建设备后创建管线布局 -RHIPipelineLayoutDesc layoutDesc; -layoutDesc.constantBufferCount = 2; -layoutDesc.textureCount = 4; -layoutDesc.samplerCount = 2; -layoutDesc.uavCount = 1; - -RHIPipelineLayout* pipelineLayout = device->CreatePipelineLayout(layoutDesc); -if (pipelineLayout->Initialize(layoutDesc)) { - // 管线布局初始化成功 - void* nativeHandle = pipelineLayout->GetNativeHandle(); - - // 使用原生句柄进行绑定... - - pipelineLayout->Shutdown(); -} -delete pipelineLayout; -``` - -## 相关文档 - -- [../rhi.md](../rhi.md) - RHI 模块总览 -- [RHIDevice](../device/device.md) - 创建设备 diff --git a/docs/api/rhi/pipeline-layout/shutdown.md b/docs/api/rhi/pipeline-layout/shutdown.md deleted file mode 100644 index f334a45c..00000000 --- a/docs/api/rhi/pipeline-layout/shutdown.md +++ /dev/null @@ -1,24 +0,0 @@ -# RHIPipelineLayout::Shutdown - -```cpp -virtual void Shutdown() = 0; -``` - -释放管线布局资源。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(1) - -## 示例代码 - -```cpp -// 使用完毕后释放资源 -pipelineLayout->Shutdown(); -``` - -## 相关文档 - -- [RHIPipelineLayout 总览](pipeline-layout.md) - 返回类总览 diff --git a/docs/api/rhi/pipeline-state/bind.md b/docs/api/rhi/pipeline-state/bind.md deleted file mode 100644 index 794dfcda..00000000 --- a/docs/api/rhi/pipeline-state/bind.md +++ /dev/null @@ -1,37 +0,0 @@ -# RHIPipelineState::Bind - -```cpp -virtual void Bind() = 0; -``` - -将管线状态绑定到渲染上下文。调用此方法后,该管线状态将成为当前活跃的渲染管线。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/RHI/RHIPipelineState.h" - -class MyRenderer { - void DrawWithPipeline(RHIPipelineState* pipeline) { - pipeline->Bind(); - - // 执行绘制操作 - // Draw calls... - - pipeline->Unbind(); - } -}; -``` - -## 相关文档 - -- [RHIPipelineState](pipeline-state.md) - 返回类总览 -- [RHIPipelineState::Unbind](unbind.md) - 解绑管线状态 diff --git a/docs/api/rhi/pipeline-state/constructor.md b/docs/api/rhi/pipeline-state/constructor.md deleted file mode 100644 index b5ed5850..00000000 --- a/docs/api/rhi/pipeline-state/constructor.md +++ /dev/null @@ -1,28 +0,0 @@ -# RHIPipelineState::RHIPipelineState - -```cpp -RHIPipelineState() = default; -``` - -默认构造函数,创建空的 RHIPipelineState 对象。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过设备创建管线状态 -RHIPipelineState* pipelineState = device->CreatePipelineState(desc); -// pipelineState 现在是一个有效的管线状态引用 -``` - -## 相关文档 - -- [RHIPipelineState 总览](pipeline-state.md) - 返回类总览 -- [CreatePipelineState](../device/create-pipeline-state.md) - 创建管线状态 diff --git a/docs/api/rhi/pipeline-state/destructor.md b/docs/api/rhi/pipeline-state/destructor.md deleted file mode 100644 index df8b00aa..00000000 --- a/docs/api/rhi/pipeline-state/destructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHIPipelineState::~RHIPipelineState - -```cpp -virtual ~RHIPipelineState() = default; -``` - -虚析构函数,确保派生类对象通过基类指针删除时能正确调用析构函数。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过基类指针销毁管线状态对象 -RHIPipelineState* pipelineState = device->CreatePipelineState(desc); -// ... 使用 pipelineState ... -delete pipelineState; // 自动调用派生类析构函数 -``` - -## 相关文档 - -- [RHIPipelineState 总览](pipeline-state.md) - 返回类总览 -- [Shutdown](shutdown.md) - 关闭管线状态 diff --git a/docs/api/rhi/pipeline-state/get-native-handle.md b/docs/api/rhi/pipeline-state/get-native-handle.md deleted file mode 100644 index fbd38665..00000000 --- a/docs/api/rhi/pipeline-state/get-native-handle.md +++ /dev/null @@ -1,43 +0,0 @@ -# RHIPipelineState::GetNativeHandle - -```cpp -virtual void* GetNativeHandle() = 0; -``` - -获取底层图形 API 的原生句柄。此方法返回的句柄类型取决于具体实现: - -- **D3D12**: `ID3D12PipelineState*` -- **OpenGL**: `GLuint`(管线对象 ID) -- **Vulkan**: `VkPipeline` -- **Metal**: `id` - -**参数:** 无 - -**返回:** `void*` - 指向底层图形 API 管线状态对象的指针 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/RHI/RHIPipelineState.h" -#include "XCEngine/RHI/RHIEnums.h" - -void InspectNativeHandle(RHIPipelineState* pipeline) { - void* handle = pipeline->GetNativeHandle(); - - PipelineType type = pipeline->GetType(); - - if (type == PipelineType::Graphics && handle) { - // D3D12: ID3D12PipelineState* d3d12Pipeline = static_cast(handle); - // OpenGL: GLuint glPipeline = static_cast(reinterpret_cast(handle)); - } -} -``` - -## 相关文档 - -- [RHIPipelineState](pipeline-state.md) - 返回类总览 -- [RHIPipelineState::GetType](get-type.md) - 获取管线类型 diff --git a/docs/api/rhi/pipeline-state/get-type.md b/docs/api/rhi/pipeline-state/get-type.md deleted file mode 100644 index e360c8fd..00000000 --- a/docs/api/rhi/pipeline-state/get-type.md +++ /dev/null @@ -1,49 +0,0 @@ -# RHIPipelineState::GetType - -```cpp -virtual PipelineType GetType() const = 0; -``` - -获取管线类型。返回的管线类型用于区分不同的渲染管线类别。 - -**参数:** 无 - -**返回:** `PipelineType` - 管线类型枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `PipelineType::Graphics` | 图形管线,用于常规渲染(顶点着色器、片段着色器) | -| `PipelineType::Compute` | 计算管线,用于通用 GPU 计算 | -| `PipelineType::Raytracing` | 光线追踪管线,用于光线追踪渲染 | - -**线程安全:** ✅(const 方法) - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/RHI/RHIPipelineState.h" -#include "XCEngine/RHI/RHIEnums.h" - -void ProcessPipeline(RHIPipelineState* pipeline) { - PipelineType type = pipeline->GetType(); - - switch (type) { - case PipelineType::Graphics: - pipeline->Bind(); - break; - case PipelineType::Compute: - // 分发计算任务 - break; - case PipelineType::Raytracing: - // 执行光线追踪 - break; - } -} -``` - -## 相关文档 - -- [RHIPipelineState](pipeline-state.md) - 返回类总览 -- [RHIPipelineState::GetNativeHandle](get-native-handle.md) - 获取原生句柄 diff --git a/docs/api/rhi/pipeline-state/pipeline-state.md b/docs/api/rhi/pipeline-state/pipeline-state.md deleted file mode 100644 index f5f1759d..00000000 --- a/docs/api/rhi/pipeline-state/pipeline-state.md +++ /dev/null @@ -1,60 +0,0 @@ -# RHIPipelineState - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` (abstract) - -**头文件**: `XCEngine/RHI/RHIPipelineState.h` - -**描述**: 管线状态接口,管理渲染管线状态 - -## 概述 - -`RHIPipelineState` 是 XCEngine RHI 模块中的抽象基类,定义了渲染管线状态的统一接口。它提供了绑定、解绑定、获取原生句柄以及查询管线类型等基本操作。作为抽象基类,具体实现由各图形 API(D3D12、OpenGL、Vulkan、Metal)自行实现。 - -此接口的主要作用是: -- 提供统一的管线状态管理抽象 -- 屏蔽不同图形 API 的底层差异 -- 支持图形管线、计算管线和光线追踪管线的管理 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`RHIPipelineState`](constructor.md) | 默认构造函数 | -| [`~RHIPipelineState`](destructor.md) | 虚析构函数 | -| [`Shutdown`](shutdown.md) | 关闭并释放管线状态资源 | -| [`Bind`](bind.md) | 将管线状态绑定到渲染上下文 | -| [`Unbind`](unbind.md) | 将管线状态从渲染上下文解绑 | -| [`GetNativeHandle`](get-native-handle.md) | 获取底层图形 API 的原生句柄 | -| [`GetType`](get-type.md) | 获取管线类型(图形/计算/光线追踪) | - -## 使用示例 - -```cpp -#include "XCEngine/RHI/RHIPipelineState.h" -#include "XCEngine/RHI/RHIEnums.h" - -void ExampleUsage(RHIPipelineState* pipelineState) { - if (!pipelineState) { - return; - } - - PipelineType type = pipelineState->GetType(); - - if (type == PipelineType::Graphics) { - pipelineState->Bind(); - } - - void* nativeHandle = pipelineState->GetNativeHandle(); - - pipelineState->Unbind(); - pipelineState->Shutdown(); -} -``` - -## 相关文档 - -- [RHIDevice](../device/device.md) - 设备接口,创建管线状态 -- [RHIPipelineLayout](../pipeline-layout/pipeline-layout.md) - 管线布局 -- [RHICommandList](../command-list/command-list.md) - 命令列表,执行绘制命令 diff --git a/docs/api/rhi/pipeline-state/shutdown.md b/docs/api/rhi/pipeline-state/shutdown.md deleted file mode 100644 index e8658bf8..00000000 --- a/docs/api/rhi/pipeline-state/shutdown.md +++ /dev/null @@ -1,33 +0,0 @@ -# RHIPipelineState::Shutdown - -```cpp -virtual void Shutdown() = 0; -``` - -关闭并释放管线状态资源。此方法用于在管线状态不再需要时进行清理工作,释放底层图形 API 分配的资源。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/RHI/RHIPipelineState.h" - -class MyRenderer { - void ReleasePipeline(RHIPipelineState* pipeline) { - if (pipeline) { - pipeline->Shutdown(); - } - } -}; -``` - -## 相关文档 - -- [RHIPipelineState](pipeline-state.md) - 返回类总览 diff --git a/docs/api/rhi/pipeline-state/unbind.md b/docs/api/rhi/pipeline-state/unbind.md deleted file mode 100644 index 9baabbe5..00000000 --- a/docs/api/rhi/pipeline-state/unbind.md +++ /dev/null @@ -1,32 +0,0 @@ -# RHIPipelineState::Unbind - -```cpp -virtual void Unbind() = 0; -``` - -将管线状态从渲染上下文解绑。此方法用于结束当前管线状态的使用,使其不再是当前活跃的渲染管线。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/RHI/RHIPipelineState.h" - -class MyRenderer { - void EndRendering(RHIPipelineState* pipeline) { - pipeline->Unbind(); - } -}; -``` - -## 相关文档 - -- [RHIPipelineState](pipeline-state.md) - 返回类总览 -- [RHIPipelineState::Bind](bind.md) - 绑定管线状态 diff --git a/docs/api/rhi/render-pass/get-color-attachment-count.md b/docs/api/rhi/render-pass/get-color-attachment-count.md deleted file mode 100644 index 32cf30e0..00000000 --- a/docs/api/rhi/render-pass/get-color-attachment-count.md +++ /dev/null @@ -1,17 +0,0 @@ -# RHIRenderPass::GetColorAttachmentCount - -获取颜色附件的数量。 - -```cpp -virtual uint32_t GetColorAttachmentCount() const = 0; -``` - -**返回:** `uint32_t` - 颜色附件数量 - -**线程安全:** ✅ - -**示例:** - -```cpp -uint32_t count = renderPass->GetColorAttachmentCount(); -``` diff --git a/docs/api/rhi/render-pass/get-color-attachments.md b/docs/api/rhi/render-pass/get-color-attachments.md deleted file mode 100644 index 70106a25..00000000 --- a/docs/api/rhi/render-pass/get-color-attachments.md +++ /dev/null @@ -1,27 +0,0 @@ -# RHIRenderPass::GetColorAttachments - -获取颜色附件描述数组。 - -```cpp -virtual const AttachmentDesc* GetColorAttachments() const = 0; -``` - -返回渲染通道初始化时配置的颜色附件描述数组。数组长度可通过 `GetColorAttachmentCount()` 获取。 - -**返回:** `const AttachmentDesc*` - 颜色附件描述数组指针 - -**线程安全:** ✅ - -**注意:** -- 返回的指针在渲染通道生命周期内有效 -- 不要尝试修改返回的描述数据 - -**示例:** - -```cpp -const AttachmentDesc* attachments = renderPass->GetColorAttachments(); -for (uint32_t i = 0; i < renderPass->GetColorAttachmentCount(); ++i) { - Format format = attachments[i].format; - // 处理每个附件配置 -} -``` diff --git a/docs/api/rhi/render-pass/get-depth-stencil-attachment.md b/docs/api/rhi/render-pass/get-depth-stencil-attachment.md deleted file mode 100644 index 1f8f469d..00000000 --- a/docs/api/rhi/render-pass/get-depth-stencil-attachment.md +++ /dev/null @@ -1,27 +0,0 @@ -# RHIRenderPass::GetDepthStencilAttachment - -获取深度模板附件描述。 - -```cpp -virtual const AttachmentDesc* GetDepthStencilAttachment() const = 0; -``` - -返回渲染通道初始化时配置的深度模板附件描述。如果渲染通道未配置深度模板附件,返回 `nullptr`。 - -**返回:** `const AttachmentDesc*` - 深度模板附件描述指针,未配置时返回 `nullptr` - -**线程安全:** ✅ - -**注意:** -- 返回的指针在渲染通道生命周期内有效 -- 不要尝试修改返回的描述数据 - -**示例:** - -```cpp -const AttachmentDesc* depthStencil = renderPass->GetDepthStencilAttachment(); -if (depthStencil != nullptr) { - Format format = depthStencil->format; - // 处理深度模板配置 -} -``` diff --git a/docs/api/rhi/render-pass/get-native-handle.md b/docs/api/rhi/render-pass/get-native-handle.md deleted file mode 100644 index a4e87ed7..00000000 --- a/docs/api/rhi/render-pass/get-native-handle.md +++ /dev/null @@ -1,23 +0,0 @@ -# RHIRenderPass::GetNativeHandle - -获取渲染通道的原生句柄。 - -```cpp -virtual void* GetNativeHandle() = 0; -``` - -返回底层图形 API 的渲染通道句柄。 - -**返回:** `void*` - 原生句柄 - -**线程安全:** ❌ - -**注意:** -- OpenGL 实现返回 `nullptr`(OpenGL 使用 FBO 绑定状态而非句柄) -- D3D12 实现返回平台相关的渲染通道对象 - -**示例:** - -```cpp -void* handle = renderPass->GetNativeHandle(); -``` diff --git a/docs/api/rhi/render-pass/initialize.md b/docs/api/rhi/render-pass/initialize.md deleted file mode 100644 index c01a4071..00000000 --- a/docs/api/rhi/render-pass/initialize.md +++ /dev/null @@ -1,43 +0,0 @@ -# RHIRenderPass::Initialize - -初始化渲染通道对象。 - -```cpp -virtual bool Initialize( - uint32_t colorAttachmentCount, - const AttachmentDesc* colorAttachments, - const AttachmentDesc* depthStencilAttachment -) = 0; -``` - -根据指定的附件配置创建并初始化渲染通道对象。 - -**参数:** -- `colorAttachmentCount` - 颜色附件数量 -- `colorAttachments` - 颜色附件描述数组,长度必须等于 `colorAttachmentCount` -- `depthStencilAttachment` - 深度模板附件描述,可为 `nullptr`(如果不需要深度模板) - -**返回:** `bool` - 初始化成功返回 `true`,失败返回 `false` - -**线程安全:** ❌ - -**注意:** -- `colorAttachmentCount` 必须大于 0 -- 每个 `AttachmentDesc` 的 `format` 必须指定为有效的 `Format` 枚举值 -- 渲染通道创建后不可修改其配置 - -**示例:** - -```cpp -AttachmentDesc colorDesc; -colorDesc.format = Format::RGBA8_UNORM; -colorDesc.loadOp = LoadAction::Clear; -colorDesc.storeOp = StoreAction::Store; - -AttachmentDesc depthDesc; -depthDesc.format = Format::D24_UNORM_S8_UINT; -depthDesc.loadOp = LoadAction::Clear; -depthDesc.storeOp = StoreAction::Store; - -RHIRenderPass* pass = device->CreateRenderPass(1, &colorDesc, &depthDesc); -``` diff --git a/docs/api/rhi/render-pass/render-pass.md b/docs/api/rhi/render-pass/render-pass.md deleted file mode 100644 index 93a06e80..00000000 --- a/docs/api/rhi/render-pass/render-pass.md +++ /dev/null @@ -1,79 +0,0 @@ -# RHIRenderPass - -**命名空间**: `XCEngine::RHI` - -**类型**: `class (abstract)` - -**头文件**: `XCEngine/RHI/RHIRenderPass.h` - -**描述**: 渲染通道抽象接口,定义了渲染操作所需的附件配置和加载/存储行为。 - -## 概述 - -`RHIRenderPass` 是 RHI 抽象层的渲染通道接口,用于描述渲染操作所需的附件配置。每个渲染通道定义了: -- 颜色附件的数量和格式 -- 深度/模板附件(可选) -- 每个附件的加载操作(LoadAction) -- 每个附件的存储操作(StoreAction) -- 清除值(ClearValue) - -渲染通道是延迟渲染和多渲染目标(MRT)等高级渲染技术的基础,它允许 GPU 预先知道帧缓冲配置,从而优化内存访问。 - -## AttachmentDesc 结构体 - -```cpp -struct AttachmentDesc { - Format format = Format::Unknown; - LoadAction loadOp = LoadAction::Undefined; - StoreAction storeOp = StoreAction::Store; - LoadAction stencilLoadOp = LoadAction::Undefined; - StoreAction stencilStoreOp = StoreAction::Undefined; - ClearValue clearValue; -}; -``` - -| 成员 | 类型 | 描述 | -|------|------|------| -| `format` | `Format` | 附件的像素格式 | -| `loadOp` | `LoadAction` | 渲染前颜色数据的加载操作 | -| `storeOp` | `StoreAction` | 渲染后颜色数据的存储操作 | -| `stencilLoadOp` | `LoadAction` | 渲染前模板数据的加载操作 | -| `stencilStoreOp` | `StoreAction` | 渲染后模板数据的存储操作 | -| `clearValue` | `ClearValue` | 清除颜色值 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Initialize`](initialize.md) | 初始化渲染通道 | -| [`Shutdown`](shutdown.md) | 关闭渲染通道 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | -| [`GetColorAttachmentCount`](get-color-attachment-count.md) | 获取颜色附件数量 | -| [`GetColorAttachments`](get-color-attachments.md) | 获取颜色附件描述数组 | -| [`GetDepthStencilAttachment`](get-depth-stencil-attachment.md) | 获取深度模板附件描述 | - -## 使用示例 - -```cpp -#include - -// 配置颜色附件 -AttachmentDesc colorAttachments[1]; -colorAttachments[0].format = Format::RGBA8_UNORM; -colorAttachments[0].loadOp = LoadAction::Clear; -colorAttachments[0].storeOp = StoreAction::Store; -colorAttachments[0].clearValue.color = { 0.0f, 0.0f, 0.0f, 1.0f }; - -// 配置深度附件(可选) -AttachmentDesc depthAttachment; -depthAttachment.format = Format::D24_UNORM_S8_UINT; -depthAttachment.loadOp = LoadAction::Clear; -depthAttachment.storeOp = StoreAction::Store; - -// 创建渲染通道 -RHIRenderPass* renderPass = device->CreateRenderPass(1, colorAttachments, &depthAttachment); -``` - -## 相关文档 - -- [RHIFramebuffer](../framebuffer/framebuffer.md) - 帧缓冲接口 diff --git a/docs/api/rhi/render-pass/shutdown.md b/docs/api/rhi/render-pass/shutdown.md deleted file mode 100644 index 1c71946c..00000000 --- a/docs/api/rhi/render-pass/shutdown.md +++ /dev/null @@ -1,21 +0,0 @@ -# RHIRenderPass::Shutdown - -关闭渲染通道并释放相关资源。 - -```cpp -virtual void Shutdown() = 0; -``` - -销毁渲染通道对象,释放底层图形 API 资源。调用后,渲染通道不再有效。 - -**线程安全:** ❌ - -**注意:** -- 确保在没有任何帧缓冲正在使用此渲染通道时调用 -- 调用此方法后,已创建的关联帧缓冲可能变为无效 - -**示例:** - -```cpp -renderPass->Shutdown(); -``` diff --git a/docs/api/rhi/rhi.md b/docs/api/rhi/rhi.md deleted file mode 100644 index 63fdf333..00000000 --- a/docs/api/rhi/rhi.md +++ /dev/null @@ -1,144 +0,0 @@ -# RHI 模块 - -**命名空间**: `XCEngine::RHI` - -**描述**: RHI (Rendering Hardware Interface) 是 XCEngine 的硬件抽象层,提供统一的图形 API 接口,支持多个后端实现。 - -**头文件**: (多个头文件,详见各类型文档) - -## 概述 - -RHI 模块将上层渲染逻辑与底层图形 API 解耦,通过抽象接口层提供对 DirectX 12、OpenGL 等图形 API 的统一访问。这种设计使得渲染代码可以在不同的图形 API 之间无缝切换,无需修改上层业务逻辑。 - -## 架构 - -``` -┌─────────────────────────────────────────────────────────┐ -│ 上层渲染代码 │ -├─────────────────────────────────────────────────────────┤ -│ RHI 抽象接口层 │ -│ (RHIDevice, RHIBuffer, RHITexture, RHICommandList...) │ -├───────────────┬─────────────────┬───────────────────────┤ -│ D3D12 后端 │ OpenGL 后端 │ Vulkan 后端 │ -│ (D3D12Device) │ (OpenGLDevice) │ (预留) │ -├───────────────┴─────────────────┴───────────────────────┤ -│ 原生图形 API (DirectX 12 / OpenGL) │ -└─────────────────────────────────────────────────────────┘ -``` - -## 后端类型 - -| 后端 | 枚举值 | 描述 | -|------|--------|------| -| DirectX 12 | `RHIType::D3D12` | DirectX 12 实现,现代 PC 游戏首选 | -| OpenGL | `RHIType::OpenGL` | OpenGL Core Profile 实现,跨平台兼容 | - -## 抽象类 - -### 核心设备 - -| 类 | 文档 | 描述 | -|----|------|------| -| [RHIDevice](device/device.md) | `RHIDevice.h` | 渲染设备抽象,代表图形适配器实例 | -| [RHIFactory](factory/factory.md) | `RHIFactory.h` | 设备工厂,用于创建不同后端的设备实例 | - -### 资源管理 - -| 类 | 文档 | 描述 | -|----|------|------| -| [RHIBuffer](buffer/buffer.md) | `RHIBuffer.h` | GPU 缓冲区资源,存储顶点、索引、常量等数据 | -| [RHITexture](texture/texture.md) | `RHITexture.h` | GPU 纹理资源,存储 1D/2D/3D 图像数据 | -| [RHIShader](shader/shader.md) | `RHIShader.h` | 着色器资源,管理顶点、像素等着色器程序 | -| [RHIFramebuffer](framebuffer/framebuffer.md) | `RHIFramebuffer.h` | 帧缓冲对象,管理渲染目标的颜色、深度和模板附件 | - -### 命令执行 - -| 类 | 文档 | 描述 | -|----|------|------| -| [RHICommandList](command-list/command-list.md) | `RHICommandList.h` | 命令列表,记录 GPU 命令 | -| [RHICommandQueue](command-queue/command-queue.md) | `RHICommandQueue.h` | 命令队列,提交和执行命令列表 | -| [RHISwapChain](swap-chain/swap-chain.md) | `RHISwapChain.h` | 交换链,管理帧缓冲区和显示输出 | - -### 同步与状态 - -| 类 | 文档 | 描述 | -|----|------|------| -| [RHIFence](fence/fence.md) | `RHIFence.h` | 同步栅栏,CPU/GPU 同步原语 | -| [RHIPipelineState](pipeline-state/pipeline-state.md) | `RHIPipelineState.h` | 管线状态对象,封装渲染管线配置 | -| [RHISampler](sampler/sampler.md) | `RHISampler.h` | 纹理采样器,配置纹理过滤和寻址模式 | -| [RHIPipelineLayout](pipeline-layout/pipeline-layout.md) | `RHIPipelineLayout.h` | 管线布局,定义着色器资源绑定布局 | -| [RHIDescriptorPool](descriptor-pool/descriptor-pool.md) | `RHIDescriptorPool.h` | 描述符池,管理 GPU 描述符分配 | -| [RHIRenderPass](render-pass/render-pass.md) | `RHIRenderPass.h` | 渲染通道,定义渲染操作的附件配置和加载/存储行为 | - -### 类型与能力 - -| 类 | 文档 | 描述 | -|----|------|------| -| [RHICapabilities](capabilities/capabilities.md) | `RHICapabilities.h` | 设备能力结构,描述支持的图形特性 | -| [RHITypes](types/types.md) | `RHITypes.h` | 类型定义,包含所有结构体描述符 | -| [RHIEnums](enums/enums.md) | `RHIEnums.h` | 枚举定义,包含所有枚举类型 | - -## 使用流程 - -```cpp -#include -#include - -using namespace XCEngine::RHI; - -// 1. 创建设备 -RHIDevice* device = RHIFactory::CreateRHIDevice(RHIType::D3D12); - -// 2. 初始化设备 -RHIDeviceDesc desc; -desc.windowHandle = hwnd; -desc.width = 1280; -desc.height = 720; -device->Initialize(desc); - -// 3. 创建资源 -RHIBuffer* vertexBuffer = device->CreateBuffer(bufferDesc); -RHITexture* texture = device->CreateTexture(textureDesc); - -// 4. 创建命令列表并录制 -RHICommandList* cmdList = device->CreateCommandList(cmdListDesc); -RHICommandQueue* cmdQueue = device->CreateCommandQueue(queueDesc); - -// 5. 渲染循环 -while (true) { - cmdQueue->ExecuteCommandLists(1, (void**)&cmdList); - swapChain->Present(1, 0); -} - -// 6. 清理 -device->Shutdown(); -delete device; -``` - -## 后端文档 - -- [D3D12 后端](d3d12/d3d12.md) - DirectX 12 实现详情 -- [OpenGL 后端](opengl/opengl.md) - OpenGL 实现详情 - -### D3D12 实现 - -| 类 | 文档 | 描述 | -|----|------|------| -| [D3D12RenderTargetView](d3d12/render-target-view/render-target-view.md) | `D3D12RenderTargetView.h` | DirectX 12 渲染目标视图实现 | -| [D3D12Shader](d3d12/shader/shader.md) | `D3D12Shader.h` | DirectX 12 着色器资源实现 | -| [D3D12Texture](d3d12/texture/texture.md) | `D3D12Texture.h` | DirectX 12 纹理资源实现 | -| [D3D12SwapChain](d3d12/swap-chain/swap-chain.md) | `D3D12SwapChain.h` | DirectX 12 交换链实现 | -| [D3D12UnorderedAccessView](d3d12/unordered-access-view/unordered-access-view.md) | `D3D12UnorderedAccessView.h` | DirectX 12 无序访问视图实现 | -| [D3D12Screenshot](d3d12/screenshot/screenshot.md) | `D3D12Screenshot.h` | DirectX 12 渲染目标截图工具 | -| [D3D12Enum](d3d12/enums/enums.md) | `D3D12Enums.h` | DirectX 12 枚举类型转换函数 | - -### OpenGL 实现 - -| 类 | 文档 | 描述 | -|----|------|------| -| [OpenGLBuffer](opengl/buffer/buffer.md) | `OpenGLBuffer.h` | OpenGL 缓冲区资源实现 | -| [OpenGLRenderTargetView](opengl/render-target-view/render-target-view.md) | `OpenGLRenderTargetView.h` | OpenGL 渲染目标视图实现 | - -## 相关文档 - -- [RHI 模块源码](../../../engine/include/XCEngine/RHI/) - 源代码位置 diff --git a/docs/api/rhi/sampler/bind.md b/docs/api/rhi/sampler/bind.md deleted file mode 100644 index 978f6ba2..00000000 --- a/docs/api/rhi/sampler/bind.md +++ /dev/null @@ -1,55 +0,0 @@ -# RHISampler::Bind - -```cpp -virtual void Bind(unsigned int unit) = 0; -``` - -将采样器绑定到指定的纹理单元。该方法将采样器状态设置到渲染管线的对应纹理采样槽位,使其后续的纹理采样操作可以使用此采样器。 - -**参数:** - -| 参数 | 类型 | 描述 | -|------|------|------| -| `unit` | `unsigned int` | 纹理单元索引,指定绑定到哪个纹理采样槽位(通常 0-15) | - -**返回:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/RHI/RHISampler.h" - -class MySampler : public XCEngine::RHI::RHISampler { -public: - void Shutdown() override { } - void Bind(unsigned int unit) override { - m_boundUnit = unit; - } - void Unbind(unsigned int unit) override { - if (m_boundUnit == unit) { - m_boundUnit = -1; - } - } - void* GetNativeHandle() override { return nullptr; } - unsigned int GetID() override { return 0; } - -private: - int m_boundUnit = -1; -}; - -void Example() { - MySampler sampler; - sampler.Bind(0); - sampler.Bind(1); - sampler.Bind(2); -} -``` - -## 相关文档 - -- [RHISampler 总览](sampler.md) - 返回类总览 -- [RHISampler::Unbind](unbind.md) - 解绑采样器 diff --git a/docs/api/rhi/sampler/constructor.md b/docs/api/rhi/sampler/constructor.md deleted file mode 100644 index 08a84a5e..00000000 --- a/docs/api/rhi/sampler/constructor.md +++ /dev/null @@ -1,28 +0,0 @@ -# RHISampler::RHISampler - -```cpp -RHISampler() = default; -``` - -默认构造函数,创建空的 RHISampler 对象。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过设备创建采样器 -RHISampler* sampler = device->CreateSampler(desc); -// sampler 现在是一个有效的采样器引用 -``` - -## 相关文档 - -- [RHISampler 总览](sampler.md) - 返回类总览 -- [CreateSampler](../device/create-sampler.md) - 创建采样器 diff --git a/docs/api/rhi/sampler/destructor.md b/docs/api/rhi/sampler/destructor.md deleted file mode 100644 index c3496fde..00000000 --- a/docs/api/rhi/sampler/destructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHISampler::~RHISampler - -```cpp -virtual ~RHISampler() = default; -``` - -虚析构函数,确保派生类对象通过基类指针删除时能正确调用析构函数。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过基类指针销毁采样器对象 -RHISampler* sampler = device->CreateSampler(desc); -// ... 使用 sampler ... -delete sampler; // 自动调用派生类析构函数 -``` - -## 相关文档 - -- [RHISampler 总览](sampler.md) - 返回类总览 -- [Shutdown](shutdown.md) - 关闭采样器 diff --git a/docs/api/rhi/sampler/get-id.md b/docs/api/rhi/sampler/get-id.md deleted file mode 100644 index be050653..00000000 --- a/docs/api/rhi/sampler/get-id.md +++ /dev/null @@ -1,45 +0,0 @@ -# RHISampler::GetID - -```cpp -virtual unsigned int GetID() = 0; -``` - -获取采样器的唯一标识符。该方法返回分配给采样器的唯一整数 ID,可用于采样器的识别、缓存管理或调试目的。 - -**参数:** 无 - -**返回:** 采样器的唯一无符号整数标识符 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/RHI/RHISampler.h" - -class MySampler : public XCEngine::RHI::RHISampler { -public: - void Shutdown() override { } - void Bind(unsigned int unit) override { } - void Unbind(unsigned int unit) override { } - void* GetNativeHandle() override { return nullptr; } - unsigned int GetID() override { return m_id; } - -private: - unsigned int m_id = 1; -}; - -void Example() { - MySampler sampler1; - MySampler sampler2; - unsigned int id1 = sampler1.GetID(); - unsigned int id2 = sampler2.GetID(); -} -``` - -## 相关文档 - -- [RHISampler 总览](sampler.md) - 返回类总览 -- [RHISampler::GetNativeHandle](get-native-handle.md) - 获取原生句柄 diff --git a/docs/api/rhi/sampler/get-native-handle.md b/docs/api/rhi/sampler/get-native-handle.md deleted file mode 100644 index b0be5881..00000000 --- a/docs/api/rhi/sampler/get-native-handle.md +++ /dev/null @@ -1,46 +0,0 @@ -# RHISampler::GetNativeHandle - -```cpp -virtual void* GetNativeHandle() = 0; -``` - -获取底层图形 API 的原生句柄。该方法返回采样器在对应图形 API 中的原生对象指针或句柄,可用于调试或高级图形 API 互操作。 - -**参数:** 无 - -**返回:** 指向原生图形 API 采样器对象的 void 指针,具体类型取决于底层实现(D3D11: `ID3D11SamplerState*`,D3D12: `D3D12_GPU_VIRTUAL_ADDRESS` 或 `ID3D12Resource*`,Vulkan: `VkSampler`) - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/RHI/RHISampler.h" - -class MySampler : public XCEngine::RHI::RHISampler { -public: - void Shutdown() override { } - void Bind(unsigned int unit) override { } - void Unbind(unsigned int unit) override { } - void* GetNativeHandle() override { return reinterpret_cast(m_nativeHandle); } - unsigned int GetID() override { return 0; } - -private: - uint64_t m_nativeHandle = 0x12345678; -}; - -void Example() { - MySampler sampler; - void* handle = sampler.GetNativeHandle(); - if (handle != nullptr) { - // 使用原生句柄进行调试或高级操作 - } -} -``` - -## 相关文档 - -- [RHISampler 总览](sampler.md) - 返回类总览 -- [RHISampler::GetID](get-id.md) - 获取采样器 ID diff --git a/docs/api/rhi/sampler/sampler.md b/docs/api/rhi/sampler/sampler.md deleted file mode 100644 index bb43b0de..00000000 --- a/docs/api/rhi/sampler/sampler.md +++ /dev/null @@ -1,58 +0,0 @@ -# RHISampler - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` (abstract) - -**头文件**: `XCEngine/RHI/RHISampler.h` - -**描述**: GPU 纹理采样器抽象接口,用于配置纹理过滤和寻址模式。采样器定义了如何对纹理进行采样,包括过滤模式、寻址模式和各向异性级别等参数。 - -## 概述 - -`RHISampler` 是 RHI 抽象层中的纹理采样器接口,提供跨平台的纹理采样配置能力。通过 `RHIDevice::CreateSampler` 创建采样器实例。 - -**关键特性**: -- 支持点采样、线性采样和各向异性采样 -- 支持 Wrap、Mirror、Clamp、Border 等寻址模式 -- 提供原生 API 句柄访问 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`RHISampler`](constructor.md) | 默认构造函数 | -| [`~RHISampler`](destructor.md) | 虚析构函数 | -| [`Shutdown`](shutdown.md) | 关闭并释放资源 | -| [`Bind`](bind.md) | 绑定采样器到纹理单元 | -| [`Unbind`](unbind.md) | 解绑采样器 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | -| [`GetID`](get-id.md) | 获取采样器 ID | - -## 使用示例 - -```cpp -// 通过 RHIDevice 创建采样器 -SamplerDesc samplerDesc; -samplerDesc.filter = static_cast(FilterMode::Anisotropic); -samplerDesc.addressU = static_cast(TextureAddressMode::Wrap); -samplerDesc.addressV = static_cast(TextureAddressMode::Wrap); -samplerDesc.addressW = static_cast(TextureAddressMode::Wrap); -samplerDesc.maxAnisotropy = 16; -samplerDesc.minLod = 0; -samplerDesc.maxLod = FLT_MAX; - -RHISampler* sampler = device->CreateSampler(samplerDesc); - -// 绑定到纹理单元 0 -sampler->Bind(0); - -// 使用完毕后关闭 -sampler->Shutdown(); -``` - -## 相关文档 - -- [RHI 模块总览](../rhi.md) - RHI 模块总览 -- [RHITexture](../texture/texture.md) - 纹理资源 -- [RHIDevice::CreateSampler](../device/create-sampler.md) - 创建采样器 diff --git a/docs/api/rhi/sampler/shutdown.md b/docs/api/rhi/sampler/shutdown.md deleted file mode 100644 index e588da5d..00000000 --- a/docs/api/rhi/sampler/shutdown.md +++ /dev/null @@ -1,48 +0,0 @@ -# RHISampler::Shutdown - -```cpp -virtual void Shutdown() = 0; -``` - -关闭并释放采样器资源。该方法用于在采样器不再需要时进行清理工作,释放底层图形 API 分配的资源。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/RHI/RHISampler.h" - -class MySampler : public XCEngine::RHI::RHISampler { -public: - void Shutdown() override { - if (m_initialized) { - ReleaseNativeResource(); - m_initialized = false; - } - } - void Bind(unsigned int unit) override { } - void Unbind(unsigned int unit) override { } - void* GetNativeHandle() override { return nullptr; } - unsigned int GetID() override { return 0; } - -private: - bool m_initialized = true; - void ReleaseNativeResource() { } -}; - -void Example() { - MySampler sampler; - sampler.Shutdown(); -} -``` - -## 相关文档 - -- [RHISampler 总览](sampler.md) - 返回类总览 diff --git a/docs/api/rhi/sampler/unbind.md b/docs/api/rhi/sampler/unbind.md deleted file mode 100644 index 17ce74b7..00000000 --- a/docs/api/rhi/sampler/unbind.md +++ /dev/null @@ -1,52 +0,0 @@ -# RHISampler::Unbind - -```cpp -virtual void Unbind(unsigned int unit) = 0; -``` - -将采样器从指定的纹理单元解绑。该方法将指定的纹理单元上的采样器状态清除,使其不再占用该采样槽位。 - -**参数:** - -| 参数 | 类型 | 描述 | -|------|------|------| -| `unit` | `unsigned int` | 纹理单元索引,指定从哪个纹理采样槽位解绑 | - -**返回:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/RHI/RHISampler.h" - -class MySampler : public XCEngine::RHI::RHISampler { -public: - void Shutdown() override { } - void Bind(unsigned int unit) override { m_boundUnit = unit; } - void Unbind(unsigned int unit) override { - if (m_boundUnit == unit) { - m_boundUnit = -1; - } - } - void* GetNativeHandle() override { return nullptr; } - unsigned int GetID() override { return 0; } - -private: - int m_boundUnit = -1; -}; - -void Example() { - MySampler sampler; - sampler.Bind(0); - sampler.Unbind(0); -} -``` - -## 相关文档 - -- [RHISampler 总览](sampler.md) - 返回类总览 -- [RHISampler::Bind](bind.md) - 绑定采样器 diff --git a/docs/api/rhi/shader/bind.md b/docs/api/rhi/shader/bind.md deleted file mode 100644 index f24309b0..00000000 --- a/docs/api/rhi/shader/bind.md +++ /dev/null @@ -1,40 +0,0 @@ -# RHIShader::Bind - -```cpp -virtual void Bind() = 0; -``` - -绑定着色器到渲染管线。 - -将当前着色器实例设置为活跃状态,使其参与后续的渲染操作。绑定后,着色器的 uniform 参数和资源将供 GPU 使用。 - -**线程安全:** ❌(需要在渲染线程调用) - -**复杂度:** O(1) - -**示例:** - -```cpp -RHIShader* vertexShader = device->CreateShader(); -RHIShader* fragmentShader = device->CreateShader(); - -vertexShader->CompileFromFile(L"shaders/vertex.cso", "VSMain", "vs_5_0"); -fragmentShader->CompileFromFile(L"shaders/pixel.cso", "PSMain", "ps_5_0"); - -vertexShader->Bind(); -fragmentShader->Bind(); - -// 设置 uniform -float modelMatrix[16] = { /* 4x4 矩阵数据 */ }; -vertexShader->SetMat4("u_modelViewProj", modelMatrix); - -// 执行渲染... - -vertexShader->Unbind(); -fragmentShader->Unbind(); -``` - -## 相关文档 - -- [RHIShader](shader.md) - 返回类总览 -- [`Unbind`](unbind.md) - 解绑着色器 diff --git a/docs/api/rhi/shader/compile-from-file.md b/docs/api/rhi/shader/compile-from-file.md deleted file mode 100644 index c7a97573..00000000 --- a/docs/api/rhi/shader/compile-from-file.md +++ /dev/null @@ -1,39 +0,0 @@ -# RHIShader::CompileFromFile - -```cpp -virtual bool CompileFromFile(const wchar_t* filePath, const char* entryPoint, const char* target) = 0; -``` - -从文件加载并编译着色器。 - -从指定的文件路径读取着色器代码并编译为 GPU 可执行的着色器程序。该方法支持各种着色器目标平台(如 D3D12 的 `vs_5_0`、`ps_5_0` 等,或 Vulkan 的 SPIR-V)。 - -**参数:** -- `filePath` - 着色器文件路径(宽字符字符串,支持 Unicode 路径) -- `entryPoint` - 着色器入口点函数名称(如 `"VSMain"`、`"PSMain"`) -- `target` - 着色器目标配置文件(如 `"vs_5_0"`、`"ps_5_0"`、`"spv"`) - -**返回:** 编译成功返回 `true`,失败返回 `false` - -**线程安全:** ❌(多线程同时编译同一着色器可能导致未定义行为) - -**复杂度:** O(n),其中 n 为着色器代码行数 - -**示例:** - -```cpp -RHIShader* vertexShader = device->CreateShader(); -if (vertexShader->CompileFromFile(L"shaders/vertex.cso", "VSMain", "vs_5_0")) { - vertexShader->Bind(); - // 使用着色器... -} else { - printf("Vertex shader compilation failed!\n"); -} -vertexShader->Shutdown(); -device->DestroyShader(vertexShader); -``` - -## 相关文档 - -- [RHIShader](shader.md) - 返回类总览 -- [`Compile`](compile.md) - 从内存数据编译着色器 diff --git a/docs/api/rhi/shader/compile.md b/docs/api/rhi/shader/compile.md deleted file mode 100644 index b16a666c..00000000 --- a/docs/api/rhi/shader/compile.md +++ /dev/null @@ -1,40 +0,0 @@ -# RHIShader::Compile - -```cpp -virtual bool Compile(const void* sourceData, size_t sourceSize, const char* entryPoint, const char* target) = 0; -``` - -从内存数据编译着色器。 - -将已加载到内存中的着色器代码编译为 GPU 可执行的着色器程序。适用于从资源包、网络或自定义加载器获取着色器代码的场景。 - -**参数:** -- `sourceData` - 指向着色器源代码或字节码的指针 -- `sourceSize` - 源数据大小(字节数) -- `entryPoint` - 着色器入口点函数名称 -- `target` - 着色器目标配置文件 - -**返回:** 编译成功返回 `true`,失败返回 `false` - -**线程安全:** ❌(多线程同时编译同一着色器可能导致未定义行为) - -**复杂度:** O(n),其中 n 为着色器代码行数 - -**示例:** - -```cpp -std::vector shaderBytes = LoadShaderFromResource("vertex_shader"); -if (!shaderBytes.empty()) { - RHIShader* shader = device->CreateShader(); - if (shader->Compile(shaderBytes.data(), shaderBytes.size(), "VSMain", "vs_5_0")) { - shader->Bind(); - // 使用着色器... - } - shader->Shutdown(); -} -``` - -## 相关文档 - -- [RHIShader](shader.md) - 返回类总览 -- [`CompileFromFile`](compile-from-file.md) - 从文件编译着色器 diff --git a/docs/api/rhi/shader/constructor.md b/docs/api/rhi/shader/constructor.md deleted file mode 100644 index 83616c77..00000000 --- a/docs/api/rhi/shader/constructor.md +++ /dev/null @@ -1,30 +0,0 @@ -# RHIShader::RHIShader - -```cpp -RHIShader() = default; -``` - -默认构造函数,创建空的 RHIShader 对象。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过设备编译着色器 -RHIShader* shader = device->CompileShader(desc); -if (shader && shader->IsValid()) { - shader->Bind(); -} -``` - -## 相关文档 - -- [RHIShader 总览](shader.md) - 返回类总览 -- [CompileShader](../device/compile-shader.md) - 编译着色器 diff --git a/docs/api/rhi/shader/destructor.md b/docs/api/rhi/shader/destructor.md deleted file mode 100644 index 4fc63af2..00000000 --- a/docs/api/rhi/shader/destructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHIShader::~RHIShader - -```cpp -virtual ~RHIShader() = default; -``` - -虚析构函数,确保派生类对象通过基类指针删除时能正确调用析构函数。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过基类指针销毁着色器对象 -RHIShader* shader = device->CompileShader(desc); -// ... 使用 shader ... -delete shader; // 自动调用派生类析构函数 -``` - -## 相关文档 - -- [RHIShader 总览](shader.md) - 返回类总览 -- [Shutdown](shutdown.md) - 关闭着色器 diff --git a/docs/api/rhi/shader/get-native-handle.md b/docs/api/rhi/shader/get-native-handle.md deleted file mode 100644 index 15dd4b1d..00000000 --- a/docs/api/rhi/shader/get-native-handle.md +++ /dev/null @@ -1,35 +0,0 @@ -# RHIShader::GetNativeHandle - -```cpp -virtual void* GetNativeHandle() = 0; -``` - -获取原生图形 API 句柄。 - -返回底层图形 API(如 D3D12、Vulkan)的原生着色器对象指针。用于需要直接访问底层 API 的高级场景,或与外部库互操作。 - -**返回:** 指向原生着色器对象的指针,类型取决于具体实现(如 D3D12: `ID3DBlob*`,Vulkan: `VkShaderModule`) - -**线程安全:** ❌(访问底层资源,非线程安全) - -**复杂度:** O(1) - -**示例:** - -```cpp -RHIShader* shader = device->CreateShader(); -shader->CompileFromFile(L"shaders/compute.cso", "CSMain", "cs_5_0"); - -void* nativeHandle = shader->GetNativeHandle(); -#ifdef XCENGINE_D3D12 - ID3DBlob* d3dBlob = static_cast(nativeHandle); - // 使用 D3D12 API... -#elif defined(XCENGINE_VULKAN) - VkShaderModule vkModule = reinterpret_cast(nativeHandle); - // 使用 Vulkan API... -#endif -``` - -## 相关文档 - -- [RHIShader](shader.md) - 返回类总览 diff --git a/docs/api/rhi/shader/get-type.md b/docs/api/rhi/shader/get-type.md deleted file mode 100644 index 16786f12..00000000 --- a/docs/api/rhi/shader/get-type.md +++ /dev/null @@ -1,40 +0,0 @@ -# RHIShader::GetType - -```cpp -virtual ShaderType GetType() const = 0; -``` - -获取着色器类型。 - -返回该着色器实例的类型,类型由 `ShaderType` 枚举定义,包括顶点着色器、像素着色器、几何着色器、计算着色器等。 - -**返回:** `ShaderType` 枚举值,表示着色器类型 - -**线程安全:** ✅(只读操作) - -**复杂度:** O(1) - -**示例:** - -```cpp -RHIShader* shader = device->CreateShader(); -shader->CompileFromFile(L"shaders/vertex.cso", "VSMain", "vs_5_0"); - -ShaderType type = shader->GetType(); -switch (type) { - case ShaderType::Vertex: - printf("This is a vertex shader\n"); - break; - case ShaderType::Fragment: - printf("This is a fragment shader\n"); - break; - default: - printf("Other shader type\n"); - break; -} -``` - -## 相关文档 - -- [RHIShader](shader.md) - 返回类总览 -- [`ShaderType`](./shader.md#公共属性) - 着色器类型枚举定义 diff --git a/docs/api/rhi/shader/is-valid.md b/docs/api/rhi/shader/is-valid.md deleted file mode 100644 index 3d8ae5a0..00000000 --- a/docs/api/rhi/shader/is-valid.md +++ /dev/null @@ -1,36 +0,0 @@ -# RHIShader::IsValid - -```cpp -virtual bool IsValid() const = 0; -``` - -检查着色器是否有效。 - -验证着色器是否已成功编译并可以用于渲染。应在调用 `Bind()` 之前使用此方法确保着色器可用。 - -**返回:** 着色器有效返回 `true`,无效返回 `false` - -**线程安全:** ✅(只读操作) - -**复杂度:** O(1) - -**示例:** - -```cpp -RHIShader* shader = device->CreateShader(); -if (shader->CompileFromFile(L"shaders/pixel.cso", "PSMain", "ps_5_0")) { - if (shader->IsValid()) { - shader->Bind(); - // 渲染... - shader->Unbind(); - } else { - printf("Shader is not valid!\n"); - } -} -shader->Shutdown(); -``` - -## 相关文档 - -- [RHIShader](shader.md) - 返回类总览 -- [`Bind`](bind.md) - 绑定着色器 diff --git a/docs/api/rhi/shader/set-float.md b/docs/api/rhi/shader/set-float.md deleted file mode 100644 index 4f96fc18..00000000 --- a/docs/api/rhi/shader/set-float.md +++ /dev/null @@ -1,41 +0,0 @@ -# RHIShader::SetFloat - -```cpp -virtual void SetFloat(const char* name, float value) = 0; -``` - -设置浮点数 uniform 变量。 - -通过名称查找并设置着色器中的单精度浮点数 uniform 变量。常见用途包括设置时间值、透明度、缩放因子等。 - -**参数:** -- `name` - uniform 变量名称 -- `value` - 要设置的浮点数值 - -**线程安全:** ❌(需要在渲染线程调用) - -**复杂度:** O(1)(通常为哈希表查找) - -**示例:** - -```cpp -RHIShader* shader = device->CreateShader(); -shader->CompileFromFile(L"shaders/pixel.cso", "PSMain", "ps_5_0"); -shader->Bind(); - -// 设置时间 -shader->SetFloat("u_time", elapsedTime); - -// 设置透明度 -shader->SetFloat("u_alpha", 0.5f); - -// 设置雾的起始距离 -shader->SetFloat("u_fogStart", 10.0f); -shader->SetFloat("u_fogEnd", 100.0f); -``` - -## 相关文档 - -- [RHIShader](shader.md) - 返回类总览 -- [`SetInt`](set-int.md) - 设置整数 uniform -- [`SetVec3`](set-vec3.md) - 设置三维向量 uniform diff --git a/docs/api/rhi/shader/set-int.md b/docs/api/rhi/shader/set-int.md deleted file mode 100644 index 352acca7..00000000 --- a/docs/api/rhi/shader/set-int.md +++ /dev/null @@ -1,40 +0,0 @@ -# RHIShader::SetInt - -```cpp -virtual void SetInt(const char* name, int value) = 0; -``` - -设置整数 uniform 变量。 - -通过名称查找并设置着色器中的整数 uniform 变量。常见用途包括设置布尔值、纹理采样索引、渲染模式标志等。 - -**参数:** -- `name` - uniform 变量名称(需与着色器代码中的变量名一致) -- `value` - 要设置的整数值 - -**线程安全:** ❌(需要在渲染线程调用) - -**复杂度:** O(1)(通常为哈希表查找) - -**示例:** - -```cpp -RHIShader* shader = device->CreateShader(); -shader->CompileFromFile(L"shaders/pixel.cso", "PSMain", "ps_5_0"); -shader->Bind(); - -// 设置纹理是否启用 -shader->SetInt("u_texEnabled", 1); - -// 设置渲染模式 -shader->SetInt("u_renderMode", 2); - -// 设置阴影开关 -shader->SetInt("u_shadowEnabled", 0); -``` - -## 相关文档 - -- [RHIShader](shader.md) - 返回类总览 -- [`SetFloat`](set-float.md) - 设置浮点数 uniform -- [`SetVec3`](set-vec3.md) - 设置三维向量 uniform diff --git a/docs/api/rhi/shader/set-mat4.md b/docs/api/rhi/shader/set-mat4.md deleted file mode 100644 index 8c0e97b0..00000000 --- a/docs/api/rhi/shader/set-mat4.md +++ /dev/null @@ -1,39 +0,0 @@ -# RHIShader::SetMat4 - -```cpp -virtual void SetMat4(const char* name, const float* value) = 0; -``` - -设置 4x4 矩阵 uniform 变量。 - -通过名称查找并设置着色器中的 4x4 变换矩阵 uniform 变量。常见用途包括设置模型矩阵、视图矩阵、投影矩阵及其组合(MVP)、法线矩阵等。 - -**参数:** -- `name` - uniform 变量名称 -- `value` - 指向 16 个 float 元素的数组指针 - -**线程安全:** ❌(需要在渲染线程调用) - -**复杂度:** O(1)(通常为哈希表查找) - -**示例:** - -```cpp -RHIShader* shader = device->CreateShader(); -shader->CompileFromFile(L"shaders/vertex.cso", "VSMain", "vs_5_0"); -shader->Bind(); - -// 设置变换矩阵 -float modelMatrix[16] = { /* 4x4 模型矩阵数据 */ }; -float viewMatrix[16] = { /* 4x4 视图矩阵数据 */ }; -float projMatrix[16] = { /* 4x4 投影矩阵数据 */ }; - -shader->SetMat4("u_model", modelMatrix); -shader->SetMat4("u_view", viewMatrix); -shader->SetMat4("u_proj", projMatrix); -``` - -## 相关文档 - -- [RHIShader](shader.md) - 返回类总览 -- [`SetVec4`](set-vec4.md) - 设置四维向量 uniform diff --git a/docs/api/rhi/shader/set-vec3.md b/docs/api/rhi/shader/set-vec3.md deleted file mode 100644 index a1a21bc8..00000000 --- a/docs/api/rhi/shader/set-vec3.md +++ /dev/null @@ -1,42 +0,0 @@ -# RHIShader::SetVec3 - -```cpp -virtual void SetVec3(const char* name, float x, float y, float z) = 0; -``` - -设置三维向量 uniform 变量。 - -通过名称查找并设置着色器中的三维向量 uniform 变量。常见用途包括设置位置、法线、方向、光照方向、颜色等。 - -**参数:** -- `name` - uniform 变量名称 -- `x` - 向量的 X 分量 -- `y` - 向量的 Y 分量 -- `z` - 向量的 Z 分量 - -**线程安全:** ❌(需要在渲染线程调用) - -**复杂度:** O(1)(通常为哈希表查找) - -**示例:** - -```cpp -RHIShader* shader = device->CreateShader(); -shader->CompileFromFile(L"shaders/pixel.cso", "PSMain", "ps_5_0"); -shader->Bind(); - -// 设置光照方向 -shader->SetVec3("u_lightDir", 0.5f, 1.0f, 0.3f); - -// 设置相机位置 -shader->SetVec3("u_cameraPos", camera.x, camera.y, camera.z); - -// 设置材质颜色 -shader->SetVec3("u_baseColor", 1.0f, 0.8f, 0.6f); -``` - -## 相关文档 - -- [RHIShader](shader.md) - 返回类总览 -- [`SetFloat`](set-float.md) - 设置浮点数 uniform -- [`SetVec4`](set-vec4.md) - 设置四维向量 uniform diff --git a/docs/api/rhi/shader/set-vec4.md b/docs/api/rhi/shader/set-vec4.md deleted file mode 100644 index a1a5dccf..00000000 --- a/docs/api/rhi/shader/set-vec4.md +++ /dev/null @@ -1,43 +0,0 @@ -# RHIShader::SetVec4 - -```cpp -virtual void SetVec4(const char* name, float x, float y, float z, float w) = 0; -``` - -设置四维向量 uniform 变量。 - -通过名称查找并设置着色器中的四维向量 uniform 变量。常见用途包括设置齐次坐标、颜色(带透明度)、平面方程等。 - -**参数:** -- `name` - uniform 变量名称 -- `x` - 向量的 X 分量 -- `y` - 向量的 Y 分量 -- `z` - 向量的 Z 分量 -- `w` - 向量的 W 分量(齐次坐标或透明度) - -**线程安全:** ❌(需要在渲染线程调用) - -**复杂度:** O(1)(通常为哈希表查找) - -**示例:** - -```cpp -RHIShader* shader = device->CreateShader(); -shader->CompileFromFile(L"shaders/pixel.cso", "PSMain", "ps_5_0"); -shader->Bind(); - -// 设置带透明度的颜色 -shader->SetVec4("u_color", 1.0f, 0.0f, 0.0f, 0.8f); - -// 设置平面方程 (ax + by + cz + d = 0) -shader->SetVec4("u_clipPlane", 0.0f, 1.0f, 0.0f, 0.0f); - -// 设置纹理坐标变换 -shader->SetVec4("u_texOffset", 0.1f, 0.1f, 2.0f, 2.0f); -``` - -## 相关文档 - -- [RHIShader](shader.md) - 返回类总览 -- [`SetVec3`](set-vec3.md) - 设置三维向量 uniform -- [`SetMat4`](set-mat4.md) - 设置 4x4 矩阵 uniform diff --git a/docs/api/rhi/shader/shader.md b/docs/api/rhi/shader/shader.md deleted file mode 100644 index f7c35a13..00000000 --- a/docs/api/rhi/shader/shader.md +++ /dev/null @@ -1,80 +0,0 @@ -# RHIShader - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` (abstract) - -**头文件**: `XCEngine/RHI/RHIShader.h` - -**描述**: 着色器接口,管理 GPU 着色器程序 - -## 概述 - -`RHIShader` 是 XCEngine RHI 模块中的抽象着色器接口类,定义了 GPU 着色器程序的标准 API。该类是所有具体着色器实现(如 D3D12Shader、OpenGLShader 等)的基类,提供了统一的着色器编译和元数据查询接口。 - -设计目的: -- 提供跨平台的着色器抽象 -- 统一着色器编译和资源管理 -- 简化渲染管线中着色器的使用 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`CompileFromFile`](compile-from-file.md) | 从文件编译着色器 | -| [`Compile`](compile.md) | 从内存数据编译着色器 | -| [`GetType`](get-type.md) | 获取着色器类型 | -| [`IsValid`](is-valid.md) | 检查着色器是否有效 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | -| [`Shutdown`](shutdown.md) | 释放着色器资源 | - -## 公共属性 - -| 属性 | 类型 | 描述 | -|------|------|------| -| `ShaderType` | `enum` | 着色器类型枚举 | - -### ShaderType 枚举值 - -| 枚举值 | 描述 | -|--------|------| -| `ShaderType::Vertex` | 顶点着色器 | -| `ShaderType::Fragment` | 片元着色器 | -| `ShaderType::Geometry` | 几何着色器 | -| `ShaderType::Compute` | 计算着色器 | -| `ShaderType::TessControl` | 曲面细分控制着色器 | -| `ShaderType::TessEvaluation` | 曲面细分评估着色器 | -| `ShaderType::Hull` | Hull 着色器 (D3D12) | -| `ShaderType::Domain` | Domain 着色器 (D3D12) | -| `ShaderType::Amplification` | 放大着色器 (Mesh Shader) | -| `ShaderType::Mesh` | Mesh 着色器 | -| `ShaderType::Library` | 着色器库 | - -## 使用示例 - -```cpp -#include "XCEngine/RHI/RHIShader.h" -#include "XCEngine/RHI/RHIDevice.h" - -using namespace XCEngine::RHI; - -// 通过 RHIDevice 创建并编译着色器 -ShaderCompileDesc vsDesc; -vsDesc.fileName = L"shaders/vertex.cso"; -vsDesc.entryPoint = "VSMain"; -vsDesc.profile = "vs_5_0"; -RHIShader* vertexShader = device->CreateShader(vsDesc); -if (vertexShader && vertexShader->IsValid()) { - // 渲染... -} - -if (vertexShader) { - vertexShader->Shutdown(); - delete vertexShader; -} -``` - -## 相关文档 - -- [RHI 模块总览](../rhi.md) - RHI 模块总览 -- [RHIDevice](../device/device.md) - 创建设备 diff --git a/docs/api/rhi/shader/shutdown.md b/docs/api/rhi/shader/shutdown.md deleted file mode 100644 index b770a99e..00000000 --- a/docs/api/rhi/shader/shutdown.md +++ /dev/null @@ -1,32 +0,0 @@ -# RHIShader::Shutdown - -```cpp -virtual void Shutdown() = 0; -``` - -释放着色器资源。 - -销毁着色器并释放关联的 GPU 资源。调用此方法后,着色器实例将变为无效状态,不应再被使用。通常在渲染系统关闭或切换渲染设备时调用。 - -**线程安全:** ❌(需要在渲染线程调用,且调用后不能在其他线程访问) - -**复杂度:** O(1) - -**示例:** - -```cpp -RHIShader* shader = device->CreateShader(); -if (shader->CompileFromFile(L"shaders/vertex.cso", "VSMain", "vs_5_0")) { - shader->Bind(); - // 使用着色器... - shader->Unbind(); -} - -shader->Shutdown(); -// shader 现在已无效,不能再使用 -device->DestroyShader(shader); -``` - -## 相关文档 - -- [RHIShader](shader.md) - 返回类总览 diff --git a/docs/api/rhi/shader/unbind.md b/docs/api/rhi/shader/unbind.md deleted file mode 100644 index 9a256f50..00000000 --- a/docs/api/rhi/shader/unbind.md +++ /dev/null @@ -1,30 +0,0 @@ -# RHIShader::Unbind - -```cpp -virtual void Unbind() = 0; -``` - -解绑着色器。 - -将当前着色器从渲染管线中移除,终止其参与后续渲染操作。通常在切换渲染状态或结束特定渲染 Pass 时调用。 - -**线程安全:** ❌(需要在渲染线程调用) - -**复杂度:** O(1) - -**示例:** - -```cpp -shader->Bind(); -// 渲染使用该着色器的物体... -shader->Unbind(); - -// 切换到其他着色器 -otherShader->Bind(); -// ... -``` - -## 相关文档 - -- [RHIShader](shader.md) - 返回类总览 -- [`Bind`](bind.md) - 绑定着色器 diff --git a/docs/api/rhi/swap-chain/constructor.md b/docs/api/rhi/swap-chain/constructor.md deleted file mode 100644 index 17cb5e25..00000000 --- a/docs/api/rhi/swap-chain/constructor.md +++ /dev/null @@ -1,28 +0,0 @@ -# RHISwapChain::RHISwapChain - -```cpp -RHISwapChain() = default; -``` - -默认构造函数,创建空的 RHISwapChain 对象。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过设备创建交换链 -RHISwapChain* swapChain = device->CreateSwapChain(desc); -// swapChain 现在是一个有效的交换链引用 -``` - -## 相关文档 - -- [RHISwapChain 总览](swap-chain.md) - 返回类总览 -- [CreateSwapChain](../device/create-swap-chain.md) - 创建交换链 diff --git a/docs/api/rhi/swap-chain/destructor.md b/docs/api/rhi/swap-chain/destructor.md deleted file mode 100644 index 395cbab5..00000000 --- a/docs/api/rhi/swap-chain/destructor.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHISwapChain::~RHISwapChain - -```cpp -virtual ~RHISwapChain() = default; -``` - -虚析构函数,确保派生类对象通过基类指针删除时能正确调用析构函数。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过基类指针销毁交换链对象 -RHISwapChain* swapChain = device->CreateSwapChain(desc); -// ... 使用 swapChain ... -delete swapChain; // 自动调用派生类析构函数 -``` - -## 相关文档 - -- [RHISwapChain 总览](swap-chain.md) - 返回类总览 -- [Shutdown](shutdown.md) - 关闭交换链 diff --git a/docs/api/rhi/swap-chain/get-current-back-buffer-index.md b/docs/api/rhi/swap-chain/get-current-back-buffer-index.md deleted file mode 100644 index 94d835a0..00000000 --- a/docs/api/rhi/swap-chain/get-current-back-buffer-index.md +++ /dev/null @@ -1,21 +0,0 @@ -# RHISwapChain::GetCurrentBackBufferIndex - -```cpp -virtual uint32_t GetCurrentBackBufferIndex() const = 0; -``` - -获取当前后台缓冲区索引。 - -**返回:** 当前后台缓冲区索引 - -**线程安全:** ✅ - -**示例:** - -```cpp -uint32_t index = swapChain->GetCurrentBackBufferIndex(); -``` - -## 相关文档 - -- [RHISwapChain 总览](swap-chain.md) - 返回类总览 diff --git a/docs/api/rhi/swap-chain/get-current-back-buffer.md b/docs/api/rhi/swap-chain/get-current-back-buffer.md deleted file mode 100644 index c4bfb907..00000000 --- a/docs/api/rhi/swap-chain/get-current-back-buffer.md +++ /dev/null @@ -1,21 +0,0 @@ -# RHISwapChain::GetCurrentBackBuffer - -```cpp -virtual RHITexture* GetCurrentBackBuffer() = 0; -``` - -获取当前后台缓冲区纹理。 - -**返回:** `RHITexture*` - 当前后台缓冲区纹理指针 - -**线程安全:** ✅ - -**示例:** - -```cpp -RHITexture* backBuffer = swapChain->GetCurrentBackBuffer(); -``` - -## 相关文档 - -- [RHISwapChain 总览](swap-chain.md) - 返回类总览 diff --git a/docs/api/rhi/swap-chain/get-native-handle.md b/docs/api/rhi/swap-chain/get-native-handle.md deleted file mode 100644 index a19c2543..00000000 --- a/docs/api/rhi/swap-chain/get-native-handle.md +++ /dev/null @@ -1,23 +0,0 @@ -# RHISwapChain::GetNativeHandle - -```cpp -virtual void* GetNativeHandle() = 0; -``` - -获取原生 API 句柄。 - -**返回:** 原生交换链句柄 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -void* handle = swapChain->GetNativeHandle(); -``` - -## 相关文档 - -- [RHISwapChain 总览](swap-chain.md) - 返回类总览 diff --git a/docs/api/rhi/swap-chain/is-fullscreen.md b/docs/api/rhi/swap-chain/is-fullscreen.md deleted file mode 100644 index c430aad0..00000000 --- a/docs/api/rhi/swap-chain/is-fullscreen.md +++ /dev/null @@ -1,23 +0,0 @@ -# RHISwapChain::IsFullscreen - -```cpp -virtual bool IsFullscreen() const = 0; -``` - -检查是否处于全屏模式。 - -**返回:** 如果全屏返回 true - -**线程安全:** ✅ - -**示例:** - -```cpp -if (swapChain->IsFullscreen()) { - // 全屏模式 -} -``` - -## 相关文档 - -- [RHISwapChain 总览](swap-chain.md) - 返回类总览 diff --git a/docs/api/rhi/swap-chain/poll-events.md b/docs/api/rhi/swap-chain/poll-events.md deleted file mode 100644 index 91399ad5..00000000 --- a/docs/api/rhi/swap-chain/poll-events.md +++ /dev/null @@ -1,21 +0,0 @@ -# RHISwapChain::PollEvents - -```cpp -virtual void PollEvents() = 0; -``` - -处理窗口事件。 - -**返回:** 无 - -**线程安全:** ❌ - -**示例:** - -```cpp -swapChain->PollEvents(); -``` - -## 相关文档 - -- [RHISwapChain 总览](swap-chain.md) - 返回类总览 diff --git a/docs/api/rhi/swap-chain/present.md b/docs/api/rhi/swap-chain/present.md deleted file mode 100644 index f04fa609..00000000 --- a/docs/api/rhi/swap-chain/present.md +++ /dev/null @@ -1,25 +0,0 @@ -# RHISwapChain::Present - -```cpp -virtual void Present(uint32_t syncInterval = 1, uint32_t flags = 0) = 0; -``` - -呈现后台缓冲区。 - -**参数:** -- `syncInterval` - 垂直同步间隔(0=立即,1+=等待) -- `flags` - 呈现标志 - -**返回:** 无 - -**线程安全:** ❌ - -**示例:** - -```cpp -swapChain->Present(1); // 垂直同步呈现 -``` - -## 相关文档 - -- [RHISwapChain 总览](swap-chain.md) - 返回类总览 diff --git a/docs/api/rhi/swap-chain/resize.md b/docs/api/rhi/swap-chain/resize.md deleted file mode 100644 index 98f75851..00000000 --- a/docs/api/rhi/swap-chain/resize.md +++ /dev/null @@ -1,29 +0,0 @@ -# RHISwapChain::Resize - -```cpp -virtual void Resize(uint32_t width, uint32_t height) = 0; -``` - -调整交换链大小。 - -**参数:** -- `width` - 新的宽度 -- `height` - 新的高度 - -**返回:** 无 - -**线程安全:** ❌ - -**注意:** -- 调整大小会导致所有后台缓冲区重建 -- 应在渲染循环外调用 - -**示例:** - -```cpp -swapChain->Resize(1920, 1080); -``` - -## 相关文档 - -- [RHISwapChain 总览](swap-chain.md) - 返回类总览 diff --git a/docs/api/rhi/swap-chain/set-fullscreen.md b/docs/api/rhi/swap-chain/set-fullscreen.md deleted file mode 100644 index 41ad5677..00000000 --- a/docs/api/rhi/swap-chain/set-fullscreen.md +++ /dev/null @@ -1,24 +0,0 @@ -# RHISwapChain::SetFullscreen - -```cpp -virtual void SetFullscreen(bool fullscreen) = 0; -``` - -设置全屏模式。 - -**参数:** -- `fullscreen` - 是否全屏 - -**返回:** 无 - -**线程安全:** ❌ - -**示例:** - -```cpp -swapChain->SetFullscreen(true); -``` - -## 相关文档 - -- [RHISwapChain 总览](swap-chain.md) - 返回类总览 diff --git a/docs/api/rhi/swap-chain/set-should-close.md b/docs/api/rhi/swap-chain/set-should-close.md deleted file mode 100644 index 841c9e1f..00000000 --- a/docs/api/rhi/swap-chain/set-should-close.md +++ /dev/null @@ -1,24 +0,0 @@ -# RHISwapChain::SetShouldClose - -```cpp -virtual void SetShouldClose(bool shouldClose) = 0; -``` - -设置交换链关闭标志。 - -**参数:** -- `shouldClose` - 是否应该关闭 - -**返回:** 无 - -**线程安全:** ❌ - -**示例:** - -```cpp -swapChain->SetShouldClose(true); -``` - -## 相关文档 - -- [RHISwapChain 总览](swap-chain.md) - 返回类总览 diff --git a/docs/api/rhi/swap-chain/should-close.md b/docs/api/rhi/swap-chain/should-close.md deleted file mode 100644 index d51e630b..00000000 --- a/docs/api/rhi/swap-chain/should-close.md +++ /dev/null @@ -1,23 +0,0 @@ -# RHISwapChain::ShouldClose - -```cpp -virtual bool ShouldClose() const = 0; -``` - -检查交换链是否应该关闭。 - -**返回:** 如果应该关闭返回 true - -**线程安全:** ✅ - -**示例:** - -```cpp -while (!swapChain->ShouldClose()) { - // 渲染循环 -} -``` - -## 相关文档 - -- [RHISwapChain 总览](swap-chain.md) - 返回类总览 diff --git a/docs/api/rhi/swap-chain/shutdown.md b/docs/api/rhi/swap-chain/shutdown.md deleted file mode 100644 index b2d82325..00000000 --- a/docs/api/rhi/swap-chain/shutdown.md +++ /dev/null @@ -1,21 +0,0 @@ -# RHISwapChain::Shutdown - -```cpp -virtual void Shutdown() = 0; -``` - -关闭交换链,释放所有相关资源。 - -**线程安全:** ❌ - -**复杂度:** O(n) - 取决于管理的缓冲区数量 - -**示例:** - -```cpp -swapChain->Shutdown(); -``` - -## 相关文档 - -- [RHISwapChain 总览](swap-chain.md) - 返回类总览 diff --git a/docs/api/rhi/swap-chain/swap-chain.md b/docs/api/rhi/swap-chain/swap-chain.md deleted file mode 100644 index 09dc64d6..00000000 --- a/docs/api/rhi/swap-chain/swap-chain.md +++ /dev/null @@ -1,47 +0,0 @@ -# RHISwapChain - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` (abstract) - -**头文件**: `XCEngine/RHI/RHISwapChain.h` - -**描述**: GPU 交换链抽象接口,管理窗口渲染和帧缓冲区切换。 - -## 概述 - -`RHISwapChain` 是 RHI 模块中的核心接口之一,负责管理渲染目标帧缓冲区的切换和呈现。该抽象类为不同图形 API(D3D12、Vulkan 等)提供统一接口,使上层渲染代码无需关心底层实现细节。 - -主要职责: -- 管理前后台缓冲区切换 -- 协调垂直同步呈现 -- 提供原生 API 句柄供高级用法 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`~RHISwapChain`](destructor.md) | 虚析构函数 | -| [`Shutdown`](shutdown.md) | 关闭并释放资源 | -| [`GetCurrentBackBufferIndex`](get-current-back-buffer-index.md) | 获取当前后台缓冲区索引 | -| [`GetCurrentBackBuffer`](get-current-back-buffer.md) | 获取当前后台缓冲区 | -| [`Present`](present.md) | 呈现画面 | -| [`Resize`](resize.md) | 调整交换链大小 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | - -## 使用示例 - -```cpp -RHITexture* backBuffer = swapChain->GetCurrentBackBuffer(); -commandList->Reset(); -commandList->SetRenderTargets(1, &backBuffer, nullptr); -commandList->ClearRenderTarget(backBuffer, clearColor); -commandList->Close(); -commandQueue->ExecuteCommandLists(1, (void**)&commandList); -swapChain->Present(1, 0); -``` - -## 相关文档 - -- [RHI 模块总览](../rhi.md) - RHI 模块总览 -- [RHITexture](../texture/texture.md) - 纹理资源 diff --git a/docs/api/rhi/texture/constructor.md b/docs/api/rhi/texture/constructor.md deleted file mode 100644 index 93afcf20..00000000 --- a/docs/api/rhi/texture/constructor.md +++ /dev/null @@ -1,28 +0,0 @@ -# RHITexture::RHITexture - -```cpp -RHITexture() = default; -``` - -默认构造函数,创建空的 RHITexture 对象。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 创建空的纹理对象 -RHITexture* texture = device->CreateTexture(desc); -// texture 现在是一个有效的纹理引用 -``` - -## 相关文档 - -- [RHITexture 总览](texture.md) - 返回类总览 -- [CreateTexture](../device/create-texture.md) - 创建纹理 diff --git a/docs/api/rhi/texture/destructor.md b/docs/api/rhi/texture/destructor.md deleted file mode 100644 index cd60d979..00000000 --- a/docs/api/rhi/texture/destructor.md +++ /dev/null @@ -1,28 +0,0 @@ -# RHITexture::~RHITexture - -```cpp -virtual ~RHITexture() = default; -``` - -虚析构函数,确保派生类对象通过基类指针删除时能正确调用析构函数。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -// 通过基类指针销毁纹理对象 -RHITexture* texture = device->CreateTexture(desc); -// ... 使用 texture ... -delete texture; // 自动调用派生类析构函数 -``` - -## 相关文档 - -- [RHITexture 总览](texture.md) - 返回类总览 diff --git a/docs/api/rhi/texture/get-depth.md b/docs/api/rhi/texture/get-depth.md deleted file mode 100644 index 8aa0d886..00000000 --- a/docs/api/rhi/texture/get-depth.md +++ /dev/null @@ -1,25 +0,0 @@ -# RHITexture::GetDepth - -```cpp -virtual uint32_t GetDepth() const = 0; -``` - -获取纹理深度(3D 纹理)。 - -**参数:** 无 - -**返回:** 纹理深度。对于 1D/2D 纹理返回 1 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -uint32_t depth = texture->GetDepth(); -``` - -## 相关文档 - -- [RHITexture 总览](texture.md) - 返回类总览 diff --git a/docs/api/rhi/texture/get-format.md b/docs/api/rhi/texture/get-format.md deleted file mode 100644 index b59651ff..00000000 --- a/docs/api/rhi/texture/get-format.md +++ /dev/null @@ -1,25 +0,0 @@ -# RHITexture::GetFormat - -```cpp -virtual Format GetFormat() const = 0; -``` - -获取纹理格式。 - -**参数:** 无 - -**返回:** 纹理格式枚举值 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -Format format = texture->GetFormat(); -``` - -## 相关文档 - -- [RHITexture 总览](texture.md) - 返回类总览 diff --git a/docs/api/rhi/texture/get-height.md b/docs/api/rhi/texture/get-height.md deleted file mode 100644 index 5158d084..00000000 --- a/docs/api/rhi/texture/get-height.md +++ /dev/null @@ -1,25 +0,0 @@ -# RHITexture::GetHeight - -```cpp -virtual uint32_t GetHeight() const = 0; -``` - -获取纹理高度(像素)。 - -**参数:** 无 - -**返回:** 纹理高度(像素) - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -uint32_t height = texture->GetHeight(); -``` - -## 相关文档 - -- [RHITexture 总览](texture.md) - 返回类总览 diff --git a/docs/api/rhi/texture/get-mip-levels.md b/docs/api/rhi/texture/get-mip-levels.md deleted file mode 100644 index cf596961..00000000 --- a/docs/api/rhi/texture/get-mip-levels.md +++ /dev/null @@ -1,25 +0,0 @@ -# RHITexture::GetMipLevels - -```cpp -virtual uint32_t GetMipLevels() const = 0; -``` - -获取 Mipmap 级别数。 - -**参数:** 无 - -**返回:** Mipmap 级别数 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -uint32_t mipLevels = texture->GetMipLevels(); -``` - -## 相关文档 - -- [RHITexture 总览](texture.md) - 返回类总览 diff --git a/docs/api/rhi/texture/get-name.md b/docs/api/rhi/texture/get-name.md deleted file mode 100644 index de0da41e..00000000 --- a/docs/api/rhi/texture/get-name.md +++ /dev/null @@ -1,26 +0,0 @@ -# RHITexture::GetName - -```cpp -virtual const std::string& GetName() const = 0; -``` - -获取纹理名称(用于调试)。 - -**参数:** 无 - -**返回:** 纹理名称字符串引用 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -const std::string& name = texture->GetName(); -``` - -## 相关文档 - -- [RHITexture 总览](texture.md) - 返回类总览 -- [SetName](set-name.md) - 设置资源名称 diff --git a/docs/api/rhi/texture/get-native-handle.md b/docs/api/rhi/texture/get-native-handle.md deleted file mode 100644 index a623d0f0..00000000 --- a/docs/api/rhi/texture/get-native-handle.md +++ /dev/null @@ -1,25 +0,0 @@ -# RHITexture::GetNativeHandle - -```cpp -virtual void* GetNativeHandle() = 0; -``` - -获取原生 API 句柄(用于平台特定操作)。 - -**参数:** 无 - -**返回:** 原生纹理句柄(根据后端返回 D3D12 纹理指针或 OpenGL 纹理 ID 等) - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -void* handle = texture->GetNativeHandle(); -``` - -## 相关文档 - -- [RHITexture 总览](texture.md) - 返回类总览 diff --git a/docs/api/rhi/texture/get-state.md b/docs/api/rhi/texture/get-state.md deleted file mode 100644 index 573211aa..00000000 --- a/docs/api/rhi/texture/get-state.md +++ /dev/null @@ -1,25 +0,0 @@ -# RHITexture::GetState - -```cpp -virtual ResourceStates GetState() const = 0; -``` - -获取当前资源状态。 - -**参数:** 无 - -**返回:** 当前资源状态枚举值 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -ResourceStates state = texture->GetState(); -``` - -## 相关文档 - -- [RHITexture 总览](texture.md) - 返回类总览 diff --git a/docs/api/rhi/texture/get-texture-type.md b/docs/api/rhi/texture/get-texture-type.md deleted file mode 100644 index b2172314..00000000 --- a/docs/api/rhi/texture/get-texture-type.md +++ /dev/null @@ -1,28 +0,0 @@ -# RHITexture::GetTextureType - -```cpp -virtual TextureType GetTextureType() const = 0; -``` - -获取纹理类型。 - -**参数:** 无 - -**返回:** 纹理类型枚举值(1D、2D、3D、立方体等) - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -TextureType type = texture->GetTextureType(); -if (type == TextureType::TextureCube) { - // 处理立方体贴图 -} -``` - -## 相关文档 - -- [RHITexture 总览](texture.md) - 返回类总览 diff --git a/docs/api/rhi/texture/get-width.md b/docs/api/rhi/texture/get-width.md deleted file mode 100644 index ffdc96da..00000000 --- a/docs/api/rhi/texture/get-width.md +++ /dev/null @@ -1,25 +0,0 @@ -# RHITexture::GetWidth - -```cpp -virtual uint32_t GetWidth() const = 0; -``` - -获取纹理宽度(像素)。 - -**参数:** 无 - -**返回:** 纹理宽度(像素) - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -uint32_t width = texture->GetWidth(); -``` - -## 相关文档 - -- [RHITexture 总览](texture.md) - 返回类总览 diff --git a/docs/api/rhi/texture/set-name.md b/docs/api/rhi/texture/set-name.md deleted file mode 100644 index 4878fb79..00000000 --- a/docs/api/rhi/texture/set-name.md +++ /dev/null @@ -1,26 +0,0 @@ -# RHITexture::SetName - -```cpp -virtual void SetName(const std::string& name) = 0; -``` - -设置纹理名称(用于调试)。 - -**参数:** -- `name` - 新名称 - -**返回:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -texture->SetName("DiffuseMap"); -``` - -## 相关文档 - -- [RHITexture 总览](texture.md) - 返回类总览 diff --git a/docs/api/rhi/texture/set-state.md b/docs/api/rhi/texture/set-state.md deleted file mode 100644 index dce587c3..00000000 --- a/docs/api/rhi/texture/set-state.md +++ /dev/null @@ -1,26 +0,0 @@ -# RHITexture::SetState - -```cpp -virtual void SetState(ResourceStates state) = 0; -``` - -设置资源状态。 - -**参数:** -- `state` - 新的资源状态 - -**返回:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -texture->SetState(ResourceStates::PixelShaderResource); -``` - -## 相关文档 - -- [RHITexture 总览](texture.md) - 返回类总览 diff --git a/docs/api/rhi/texture/shutdown.md b/docs/api/rhi/texture/shutdown.md deleted file mode 100644 index 0754c028..00000000 --- a/docs/api/rhi/texture/shutdown.md +++ /dev/null @@ -1,25 +0,0 @@ -# RHITexture::Shutdown - -```cpp -virtual void Shutdown() = 0; -``` - -关闭并释放纹理资源。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ❌ - -**复杂度:** O(1) - -**示例:** - -```cpp -texture->Shutdown(); -``` - -## 相关文档 - -- [RHITexture 总览](texture.md) - 返回类总览 diff --git a/docs/api/rhi/texture/texture.md b/docs/api/rhi/texture/texture.md deleted file mode 100644 index 6bf9065a..00000000 --- a/docs/api/rhi/texture/texture.md +++ /dev/null @@ -1,99 +0,0 @@ -# RHITexture - -**命名空间**: `XCEngine::RHI` - -**类型**: `class` (abstract) - -**头文件**: `XCEngine/RHI/RHITexture.h` - -**描述**: GPU 纹理资源抽象接口,用于管理 1D、2D、3D 纹理和立方体贴图等 GPU 资源。 - -## 概述 - -`RHITexture` 是 GPU 纹理资源的抽象接口,封装了 1D、2D、3D 纹理和立方体贴图等资源的创建、状态管理、查询等操作。通过 RHI 抽象层,RHITexture 可在不同图形 API(DirectX 12、OpenGL)之间无缝切换。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`RHITexture`](constructor.md) | 默认构造函数 | -| [`~RHITexture`](destructor.md) | 虚析构函数 | -| [`GetWidth`](get-width.md) | 获取纹理宽度 | -| [`GetHeight`](get-height.md) | 获取纹理高度 | -| [`GetDepth`](get-depth.md) | 获取纹理深度 | -| [`GetMipLevels`](get-mip-levels.md) | 获取 Mip 级别数量 | -| [`GetFormat`](get-format.md) | 获取纹理格式 | -| [`GetTextureType`](get-texture-type.md) | 获取纹理类型 | -| [`GetState`](get-state.md) | 获取资源状态 | -| [`SetState`](set-state.md) | 设置资源状态 | -| [`GetNativeHandle`](get-native-handle.md) | 获取原生句柄 | -| [`GetName`](get-name.md) | 获取资源名称 | -| [`SetName`](set-name.md) | 设置资源名称 | -| [`Shutdown`](shutdown.md) | 关闭并释放资源 | - -## 纹理类型 (TextureType) - -| 枚举值 | 描述 | -|--------|------| -| `TextureType::Texture1D` | 1D 纹理 | -| `TextureType::Texture2D` | 2D 纹理 | -| `TextureType::Texture2DArray` | 2D 纹理数组 | -| `TextureType::Texture3D` | 3D 纹理(体积纹理) | -| `TextureType::TextureCube` | 立方体贴图 | -| `TextureType::TextureCubeArray` | 立方体贴图数组 | - -## 纹理格式 (Format) - -| 格式 | 描述 | -|------|------| -| `Format::Unknown` | 未知格式 | -| `Format::R8_UNorm` | 单通道 8 位归一化 | -| `Format::R8G8_UNorm` | 双通道 8 位归一化 | -| `Format::R8G8B8A8_UNorm` | 四通道 8 位归一化 | -| `Format::R16G16B16A16_Float` | 四通道 16 位浮点 | -| `Format::R32G32B32A32_Float` | 四通道 32 位浮点 | -| `Format::R16_Float` | 单通道 16 位浮点 | -| `Format::R32_Float` | 单通道 32 位浮点 | -| `Format::D16_UNorm` | 16 位深度 | -| `Format::D24_UNorm_S8_UInt` | 24 位深度 + 8 位模板 | -| `Format::D32_Float` | 32 位深度 | -| `Format::BC1_UNorm` | BC1 压缩 (DXT1) | -| `Format::BC2_UNorm` | BC2 压缩 (DXT2/3) | -| `Format::BC3_UNorm` | BC3 压缩 (DXT4/5) | -| `Format::BC4_UNorm` | BC4 压缩 | -| `Format::BC5_UNorm` | BC5 压缩 | -| `Format::BC6H_UF16` | BC6H 压缩 (UF16) | -| `Format::BC7_UNorm` | BC7 高质量压缩 | -| `Format::R32G32B32A32_UInt` | 四通道 32 位无符号整数 | -| `Format::R32_UInt` | 单通道 32 位无符号整数 | - -## 使用示例 - -```cpp -// 假设已通过 RHIDevice 创建了纹理 -RHITexture* texture = device->CreateTexture(desc); - -// 查询纹理属性 -uint32_t width = texture->GetWidth(); -uint32_t height = texture->GetHeight(); -Format format = texture->GetFormat(); -TextureType type = texture->GetTextureType(); - -// 设置资源状态 -texture->SetState(ResourceStates::PixelShaderResource); - -// 设置调试名称 -texture->SetName("DiffuseMap_Main"); - -// 获取原生句柄(用于平台特定操作) -void* nativeHandle = texture->GetNativeHandle(); - -// 关闭并释放资源 -texture->Shutdown(); -``` - -## 相关文档 - -- [../rhi.md](../rhi.md) - RHI 模块总览 -- [RHIDevice](../device/device.md) - 创建设备 -- [RHIBuffer](../buffer/buffer.md) - 缓冲区资源 diff --git a/docs/api/rhi/types/types.md b/docs/api/rhi/types/types.md deleted file mode 100644 index c700bc0a..00000000 --- a/docs/api/rhi/types/types.md +++ /dev/null @@ -1,556 +0,0 @@ -# RHITypes - -**命名空间**: `XCEngine::RHI` - -**类型**: `struct` - -**头文件**: `XCEngine/RHI/RHITypes.h` - -**描述**: RHI 模块中使用的所有结构体类型汇总。 - -## 概述 - -本模块汇总了 RHI 模块中定义的所有结构体类型。这些结构体用于配置各种资源的创建和渲染状态。 - -## 视口和矩形 - -### Viewport - -视口结构体,定义渲染区域。 - -```cpp -struct Viewport { - float topLeftX; // 左上角 X 坐标 - float topLeftY; // 左上角 Y 坐标 - float width; // 视口宽度 - float height; // 视口高度 - float minDepth; // 最小深度值 - float maxDepth; // 最大深度值 -}; -``` - -### Rect - -裁剪矩形结构体。 - -```cpp -struct Rect { - int32_t left; // 左边 X 坐标 - int32_t top; // 顶边 Y 坐标 - int32_t right; // 右边 X 坐标 - int32_t bottom; // 底边 Y 坐标 -}; -``` - -### Color - -颜色结构体,使用 RGBA 分量。 - -```cpp -struct Color { - float r; // 红色分量 - float g; // 绿色分量 - float b; // 蓝色分量 - float a; // 透明度分量 -}; -``` - -### ClearValue - -清除值结构体,用于渲染目标清除操作。 - -```cpp -struct ClearValue { - Color color; // 清除颜色 - float depth; // 清除深度值 - uint8_t stencil; // 清除模板值 -}; -``` - -## 着色器相关 - -### ShaderCompileMacro - -着色器编译宏定义。 - -```cpp -struct ShaderCompileMacro { - std::wstring name; // 宏名称 - std::wstring definition; // 宏定义值 -}; -``` - -### ShaderCompileDesc - -着色器编译描述。 - -```cpp -struct ShaderCompileDesc { - std::wstring entryPoint; // 入口点函数名 - std::wstring profile; // 着色器配置文件 - std::wstring fileName; // 着色器源文件名 - std::vector macros; // 宏定义列表 -}; -``` - -### InputElementDesc - -输入布局元素描述,定义顶点缓冲区的数据布局。 - -```cpp -struct InputElementDesc { - std::string semanticName; // 语义名称 (如 "POSITION", "TEXCOORD") - uint32_t semanticIndex; // 语义索引 - uint32_t format; // 数据格式 (参见 Format 枚举) - uint32_t inputSlot; // 输入槽位 - uint32_t alignedByteOffset; // 对齐字节偏移 - uint32_t inputSlotClass; // 输入槽类别 - uint32_t instanceDataStepRate; // 实例数据步进率 -}; -``` - -### InputLayoutDesc - -输入布局描述,包含多个输入元素。 - -```cpp -struct InputLayoutDesc { - std::vector elements; // 输入元素描述列表 -}; -``` - -### VertexBufferBinding - -顶点缓冲区绑定信息。 - -```cpp -struct VertexBufferBinding { - uint64_t bufferLocation; // 缓冲区 GPU 地址 - uint32_t sizeInBytes; // 缓冲区大小 - uint32_t strideInBytes; // 顶点 stride -}; -``` - -## 资源和描述符 - -### TextureCopyLocation - -纹理复制位置,用于纹理复制操作。 - -```cpp -struct TextureCopyLocation { - uint64_t plSubresourceIndex; // 子资源索引 - void* pResource; // 资源指针 -}; -``` - -### DescriptorHandle - -通用描述符句柄。 - -```cpp -struct DescriptorHandle { - uint64_t ptr; // 描述符指针 -}; -``` - -### GPUDescriptorHandle - -GPU 描述符句柄。 - -```cpp -struct GPUDescriptorHandle { - uint64_t ptr; // GPU 描述符指针 -}; -``` - -### CPUDescriptorHandle - -CPU 描述符句柄。 - -```cpp -struct CPUDescriptorHandle { - uint64_t ptr; // CPU 描述符指针 -}; -``` - -### SubresourceRange - -子资源范围,定义纹理Mip级别和数组切片范围。 - -```cpp -struct SubresourceRange { - uint32_t baseMipLevel; // 基础 Mip 级别 - uint32_t mipLevels; // Mip 级别数量 - uint32_t baseArraySlice; // 基础数组切片 - uint32_t arraySize; // 数组切片数量 -}; -``` - -### TextureDesc - -纹理描述,创建纹理资源的配置参数。 - -```cpp -struct TextureDesc { - uint32_t width; // 纹理宽度 - uint32_t height; // 纹理高度 - uint32_t depth; // 纹理深度 (3D 纹理) - uint32_t mipLevels; // Mip 级别数量 - uint32_t arraySize; // 数组纹理元素数量 - uint32_t format; // 纹理格式 (参见 Format 枚举) - uint32_t textureType; // 纹理类型 (参见 TextureType 枚举) - uint32_t sampleCount; // 多重采样数 - uint32_t sampleQuality; // 采样质量等级 - uint64_t flags; // 纹理标志 -}; -``` - -### BufferDesc - -缓冲区描述,创建缓冲区资源的配置参数。 - -```cpp -struct BufferDesc { - uint64_t size; // 缓冲区大小 (字节) - uint32_t stride; // 元素 stride (用于顶点/索引缓冲区) - uint32_t bufferType; // 缓冲区类型 (参见 BufferType 枚举) - uint64_t flags; // 缓冲区标志 -}; -``` - -### RenderTargetDesc - -渲染目标描述。 - -```cpp -struct RenderTargetDesc { - uint32_t width; // 渲染目标宽度 - uint32_t height; // 渲染目标高度 - uint32_t format; // 渲染目标格式 (参见 Format 枚举) - uint32_t sampleCount; // 多重采样数 - uint32_t sampleQuality; // 采样质量等级 -}; -``` - -### DepthStencilDesc - -深度模板描述。 - -```cpp -struct DepthStencilDesc { - uint32_t width; // 宽度 - uint32_t height; // 高度 - uint32_t format; // 格式 (参见 Format 枚举) - uint32_t sampleCount; // 多重采样数 - uint32_t sampleQuality; // 采样质量等级 - bool depthEnable; // 是否启用深度测试 - bool stencilEnable; // 是否启用模板测试 -}; -``` - -### DescriptorHeapDesc - -描述符堆描述。 - -```cpp -struct DescriptorHeapDesc { - uint32_t descriptorCount; // 描述符数量 - uint32_t heapType; // 堆类型 (参见 DescriptorHeapType 枚举) - uint32_t flags; // 堆标志 - uint32_t nodeMask; // 节点掩码 (多适配器) -}; -``` - -### RenderTargetViewDesc - -渲染目标视图描述。 - -```cpp -struct RenderTargetViewDesc { - uint32_t format; // 视图格式 - uint32_t viewDimension; // 视图维度 - uint32_t mipSlice; // Mip 级别 - uint32_t firstArraySlice; // 首个数组切片 - uint32_t arraySize; // 数组切片数量 -}; -``` - -### DepthStencilViewDesc - -深度模板视图描述。 - -```cpp -struct DepthStencilViewDesc { - uint32_t format; // 视图格式 - uint32_t viewDimension; // 视图维度 - uint32_t mipSlice; // Mip 级别 - uint32_t firstArraySlice; // 首个数组切片 - uint32_t arraySize; // 数组切片数量 -}; -``` - -### ShaderResourceViewDesc - -着色器资源视图描述。 - -```cpp -struct ShaderResourceViewDesc { - uint32_t format; // 视图格式 - uint32_t viewDimension; // 视图维度 - uint32_t shader4ComponentMapping; // 组件映射 - TextureDesc textureDesc; // 关联的纹理描述 -}; -``` - -### ConstantBufferViewDesc - -常量缓冲区视图描述。 - -```cpp -struct ConstantBufferViewDesc { - uint64_t bufferLocation; // 缓冲区 GPU 地址 - uint32_t sizeInBytes; // 视图大小 -}; -``` - -### UnorderedAccessViewDesc - -无序访问视图描述。 - -```cpp -struct UnorderedAccessViewDesc { - uint32_t format; // 视图格式 - uint32_t viewDimension; // 视图维度 - uint32_t mipSlice; // Mip 级别 - uint32_t firstArraySlice; // 首个数组切片 - uint32_t arraySize; // 数组切片数量 -}; -``` - -### RootSignatureDesc - -根签名描述。 - -```cpp -struct RootSignatureDesc { - const void* pBlob; // 根签名二进制数据 - uint32_t size; // 数据大小 -}; -``` - -### PipelineStateDesc - -管线状态描述。 - -```cpp -struct PipelineStateDesc { - const void* pBlob; // 管线状态二进制数据 - uint32_t size; // 数据大小 -}; -``` - -## 命令相关 - -### CommandQueueDesc - -命令队列描述。 - -```cpp -struct CommandQueueDesc { - uint32_t queueType; // 队列类型 (参见 CommandQueueType 枚举) - uint32_t priority; // 优先级 - uint32_t nodeMask; // 节点掩码 - uint64_t flags; // 标志 -}; -``` - -### CommandListDesc - -命令列表描述。 - -```cpp -struct CommandListDesc { - uint32_t commandListType; // 命令列表类型 - uint32_t nodeMask; // 节点掩码 -}; -``` - -### CommandAllocatorDesc - -命令分配器描述。 - -```cpp -struct CommandAllocatorDesc { - uint32_t commandListType; // 命令列表类型 -}; -``` - -### FenceDesc - -栅栏描述。 - -```cpp -struct FenceDesc { - uint64_t initialValue; // 初始值 - uint32_t flags; // 标志 -}; -``` - -### QueryHeapDesc - -查询堆描述。 - -```cpp -struct QueryHeapDesc { - uint32_t queryType; // 查询类型 (参见 QueryType 枚举) - uint32_t count; // 查询数量 - uint32_t nodeMask; // 节点掩码 -}; -``` - -### SamplerDesc - -采样器描述,配置纹理采样状态。 - -```cpp -struct SamplerDesc { - uint32_t filter; // 过滤器模式 (参见 FilterMode 枚举) - uint32_t addressU; // U 方向寻址模式 (参见 TextureAddressMode 枚举) - uint32_t addressV; // V 方向寻址模式 - uint32_t addressW; // W 方向寻址模式 - float mipLodBias; // Mip LOD 偏移 - uint32_t maxAnisotropy; // 最大各向异性级别 - uint32_t comparisonFunc; // 比较函数 (参见 ComparisonFunc 枚举) - float borderColorR; // 边框颜色 R 分量 - float borderColorG; // 边框颜色 G 分量 - float borderColorB; // 边框颜色 B 分量 - float borderColorA; // 边框颜色 A 分量 - float minLod; // 最小 LOD - float maxLod; // 最大 LOD -}; -``` - -### SwapChainDesc - -交换链描述。 - -```cpp -struct SwapChainDesc { - uint32_t width; // 交换链宽度 - uint32_t height; // 交换链高度 - uint32_t bufferCount; // 缓冲区数量 - uint32_t format; // 格式 (参见 Format 枚举) - uint32_t refreshRate; // 刷新率 - uint32_t sampleCount; // 多重采样数 - uint32_t sampleQuality; // 采样质量等级 - uint32_t swapEffect; // 交换效果 - uint32_t flags; // 标志 -}; -``` - -## 设备相关 - -### RHIDeviceDesc - -设备描述,创建 RHI 设备的配置参数。 - -```cpp -struct RHIDeviceDesc { - bool enableDebugLayer = false; // 启用调试层 - bool enableGPUValidation = false; // 启用 GPU 验证 - uint32_t adapterIndex = 0; // 适配器索引 - void* windowHandle = nullptr; // 窗口句柄 - uint32_t width = 1280; // 窗口宽度 - uint32_t height = 720; // 窗口高度 - std::wstring appName = L"XCEngine"; // 应用程序名称 -}; -``` - -**使用示例**: - -```cpp -RHIDeviceDesc desc; -desc.enableDebugLayer = true; -desc.windowHandle = hwnd; -desc.width = 1920; -desc.height = 1080; -desc.appName = L"MyGame"; -``` - -### RHIDeviceInfo - -设备信息结构体,包含设备详细信息。 - -```cpp -struct RHIDeviceInfo { - std::wstring description; // 设备描述 - std::wstring vendor; // 供应商 - std::wstring renderer; // 渲染器名称 - std::wstring version; // 驱动版本 - uint32_t majorVersion = 0; // 主版本号 - uint32_t minorVersion = 0; // 次版本号 - uint64_t dedicatedVideoMemory = 0; // 专用显存 - uint64_t dedicatedSystemMemory = 0; // 专用系统内存 - uint64_t sharedSystemMemory = 0; // 共享系统内存 - uint32_t vendorId = 0; // 供应商 ID - uint32_t deviceId = 0; // 设备 ID - bool isSoftware = false; // 是否为软件设备 -}; -``` - -### RHIRenderPassDesc - -渲染通道描述。 - -```cpp -struct RHIRenderPassDesc { - struct ColorAttachment { - void* texture = nullptr; // 纹理指针 - uint32_t loadAction = 0; // 加载操作 - uint32_t storeAction = 0; // 存储操作 - float clearColor[4] = {0.0f, 0.0f, 0.0f, 1.0f}; // 清除颜色 - }; - ColorAttachment colorAttachments[8]; // 颜色附件数组 - uint32_t colorAttachmentCount = 0; // 颜色附件数量 - - struct DepthStencilAttachment { - void* texture = nullptr; // 纹理指针 - uint32_t loadAction = 0; // 加载操作 - uint32_t storeAction = 0; // 存储操作 - float clearDepth = 1.0f; // 清除深度 - uint8_t clearStencil = 0; // 清除模板值 - } depthStencilAttachment; - bool hasDepthStencil = false; // 是否有深度模板附件 -}; -``` - -**使用示例**: - -```cpp -RHIRenderPassDesc passDesc; -passDesc.colorAttachmentCount = 1; -passDesc.colorAttachments[0].texture = renderTargetTexture; -passDesc.colorAttachments[0].loadAction = static_cast(LoadAction::Clear); -passDesc.colorAttachments[0].storeAction = static_cast(StoreAction::Store); -passDesc.hasDepthStencil = true; -passDesc.depthStencilAttachment.texture = depthStencilTexture; -``` - -### RHIPipelineLayoutDesc - -管线布局描述。 - -```cpp -struct RHIPipelineLayoutDesc { - uint32_t constantBufferCount = 0; // 常量缓冲区数量 - uint32_t textureCount = 0; // 纹理数量 - uint32_t samplerCount = 0; // 采样器数量 - uint32_t uavCount = 0; // UAV 数量 -}; -``` - -## 相关文档 - -- [../rhi.md](../rhi.md) - RHI 模块总览 -- [RHIEnums](../enums/enums.md) - 枚举类型汇总 diff --git a/docs/api/scene/scene-manager/create-scene.md b/docs/api/scene/scene-manager/create-scene.md deleted file mode 100644 index e9f5be01..00000000 --- a/docs/api/scene/scene-manager/create-scene.md +++ /dev/null @@ -1,31 +0,0 @@ -# CreateScene - -Create a new scene with the specified name. - -## Syntax - -```cpp -Scene* CreateScene(const std::string& name); -``` - -## Parameters - -- `name` - The name for the new scene. - -## Returns - -Returns a pointer to the newly created `Scene`. - -## See Also - -- [LoadScene](load-scene) -- [UnloadScene](unload-scene) - -## Examples - -```cpp -void Example() { - SceneManager& manager = SceneManager::Get(); - Scene* newScene = manager.CreateScene("Level1"); -} -``` diff --git a/docs/api/scene/scene-manager/get-active-scene.md b/docs/api/scene/scene-manager/get-active-scene.md deleted file mode 100644 index a01e1040..00000000 --- a/docs/api/scene/scene-manager/get-active-scene.md +++ /dev/null @@ -1,29 +0,0 @@ -# GetActiveScene - -Get the currently active scene. - -## Syntax - -```cpp -Scene* GetActiveScene() const; -``` - -## Returns - -Returns a pointer to the currently active `Scene`, or `nullptr` if no scene is active. - -## See Also - -- [SetActiveScene](set-active-scene) - -## Examples - -```cpp -void Example() { - SceneManager& manager = SceneManager::Get(); - Scene* active = manager.GetActiveScene(); - if (active) { - XC_LOG_INFO("Active scene: {}", active->GetName()); - } -} -``` diff --git a/docs/api/scene/scene-manager/get-all-scenes.md b/docs/api/scene/scene-manager/get-all-scenes.md deleted file mode 100644 index 4bbf4a32..00000000 --- a/docs/api/scene/scene-manager/get-all-scenes.md +++ /dev/null @@ -1,28 +0,0 @@ -# GetAllScenes - -Get all loaded scenes. - -## Syntax - -```cpp -std::vector GetAllScenes() const; -``` - -## Returns - -Returns a `std::vector` containing pointers to all loaded scenes. - -## See Also - -- [GetScene](get-scene) - -## Examples - -```cpp -void Example() { - SceneManager& manager = SceneManager::Get(); - for (Scene* scene : manager.GetAllScenes()) { - XC_LOG_INFO("Scene: {}", scene->GetName()); - } -} -``` diff --git a/docs/api/scene/scene-manager/get-scene.md b/docs/api/scene/scene-manager/get-scene.md deleted file mode 100644 index bf7bd398..00000000 --- a/docs/api/scene/scene-manager/get-scene.md +++ /dev/null @@ -1,33 +0,0 @@ -# GetScene - -Get a scene by name. - -## Syntax - -```cpp -Scene* GetScene(const std::string& name) const; -``` - -## Parameters - -- `name` - The name of the scene. - -## Returns - -Returns a pointer to the scene with the specified name, or `nullptr` if not found. - -## See Also - -- [GetAllScenes](get-all-scenes) - -## Examples - -```cpp -void Example() { - SceneManager& manager = SceneManager::Get(); - Scene* scene = manager.GetScene("Level1"); - if (scene) { - XC_LOG_INFO("Found scene: {}", scene->GetName()); - } -} -``` diff --git a/docs/api/scene/scene-manager/get.md b/docs/api/scene/scene-manager/get.md deleted file mode 100644 index 69d09a21..00000000 --- a/docs/api/scene/scene-manager/get.md +++ /dev/null @@ -1,25 +0,0 @@ -# Get - -Get the singleton SceneManager instance. - -## Syntax - -```cpp -static SceneManager& Get(); -``` - -## Returns - -Returns a reference to the singleton `SceneManager` instance. - -## Remarks - -Access the SceneManager singleton through this static method. The SceneManager is created on first access. - -## Examples - -```cpp -void Example() { - SceneManager& manager = SceneManager::Get(); -} -``` diff --git a/docs/api/scene/scene-manager/load-scene-async.md b/docs/api/scene/scene-manager/load-scene-async.md deleted file mode 100644 index 28deff8f..00000000 --- a/docs/api/scene/scene-manager/load-scene-async.md +++ /dev/null @@ -1,34 +0,0 @@ -# LoadSceneAsync - -Load a scene from a file asynchronously. - -## Syntax - -```cpp -void LoadSceneAsync(const std::string& filePath, std::function callback); -``` - -## Parameters - -- `filePath` - The path to the scene file. -- `callback` - Callback function called when loading is complete, receives the loaded Scene. - -## Remarks - -Loads a scene from the specified file path asynchronously. The callback is invoked when loading is complete with a pointer to the loaded scene. - -## See Also - -- [LoadScene](load-scene) - -## Examples - -```cpp -void Example() { - SceneManager& manager = SceneManager::Get(); - manager.LoadSceneAsync("assets/scenes/level1.scene", [](Scene* scene) { - XC_LOG_INFO("Scene loaded: {}", scene->GetName()); - manager.SetActiveScene(scene); - }); -} -``` diff --git a/docs/api/scene/scene-manager/load-scene.md b/docs/api/scene/scene-manager/load-scene.md deleted file mode 100644 index 878476aa..00000000 --- a/docs/api/scene/scene-manager/load-scene.md +++ /dev/null @@ -1,31 +0,0 @@ -# LoadScene - -Load a scene from a file synchronously. - -## Syntax - -```cpp -void LoadScene(const std::string& filePath); -``` - -## Parameters - -- `filePath` - The path to the scene file. - -## Remarks - -Loads a scene from the specified file path. This is a synchronous operation and will block until the scene is fully loaded. - -## See Also - -- [LoadSceneAsync](load-scene-async) -- [CreateScene](create-scene) - -## Examples - -```cpp -void Example() { - SceneManager& manager = SceneManager::Get(); - manager.LoadScene("assets/scenes/level1.scene"); -} -``` diff --git a/docs/api/scene/scene-manager/on-active-scene-changed.md b/docs/api/scene/scene-manager/on-active-scene-changed.md deleted file mode 100644 index a709256f..00000000 --- a/docs/api/scene/scene-manager/on-active-scene-changed.md +++ /dev/null @@ -1,33 +0,0 @@ -# OnActiveSceneChanged - -Event triggered when the active scene changes. - -## Syntax - -```cpp -Core::Event& OnActiveSceneChanged(); -``` - -## Returns - -Returns a reference to the `Core::Event` for this event. - -## Remarks - -Subscribe to this event to be notified when the active scene changes. - -## See Also - -- [SetActiveScene](set-active-scene) -- [GetActiveScene](get-active-scene) - -## Examples - -```cpp -void Example() { - SceneManager& manager = SceneManager::Get(); - manager.OnActiveSceneChanged().AddCallback([](Scene* scene) { - XC_LOG_INFO("Active scene changed: {}", scene->GetName()); - }); -} -``` diff --git a/docs/api/scene/scene-manager/on-scene-loaded.md b/docs/api/scene/scene-manager/on-scene-loaded.md deleted file mode 100644 index 1ecf5343..00000000 --- a/docs/api/scene/scene-manager/on-scene-loaded.md +++ /dev/null @@ -1,33 +0,0 @@ -# OnSceneLoaded - -Event triggered when a scene is loaded. - -## Syntax - -```cpp -Core::Event& OnSceneLoaded(); -``` - -## Returns - -Returns a reference to the `Core::Event` for this event. - -## Remarks - -Subscribe to this event to be notified when a scene is loaded. - -## See Also - -- [OnSceneUnloaded](on-scene-unloaded) -- [OnActiveSceneChanged](on-active-scene-changed) - -## Examples - -```cpp -void Example() { - SceneManager& manager = SceneManager::Get(); - manager.OnSceneLoaded().AddCallback([](Scene* scene) { - XC_LOG_INFO("Scene loaded: {}", scene->GetName()); - }); -} -``` diff --git a/docs/api/scene/scene-manager/on-scene-unloaded.md b/docs/api/scene/scene-manager/on-scene-unloaded.md deleted file mode 100644 index 80526095..00000000 --- a/docs/api/scene/scene-manager/on-scene-unloaded.md +++ /dev/null @@ -1,33 +0,0 @@ -# OnSceneUnloaded - -Event triggered when a scene is unloaded. - -## Syntax - -```cpp -Core::Event& OnSceneUnloaded(); -``` - -## Returns - -Returns a reference to the `Core::Event` for this event. - -## Remarks - -Subscribe to this event to be notified when a scene is unloaded. - -## See Also - -- [OnSceneLoaded](on-scene-loaded) -- [OnActiveSceneChanged](on-active-scene-changed) - -## Examples - -```cpp -void Example() { - SceneManager& manager = SceneManager::Get(); - manager.OnSceneUnloaded().AddCallback([](Scene* scene) { - XC_LOG_INFO("Scene unloaded: {}", scene->GetName()); - }); -} -``` diff --git a/docs/api/scene/scene-manager/scene-manager.md b/docs/api/scene/scene-manager/scene-manager.md deleted file mode 100644 index 8dc7b410..00000000 --- a/docs/api/scene/scene-manager/scene-manager.md +++ /dev/null @@ -1,74 +0,0 @@ -# SceneManager - -**命名空间**: `XCEngine::Components` - -**类型**: `class (singleton)` - -**头文件**: `XCEngine/Scene/SceneManager.h` - -**描述**: 场景管理器单例,管理所有场景和活动场景。 - -## 概述 - -SceneManager 是 XCEngine 中的场景管理器单例,负责管理所有加载的场景、场景切换(同步/异步)、设置活动场景,以及发布场景加载/卸载事件。它是场景系统的入口点,提供场景创建、加载、卸载和切换的接口。 - -## 单例访问 - -| 方法 | 描述 | -|------|------| -| `static SceneManager& Get()` | 获取场景管理器单例实例 | - -## 公共方法 - -### 场景管理 - -| 方法 | 描述 | -|------|------| -| [`CreateScene`](create-scene.md) | 创建新场景 | -| [`LoadScene`](load-scene.md) | 同步加载场景 | -| [`LoadSceneAsync`](load-scene-async.md) | 异步加载场景 | -| [`UnloadScene`](unload-scene.md) | 卸载场景 | - -### 活动场景 - -| 方法 | 描述 | -|------|------| -| [`SetActiveScene`](set-active-scene.md) | 设置活动场景 | -| [`GetActiveScene`](get-active-scene.md) | 获取当前活动场景 | - -### 查找 - -| 方法 | 描述 | -|------|------| -| [`GetScene`](get-scene.md) | 按名称获取场景 | -| [`GetAllScenes`](get-all-scenes.md) | 获取所有场景 | - -### 事件 - -| 方法 | 描述 | -|------|------| -| [`OnSceneLoaded`](on-scene-loaded.md) | 场景加载完成事件 | -| [`OnSceneUnloaded`](on-scene-unloaded.md) | 场景卸载完成事件 | -| [`OnActiveSceneChanged`](on-active-scene-changed.md) | 活动场景变更事件 | - -## 使用示例 - -```cpp -#include - -using namespace XCEngine::Components; - -void SceneManagerExample() { - Scene* scene = SceneManager::Get().CreateScene("GameLevel"); - SceneManager::Get().SetActiveScene(scene); - - SceneManager::Get().LoadSceneAsync("levels/menu.json", [](Scene* loadedScene) { - printf("Scene loaded: %s\n", loadedScene->GetName().c_str()); - }); -} -``` - -## 相关文档 - -- [Scene 模块总览](../scene.md) - Scene 模块总览 -- [Scene](../scene.md) - 场景类 diff --git a/docs/api/scene/scene-manager/set-active-scene.md b/docs/api/scene/scene-manager/set-active-scene.md deleted file mode 100644 index 5d75ff4a..00000000 --- a/docs/api/scene/scene-manager/set-active-scene.md +++ /dev/null @@ -1,32 +0,0 @@ -# SetActiveScene - -Set the currently active scene. - -## Syntax - -```cpp -void SetActiveScene(Scene* scene); -void SetActiveScene(const std::string& sceneName); -``` - -## Parameters - -- `scene` - Pointer to the scene to set as active. -- `sceneName` - Name of the scene to set as active. - -## Remarks - -Sets which scene is currently active. The active scene is the one that receives updates. - -## See Also - -- [GetActiveScene](get-active-scene) - -## Examples - -```cpp -void Example() { - SceneManager& manager = SceneManager::Get(); - manager.SetActiveScene("Level1"); -} -``` diff --git a/docs/api/scene/scene-manager/unload-scene.md b/docs/api/scene/scene-manager/unload-scene.md deleted file mode 100644 index 88d125c2..00000000 --- a/docs/api/scene/scene-manager/unload-scene.md +++ /dev/null @@ -1,33 +0,0 @@ -# UnloadScene - -Unload a scene. - -## Syntax - -```cpp -void UnloadScene(Scene* scene); -void UnloadScene(const std::string& sceneName); -``` - -## Parameters - -- `scene` - Pointer to the scene to unload. -- `sceneName` - Name of the scene to unload. - -## Remarks - -Removes a scene from the SceneManager. The scene and all its GameObjects will be destroyed. - -## See Also - -- [CreateScene](create-scene) -- [LoadScene](load-scene) - -## Examples - -```cpp -void Example() { - SceneManager& manager = SceneManager::Get(); - manager.UnloadScene("Level1"); -} -``` diff --git a/docs/api/scene/scene.md b/docs/api/scene/scene.md deleted file mode 100644 index 850f2c1a..00000000 --- a/docs/api/scene/scene.md +++ /dev/null @@ -1,46 +0,0 @@ -# Scene 模块概览 - -**命名空间**: `XCEngine::Components` - -**类型**: `module` - -**描述**: XCEngine 的场景管理模块,提供场景创建、加载和 GameObject 管理功能。 - -## 概述 - -Scene 模块是 XCEngine 中管理游戏场景的核心模块。它提供了 Scene 类用于管理场景中的所有 GameObject,以及 SceneManager 单例用于管理多个场景、场景切换和生命周期。场景是 GameObject 的容器,支持场景保存/加载、子对象查找、事件通知等功能。 - -## 模块内容 - -### 核心类 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [Scene](scene/scene.md) | `Scene.h` | 场景类,管理 GameObject 层级和生命周期 | -| [SceneManager](scene-manager/scene-manager.md) | `SceneManager.h` | 场景管理器单例,管理所有场景 | - -## 使用示例 - -```cpp -#include -#include -#include - -using namespace XCEngine::Components; - -void CreateNewScene() { - Scene* scene = SceneManager::Get().CreateScene("MainMenu"); - SceneManager::Get().SetActiveScene(scene); - - GameObject* camera = scene->CreateGameObject("MainCamera"); -} - -void LoadSceneExample() { - SceneManager::Get().LoadScene("levels/gameplay.json"); -} -``` - -## 相关文档 - -- [Components 模块](../components/components.md) - Components 模块总览 -- [GameObject](../components/game-object/game-object.md) - 游戏对象 diff --git a/docs/api/scene/scene/create-game-object.md b/docs/api/scene/scene/create-game-object.md deleted file mode 100644 index 26d71790..00000000 --- a/docs/api/scene/scene/create-game-object.md +++ /dev/null @@ -1,35 +0,0 @@ -# Scene::CreateGameObject - -在场景中创建新的 GameObject。 - -```cpp -GameObject* CreateGameObject(const std::string& name, GameObject* parent = nullptr); -``` - -创建一个具有指定名称的新 GameObject,并可选择设置其父对象。GameObject 由场景拥有,当场景被销毁时也会被销毁。 - -**参数:** -- `name` - 新 GameObject 的名称 -- `parent` - 可选的父 GameObject(默认为 `nullptr`) - -**返回:** `GameObject*` - 指向新创建的 GameObject 的指针 - -**线程安全:** ❌ (非线程安全,应在主线程调用) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Components; - -void Example(Scene* scene) { - GameObject* player = scene->CreateGameObject("Player"); - GameObject* weapon = scene->CreateGameObject("Sword", player); -} -``` - -## 相关文档 - -- [Scene 总览](scene.md) - 返回类总览 -- [DestroyGameObject](destroy-game-object.md) - 销毁 GameObject diff --git a/docs/api/scene/scene/deserialize-from-string.md b/docs/api/scene/scene/deserialize-from-string.md deleted file mode 100644 index 95387b9c..00000000 --- a/docs/api/scene/scene/deserialize-from-string.md +++ /dev/null @@ -1,40 +0,0 @@ -# Scene::DeserializeFromString - -从字符串反序列化场景。 - -```cpp -void DeserializeFromString(const std::string& data); -``` - -从 JSON 格式的字符串数据恢复场景的完整状态,包括所有 GameObject、组件和层级结构。 - -**参数:** -- `data` - JSON 格式的序列化数据 - -**线程安全:** ❌ (非线程安全,应在主线程调用) - -**注意:** -- 此操作会清空当前场景的所有数据 -- 反序列化后的 GameObject 引用可能与原始引用不同 - -**示例:** - -```cpp -#include - -using namespace XCEngine::Components; - -void Example(Scene* scene) { - std::string data = R"({ - "name": "GameScene", - "gameObjects": [...] - })"; - scene->DeserializeFromString(data); -} -``` - -## 相关文档 - -- [Scene 总览](scene.md) - 返回类总览 -- [Save](save.md) - 保存到文件 -- [SerializeToString](serialize-to-string.md) - 序列化为字符串 diff --git a/docs/api/scene/scene/destroy-game-object.md b/docs/api/scene/scene/destroy-game-object.md deleted file mode 100644 index 94901c62..00000000 --- a/docs/api/scene/scene/destroy-game-object.md +++ /dev/null @@ -1,29 +0,0 @@ -# DestroyGameObject - -Destroy a GameObject in this scene. - -## Syntax - -```cpp -void DestroyGameObject(GameObject* gameObject); -``` - -## Parameters - -- `gameObject` - Pointer to the GameObject to destroy. - -## Remarks - -Destroys the specified GameObject and all its components. The GameObject will be destroyed at the end of the current frame. - -## See Also - -- [CreateGameObject](create-game-object) - -## Examples - -```cpp -void Example(Scene* scene, GameObject* enemy) { - scene->DestroyGameObject(enemy); -} -``` diff --git a/docs/api/scene/scene/find-by-id.md b/docs/api/scene/scene/find-by-id.md deleted file mode 100644 index 48286dc0..00000000 --- a/docs/api/scene/scene/find-by-id.md +++ /dev/null @@ -1,36 +0,0 @@ -# Scene::FindByID - -按 ID 查找 GameObject。 - -```cpp -GameObject* FindByID(GameObjectID id) const; -``` - -通过游戏对象的唯一标识符查找 GameObject。 - -**参数:** -- `id` - GameObject 的唯一标识符 - -**返回:** `GameObject*` - 指向找到的 GameObject 的指针,未找到则返回 `nullptr` - -**线程安全:** ✅ (只读操作) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Components; - -void Example(Scene* scene, GameObjectID id) { - GameObject* obj = scene->FindByID(id); - if (obj) { - printf("Found object: %s\n", obj->GetName().c_str()); - } -} -``` - -## 相关文档 - -- [Scene 总览](scene.md) - 返回类总览 -- [Find](find.md) - 按名称查找 diff --git a/docs/api/scene/scene/find-game-object-with-tag.md b/docs/api/scene/scene/find-game-object-with-tag.md deleted file mode 100644 index 4685e02c..00000000 --- a/docs/api/scene/scene/find-game-object-with-tag.md +++ /dev/null @@ -1,36 +0,0 @@ -# FindGameObjectWithTag - -Find the first GameObject with the specified tag. - -## Syntax - -```cpp -GameObject* FindGameObjectWithTag(const std::string& tag) const; -``` - -## Parameters - -- `tag` - The tag to search for. - -## Returns - -Returns a pointer to the first GameObject with the specified tag, or `nullptr` if not found. - -## Remarks - -Searches the scene for a GameObject with the specified tag. Tags must be set on individual GameObjects. - -## See Also - -- [Find](find) - -## Examples - -```cpp -void Example(Scene* scene) { - GameObject* enemy = scene->FindGameObjectWithTag("Enemy"); - if (enemy) { - XC_LOG_INFO("Found enemy!"); - } -} -``` diff --git a/docs/api/scene/scene/find.md b/docs/api/scene/scene/find.md deleted file mode 100644 index 9535e248..00000000 --- a/docs/api/scene/scene/find.md +++ /dev/null @@ -1,36 +0,0 @@ -# Scene::Find - -按名称查找 GameObject。 - -```cpp -GameObject* Find(const std::string& name) const; -``` - -在场景中搜索具有指定名称的 GameObject。搜索包括所有根对象及其子对象。 - -**参数:** -- `name` - 要查找的 GameObject 名称 - -**返回:** `GameObject*` - 指向找到的 GameObject 的指针,未找到则返回 `nullptr` - -**线程安全:** ✅ (只读操作) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Components; - -void Example(Scene* scene) { - GameObject* player = scene->Find("Player"); - if (player) { - printf("Found player!\n"); - } -} -``` - -## 相关文档 - -- [Scene 总览](scene.md) - 返回类总览 -- [FindGameObjectWithTag](find-game-object-with-tag.md) - 按标签查找 diff --git a/docs/api/scene/scene/fixed-update.md b/docs/api/scene/scene/fixed-update.md deleted file mode 100644 index ea6a0c2d..00000000 --- a/docs/api/scene/scene/fixed-update.md +++ /dev/null @@ -1,30 +0,0 @@ -# FixedUpdate - -Perform fixed update on all GameObjects in this scene. - -## Syntax - -```cpp -void FixedUpdate(float fixedDeltaTime); -``` - -## Parameters - -- `fixedDeltaTime` - The fixed time step in seconds. - -## Remarks - -Calls `FixedUpdate` on all GameObjects and their components. This is typically called at a fixed time interval for physics updates. - -## See Also - -- [Update](update) -- [LateUpdate](late-update) - -## Examples - -```cpp -void Example(Scene* scene) { - scene->FixedUpdate(0.02f); -} -``` diff --git a/docs/api/scene/scene/get-name.md b/docs/api/scene/scene/get-name.md deleted file mode 100644 index 4b982fba..00000000 --- a/docs/api/scene/scene/get-name.md +++ /dev/null @@ -1,26 +0,0 @@ -# GetName - -Get the name of this scene. - -## Syntax - -```cpp -const std::string& GetName() const; -``` - -## Returns - -Returns the scene name as a `std::string` reference. - -## See Also - -- [SetName](set-name) - -## Examples - -```cpp -void Example(Scene* scene) { - const std::string& name = scene->GetName(); - XC_LOG_INFO("Scene name: {}", name); -} -``` diff --git a/docs/api/scene/scene/get-root-game-objects.md b/docs/api/scene/scene/get-root-game-objects.md deleted file mode 100644 index 307ebce4..00000000 --- a/docs/api/scene/scene/get-root-game-objects.md +++ /dev/null @@ -1,27 +0,0 @@ -# GetRootGameObjects - -Get all root-level GameObjects in this scene. - -## Syntax - -```cpp -std::vector GetRootGameObjects() const; -``` - -## Returns - -Returns a `std::vector` containing pointers to all root-level GameObjects. - -## Remarks - -Root-level GameObjects are those without a parent within the scene hierarchy. - -## Examples - -```cpp -void Example(Scene* scene) { - for (GameObject* go : scene->GetRootGameObjects()) { - XC_LOG_INFO("Root object: {}", go->GetName()); - } -} -``` diff --git a/docs/api/scene/scene/is-active.md b/docs/api/scene/scene/is-active.md deleted file mode 100644 index 08ecf734..00000000 --- a/docs/api/scene/scene/is-active.md +++ /dev/null @@ -1,27 +0,0 @@ -# IsActive - -Check if this scene is active. - -## Syntax - -```cpp -bool IsActive() const; -``` - -## Returns - -Returns `true` if the scene is active, `false` otherwise. - -## See Also - -- [SetActive](set-active) - -## Examples - -```cpp -void Example(Scene* scene) { - if (scene->IsActive()) { - XC_LOG_INFO("Scene is active"); - } -} -``` diff --git a/docs/api/scene/scene/late-update.md b/docs/api/scene/scene/late-update.md deleted file mode 100644 index 8b841498..00000000 --- a/docs/api/scene/scene/late-update.md +++ /dev/null @@ -1,30 +0,0 @@ -# LateUpdate - -Perform late update on all GameObjects in this scene. - -## Syntax - -```cpp -void LateUpdate(float deltaTime); -``` - -## Parameters - -- `deltaTime` - The time elapsed since the last frame in seconds. - -## Remarks - -Calls `LateUpdate` on all GameObjects and their components. This is typically called after `Update` for operations that need to run after other updates. - -## See Also - -- [Update](update) -- [FixedUpdate](fixed-update) - -## Examples - -```cpp -void Example(Scene* scene) { - scene->LateUpdate(0.016f); -} -``` diff --git a/docs/api/scene/scene/load.md b/docs/api/scene/scene/load.md deleted file mode 100644 index f6113000..00000000 --- a/docs/api/scene/scene/load.md +++ /dev/null @@ -1,29 +0,0 @@ -# Load - -Load a scene from a file. - -## Syntax - -```cpp -void Load(const std::string& filePath); -``` - -## Parameters - -- `filePath` - The path to the scene file. - -## Remarks - -Deserializes the scene from the specified file path, replacing the current scene contents. - -## See Also - -- [Save](save) - -## Examples - -```cpp -void Example(Scene* scene) { - scene->Load("assets/scenes/my_scene.scene"); -} -``` diff --git a/docs/api/scene/scene/on-game-object-created.md b/docs/api/scene/scene/on-game-object-created.md deleted file mode 100644 index 824d5e1d..00000000 --- a/docs/api/scene/scene/on-game-object-created.md +++ /dev/null @@ -1,31 +0,0 @@ -# OnGameObjectCreated - -Event triggered when a GameObject is created in this scene. - -## Syntax - -```cpp -Core::Event& OnGameObjectCreated(); -``` - -## Returns - -Returns a reference to the `Core::Event` for this event. - -## Remarks - -Subscribe to this event to be notified when a GameObject is created in the scene. The event passes the newly created GameObject as a parameter. - -## See Also - -- [OnGameObjectDestroyed](on-game-object-destroyed) - -## Examples - -```cpp -void Example(Scene* scene) { - scene->OnGameObjectCreated().AddCallback([](GameObject* go) { - XC_LOG_INFO("GameObject created: {}", go->GetName()); - }); -} -``` diff --git a/docs/api/scene/scene/on-game-object-destroyed.md b/docs/api/scene/scene/on-game-object-destroyed.md deleted file mode 100644 index 71eb886d..00000000 --- a/docs/api/scene/scene/on-game-object-destroyed.md +++ /dev/null @@ -1,31 +0,0 @@ -# OnGameObjectDestroyed - -Event triggered when a GameObject is destroyed in this scene. - -## Syntax - -```cpp -Core::Event& OnGameObjectDestroyed(); -``` - -## Returns - -Returns a reference to the `Core::Event` for this event. - -## Remarks - -Subscribe to this event to be notified when a GameObject is destroyed in the scene. The event passes the destroyed GameObject as a parameter. - -## See Also - -- [OnGameObjectCreated](on-game-object-created) - -## Examples - -```cpp -void Example(Scene* scene) { - scene->OnGameObjectDestroyed().AddCallback([](GameObject* go) { - XC_LOG_INFO("GameObject destroyed: {}", go->GetName()); - }); -} -``` diff --git a/docs/api/scene/scene/save.md b/docs/api/scene/scene/save.md deleted file mode 100644 index 822f8e01..00000000 --- a/docs/api/scene/scene/save.md +++ /dev/null @@ -1,29 +0,0 @@ -# Save - -Save this scene to a file. - -## Syntax - -```cpp -void Save(const std::string& filePath); -``` - -## Parameters - -- `filePath` - The path to save the scene file. - -## Remarks - -Serializes the scene and all its GameObjects to the specified file path. - -## See Also - -- [Load](load) - -## Examples - -```cpp -void Example(Scene* scene) { - scene->Save("assets/scenes/my_scene.scene"); -} -``` diff --git a/docs/api/scene/scene/scene.md b/docs/api/scene/scene/scene.md deleted file mode 100644 index 83c02c4a..00000000 --- a/docs/api/scene/scene/scene.md +++ /dev/null @@ -1,93 +0,0 @@ -# Scene - -**命名空间**: `XCEngine::Components` - -**类型**: `class` - -**头文件**: `XCEngine/Scene/Scene.h` - -**描述**: 场景类,管理场景中的所有 GameObject 和层级结构。 - -## 概述 - -Scene 是 XCEngine 中的场景类,代表一个独立的游戏空间(如主菜单、游戏关卡、过场动画等)。每个 Scene 包含一个 GameObject 层级树,通过根对象(Root GameObjects)组织。Scene 负责创建和销毁 GameObject,提供查找功能,支持场景保存/加载,并发布 GameObject 创建和销毁事件。 - -## 类型别名 - -| 别名 | 类型 | 描述 | -|------|------|------| -| `GameObjectID` | `uint64_t` | 游戏对象唯一标识符类型 | -| `INVALID_GAMEOBJECT_ID` | `static constexpr GameObjectID` | 无效 ID 常量,值为 0 | - -## 公共方法 - -### 基础信息 - -| 方法 | 描述 | -|------|------| -| [`GetName`](get-name.md) | 获取场景名称 | -| [`SetName`](set-name.md) | 设置场景名称 | -| [`IsActive`](is-active.md) | 检查场景是否激活 | -| [`SetActive`](set-active.md) | 设置场景激活状态 | - -### GameObject 管理 - -| 方法 | 描述 | -|------|------| -| [`CreateGameObject`](create-game-object.md) | 创建游戏对象 | -| [`DestroyGameObject`](destroy-game-object.md) | 销毁游戏对象 | - -### 查找 - -| 方法 | 描述 | -|------|------| -| [`Find`](find.md) | 按名称查找 GameObject | -| [`FindByID`](find-by-id.md) | 按 ID 查找 GameObject | -| [`FindGameObjectWithTag`](find-game-object-with-tag.md) | 按标签查找 GameObject | -| `FindObjectOfType()` | 模板方法,查找指定类型的组件(无独立文档) | -| `FindObjectsOfType()` | 模板方法,查找所有指定类型的组件(无独立文档) | -| [`GetRootGameObjects`](get-root-game-objects.md) | 获取所有根对象 | - -### 生命周期 - -| 方法 | 描述 | -|------|------| -| [`Update`](update.md) | 每帧更新场景 | -| [`FixedUpdate`](fixed-update.md) | 固定频率更新 | -| [`LateUpdate`](late-update.md) | 晚更新 | -| [`Load`](load.md) | 从文件加载场景 | -| [`Save`](save.md) | 保存场景到文件 | -| [`SerializeToString`](serialize-to-string.md) | 序列化为字符串 | -| [`DeserializeFromString`](deserialize-from-string.md) | 从字符串反序列化 | - -### 事件 - -| 方法 | 描述 | -|------|------| -| [`OnGameObjectCreated`](on-game-object-created.md) | GameObject 创建事件 | -| [`OnGameObjectDestroyed`](on-game-object-destroyed.md) | GameObject 销毁事件 | - -## 使用示例 - -```cpp -#include -#include - -using namespace XCEngine::Components; - -void SceneExample(Scene* scene) { - GameObject* player = scene->CreateGameObject("Player"); - GameObject* enemy = scene->CreateGameObject("Enemy"); - - scene->SetActive(true); - - GameObject* found = scene->Find("Player"); - auto cameras = scene->FindObjectsOfType(); -} -``` - -## 相关文档 - -- [Scene 模块总览](../scene.md) - Scene 模块总览 -- [SceneManager](../scene-manager/scene-manager.md) - 场景管理器 -- [GameObject](../../components/game-object/game-object.md) - 游戏对象 diff --git a/docs/api/scene/scene/serialize-to-string.md b/docs/api/scene/scene/serialize-to-string.md deleted file mode 100644 index 4eb219bf..00000000 --- a/docs/api/scene/scene/serialize-to-string.md +++ /dev/null @@ -1,33 +0,0 @@ -# Scene::SerializeToString - -将场景序列化为字符串。 - -```cpp -std::string SerializeToString() const; -``` - -将场景的所有数据(包括所有 GameObject、组件和层级结构)序列化为 JSON 格式的字符串。 - -**返回:** `std::string` - 序列化后的 JSON 字符串 - -**线程安全:** ✅ (只读操作) - -**示例:** - -```cpp -#include - -using namespace XCEngine::Components; - -void Example(Scene* scene) { - std::string serialized = scene->SerializeToString(); - printf("Serialized scene (%zu bytes):\n%s\n", - serialized.size(), serialized.c_str()); -} -``` - -## 相关文档 - -- [Scene 总览](scene.md) - 返回类总览 -- [Load](load.md) - 从文件加载 -- [DeserializeFromString](deserialize-from-string.md) - 从字符串反序列化 diff --git a/docs/api/scene/scene/set-active.md b/docs/api/scene/scene/set-active.md deleted file mode 100644 index 5b4cc7b8..00000000 --- a/docs/api/scene/scene/set-active.md +++ /dev/null @@ -1,25 +0,0 @@ -# SetActive - -Set whether this scene is active. - -## Syntax - -```cpp -void SetActive(bool active); -``` - -## Parameters - -- `active` - Whether to activate or deactivate the scene. - -## See Also - -- [IsActive](is-active) - -## Examples - -```cpp -void Example(Scene* scene) { - scene->SetActive(false); -} -``` diff --git a/docs/api/scene/scene/set-name.md b/docs/api/scene/scene/set-name.md deleted file mode 100644 index 04ec246a..00000000 --- a/docs/api/scene/scene/set-name.md +++ /dev/null @@ -1,25 +0,0 @@ -# SetName - -Set the name of this scene. - -## Syntax - -```cpp -void SetName(const std::string& name); -``` - -## Parameters - -- `name` - The new scene name. - -## See Also - -- [GetName](get-name) - -## Examples - -```cpp -void Example(Scene* scene) { - scene->SetName("MainScene"); -} -``` diff --git a/docs/api/scene/scene/update.md b/docs/api/scene/scene/update.md deleted file mode 100644 index 333f1803..00000000 --- a/docs/api/scene/scene/update.md +++ /dev/null @@ -1,25 +0,0 @@ -# Update - -Update all GameObjects in this scene. - -## Syntax - -```cpp -void Update(float deltaTime); -``` - -## Parameters - -- `deltaTime` - The time elapsed since the last frame in seconds. - -## Remarks - -Calls `Update` on all GameObjects and their components. This is typically called once per frame from the main game loop. - -## Examples - -```cpp -void Example(Scene* scene) { - scene->Update(0.016f); -} -``` diff --git a/docs/api/threading/lambda-task/constructor.md b/docs/api/threading/lambda-task/constructor.md deleted file mode 100644 index 93bd68f8..00000000 --- a/docs/api/threading/lambda-task/constructor.md +++ /dev/null @@ -1,41 +0,0 @@ -# LambdaTask::LambdaTask - -```cpp -explicit LambdaTask(Func&& func, TaskPriority priority = TaskPriority::Normal) -``` - -构造 Lambda 任务对象,将可调用对象包装为 ITask。 - -**模板参数:** -- `Func` - 可调用对象类型 - -**参数:** -- `func` - 要封装的可调用对象(lambda、函数指针、std::function 等) -- `priority` - 任务优先级,默认值为 TaskPriority::Normal - -**返回:** 无 - -**复杂度:** O(1) - -**示例:** - -```cpp -// 使用 std::function lambda -auto task = std::make_unique>>( - []() { printf("Task executed\n"); }, - TaskPriority::High -); -TaskSystem::Get().Submit(std::move(task)); - -// 配合 TaskSystem::Submit 的重载直接使用 -TaskSystem::Get().Submit( - std::make_unique>>( - []() { ProcessData(); }, - TaskPriority::Critical - ) -); -``` - -## 相关文档 - -- [LambdaTask 总览](lambda-task.md) - 返回类总览 diff --git a/docs/api/threading/lambda-task/execute.md b/docs/api/threading/lambda-task/execute.md deleted file mode 100644 index e7230f06..00000000 --- a/docs/api/threading/lambda-task/execute.md +++ /dev/null @@ -1,40 +0,0 @@ -# LambdaTask::Execute - -```cpp -void Execute() override -``` - -执行封装的可调用对象。调用时执行构造时传入的 lambda 或可调用函数。 - -**参数:** 无 - -**返回:** 无 - -**注意:** -- 如果封装的可调用对象抛出异常,异常会向上传播到 TaskSystem。 -- 任务系统的工作线程不会捕获此类异常。 - -**示例:** - -```cpp -// 创建并提交 LambdaTask -TaskSystem::Get().Submit( - std::make_unique>>( - []() { - printf("Task executed!\n"); - }, - TaskPriority::Normal - ) -); - -// 使用便捷重载直接提交 -TaskSystem::Get().Submit([]() { - int result = ComputeHeavyWork(); - printf("Result: %d\n", result); -}, TaskPriority::High); -``` - -## 相关文档 - -- [LambdaTask 总览](lambda-task.md) - 返回类总览 -- [ITask::Execute](../task/execute.md) - 基类方法文档 diff --git a/docs/api/threading/lambda-task/lambda-task.md b/docs/api/threading/lambda-task/lambda-task.md deleted file mode 100644 index 0be33e06..00000000 --- a/docs/api/threading/lambda-task/lambda-task.md +++ /dev/null @@ -1,57 +0,0 @@ -# LambdaTask - -**命名空间**: `XCEngine::Threading` - -**类型**: `class` (template) - -**头文件**: `XCEngine/Threading/LambdaTask.h` - -**描述**: Lambda 任务封装模板类,允许使用 lambda 表达式创建任务,无需继承 ITask。 - -## 概述 - -`LambdaTask` 是一个模板封装类,将任意可调用对象(lambda、函数指针、std::function)包装为 `ITask`。这大大简化了简短任务的创建。 - -## 模板参数 - -| 参数 | 描述 | -|------|------| -| `Func` | 可调用对象类型 | - -## 构造方法 - -| 方法 | 描述 | -|------|------| -| [`LambdaTask`](constructor.md) | 构造 Lambda 任务 | - -## 继承方法 - -| 方法 | 描述 | -|------|------| -| [`Execute()`](execute.md) | 执行封装的可调用对象(继承自 ITask,纯虚方法重写) | - -## 使用示例 - -```cpp -// 使用 lambda 创建任务 -TaskSystem::Get().Submit( - std::make_unique>>( - []() { - printf("Hello from task!\n"); - }, - TaskPriority::Normal - ) -); - -// 或者直接使用 Submit 的便捷重载 -TaskSystem::Get().Submit([]() { - printf("Direct lambda task!\n"); -}); -``` - -## 相关文档 - -- [ITask](../task/task.md) - 任务基类 -- [TaskGroup](../task-group/task-group.md) - 任务组 -- [TaskSystem](../task-system/task-system.md) - 任务系统 -- [../threading.md](../threading.md) - 模块总览 diff --git a/docs/api/threading/mutex/lock-const.md b/docs/api/threading/mutex/lock-const.md deleted file mode 100644 index 6cf5cab4..00000000 --- a/docs/api/threading/mutex/lock-const.md +++ /dev/null @@ -1,43 +0,0 @@ -# Mutex::lock - -```cpp -void lock() const; -``` - -获取互斥锁(const 版本)。如果锁已被其他线程持有,则阻塞当前线程直到锁可用。 - -该方法是 `std::lockable` 接口的实现,可与 `std::lock_guard`、`std::unique_lock` 等 RAII 工具配合使用。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** 平均 O(1),最坏情况 O(n),n 为竞争线程数 - -**示例:** - -```cpp -#include "XCEngine/Threading/Mutex.h" -#include - -XCEngine::Threading::Mutex mtx; -int counter = 0; - -void Increment() { - mtx.lock(); - ++counter; - mtx.unlock(); -} - -// 使用 RAII 自动管理锁 -void SafeIncrement() { - std::lock_guard guard(mtx); - ++counter; -} -``` - -## 相关文档 - -- [Mutex 总览](mutex.md) - 返回类总览 diff --git a/docs/api/threading/mutex/lock.md b/docs/api/threading/mutex/lock.md deleted file mode 100644 index c8a4a951..00000000 --- a/docs/api/threading/mutex/lock.md +++ /dev/null @@ -1,34 +0,0 @@ -# Mutex::Lock - -```cpp -void Lock() -``` - -获取互斥锁。如果锁已被其他线程持有,则阻塞当前线程直到锁可用。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** 平均 O(1),最坏情况 O(n),n 为竞争线程数 - -**注意:** -- 同一线程不可重复 Lock 同一个 Mutex(会导致死锁)。 -- 建议使用 RAII 封装(如 std::lock_guard)自动管理锁的释放。 - -**示例:** - -```cpp -XCEngine::Threading::Mutex mtx; -int counter = 0; - -void Increment() { - mtx.Lock(); - ++counter; - mtx.Unlock(); -} -``` - -## 相关文档 - -- [Mutex 总览](mutex.md) - 返回类总览 diff --git a/docs/api/threading/mutex/mutex.md b/docs/api/threading/mutex/mutex.md deleted file mode 100644 index 1e4779bd..00000000 --- a/docs/api/threading/mutex/mutex.md +++ /dev/null @@ -1,63 +0,0 @@ -# Mutex - -**命名空间**: `XCEngine::Threading` - -**类型**: `class` - -**头文件**: `XCEngine/Threading/Mutex.h` - -**描述**: 互斥锁,封装 std::mutex 提供线程同步 - -## 概述 - -Mutex 类是对 std::mutex 的封装,提供线程安全的互斥访问机制。该类确保同一时刻只有一个线程可以访问受保护的资源,防止数据竞争和竞态条件。 - -该类提供两套接口: -- `Lock/Unlock/TryLock`:XCEngine 风格接口 -- `lock/unlock/try_lock`:STL 兼容接口(const 成员函数) - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Lock`](lock.md) | 获取互斥锁(非 const) | -| [`Unlock`](unlock.md) | 释放互斥锁(非 const) | -| [`TryLock`](trylock.md) | 尝试获取互斥锁(非 const) | -| [`lock`](lock-const.md) | 获取互斥锁(const,STL 兼容) | -| [`unlock`](unlock-const.md) | 释放互斥锁(const,STL 兼容) | -| [`try_lock`](try-lock-const.md) | 尝试获取互斥锁(const,STL 兼容) | - -## 使用示例 - -```cpp -#include "XCEngine/Threading/Mutex.h" -#include -#include - -XCEngine::Threading::Mutex mutex; -int sharedData = 0; - -void increment() { - mutex.lock(); - ++sharedData; - mutex.unlock(); -} - -int main() { - std::thread t1(increment); - std::thread t2(increment); - - t1.join(); - t2.join(); - - std::cout << "sharedData = " << sharedData << std::endl; - return 0; -} -``` - -## 相关文档 - -- [SpinLock](../spinlock/spinlock.md) - 自旋锁 -- [ReadWriteLock](../read-write-lock/read-write-lock.md) - 读写锁 -- [TaskSystem](../task-system/task-system.md) - 任务系统 -- [../threading.md](../threading.md) - 模块总览 diff --git a/docs/api/threading/mutex/try-lock-const.md b/docs/api/threading/mutex/try-lock-const.md deleted file mode 100644 index dbb0342b..00000000 --- a/docs/api/threading/mutex/try-lock-const.md +++ /dev/null @@ -1,41 +0,0 @@ -# Mutex::try_lock - -```cpp -bool try_lock() const; -``` - -尝试获取互斥锁(非阻塞,const 版本)。如果锁可用则立即获取并返回 `true`,否则立即返回 `false` 而不阻塞。 - -该方法是 `std::lockable` 接口的实现。 - -**参数:** 无 - -**返回:** `bool` - 获取成功返回 `true`,锁不可用返回 `false` - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Threading/Mutex.h" -#include - -XCEngine::Threading::Mutex mtx; -volatile bool updated = false; - -void TryUpdate() { - if (mtx.try_lock()) { - updated = true; - mtx.unlock(); - std::cout << "Update succeeded" << std::endl; - } else { - std::cout << "Update skipped (lock held)" << std::endl; - } -} -``` - -## 相关文档 - -- [Mutex 总览](mutex.md) - 返回类总览 diff --git a/docs/api/threading/mutex/try_lock.md b/docs/api/threading/mutex/try_lock.md deleted file mode 100644 index 89da1cc9..00000000 --- a/docs/api/threading/mutex/try_lock.md +++ /dev/null @@ -1,36 +0,0 @@ -# Mutex::try_lock - -```cpp -bool try_lock() const; -``` - -尝试获取互斥锁,非阻塞。如果锁不可用,调用线程不会阻塞,而是立即返回。 - -**参数:** 无 - -**返回:** `bool` - 如果成功获取锁返回 `true`,否则返回 `false` - -**线程安全:** ✅ - -**示例:** - -```cpp -#include "XCEngine/Threading/Mutex.h" -#include - -XCEngine::Threading::Mutex mutex; - -void tryOperation() { - if (mutex.try_lock()) { - // 获取锁成功 - mutex.unlock(); - } else { - // 锁已被其他线程持有 - std::cout << "Lock not available" << std::endl; - } -} -``` - -## 相关文档 - -- [Mutex 类总览](mutex.md) - 返回类总览 diff --git a/docs/api/threading/mutex/trylock.md b/docs/api/threading/mutex/trylock.md deleted file mode 100644 index e35c6bee..00000000 --- a/docs/api/threading/mutex/trylock.md +++ /dev/null @@ -1,36 +0,0 @@ -# Mutex::TryLock - -```cpp -bool TryLock() -``` - -尝试获取互斥锁(非阻塞)。如果锁可用则立即获取并返回 true,否则立即返回 false 而不阻塞。 - -**参数:** 无 - -**返回:** `bool` - 获取成功返回 true,锁不可用返回 false - -**复杂度:** O(1) - -**使用场景:** 适用于需要尝试获取锁但不希望阻塞的场景,如实现无锁算法或避免死锁。 - -**示例:** - -```cpp -XCEngine::Threading::Mutex mtx; -volatile bool updated = false; - -void TryUpdate() { - if (mtx.TryLock()) { - updated = true; - mtx.Unlock(); - printf("Update succeeded\n"); - } else { - printf("Update skipped (lock held)\n"); - } -} -``` - -## 相关文档 - -- [Mutex 总览](mutex.md) - 返回类总览 diff --git a/docs/api/threading/mutex/unlock-const.md b/docs/api/threading/mutex/unlock-const.md deleted file mode 100644 index c5fbf31e..00000000 --- a/docs/api/threading/mutex/unlock-const.md +++ /dev/null @@ -1,34 +0,0 @@ -# Mutex::unlock - -```cpp -void unlock() const; -``` - -释放互斥锁(const 版本),允许其他等待中的线程获取该锁。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Threading/Mutex.h" - -XCEngine::Threading::Mutex mtx; -std::vector data; - -void SafePush(int value) { - mtx.lock(); - data.push_back(value); - mtx.unlock(); -} -``` - -## 相关文档 - -- [Mutex 总览](mutex.md) - 返回类总览 diff --git a/docs/api/threading/mutex/unlock.md b/docs/api/threading/mutex/unlock.md deleted file mode 100644 index 4466cc6f..00000000 --- a/docs/api/threading/mutex/unlock.md +++ /dev/null @@ -1,32 +0,0 @@ -# Mutex::Unlock - -```cpp -void Unlock() -``` - -释放互斥锁,允许其他等待中的线程获取该锁。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(1) - -**注意:** 必须在持有锁的线程中调用 Unlock。解锁一个未持有的锁将导致未定义行为。 - -**示例:** - -```cpp -XCEngine::Threading::Mutex mtx; -std::vector data; - -void SafePush(int value) { - mtx.Lock(); - data.push_back(value); - mtx.Unlock(); -} -``` - -## 相关文档 - -- [Mutex 总览](mutex.md) - 返回类总览 diff --git a/docs/api/threading/read-write-lock/constructor.md b/docs/api/threading/read-write-lock/constructor.md deleted file mode 100644 index 5da3e9e9..00000000 --- a/docs/api/threading/read-write-lock/constructor.md +++ /dev/null @@ -1,35 +0,0 @@ -# ReadWriteLock::ReadWriteLock - -```cpp -ReadWriteLock() = default; -``` - -默认构造函数。构造一个未锁定的读写锁。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**注意:** -- 构造后的锁处于未锁定状态。 -- 多个线程可以同时获取读锁。 - -**示例:** - -```cpp -#include "XCEngine/Threading/ReadWriteLock.h" - -XCEngine::Threading::ReadWriteLock rwLock; -``` - -## 相关文档 - -- [`ReadWriteLock`](read-write-lock.md) - 返回类总览 -- [`ReadLock`](readlock.md) - 获取读锁 -- [`ReadUnlock`](readunlock.md) - 释放读锁 -- [`WriteLock`](writelock.md) - 获取写锁 -- [`WriteUnlock`](writeunlock.md) - 释放写锁 diff --git a/docs/api/threading/read-write-lock/destructor.md b/docs/api/threading/read-write-lock/destructor.md deleted file mode 100644 index 29de1cc9..00000000 --- a/docs/api/threading/read-write-lock/destructor.md +++ /dev/null @@ -1,40 +0,0 @@ -# ReadWriteLock::~ReadWriteLock - -```cpp -~ReadWriteLock() = default; -``` - -默认析构函数。销毁读写锁。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ⚠️ - -**复杂度:** O(1) - -**注意:** -- 析构前必须确保锁处于未锁定状态。 -- 如果在持有锁的状态下销毁行为未定义。 - -**示例:** - -```cpp -#include "XCEngine/Threading/ReadWriteLock.h" - -{ - XCEngine::Threading::ReadWriteLock rwLock; - rwLock.ReadLock(); - // ... 使用共享数据 ... - rwLock.ReadUnlock(); -} // rwLock 在这里销毁 -``` - -## 相关文档 - -- [`ReadWriteLock`](read-write-lock.md) - 返回类总览 -- [`ReadLock`](readlock.md) - 获取读锁 -- [`ReadUnlock`](readunlock.md) - 释放读锁 -- [`WriteLock`](writelock.md) - 获取写锁 -- [`WriteUnlock`](writeunlock.md) - 释放写锁 diff --git a/docs/api/threading/read-write-lock/read-write-lock.md b/docs/api/threading/read-write-lock/read-write-lock.md deleted file mode 100644 index d1087209..00000000 --- a/docs/api/threading/read-write-lock/read-write-lock.md +++ /dev/null @@ -1,91 +0,0 @@ -# ReadWriteLock - -**命名空间**: `XCEngine::Threading` - -**类型**: `class` - -**头文件**: `XCEngine/Threading/ReadWriteLock.h` - -**描述**: 读写锁,允许多个读者或单个写者 - -## 概述 - -`ReadWriteLock` 实现了一个经典的读写锁。它允许多个线程同时持有读锁,但在有写锁时,所有读锁都必须释放,写锁为独占访问。这对于读操作远多于写操作的共享数据非常有效。 - -### 设计目的 - -- 提供比普通互斥锁更高的并发性能 -- 允许多个线程同时读取共享数据 -- 确保写入操作时的独占性访问 -- 防止写者饥饿(通过写者优先策略) - -### 使用场景 - -- 读多写少的共享数据访问 -- 需要保护长时间读取的数据结构 -- 数据库、缓存、配置等共享资源访问 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`ReadWriteLock`](constructor.md) | 构造一个读写锁 | -| [`~ReadWriteLock`](destructor.md) | 销毁读写锁 | -| [`ReadLock`](readlock.md) | 获取读锁(支持多个并发读者) | -| [`ReadUnlock`](readunlock.md) | 释放读锁 | -| [`WriteLock`](writelock.md) | 获取写锁(独占,阻塞所有读者和写者) | -| [`WriteUnlock`](writeunlock.md) | 释放写锁 | - -## 使用示例 - -```cpp -#include "XCEngine/Threading/ReadWriteLock.h" -#include -#include -#include -#include - -XCEngine::Threading::ReadWriteLock rwLock; -std::map sharedCache; - -// 读操作(多个线程可同时读) -int ReadData(const std::string& key) { - rwLock.ReadLock(); - int value = 0; - auto it = sharedCache.find(key); - if (it != sharedCache.end()) { - value = it->second; - } - rwLock.ReadUnlock(); - return value; -} - -// 写操作(独占) -void WriteData(const std::string& key, int value) { - rwLock.WriteLock(); - sharedCache[key] = value; - rwLock.WriteUnlock(); -} - -int main() { - std::vector threads; - - threads.emplace_back(WriteData, "score", 100); - threads.emplace_back(ReadData, "score"); - threads.emplace_back(WriteData, "health", 200); - threads.emplace_back(ReadData, "health"); - - for (auto& t : threads) { - t.join(); - } - - return 0; -} -``` - -## 相关文档 - -- [`ReadLock`](readlock.md) - 获取读锁 -- [`ReadUnlock`](readunlock.md) - 释放读锁 -- [`WriteLock`](writelock.md) - 获取写锁 -- [`WriteUnlock`](writeunlock.md) - 释放写锁 diff --git a/docs/api/threading/read-write-lock/readlock.md b/docs/api/threading/read-write-lock/readlock.md deleted file mode 100644 index 7002b7df..00000000 --- a/docs/api/threading/read-write-lock/readlock.md +++ /dev/null @@ -1,41 +0,0 @@ -# ReadWriteLock::ReadLock - -```cpp -void ReadLock() -``` - -获取读锁。如果有写者持有锁或正在等待写锁,当前线程将阻塞,直到所有写者完成。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** 平均 O(1) - -**注意:** -- 多个读者可以同时持有读锁。 -- 写锁具有优先权——正在等待的写者会阻塞新的读者,防止写者饥饿。 -- 读锁不可重入,同一线程不可嵌套持有读锁。 - -**示例:** - -```cpp -#include "XCEngine/Threading/ReadWriteLock.h" - -XCEngine::Threading::ReadWriteLock rwLock; -int sharedValue = 0; - -int ReadValue() { - rwLock.ReadLock(); - int value = sharedValue; - rwLock.ReadUnlock(); - return value; -} -``` - -## 相关文档 - -- [`ReadWriteLock`](read-write-lock.md) - 返回类总览 -- [`ReadUnlock`](readunlock.md) - 释放读锁 diff --git a/docs/api/threading/read-write-lock/readunlock.md b/docs/api/threading/read-write-lock/readunlock.md deleted file mode 100644 index d616103e..00000000 --- a/docs/api/threading/read-write-lock/readunlock.md +++ /dev/null @@ -1,38 +0,0 @@ -# ReadWriteLock::ReadUnlock - -```cpp -void ReadUnlock() -``` - -释放读锁。如果这是最后一个读者,将唤醒等待中的写者。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**注意:** 必须与 ReadLock 配对使用,且在持有读锁的线程中调用。 - -**示例:** - -```cpp -#include "XCEngine/Threading/ReadWriteLock.h" - -XCEngine::Threading::ReadWriteLock rwLock; -float sharedData = 0.0f; - -float GetData() { - rwLock.ReadLock(); - float data = sharedData; - rwLock.ReadUnlock(); - return data; -} -``` - -## 相关文档 - -- [`ReadWriteLock`](read-write-lock.md) - 返回类总览 -- [`ReadLock`](readlock.md) - 获取读锁 diff --git a/docs/api/threading/read-write-lock/writelock.md b/docs/api/threading/read-write-lock/writelock.md deleted file mode 100644 index 3ea58794..00000000 --- a/docs/api/threading/read-write-lock/writelock.md +++ /dev/null @@ -1,41 +0,0 @@ -# ReadWriteLock::WriteLock - -```cpp -void WriteLock() -``` - -获取写锁(独占)。如果有读者持有锁或有其他写者正在等待,当前线程将阻塞,直到获得独占访问权。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** 平均 O(1),写者饥饿时可能 O(n) - -**注意:** -- 写锁为独占访问,持有期间不允许任何读锁或写锁。 -- 写锁具有优先权,会阻塞后续到达的读者。 -- 同一线程不可重复 WriteLock。 - -**示例:** - -```cpp -#include "XCEngine/Threading/ReadWriteLock.h" -#include - -XCEngine::Threading::ReadWriteLock rwLock; -std::vector buffer; - -void Append(int value) { - rwLock.WriteLock(); - buffer.push_back(value); - rwLock.WriteUnlock(); -} -``` - -## 相关文档 - -- [`ReadWriteLock`](read-write-lock.md) - 返回类总览 -- [`WriteUnlock`](writeunlock.md) - 释放写锁 diff --git a/docs/api/threading/read-write-lock/writeunlock.md b/docs/api/threading/read-write-lock/writeunlock.md deleted file mode 100644 index 3d8b75ad..00000000 --- a/docs/api/threading/read-write-lock/writeunlock.md +++ /dev/null @@ -1,39 +0,0 @@ -# ReadWriteLock::WriteUnlock - -```cpp -void WriteUnlock() -``` - -释放写锁。唤醒所有等待中的读者和下一个写者。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**注意:** 必须在持有写锁的线程中调用。 - -**示例:** - -```cpp -#include "XCEngine/Threading/ReadWriteLock.h" -#include -#include - -XCEngine::Threading::ReadWriteLock rwLock; -std::unordered_map cache; - -void UpdateCache(const std::string& key, int value) { - rwLock.WriteLock(); - cache[key] = value; - rwLock.WriteUnlock(); -} -``` - -## 相关文档 - -- [`ReadWriteLock`](read-write-lock.md) - 返回类总览 -- [`WriteLock`](writelock.md) - 获取写锁 diff --git a/docs/api/threading/spinlock/lock-stl.md b/docs/api/threading/spinlock/lock-stl.md deleted file mode 100644 index e129a64a..00000000 --- a/docs/api/threading/spinlock/lock-stl.md +++ /dev/null @@ -1,31 +0,0 @@ -# SpinLock::lock - -```cpp -void lock() -``` - -STL 兼容的 `lock()` 方法,与 [`Lock`](lock.md) 等效。满足 STL `Lockable` 概念要求。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** 平均 O(1),最坏情况取决于竞争程度 - -**线程安全:** ✅ - -**示例:** - -```cpp -Threading::SpinLock spinLock; - -void STLCompatibleUsage() { - spinLock.lock(); - // 临界区操作 - spinLock.unlock(); -} -``` - -## 相关文档 - -- [SpinLock 总览](spinlock.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/threading/spinlock/lock.md b/docs/api/threading/spinlock/lock.md deleted file mode 100644 index ef2553bd..00000000 --- a/docs/api/threading/spinlock/lock.md +++ /dev/null @@ -1,35 +0,0 @@ -# SpinLock::Lock - -```cpp -void Lock() -``` - -获取自旋锁。如果锁已被其他线程持有,则使用忙等待(spin)持续轮询,直到获取到锁。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** 平均 O(1),最坏情况取决于竞争程度 - -**注意:** -- 适用于临界区极短(几个 CPU 指令)的场景,避免线程切换开销。 -- 在锁持有时间较长或多核竞争激烈时,会浪费大量 CPU 周期,此时应使用 Mutex。 -- 同一线程对同一个 SpinLock 重复加锁会导致死锁。 - -**示例:** - -```cpp -Threading::SpinLock spinLock; -int64_t fastCounter = 0; - -void IncrementFast() { - spinLock.Lock(); - ++fastCounter; - spinLock.Unlock(); -} -``` - -## 相关文档 - -- [SpinLock 总览](spinlock.md) - 返回类总览 diff --git a/docs/api/threading/spinlock/spinlock.md b/docs/api/threading/spinlock/spinlock.md deleted file mode 100644 index 8bb2ee06..00000000 --- a/docs/api/threading/spinlock/spinlock.md +++ /dev/null @@ -1,56 +0,0 @@ -# SpinLock - -**命名空间**: `XCEngine::Threading` - -**类型**: `class` - -**头文件**: `XCEngine/Threading/SpinLock.h` - -**描述**: 自旋锁封装类,使用原子操作实现,适用于保护极短的临界区。 - -## 概述 - -`SpinLock` 是一个轻量级的自旋锁实现,使用 `std::atomic_flag` 的 test-and-set 操作。它在获取锁失败时不断轮询,不会导致线程切换,非常适合保护非常短的临界区(如简单的计数器递增)。 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Lock`](lock.md) | 获取锁(忙等待) | -| [`Unlock`](unlock.md) | 释放锁 | -| [`TryLock`](trylock.md) | 尝试获取锁(非阻塞) | -| [`lock`](lock-stl.md) | STL 兼容的 Lock | -| [`unlock`](unlock-stl.md) | STL 兼容的 Unlock | -| [`try_lock`](try-lock.md) | STL 兼容的 TryLock | - -## STL 兼容方法 - -支持 `lock()`, `unlock()`, `try_lock()` 以兼容 STL 的 lockable 概念。**注意**:这些方法为非 `const` 成员函数。 - -## 使用示例 - -```cpp -Threading::SpinLock spinLock; -int counter = 0; - -// 保护极短的临界区 -void FastIncrement() { - spinLock.Lock(); - ++counter; - spinLock.Unlock(); -} - -// TryLock 用法 -void SafeIncrement() { - if (spinLock.TryLock()) { - ++counter; - spinLock.Unlock(); - } -} -``` - -## 相关文档 - -- [Mutex](../mutex/mutex.md) - 互斥锁 -- [ReadWriteLock](../read-write-lock/read-write-lock.md) - 读写锁 -- [../threading.md](../threading.md) - 模块总览 diff --git a/docs/api/threading/spinlock/try-lock.md b/docs/api/threading/spinlock/try-lock.md deleted file mode 100644 index 00e638c9..00000000 --- a/docs/api/threading/spinlock/try-lock.md +++ /dev/null @@ -1,32 +0,0 @@ -# SpinLock::try_lock - -```cpp -bool try_lock() -``` - -STL 兼容的 `try_lock()` 方法,与 [`TryLock`](trylock.md) 等效。满足 STL `Lockable` 概念要求。 - -**参数:** 无 - -**返回:** `bool` - 获取成功返回 true,锁不可用返回 false - -**复杂度:** O(1) - -**线程安全:** ✅ - -**示例:** - -```cpp -Threading::SpinLock spinLock; - -void STLCompatibleTry() { - if (spinLock.try_lock()) { - // 临界区操作 - spinLock.unlock(); - } -} -``` - -## 相关文档 - -- [SpinLock 总览](spinlock.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/threading/spinlock/trylock.md b/docs/api/threading/spinlock/trylock.md deleted file mode 100644 index f56a41cb..00000000 --- a/docs/api/threading/spinlock/trylock.md +++ /dev/null @@ -1,31 +0,0 @@ -# SpinLock::TryLock - -```cpp -bool TryLock() -``` - -尝试获取自旋锁(非阻塞)。如果锁可用则立即获取并返回 true,否则立即返回 false。 - -**参数:** 无 - -**返回:** `bool` - 获取成功返回 true,锁不可用返回 false - -**复杂度:** O(1) - -**示例:** - -```cpp -Threading::SpinLock spinLock; -int64_t counter = 0; - -void TryIncrement() { - if (spinLock.TryLock()) { - ++counter; - spinLock.Unlock(); - } -} -``` - -## 相关文档 - -- [SpinLock 总览](spinlock.md) - 返回类总览 diff --git a/docs/api/threading/spinlock/unlock-stl.md b/docs/api/threading/spinlock/unlock-stl.md deleted file mode 100644 index 87eb452d..00000000 --- a/docs/api/threading/spinlock/unlock-stl.md +++ /dev/null @@ -1,31 +0,0 @@ -# SpinLock::unlock - -```cpp -void unlock() -``` - -STL 兼容的 `unlock()` 方法,与 [`Unlock`](unlock.md) 等效。满足 STL `Lockable` 概念要求。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(1) - -**线程安全:** ✅ - -**示例:** - -```cpp -Threading::SpinLock spinLock; - -void STLCompatibleUsage() { - spinLock.lock(); - // 临界区操作 - spinLock.unlock(); -} -``` - -## 相关文档 - -- [SpinLock 总览](spinlock.md) - 返回类总览 \ No newline at end of file diff --git a/docs/api/threading/spinlock/unlock.md b/docs/api/threading/spinlock/unlock.md deleted file mode 100644 index 01703dd7..00000000 --- a/docs/api/threading/spinlock/unlock.md +++ /dev/null @@ -1,32 +0,0 @@ -# SpinLock::Unlock - -```cpp -void Unlock() -``` - -释放自旋锁,允许其他等待中的线程获取该锁。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(1) - -**注意:** 必须在持有锁的线程中调用 Unlock。 - -**示例:** - -```cpp -Threading::SpinLock spinLock; -int64_t counter = 0; - -void SafeAdd(int64_t value) { - spinLock.Lock(); - counter += value; - spinLock.Unlock(); -} -``` - -## 相关文档 - -- [SpinLock 总览](spinlock.md) - 返回类总览 diff --git a/docs/api/threading/task-group/add-dependency.md b/docs/api/threading/task-group/add-dependency.md deleted file mode 100644 index 8074a4c9..00000000 --- a/docs/api/threading/task-group/add-dependency.md +++ /dev/null @@ -1,90 +0,0 @@ -# TaskGroup::AddDependency - -```cpp -void AddDependency(uint64_t taskId, uint64_t dependsOn); -``` - -为任务添加依赖关系。指定的任务 `taskId` 将在 `dependsOn` 任务完成后才会开始执行。 - -**参数:** -- `taskId` - 从属任务的 ID -- `dependsOn` - 被依赖任务的 ID,taskId 将在此任务完成后才执行 - -**返回:** 无 - -**线程安全:** ✅ 线程安全 - -**示例:** - -```cpp -#include "XCEngine/Threading/TaskGroup.h" -#include "XCEngine/Threading/Task.h" -#include -#include - -using namespace XCEngine::Threading; - -int main() { - TaskGroup group; - - uint64_t loadData = group.AddTask( - []() { std::cout << "Loading data...\n"; }, - TaskPriority::High - ); - - uint64_t processData = group.AddTask( - []() { std::cout << "Processing data...\n"; }, - TaskPriority::Normal - ); - - uint64_t saveData = group.AddTask( - []() { std::cout << "Saving data...\n"; }, - TaskPriority::Low - ); - - group.AddDependency(processData, loadData); - group.AddDependency(saveData, processData); - - std::cout << "Execution order: loadData -> processData -> saveData\n"; - - group.Wait(); - return 0; -} -``` - -## 相关文档 - -- [TaskGroup 总览](task-group.md) - 返回类总览 - -## 详细描述 - -`AddDependency` 方法用于设置任务间的依赖关系。`taskId` 指定的任务将等待 `dependsOn` 指定的任务完成后才能开始执行。 - -依赖关系必须在任务执行前设置,建议在所有任务添加完成后统一设置依赖。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `taskId` | `uint64_t` | 依赖其他任务的任务ID | -| `dependsOn` | `uint64_t` | 被依赖的任务ID | - -## 返回值 - -无 - -## 示例 - -```cpp -TaskGroup* group = TaskSystem::Get().CreateTaskGroup(); - -uint64_t loadData = group->AddTask([]() { /* 加载数据 */ }); -uint64_t processData = group->AddTask([]() { /* 处理数据 */ }); -uint64_t saveData = group->AddTask([]() { /* 保存数据 */ }); - -// processData必须在loadData完成后才能执行 -group->AddDependency(processData, loadData); - -// saveData必须在processData完成后才能执行 -group->AddDependency(saveData, processData); -``` diff --git a/docs/api/threading/task-group/add-task-callback.md b/docs/api/threading/task-group/add-task-callback.md deleted file mode 100644 index 6a0f3f81..00000000 --- a/docs/api/threading/task-group/add-task-callback.md +++ /dev/null @@ -1,55 +0,0 @@ -# TaskGroup::AddTask (Callback) - -```cpp -uint64_t AddTask(Callback&& func, TaskPriority priority = TaskPriority::Normal); -``` - -将函数回调添加为任务。该方法接受一个可调用对象(lambda、函数指针、std::function 等)作为任务执行体。 - -**参数:** -- `func` - 可调用对象,执行任务逻辑 -- `priority` - 任务优先级,默认为 Normal - -**返回:** 返回分配给任务的唯一 ID,可用于后续添加依赖关系 - -**线程安全:** ✅ 线程安全 - -**示例:** - -```cpp -#include "XCEngine/Threading/TaskGroup.h" -#include "XCEngine/Threading/Task.h" -#include - -using namespace XCEngine::Threading; - -int main() { - TaskGroup group; - - uint64_t task1 = group.AddTask( - []() { std::cout << "Task 1 executing\n"; }, - TaskPriority::Normal - ); - - uint64_t task2 = group.AddTask( - []() { std::cout << "Task 2 executing (High priority)\n"; }, - TaskPriority::High - ); - - uint64_t task3 = group.AddTask( - []() { std::cout << "Task 3 executing (Low priority)\n"; }, - TaskPriority::Low - ); - - group.AddDependency(task2, task1); - - group.Wait(); - return 0; -} -``` - -## 相关文档 - -- [TaskGroup 总览](task-group.md) - 返回类总览 -- [AddTask(ITask)](add-task.md) - 添加 ITask 对象形式的任务 -- [TaskPriority](task-priority.md) - 任务优先级说明 diff --git a/docs/api/threading/task-group/add-task.md b/docs/api/threading/task-group/add-task.md deleted file mode 100644 index 609f0fd9..00000000 --- a/docs/api/threading/task-group/add-task.md +++ /dev/null @@ -1,62 +0,0 @@ -# TaskGroup::AddTask - -```cpp -uint64_t AddTask(std::unique_ptr task); -uint64_t AddTask(Callback&& func, TaskPriority priority = TaskPriority::Normal); -``` - -将任务添加到任务组。支持两种添加方式:传入 ITask 对象或传入回调函数。 - -**参数:** -- `task` - 唯一指针管理的 ITask 对象 -- `func` - 要执行的回调函数 -- `priority` - 任务优先级,默认为 `TaskPriority::Normal` - -**返回:** 返回分配的任务 ID,可用于设置依赖关系 - -**线程安全:** ✅ 线程安全 - -**复杂度:** O(1) - -**示例:** - -```cpp -#include "XCEngine/Threading/TaskGroup.h" -#include "XCEngine/Threading/Task.h" -#include -#include - -using namespace XCEngine::Threading; - -class MyTask : public ITask { -public: - explicit MyTask(const std::string& name) : m_name(name) {} - - void Execute() override { - std::cout << "Executing: " << m_name << "\n"; - } - -private: - std::string m_name; -}; - -int main() { - TaskGroup group; - - auto task = std::make_unique("DataLoading"); - uint64_t taskId = group.AddTask(std::move(task)); - - uint64_t callbackId = group.AddTask([]() { - std::cout << "Lambda task executing\n"; - }, TaskPriority::High); - - group.AddDependency(callbackId, taskId); - - group.Wait(); - return 0; -} -``` - -## 相关文档 - -- [TaskGroup 总览](task-group.md) - 返回类总览 diff --git a/docs/api/threading/task-group/cancel.md b/docs/api/threading/task-group/cancel.md deleted file mode 100644 index 55d88730..00000000 --- a/docs/api/threading/task-group/cancel.md +++ /dev/null @@ -1,49 +0,0 @@ -# TaskGroup::Cancel - -```cpp -void Cancel(); -``` - -取消任务组中所有尚未开始执行的任务。已经执行完成的任务和正在执行的任务不受影响。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ 线程安全 - -**示例:** - -```cpp -#include "XCEngine/Threading/TaskGroup.h" -#include "XCEngine/Threading/Task.h" -#include -#include - -using namespace XCEngine::Threading; - -int main() { - TaskGroup group; - - for (int i = 0; i < 10; ++i) { - group.AddTask([i]() { - std::cout << "Task " << i << " executing\n"; - std::this_thread::sleep_for(std::chrono::milliseconds(100)); - }); - } - - std::this_thread::sleep_for(std::chrono::milliseconds(150)); - - std::cout << "Cancelling remaining tasks...\n"; - group.Cancel(); - - group.Wait(); - std::cout << "Tasks cancelled. Final progress: " << (group.GetProgress() * 100) << "%\n"; - - return 0; -} -``` - -## 相关文档 - -- [TaskGroup 总览](task-group.md) - 返回类总览 diff --git a/docs/api/threading/task-group/constructor.md b/docs/api/threading/task-group/constructor.md deleted file mode 100644 index 0222744c..00000000 --- a/docs/api/threading/task-group/constructor.md +++ /dev/null @@ -1,34 +0,0 @@ -# TaskGroup::TaskGroup - -```cpp -TaskGroup(); -``` - -默认构造函数。构造一个空的任务组。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**复杂度:** O(1) - -**注意:** -- 构造后的任务组不包含任何任务。 -- TaskGroup 可以独立使用,也可以通过 TaskSystem::CreateTaskGroup() 创建(后者会将任务组注册到任务系统管理)。 - -**示例:** - -```cpp -#include "XCEngine/Threading/TaskGroup.h" - -XCEngine::Threading::TaskGroup group; -// 使用 group 添加任务... -``` - -## 相关文档 - -- [`TaskGroup`](task-group.md) - 返回类总览 -- [`AddTask`](add-task.md) - 添加任务 -- [`Wait`](wait.md) - 等待任务完成 diff --git a/docs/api/threading/task-group/destructor.md b/docs/api/threading/task-group/destructor.md deleted file mode 100644 index 30c96187..00000000 --- a/docs/api/threading/task-group/destructor.md +++ /dev/null @@ -1,40 +0,0 @@ -# TaskGroup::~TaskGroup - -```cpp -~TaskGroup(); -``` - -析构函数。销毁任务组。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ⚠️ - -**复杂度:** O(n),n 为任务组中的任务数 - -**注意:** -- 析构前会等待所有任务完成。 -- 如果有任务正在执行,会等待其完成。 -- 未执行的任务将被取消。 - -**示例:** - -```cpp -#include "XCEngine/Threading/TaskGroup.h" - -{ - XCEngine::Threading::TaskGroup group; - group.AddTask([]() { - // 执行任务... - }); - group.Wait(); -} // group 在这里销毁 -``` - -## 相关文档 - -- [`TaskGroup`](task-group.md) - 返回类总览 -- [`Cancel`](cancel.md) - 取消任务 -- [`Wait`](wait.md) - 等待任务完成 diff --git a/docs/api/threading/task-group/get-progress.md b/docs/api/threading/task-group/get-progress.md deleted file mode 100644 index 5176967e..00000000 --- a/docs/api/threading/task-group/get-progress.md +++ /dev/null @@ -1,50 +0,0 @@ -# TaskGroup::GetProgress - -```cpp -float GetProgress() const; -``` - -获取任务组的完成进度。 - -**参数:** 无 - -**返回:** -- `float` - 0.0 到 1.0 之间的进度值,0.0 表示没有任务或都没有完成,1.0 表示全部完成 - -**线程安全:** ✅ 线程安全 - -**示例:** - -```cpp -#include "XCEngine/Threading/TaskGroup.h" -#include "XCEngine/Threading/Task.h" -#include -#include - -using namespace XCEngine::Threading; - -int main() { - TaskGroup group; - - for (int i = 0; i < 4; ++i) { - group.AddTask([i]() { - std::this_thread::sleep_for(std::chrono::milliseconds(100)); - }); - } - - while (!group.IsComplete()) { - float progress = group.GetProgress(); - std::cout << "Progress: " << (progress * 100) << "%\n"; - std::this_thread::sleep_for(std::chrono::milliseconds(50)); - } - - std::cout << "Final Progress: " << (group.GetProgress() * 100) << "%\n"; - - return 0; -} -``` - -## 相关文档 - -- [TaskGroup 总览](task-group.md) - 返回类总览 -- [IsComplete](is-complete.md) - 检查是否完成 diff --git a/docs/api/threading/task-group/is-complete.md b/docs/api/threading/task-group/is-complete.md deleted file mode 100644 index ab4de0c2..00000000 --- a/docs/api/threading/task-group/is-complete.md +++ /dev/null @@ -1,50 +0,0 @@ -# TaskGroup::IsComplete - -```cpp -bool IsComplete() const; -``` - -检查任务组中的所有任务是否已完成。 - -**参数:** 无 - -**返回:** -- `true` - 所有任务已完成(包括被取消的) -- `false` - 仍有任务在执行或等待执行 - -**线程安全:** ✅ 线程安全 - -**示例:** - -```cpp -#include "XCEngine/Threading/TaskGroup.h" -#include "XCEngine/Threading/Task.h" -#include -#include - -using namespace XCEngine::Threading; - -int main() { - TaskGroup group; - - group.AddTask([]() { - std::this_thread::sleep_for(std::chrono::milliseconds(100)); - std::cout << "Task completed\n"; - }); - - std::cout << "Immediately after AddTask, IsComplete: " - << (group.IsComplete() ? "true" : "false") << "\n"; - - group.Wait(); - - std::cout << "After Wait, IsComplete: " - << (group.IsComplete() ? "true" : "false") << "\n"; - - return 0; -} -``` - -## 相关文档 - -- [TaskGroup 总览](task-group.md) - 返回类总览 -- [GetProgress](get-progress.md) - 获取进度百分比 diff --git a/docs/api/threading/task-group/set-complete-callback.md b/docs/api/threading/task-group/set-complete-callback.md deleted file mode 100644 index 1d8c3851..00000000 --- a/docs/api/threading/task-group/set-complete-callback.md +++ /dev/null @@ -1,82 +0,0 @@ -# TaskGroup::SetCompleteCallback - -```cpp -void SetCompleteCallback(Callback&& callback); -``` - -设置任务组完成时的回调函数。当所有任务都执行完成后(包括被取消的任务),该回调将被调用。 - -**参数:** -- `callback` - 可调用对象,在所有任务完成后执行 - -**返回:** 无 - -**线程安全:** ✅ 线程安全 - -**示例:** - -```cpp -#include "XCEngine/Threading/TaskGroup.h" -#include "XCEngine/Threading/Task.h" -#include - -using namespace XCEngine::Threading; - -int main() { - TaskGroup group; - - group.SetCompleteCallback([]() { - std::cout << "All tasks have been completed!\n"; - }); - - for (int i = 0; i < 3; ++i) { - group.AddTask([i]() { - std::cout << "Task " << i << " executing\n"; - }); - } - - group.Wait(); - std::cout << "Back in main after Wait()\n"; - - return 0; -} -``` - -## 相关文档 - -- [TaskGroup 总览](task-group.md) - 返回类总览 - -## 详细描述 - -`SetCompleteCallback` 方法用于设置当任务组中所有任务都完成时调用的回调函数。回调在最后一个任务完成时触发。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `callback` | `Callback&&` | 回调函数,类型为 `std::function` | - -## 返回值 - -无 - -## 示例 - -```cpp -TaskGroup* group = TaskSystem::Get().CreateTaskGroup(); - -group->SetCompleteCallback([]() { - printf("All tasks in group have completed!\n"); -}); - -for (int i = 0; i < 10; ++i) { - group->AddTask([i]() { - printf("Task %d completed\n", i); - }); -} - -// 等待所有任务完成,回调会被触发 -group->Wait(); - -TaskSystem::Get().DestroyTaskGroup(group); -``` diff --git a/docs/api/threading/task-group/task-group.md b/docs/api/threading/task-group/task-group.md deleted file mode 100644 index feb3f782..00000000 --- a/docs/api/threading/task-group/task-group.md +++ /dev/null @@ -1,88 +0,0 @@ -# TaskGroup - -**命名空间**: `XCEngine::Threading` - -**类型**: `class` - -**头文件**: `XCEngine/Threading/TaskGroup.h` - -**描述**: 管理一组相关任务的执行和同步 - -## 概述 - -TaskGroup 用于将多个相关任务组织在一起,统一管理它们的执行和同步。任务组内的任务可以声明依赖关系,确保任务按照正确的顺序执行。支持任务优先级设置、完成回调、进度查询和取消操作。 - -主要功能: -- 添加任务(ITask 对象或函数回调) -- 声明任务间依赖关系 -- 等待所有任务完成 -- 设置完成回调 -- 查询完成进度 -- 取消未执行的任务 - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Task()`](constructor.md) | 默认构造函数 | -| [`~Task()`](destructor.md) | 析构函数 | -| [`AddTask`](add-task.md) | 添加任务到组(支持 ITask 或 Callback) | -| [`AddDependency`](add-dependency.md) | 添加任务依赖关系 | -| [`Wait`](wait.md) | 阻塞等待所有任务完成 | -| [`WaitFor`](wait-for.md) | 等待指定超时时间 | -| [`SetCompleteCallback`](set-complete-callback.md) | 设置完成回调函数 | -| [`IsComplete`](is-complete.md) | 检查所有任务是否完成 | -| [`GetProgress`](get-progress.md) | 获取任务组完成进度 | -| [`Cancel`](cancel.md) | 取消所有未执行的任务 | - -## 使用示例 - -```cpp -#include "XCEngine/Threading/TaskGroup.h" -#include "XCEngine/Threading/Task.h" -#include - -using namespace XCEngine::Threading; - -class MyTask : public ITask { -public: - explicit MyTask(const std::string& name) : m_name(name) {} - - void Execute() override { - std::cout << "Task " << m_name << " executing\n"; - } - - void OnComplete() override { - std::cout << "Task " << m_name << " completed\n"; - } - -private: - std::string m_name; -}; - -int main() { - TaskGroup group; - - uint64_t task1 = group.AddTask(std::make_unique("Task1")); - uint64_t task2 = group.AddTask([]() { - std::cout << "Lambda task executing\n"; - }, TaskPriority::High); - - group.AddDependency(task2, task1); - - group.SetCompleteCallback([]() { - std::cout << "All tasks completed!\n"; - }); - - group.Wait(); - - std::cout << "Progress: " << group.GetProgress() * 100 << "%\n"; - - return 0; -} -``` - -## 相关文档 - -- [ITask](../task/task.md) - 任务接口基类 -- [TaskSystem](../task-system/task-system.md) - 任务调度系统 diff --git a/docs/api/threading/task-group/task-priority.md b/docs/api/threading/task-group/task-priority.md deleted file mode 100644 index 8af36346..00000000 --- a/docs/api/threading/task-group/task-priority.md +++ /dev/null @@ -1,59 +0,0 @@ -# TaskPriority - -**命名空间**: `XCEngine::Threading` - -**类型**: `enum class` - -**头文件**: `XCEngine/Threading/Task.h` - -## 概述 - -`TaskPriority` 定义了任务的优先级,用于控制任务在任务系统中的执行顺序。优先级较高的任务会在优先级较低的任务之前执行。 - -## 枚举值 - -| 枚举值 | 数值 | 描述 | -|--------|------|------| -| `Critical` | 0 | 最高优先级,关键任务 | -| `High` | 1 | 高优先级 | -| `Normal` | 2 | 普通优先级(默认) | -| `Low` | 3 | 低优先级 | -| `Idle` | 4 | 最低优先级,仅在无其他任务时执行 | - -## 使用示例 - -```cpp -#include "XCEngine/Threading/TaskGroup.h" -#include "XCEngine/Threading/Task.h" -#include - -using namespace XCEngine::Threading; - -int main() { - TaskGroup group; - - group.AddTask([]() { - std::cout << "Critical task\n"; - }, TaskPriority::Critical); - - group.AddTask([]() { - std::cout << "High priority task\n"; - }, TaskPriority::High); - - group.AddTask([]() { - std::cout << "Normal task\n"; - }, TaskPriority::Normal); - - group.AddTask([]() { - std::cout << "Low priority task\n"; - }, TaskPriority::Low); - - group.Wait(); - return 0; -} -``` - -## 相关文档 - -- [TaskGroup 总览](task-group.md) - 任务组类总览 -- [ITask](../task/task.md) - 任务接口基类 diff --git a/docs/api/threading/task-group/wait-for.md b/docs/api/threading/task-group/wait-for.md deleted file mode 100644 index 8b6c024e..00000000 --- a/docs/api/threading/task-group/wait-for.md +++ /dev/null @@ -1,89 +0,0 @@ -# TaskGroup::WaitFor - -```cpp -bool WaitFor(std::chrono::milliseconds timeout); -``` - -等待任务组中的所有任务完成,最多等待指定的超时时间。 - -**参数:** -- `timeout` - 最大等待时间 - -**返回:** -- `true` - 所有任务在超时前已完成 -- `false` - 等待超时,仍有任务未完成 - -**线程安全:** ✅ 线程安全 - -**示例:** - -```cpp -#include "XCEngine/Threading/TaskGroup.h" -#include "XCEngine/Threading/Task.h" -#include -#include - -using namespace XCEngine::Threading; - -int main() { - TaskGroup group; - - group.AddTask([]() { - std::this_thread::sleep_for(std::chrono::seconds(5)); - std::cout << "Long running task completed\n"; - }); - - std::cout << "Waiting with 1 second timeout...\n"; - - if (group.WaitFor(std::chrono::milliseconds(1000))) { - std::cout << "All tasks completed within timeout\n"; - } else { - std::cout << "Timeout! Some tasks still running.\n"; - } - - group.Wait(); - std::cout << "All tasks finally completed after second wait.\n"; - - return 0; -} -``` - -## 相关文档 - -- [TaskGroup 总览](task-group.md) - 返回类总览 -- [Wait](wait.md) - 无限等待 - -## 详细描述 - -`WaitFor` 方法会阻塞当前线程,直到所有任务完成或超过指定的超时时间。 - -## 参数 - -| 参数 | 类型 | 描述 | -|------|------|------| -| `timeout` | `std::chrono::milliseconds` | 超时时间(毫秒) | - -## 返回值 - -返回 `bool` 类型: -- `true`: 所有任务在超时前完成 -- `false`: 发生超时 - -## 示例 - -```cpp -TaskGroup* group = TaskSystem::Get().CreateTaskGroup(); - -group->AddTask([]() { - std::this_thread::sleep_for(std::chrono::seconds(5)); -}); - -// 等待3秒超时 -if (group->WaitFor(std::chrono::milliseconds(3000))) { - printf("All tasks completed on time\n"); -} else { - printf("Wait timed out\n"); -} - -TaskSystem::Get().DestroyTaskGroup(group); -``` diff --git a/docs/api/threading/task-group/wait.md b/docs/api/threading/task-group/wait.md deleted file mode 100644 index 2b7ab31d..00000000 --- a/docs/api/threading/task-group/wait.md +++ /dev/null @@ -1,47 +0,0 @@ -# TaskGroup::Wait - -```cpp -void Wait(); -``` - -阻塞当前线程,直到任务组中的所有任务完成执行。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ 线程安全 - -**示例:** - -```cpp -#include "XCEngine/Threading/TaskGroup.h" -#include "XCEngine/Threading/Task.h" -#include -#include - -using namespace XCEngine::Threading; - -int main() { - TaskGroup group; - - for (int i = 0; i < 5; ++i) { - group.AddTask([i]() { - std::cout << "Task " << i << " started\n"; - std::this_thread::sleep_for(std::chrono::milliseconds(100)); - std::cout << "Task " << i << " finished\n"; - }); - } - - std::cout << "Waiting for all tasks...\n"; - group.Wait(); - std::cout << "All tasks completed!\n"; - - return 0; -} -``` - -## 相关文档 - -- [TaskGroup 总览](task-group.md) - 返回类总览 -- [WaitFor](wait-for.md) - 带超时的等待 diff --git a/docs/api/threading/task-system-config/enable-task-profiling.md b/docs/api/threading/task-system-config/enable-task-profiling.md deleted file mode 100644 index 415b28cc..00000000 --- a/docs/api/threading/task-system-config/enable-task-profiling.md +++ /dev/null @@ -1,29 +0,0 @@ -# TaskSystemConfig::enableTaskProfiling - -```cpp -bool enableTaskProfiling = true -``` - -是否启用任务性能分析。启用后系统会记录任务的执行时间、等待时间等统计信息,可用于性能调试。 - -**类型:** `bool` - -**默认值:** `true` - -**当前状态:** 此配置项当前未实际使用,任务系统不会记录性能分析数据。 - -**示例:** - -```cpp -TaskSystemConfig config; -config.workerThreadCount = 4; -config.enableTaskProfiling = true; // 预留配置项 - -#ifdef NDEBUG -config.enableTaskProfiling = false; // 预留配置项 -#endif -``` - -## 相关文档 - -- [TaskSystemConfig 总览](task-system-config.md) - 返回类总览 diff --git a/docs/api/threading/task-system-config/max-task-queue-size.md b/docs/api/threading/task-system-config/max-task-queue-size.md deleted file mode 100644 index 204bc107..00000000 --- a/docs/api/threading/task-system-config/max-task-queue-size.md +++ /dev/null @@ -1,24 +0,0 @@ -# TaskSystemConfig::maxTaskQueueSize - -```cpp -uint32_t maxTaskQueueSize = 1024 -``` - -任务队列的最大容量。当队列满时,新提交的任务将阻塞直到有空间。 - -**类型:** `uint32_t` - -**默认值:** `1024` - -**当前状态:** 此配置项当前未实际强制限制,任务队列可以无限增长(受系统内存限制)。 - -**示例:** - -```cpp -TaskSystemConfig config; -config.maxTaskQueueSize = 4096; // 预留配置项(当前未强制限制) -``` - -## 相关文档 - -- [TaskSystemConfig 总览](task-system-config.md) - 返回类总览 diff --git a/docs/api/threading/task-system-config/steal-tasks.md b/docs/api/threading/task-system-config/steal-tasks.md deleted file mode 100644 index b864cc86..00000000 --- a/docs/api/threading/task-system-config/steal-tasks.md +++ /dev/null @@ -1,25 +0,0 @@ -# TaskSystemConfig::stealTasks - -```cpp -bool stealTasks = true -``` - -是否启用工作窃取。当启用时,空闲的工作线程可以从其他繁忙线程的任务队列中窃取任务,提高整体吞吐率。 - -**类型:** `bool` - -**默认值:** `true` - -**当前状态:** 此配置项当前未实际实现,工作窃取功能不可用。所有工作线程仅从全局任务队列获取任务。 - -**示例:** - -```cpp -TaskSystemConfig config; -config.workerThreadCount = 8; -config.stealTasks = true; // 预留配置项(当前未实现) -``` - -## 相关文档 - -- [TaskSystemConfig 总览](task-system-config.md) - 返回类总览 diff --git a/docs/api/threading/task-system-config/task-system-config.md b/docs/api/threading/task-system-config/task-system-config.md deleted file mode 100644 index 2fd33d50..00000000 --- a/docs/api/threading/task-system-config/task-system-config.md +++ /dev/null @@ -1,36 +0,0 @@ -# TaskSystemConfig - -**命名空间**: `XCEngine::Threading` - -**类型**: `struct` - -**头文件**: `XCEngine/Threading/TaskSystemConfig.h` - -**描述**: 任务系统配置结构体,用于初始化 TaskSystem 的行为参数。 - -## 结构体成员 - -| 成员 | 类型 | 描述 | 默认值 | -|------|------|------|--------| -| [`workerThreadCount`](worker-thread-count.md) | `uint32_t` | 工作线程数量(0=自动检测 CPU 核心数) | 0 | -| [`enableTaskProfiling`](enable-task-profiling.md) | `bool` | 启用任务性能分析(当前未使用) | true | -| [`stealTasks`](steal-tasks.md) | `bool` | 启用工作窃取(当前未实现) | true | -| [`maxTaskQueueSize`](max-task-queue-size.md) | `uint32_t` | 最大任务队列大小(当前未强制限制) | 1024 | -| [`threadStackSize`](thread-stack-size.md) | `uint32_t` | 线程栈大小(当前未使用,0=系统默认) | 0 | - -## 使用示例 - -```cpp -TaskSystemConfig config; -config.workerThreadCount = std::thread::hardware_concurrency(); -config.enableTaskProfiling = true; -config.stealTasks = true; -config.maxTaskQueueSize = 2048; - -TaskSystem::Get().Initialize(config); -``` - -## 相关文档 - -- [TaskSystem](../task-system/task-system.md) - 任务系统 -- [../threading.md](../threading.md) - 模块总览 diff --git a/docs/api/threading/task-system-config/thread-stack-size.md b/docs/api/threading/task-system-config/thread-stack-size.md deleted file mode 100644 index d5061203..00000000 --- a/docs/api/threading/task-system-config/thread-stack-size.md +++ /dev/null @@ -1,28 +0,0 @@ -# TaskSystemConfig::threadStackSize - -```cpp -uint32_t threadStackSize = 0 -``` - -工作线程的栈大小(字节)。值为 0 时使用系统默认值。 - -**类型:** `uint32_t` - -**默认值:** `0`(使用系统默认) - -**当前状态:** 此配置项当前未实际使用,工作线程始终使用系统默认栈大小。 - -**示例:** - -```cpp -TaskSystemConfig config; -config.workerThreadCount = 4; -config.threadStackSize = 1024 * 1024; // 预留配置项(当前未实现) - -TaskSystemConfig defaultConfig; -defaultConfig.threadStackSize = 0; // 使用系统默认 -``` - -## 相关文档 - -- [TaskSystemConfig 总览](task-system-config.md) - 返回类总览 diff --git a/docs/api/threading/task-system-config/worker-thread-count.md b/docs/api/threading/task-system-config/worker-thread-count.md deleted file mode 100644 index b3507ede..00000000 --- a/docs/api/threading/task-system-config/worker-thread-count.md +++ /dev/null @@ -1,25 +0,0 @@ -# TaskSystemConfig::workerThreadCount - -```cpp -uint32_t workerThreadCount = 0 -``` - -工作线程数量。当值为 0 时,任务系统自动检测 `std::thread::hardware_concurrency()` 并使用该值。 - -**类型:** `uint32_t` - -**默认值:** `0`(自动检测) - -**示例:** - -```cpp -TaskSystemConfig config; -config.workerThreadCount = 4; // 使用 4 个工作线程 - -TaskSystemConfig autoConfig; -autoConfig.workerThreadCount = 0; // 自动检测(推荐) -``` - -## 相关文档 - -- [TaskSystemConfig 总览](task-system-config.md) - 返回类总览 diff --git a/docs/api/threading/task-system/create-task-group.md b/docs/api/threading/task-system/create-task-group.md deleted file mode 100644 index 0ab8d012..00000000 --- a/docs/api/threading/task-system/create-task-group.md +++ /dev/null @@ -1,41 +0,0 @@ -# TaskSystem::CreateTaskGroup - -```cpp -TaskGroup* CreateTaskGroup() -``` - -创建一个任务组用于批量管理多个任务。 - -**参数:** 无 - -**返回:** `TaskGroup*` - 新创建的任务组指针 - -**线程安全:** ✅ (内部使用 SpinLock 保护) - -**复杂度:** O(1) - -**注意:** -- 任务组必须通过 DestroyTaskGroup 显式销毁。 -- 任务组的所有权归调用者,TaskSystem 不负责销毁。 - -**示例:** - -```cpp -TaskGroup* group = TaskSystem::Get().CreateTaskGroup(); - -group->AddTask([]() { LoadTextures(); }); -group->AddTask([]() { LoadModels(); }); -group->AddTask([]() { LoadAudio(); }); - -group->SetCompleteCallback([]() { - printf("All resources loaded!\n"); -}); - -group->Wait(); -TaskSystem::Get().DestroyTaskGroup(group); -``` - -## 相关文档 - -- [TaskSystem 总览](task-system.md) - 返回类总览 -- [DestroyTaskGroup](destroy-task-group.md) - 销毁任务组 diff --git a/docs/api/threading/task-system/destroy-task-group.md b/docs/api/threading/task-system/destroy-task-group.md deleted file mode 100644 index 24187916..00000000 --- a/docs/api/threading/task-system/destroy-task-group.md +++ /dev/null @@ -1,34 +0,0 @@ -# TaskSystem::DestroyTaskGroup - -```cpp -void DestroyTaskGroup(TaskGroup* group) -``` - -销毁一个任务组并释放其资源。 - -**参数:** -- `group` - 要销毁的任务组指针 - -**返回:** 无 - -**线程安全:** ✅ (内部使用 SpinLock 保护) - -**复杂度:** O(1) - -**注意:** -- 销毁时如果还有未完成的任务,这些任务将被取消。 -- 传入 nullptr 无效果。 - -**示例:** - -```cpp -TaskGroup* group = TaskSystem::Get().CreateTaskGroup(); -// ... 添加任务 ... - -TaskSystem::Get().DestroyTaskGroup(group); -``` - -## 相关文档 - -- [TaskSystem 总览](task-system.md) - 返回类总览 -- [CreateTaskGroup](create-task-group.md) - 创建任务组 diff --git a/docs/api/threading/task-system/get-worker-thread-count.md b/docs/api/threading/task-system/get-worker-thread-count.md deleted file mode 100644 index e4acf71f..00000000 --- a/docs/api/threading/task-system/get-worker-thread-count.md +++ /dev/null @@ -1,27 +0,0 @@ -# TaskSystem::GetWorkerThreadCount - -```cpp -uint32_t GetWorkerThreadCount() const -``` - -获取工作线程的数量。 - -**参数:** 无 - -**返回:** `uint32_t` - 工作线程数量 - -**线程安全:** ✅ (只读操作) - -**复杂度:** O(1) - -**示例:** - -```cpp -TaskSystem::Get().Initialize(config); -uint32_t count = TaskSystem::Get().GetWorkerThreadCount(); -printf("Worker threads: %u\n", count); -``` - -## 相关文档 - -- [TaskSystem 总览](task-system.md) - 返回类总览 diff --git a/docs/api/threading/task-system/get.md b/docs/api/threading/task-system/get.md deleted file mode 100644 index a6d22f77..00000000 --- a/docs/api/threading/task-system/get.md +++ /dev/null @@ -1,26 +0,0 @@ -# TaskSystem::Get - -```cpp -static TaskSystem& Get() -``` - -获取 TaskSystem 单例实例。第一次调用时创建单例。 - -**参数:** 无 - -**返回:** `TaskSystem&` - 单例实例的引用 - -**复杂度:** O(1) - -**线程安全:** 线程安全 - -**示例:** - -```cpp -TaskSystem& system = TaskSystem::Get(); -system.Initialize(config); -``` - -## 相关文档 - -- [TaskSystem 总览](task-system.md) - 返回类总览 diff --git a/docs/api/threading/task-system/initialize.md b/docs/api/threading/task-system/initialize.md deleted file mode 100644 index 6e079458..00000000 --- a/docs/api/threading/task-system/initialize.md +++ /dev/null @@ -1,39 +0,0 @@ -# TaskSystem::Initialize - -```cpp -void Initialize(const TaskSystemConfig& config) -``` - -初始化任务系统,创建工作线程并启动任务调度。 - -**参数:** -- `config` - 任务系统配置(参见 TaskSystemConfig) - -**返回:** 无 - -**线程安全:** ❌ (应在主线程初始化) - -**复杂度:** O(n),n 为 workerThreadCount - -**注意:** -- 多次调用将先关闭已有系统再重新初始化。 -- 应在主线程中调用,在任何任务提交之前完成初始化。 - -**示例:** - -```cpp -TaskSystemConfig config; -config.workerThreadCount = std::thread::hardware_concurrency(); -config.enableTaskProfiling = true; // 预留配置项(当前未使用) -config.stealTasks = true; // 预留配置项(当前未实现) -config.maxTaskQueueSize = 2048; // 预留配置项(当前未强制限制) - -TaskSystem::Get().Initialize(config); -printf("TaskSystem started with %u workers\n", - TaskSystem::Get().GetWorkerThreadCount()); -``` - -## 相关文档 - -- [TaskSystem 总览](task-system.md) - 返回类总览 -- [Shutdown](shutdown.md) - 关闭任务系统 diff --git a/docs/api/threading/task-system/parallelfor.md b/docs/api/threading/task-system/parallelfor.md deleted file mode 100644 index 0ef7ebe0..00000000 --- a/docs/api/threading/task-system/parallelfor.md +++ /dev/null @@ -1,48 +0,0 @@ -# TaskSystem::ParallelFor - -```cpp -template -void ParallelFor(int32_t start, int32_t end, Func&& func) -``` - -并行执行 for 循环。将循环范围划分为多个块,分配给多个工作线程并行处理。 - -**模板参数:** -- `Func` - 可调用对象类型,签名为 `void(int32_t)` - -**参数:** -- `start` - 循环起始索引(包含) -- `end` - 循环结束索引(不包含) -- `func` - 对每个索引执行的函数 - -**返回:** 无 - -**线程安全:** ✅ (内部通过 Submit 实现线程安全) - -**复杂度:** O(n) - -**分区策略:** -- 根据 `std::thread::hardware_concurrency()` 确定线程数。 -- 将范围均分给各线程,每个线程处理连续的块。 - -**示例:** - -```cpp -// 并行处理 10000 个元素 -std::vector data(10000, 0.0f); - -TaskSystem::Get().ParallelFor(0, 10000, [&data](int32_t i) { - data[i] = std::sin(i * 0.01f) * std::cos(i * 0.007f); -}); - -// 并行矩阵乘法 -TaskSystem::Get().ParallelFor(0, N, [&matrix](int32_t row) { - for (int32_t col = 0; col < N; ++col) { - matrix[row * N + col] = Compute(row, col); - } -}); -``` - -## 相关文档 - -- [TaskSystem 总览](task-system.md) - 返回类总览 diff --git a/docs/api/threading/task-system/runonmainthread.md b/docs/api/threading/task-system/runonmainthread.md deleted file mode 100644 index 4270da15..00000000 --- a/docs/api/threading/task-system/runonmainthread.md +++ /dev/null @@ -1,45 +0,0 @@ -# TaskSystem::RunOnMainThread - -```cpp -void RunOnMainThread(std::function&& func) -``` - -将任务提交到主线程队列。在主线程中调用 Update 时执行。 - -**参数:** -- `func` - 要在主线程执行的函数 - -**返回:** 无 - -**线程安全:** ✅ (内部使用 mutex 保护主线程队列) - -**复杂度:** O(1) - -**使用场景:** -- 从工作线程回调需要更新 UI 或访问主线程资源。 -- 避免跨线程数据竞争。 - -**示例:** - -```cpp -// 在工作线程中 -void WorkerThreadCode() { - int result = HeavyCompute(); - - // 将结果发送到主线程更新 UI - TaskSystem::Get().RunOnMainThread([result]() { - UI.UpdateResult(result); - }); -} - -// 在主线程中 -while (running) { - TaskSystem::Get().Update(); // 处理主线程任务 - RenderFrame(); -} -``` - -## 相关文档 - -- [TaskSystem 总览](task-system.md) - 返回类总览 -- [Update](update.md) - 处理主线程队列 diff --git a/docs/api/threading/task-system/shutdown.md b/docs/api/threading/task-system/shutdown.md deleted file mode 100644 index af8bffaf..00000000 --- a/docs/api/threading/task-system/shutdown.md +++ /dev/null @@ -1,35 +0,0 @@ -# TaskSystem::Shutdown - -```cpp -void Shutdown() -``` - -关闭任务系统,停止所有工作线程并清理资源。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ❌ (非线程安全,调用后应等待所有任务完成) - -**复杂度:** O(n) - -**注意:** -- 调用后应等待所有提交的任务执行完毕,或确保不再需要未完成的任务。 -- 关闭后不可再次使用,必须重新 Initialize。 - -**示例:** - -```cpp -TaskSystem::Get().Initialize(config); - -// ... 使用任务系统 ... - -TaskSystem::Get().Shutdown(); -printf("TaskSystem stopped\n"); -``` - -## 相关文档 - -- [TaskSystem 总览](task-system.md) - 返回类总览 -- [Initialize](initialize.md) - 初始化任务系统 diff --git a/docs/api/threading/task-system/submit.md b/docs/api/threading/task-system/submit.md deleted file mode 100644 index 3c9b69ff..00000000 --- a/docs/api/threading/task-system/submit.md +++ /dev/null @@ -1,67 +0,0 @@ -# TaskSystem::Submit - -将任务提交到任务系统调度执行。有两个重载版本。 - -## 重载 1: 提交 ITask 对象 - -```cpp -uint64_t Submit(std::unique_ptr task) -``` - -提交一个 ITask 对象到任务队列。 - -**参数:** -- `task` - 要提交的任务对象 - -**返回:** `uint64_t` - 分配的任务 ID - -**复杂度:** O(log n) - -## 重载 2: 提交 lambda 任务 - -```cpp -uint64_t Submit(std::function&& func, TaskPriority priority = TaskPriority::Normal) -``` - -将可调用对象包装为任务提交。 - -**参数:** -- `func` - 要执行的可调用对象 -- `priority` - 任务优先级,默认 TaskPriority::Normal - -**返回:** `uint64_t` - 分配的任务 ID - -**复杂度:** O(log n) - -**线程安全:** ✅ (内部使用 mutex 保护任务队列) - -**示例:** - -```cpp -// 提交自定义任务 -class MyTask : public ITask { -public: - void Execute() override { printf("MyTask running\n"); } -}; -uint64_t id1 = TaskSystem::Get().Submit(std::make_unique()); - -// 提交 lambda -uint64_t id2 = TaskSystem::Get().Submit([]() { - printf("Lambda task\n"); -}); - -uint64_t id3 = TaskSystem::Get().Submit([]() { - HeavyCompute(); -}, TaskPriority::High); - -// 使用 TaskGroup 等待任务完成 -TaskGroup* group = TaskSystem::Get().CreateTaskGroup(); -group->AddTask([]() { /* task 1 */ }); -group->AddTask([]() { /* task 2 */ }); -group->Wait(); -TaskSystem::Get().DestroyTaskGroup(group); -``` - -## 相关文档 - -- [TaskSystem 总览](task-system.md) - 返回类总览 diff --git a/docs/api/threading/task-system/task-system.md b/docs/api/threading/task-system/task-system.md deleted file mode 100644 index 5979d3c1..00000000 --- a/docs/api/threading/task-system/task-system.md +++ /dev/null @@ -1,81 +0,0 @@ -# TaskSystem - -**命名空间**: `XCEngine::Threading` - -**类型**: `class` (singleton) - -**头文件**: `XCEngine/Threading/TaskSystem.h` - -**描述**: 并行任务调度系统单例,提供优先级任务队列。 - -## 概述 - -`TaskSystem` 是 XCEngine 的核心并行任务调度系统。它创建多个工作线程,使用优先级队列调度任务。它还提供 `ParallelFor` 方法用于数据级并行,以及主线程任务队列。 - -**注意:** 当前实现的 `stealTasks` 配置项未生效,任务系统使用单一全局优先级任务队列。 - -## 单例访问 - -| 方法 | 描述 | -|------|------| -| [`Get`](get.md) | 获取单例实例 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Initialize`](initialize.md) | 初始化任务系统 | -| [`Shutdown`](shutdown.md) | 关闭任务系统 | -| [`Submit(unique_ptr)`](submit.md) | 提交任务对象 | -| [`Submit(callback)`](submit.md) | 提交 lambda 任务 | -| [`CreateTaskGroup`](create-task-group.md) | 创建任务组 | -| [`DestroyTaskGroup`](destroy-task-group.md) | 销毁任务组 | -| [`Wait`](wait.md) | 等待指定任务完成(当前为空实现) | -| [`GetWorkerThreadCount`](get-worker-thread-count.md) | 获取工作线程数量 | -| [`ParallelFor`](parallelfor.md) | 并行执行 for 循环 | -| [`RunOnMainThread`](runonmainthread.md) | 将任务提交到主线程执行 | -| [`Update`](update.md) | 在主线程中处理主线程队列 | - -## 使用示例 - -```cpp -// 初始化(4 个工作线程) -TaskSystemConfig config; -config.workerThreadCount = 4; -TaskSystem::Get().Initialize(config); - -// 提交任务 -TaskSystem::Get().Submit([]() { - printf("Task 1 running\n"); -}); - -TaskSystem::Get().Submit([]() { - printf("Task 2 running\n"); -}, TaskPriority::High); - -// 并行 for -TaskSystem::Get().ParallelFor(0, 1000, [](int32_t i) { - process(i); -}); - -// 主线程任务 -TaskSystem::Get().RunOnMainThread([]() { - // 更新 UI 或其他主线程操作 -}); - -// 主循环中调用 Update -while (running) { - TaskSystem::Get().Update(); // 处理主线程任务 -} - -// 关闭 -TaskSystem::Get().Shutdown(); -``` - -## 相关文档 - -- [ITask](../task/task.md) - 任务基类 -- [LambdaTask](../lambda-task/lambda-task.md) - Lambda 任务 -- [TaskGroup](../task-group/task-group.md) - 任务组 -- [TaskSystemConfig](../task-system-config/task-system-config.md) - 配置 -- [../threading.md](../threading.md) - 模块总览 diff --git a/docs/api/threading/task-system/update.md b/docs/api/threading/task-system/update.md deleted file mode 100644 index 0ef52215..00000000 --- a/docs/api/threading/task-system/update.md +++ /dev/null @@ -1,38 +0,0 @@ -# TaskSystem::Update - -```cpp -void Update() -``` - -在主线程中处理主线程队列。执行所有通过 RunOnMainThread 提交的任务。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ❌ (应在主线程调用) - -**复杂度:** O(n),n 为队列中待执行任务数 - -**使用场景:** -- 在主循环中调用,确保 RunOnMainThread 提交的任务能够执行。 -- 应在渲染前调用。 - -**示例:** - -```cpp -// 主循环 -while (application.IsRunning()) { - TaskSystem::Get().Update(); // 处理主线程任务 - - // 渲染 - Renderer.BeginFrame(); - RenderScene(); - Renderer.EndFrame(); -} -``` - -## 相关文档 - -- [TaskSystem 总览](task-system.md) - 返回类总览 -- [RunOnMainThread](runonmainthread.md) - 提交主线程任务 diff --git a/docs/api/threading/task-system/wait.md b/docs/api/threading/task-system/wait.md deleted file mode 100644 index bc16fab8..00000000 --- a/docs/api/threading/task-system/wait.md +++ /dev/null @@ -1,30 +0,0 @@ -# TaskSystem::Wait - -```cpp -void Wait(uint64_t taskId) -``` - -**注意:** 此方法当前为空实现,不执行任何操作。 - -**建议:** 使用 `TaskGroup::Wait` 代替此方法。 - -**线程安全:** N/A (空实现) - -**示例:** - -```cpp -uint64_t id = TaskSystem::Get().Submit([]() { - for (int i = 0; i < 1000000; ++i) { - Compute(i); - } -}); - -printf("Waiting for task...\n"); -// 注意:当前实现为空,建议使用 TaskGroup 来等待任务完成 -TaskSystem::Get().Wait(id); -printf("Task completed\n"); -``` - -## 相关文档 - -- [TaskSystem 总览](task-system.md) - 返回类总览 diff --git a/docs/api/threading/task/add-ref.md b/docs/api/threading/task/add-ref.md deleted file mode 100644 index 114fd61a..00000000 --- a/docs/api/threading/task/add-ref.md +++ /dev/null @@ -1,27 +0,0 @@ -# ITask::AddRef - -```cpp -void AddRef() -``` - -增加任务的引用计数。用于延长任务的生命周期,使其不会被自动释放。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(1) - -**示例:** - -```cpp -ITask* task = new MyTask(); -task->AddRef(); // 保持引用,不会在 Release 时被删除 -task->SetPriority(TaskPriority::High); -TaskSystem::Get().Submit(std::unique_ptr(task)); -``` - -## 相关文档 - -- [ITask 总览](task.md) - 返回类总览 -- [Release](release.md) - 释放引用计数 diff --git a/docs/api/threading/task/execute.md b/docs/api/threading/task/execute.md deleted file mode 100644 index 476730e6..00000000 --- a/docs/api/threading/task/execute.md +++ /dev/null @@ -1,43 +0,0 @@ -# ITask::Execute - -```cpp -virtual void Execute() = 0 -``` - -任务执行逻辑(纯虚方法)。用户必须在派生类中实现此方法以定义任务的具体行为。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** 取决于具体任务实现 - -**注意:** -- 此方法由 TaskSystem 的工作线程调用。 -- 任务执行期间如发生未捕获异常,行为未定义。 - -**示例:** - -```cpp -class ComputeTask : public ITask { -public: - explicit ComputeTask(int n) : m_n(n) {} - - void Execute() override { - int result = 0; - for (int i = 0; i < m_n; ++i) { - result += i; - } - printf("Result: %d\n", result); - } - -private: - int m_n; -}; - -TaskSystem::Get().Submit(std::make_unique(100)); -``` - -## 相关文档 - -- [ITask 总览](task.md) - 返回类总览 diff --git a/docs/api/threading/task/get-id.md b/docs/api/threading/task/get-id.md deleted file mode 100644 index 8a40ad32..00000000 --- a/docs/api/threading/task/get-id.md +++ /dev/null @@ -1,25 +0,0 @@ -# ITask::GetId - -```cpp -uint64_t GetId() const -``` - -获取任务的唯一标识符。 - -**参数:** 无 - -**返回:** `uint64_t` - 任务的唯一 ID - -**复杂度:** O(1) - -**示例:** - -```cpp -ITask* task = /* ... */; -uint64_t id = task->GetId(); -printf("Task ID: %llu\n", (unsigned long long)id); -``` - -## 相关文档 - -- [ITask 总览](task.md) - 返回类总览 diff --git a/docs/api/threading/task/get-priority.md b/docs/api/threading/task/get-priority.md deleted file mode 100644 index c88c0e8a..00000000 --- a/docs/api/threading/task/get-priority.md +++ /dev/null @@ -1,27 +0,0 @@ -# ITask::GetPriority - -```cpp -TaskPriority GetPriority() const -``` - -获取任务的优先级。 - -**参数:** 无 - -**返回:** `TaskPriority` - 当前任务的优先级 - -**复杂度:** O(1) - -**示例:** - -```cpp -ITask* task = /* ... */; -TaskPriority priority = task->GetPriority(); -if (priority == TaskPriority::Critical) { - printf("Critical task\n"); -} -``` - -## 相关文档 - -- [ITask 总览](task.md) - 返回类总览 diff --git a/docs/api/threading/task/get-status.md b/docs/api/threading/task/get-status.md deleted file mode 100644 index f0ae485e..00000000 --- a/docs/api/threading/task/get-status.md +++ /dev/null @@ -1,32 +0,0 @@ -# ITask::GetStatus - -```cpp -TaskStatus GetStatus() const -``` - -获取任务的当前状态。 - -**参数:** 无 - -**返回:** `TaskStatus` - 当前任务状态 - -**复杂度:** O(1) - -**示例:** - -```cpp -ITask* task = /* ... */; -TaskStatus status = task->GetStatus(); -switch (status) { - case TaskStatus::Pending: printf("Pending\n"); break; - case TaskStatus::Scheduled: printf("Scheduled\n"); break; - case TaskStatus::Running: printf("Running\n"); break; - case TaskStatus::Completed: printf("Completed\n"); break; - case TaskStatus::Failed: printf("Failed\n"); break; - case TaskStatus::Canceled: printf("Canceled\n"); break; -} -``` - -## 相关文档 - -- [ITask 总览](task.md) - 返回类总览 diff --git a/docs/api/threading/task/on-cancel.md b/docs/api/threading/task/on-cancel.md deleted file mode 100644 index 02c7ff10..00000000 --- a/docs/api/threading/task/on-cancel.md +++ /dev/null @@ -1,38 +0,0 @@ -# ITask::OnCancel - -```cpp -virtual void OnCancel() -``` - -任务取消回调。可在派生类中重写此方法,以在任务被取消时执行清理操作。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** 取决于具体实现 - -**示例:** - -```cpp -class NetworkTask : public ITask { -public: - void Execute() override { - for (int i = 0; i < 100; ++i) { - if (GetStatus() == TaskStatus::Canceled) { - return; - } - SendPacket(i); - } - } - - void OnCancel() override { - CloseConnection(); - printf("Network task canceled\n"); - } -}; -``` - -## 相关文档 - -- [ITask 总览](task.md) - 返回类总览 diff --git a/docs/api/threading/task/on-complete.md b/docs/api/threading/task/on-complete.md deleted file mode 100644 index 3191a6ab..00000000 --- a/docs/api/threading/task/on-complete.md +++ /dev/null @@ -1,39 +0,0 @@ -# ITask::OnComplete - -```cpp -virtual void OnComplete() -``` - -任务完成回调。可在派生类中重写此方法,以在任务执行完毕后执行清理或后续操作。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** 取决于具体实现 - -**示例:** - -```cpp -class DataLoadTask : public ITask { -public: - explicit DataLoadTask(const String& path) : m_path(path) {} - - void Execute() override { - m_data = LoadFromFile(m_path); - } - - void OnComplete() override { - printf("Data loaded, size: %zu\n", m_data.Size()); - ProcessData(m_data); - } - -private: - String m_path; - Containers::Vector m_data; -}; -``` - -## 相关文档 - -- [ITask 总览](task.md) - 返回类总览 diff --git a/docs/api/threading/task/release.md b/docs/api/threading/task/release.md deleted file mode 100644 index 458b26b4..00000000 --- a/docs/api/threading/task/release.md +++ /dev/null @@ -1,32 +0,0 @@ -# ITask::Release - -```cpp -void Release() -``` - -减少引用计数。当引用计数归零时,对象会自动 delete 自身。 - -**参数:** 无 - -**返回:** 无 - -**复杂度:** O(1) - -**注意:** -- 任务提交给 TaskSystem 后,TaskSystem 会自动管理引用计数。 -- 当任务完成且无人持有引用时,任务对象将被自动销毁。 -- 不要在任务执行过程中调用 Release。 - -**示例:** - -```cpp -ITask* task = new MyTask(); -task->AddRef(); // 引用计数 = 2 -TaskSystem::Get().Submit(std::unique_ptr(task)); // 引用计数 = 1 -task->Release(); // 引用计数 = 0,任务被 delete -``` - -## 相关文档 - -- [ITask 总览](task.md) - 返回类总览 -- [AddRef](../../core/refcounted/AddRef.md) - 增加引用计数 diff --git a/docs/api/threading/task/set-id.md b/docs/api/threading/task/set-id.md deleted file mode 100644 index adeda81b..00000000 --- a/docs/api/threading/task/set-id.md +++ /dev/null @@ -1,28 +0,0 @@ -# ITask::SetId - -```cpp -void SetId(uint64_t id) -``` - -设置任务的唯一标识符。通常由 TaskSystem 在提交时自动分配。 - -**参数:** -- `id` - 要设置的唯一标识符 - -**返回:** 无 - -**复杂度:** O(1) - -**示例:** - -```cpp -class MyTask : public ITask { -public: - MyTask() { SetId(GenerateId()); } - void Execute() override { /* ... */ } -}; -``` - -## 相关文档 - -- [ITask 总览](task.md) - 返回类总览 diff --git a/docs/api/threading/task/set-priority.md b/docs/api/threading/task/set-priority.md deleted file mode 100644 index eb0efde8..00000000 --- a/docs/api/threading/task/set-priority.md +++ /dev/null @@ -1,28 +0,0 @@ -# ITask::SetPriority - -```cpp -void SetPriority(TaskPriority priority) -``` - -设置任务的优先级。 - -**参数:** -- `priority` - 新的优先级(参见 TaskPriority 枚举) - -**返回:** 无 - -**复杂度:** O(1) - -**注意:** 任务提交后修改优先级可能不会立即生效,取决于任务系统实现。 - -**示例:** - -```cpp -auto task = std::make_unique(); -task->SetPriority(TaskPriority::High); -TaskSystem::Get().Submit(std::move(task)); -``` - -## 相关文档 - -- [ITask 总览](task.md) - 返回类总览 diff --git a/docs/api/threading/task/set-status.md b/docs/api/threading/task/set-status.md deleted file mode 100644 index d3da1487..00000000 --- a/docs/api/threading/task/set-status.md +++ /dev/null @@ -1,35 +0,0 @@ -# ITask::SetStatus - -```cpp -void SetStatus(TaskStatus status) -``` - -设置任务的当前状态。 - -**参数:** -- `status` - 新的状态(参见 TaskStatus 枚举) - -**返回:** 无 - -**复杂度:** O(1) - -**注意:** 正常情况下由 TaskSystem 管理状态。手动设置状态可能干扰任务系统的正常调度。 - -**示例:** - -```cpp -class ConditionalTask : public ITask { -public: - void Execute() override { - if (someCondition) { - SetStatus(TaskStatus::Failed); - return; - } - // 正常处理 - } -}; -``` - -## 相关文档 - -- [ITask 总览](task.md) - 返回类总览 diff --git a/docs/api/threading/task/task.md b/docs/api/threading/task/task.md deleted file mode 100644 index 3ec0ea7c..00000000 --- a/docs/api/threading/task/task.md +++ /dev/null @@ -1,93 +0,0 @@ -# ITask - -**命名空间**: `XCEngine::Threading` - -**类型**: `class` (abstract) - -**头文件**: `XCEngine/Threading/Task.h` - -**描述**: 任务基类抽象接口和任务状态/优先级枚举定义。 - -## 概述 - -`ITask` 是任务系统的核心抽象基类。用户需要继承此类并实现 `Execute()` 方法来定义具体的任务逻辑。任务系统通过引用计数自动管理任务生命周期。 - -## TaskPriority 枚举 - -任务优先级枚举(数值越小优先级越高)。 - -| 值 | 描述 | -|----|------| -| `Critical` | 关键优先级(0) | -| `High` | 高优先级(1) | -| `Normal` | 普通优先级(2) | -| `Low` | 低优先级(3) | -| `Idle` | 空闲优先级(4) | - -## TaskStatus 枚举 - -任务状态枚举。 - -| 值 | 描述 | -|----|------| -| `Pending` | 等待中 | -| `Scheduled` | 已调度 | -| `Running` | 运行中 | -| `Completed` | 已完成 | -| `Failed` | 失败 | -| `Canceled` | 已取消 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| `virtual ~ITask()` | 虚析构函数 | -| [`Execute`](execute.md) | 任务执行逻辑(纯虚) | -| [`OnComplete`](on-complete.md) | 任务完成回调(可重写) | -| [`OnCancel`](on-cancel.md) | 任务取消回调(可重写) | -| [`GetPriority`](get-priority.md) | 获取优先级 | -| [`GetStatus`](get-status.md) | 获取状态 | -| [`GetId`](get-id.md) | 获取任务 ID | -| [`SetId`](set-id.md) | 设置任务 ID | -| [`SetPriority`](set-priority.md) | 设置优先级 | -| [`SetStatus`](set-status.md) | 设置状态 | -| [`AddRef`](add-ref.md) | 增加引用计数 | -| [`Release`](release.md) | 减少引用计数(引用归零时自动 delete) | - -## 受保护方法 - -| 方法 | 描述 | -|------|------| -| `ITask()` | 默认构造函数 | -| `ITask(TaskPriority priority)` | 带优先级的构造函数 | - -## 使用示例 - -```cpp -class MyTask : public ITask { -public: - explicit MyTask(int data) : m_data(data) {} - - void Execute() override { - printf("Task executed with data: %d\n", m_data); - } - - void OnComplete() override { - printf("Task completed\n"); - } - -private: - int m_data; -}; - -auto task = new MyTask(42); -task->SetPriority(TaskPriority::High); -TaskSystem::Get().Submit(std::unique_ptr(task)); -``` - -## 相关文档 - -- [LambdaTask](../lambda-task/lambda-task.md) - Lambda 任务封装 -- [TaskGroup](../task-group/task-group.md) - 任务组 -- [TaskSystem](../task-system/task-system.md) - 任务系统 -- [../threading.md](../threading.md) - 模块总览 diff --git a/docs/api/threading/thread/detach.md b/docs/api/threading/thread/detach.md deleted file mode 100644 index 32e05617..00000000 --- a/docs/api/threading/thread/detach.md +++ /dev/null @@ -1,46 +0,0 @@ -# Thread::Detach - -```cpp -void Detach(); -``` - -分离线程,使其在后台独立运行。调用 `Detach()` 后,线程不再受 `Thread` 对象管理,其生命周期由 C++ 运行时库自行管理,直到线程函数执行完毕。 - -分离后的线程成为"守护线程",其资源在线程结束时自动由运行时回收。与 `Join()` 不同,`Detach()` 只能调用一次。 - -**警告:** 分离线程时必须确保其访问的所有数据在线程运行期间保持有效。分离后无法通过 `Thread` 对象同步或等待线程。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ❌ - -**示例:** - -```cpp -#include "XCEngine/Threading/Thread.h" -#include - -using namespace XCEngine::Threading; - -int main() { - Thread t; - t.Start([]() { - for (int i = 0; i < 3; ++i) { - std::cout << "Detached thread running: " << i << std::endl; - Thread::Sleep(50); - } - }, "DetachedThread"); - - std::cout << "Thread detached, main continues..." << std::endl; - t.Detach(); - - Thread::Sleep(200); - return 0; -} -``` - -## 相关文档 - -- [Thread 总览](thread.md) - 返回类总览 diff --git a/docs/api/threading/thread/get-current-id.md b/docs/api/threading/thread/get-current-id.md deleted file mode 100644 index 39847736..00000000 --- a/docs/api/threading/thread/get-current-id.md +++ /dev/null @@ -1,43 +0,0 @@ -# Thread::GetCurrentId - -```cpp -static Id GetCurrentId(); -``` - -静态方法,返回当前执行线程的唯一标识符。此方法可在任意线程上下文中调用,包括主线程和工作线程。 - -线程 ID 通过 `std::this_thread::get_id()` 获取,并使用 `std::hash` 转换为 `uint64_t` 值。该值与 `Thread::GetId()` 返回的值格式一致,可以直接比较。 - -**参数:** 无 - -**返回:** 调用线程的唯一标识符 - -**线程安全:** ✅ - -**示例:** - -```cpp -#include "XCEngine/Threading/Thread.h" -#include - -using namespace XCEngine::Threading; - -int main() { - std::cout << "Main thread ID: " << Thread::GetCurrentId() << std::endl; - - Thread t; - t.Start([]() { - std::cout << "Worker thread ID: " << Thread::GetCurrentId() << std::endl; - std::cout << "Worker ID matches Thread.GetId(): " - << (Thread::GetCurrentId() == t.GetId() ? "Yes" : "No") << std::endl; - }, "CheckIdThread"); - - t.Join(); - return 0; -} -``` - -## 相关文档 - -- [Thread 总览](thread.md) - 返回类总览 -- [GetId](get-id.md) - 获取 Thread 对象的 ID diff --git a/docs/api/threading/thread/get-id.md b/docs/api/threading/thread/get-id.md deleted file mode 100644 index d92cd22b..00000000 --- a/docs/api/threading/thread/get-id.md +++ /dev/null @@ -1,44 +0,0 @@ -# Thread::GetId - -```cpp -Id GetId() const; -``` - -返回当前线程对象的唯一标识符。线程 ID 是 `uint64_t` 类型的值,通过 `std::thread::native_handle()` 获取原生线程句柄并转换为整数。 - -线程 ID 在线程启动后生效。在调用 `Start()` 之前,`GetId()` 返回 0。 - -**参数:** 无 - -**返回:** 线程的唯一标识符,线程未启动时返回 0 - -**线程安全:** ✅ - -**示例:** - -```cpp -#include "XCEngine/Threading/Thread.h" -#include - -using namespace XCEngine::Threading; - -int main() { - Thread t; - - std::cout << "Before Start - Thread ID: " << t.GetId() << std::endl; - - t.Start([]() { - std::cout << "Worker ID: " << Thread::GetCurrentId() << std::endl; - }, "WorkerThread"); - - std::cout << "After Start - Thread ID: " << t.GetId() << std::endl; - - t.Join(); - return 0; -} -``` - -## 相关文档 - -- [Thread 总览](thread.md) - 返回类总览 -- [GetCurrentId](get-current-id.md) - 获取当前执行线程的 ID diff --git a/docs/api/threading/thread/get-name.md b/docs/api/threading/thread/get-name.md deleted file mode 100644 index d7f7a20c..00000000 --- a/docs/api/threading/thread/get-name.md +++ /dev/null @@ -1,49 +0,0 @@ -# Thread::GetName - -```cpp -const Containers::String& GetName() const; -``` - -返回线程的名称。线程名称在调用 `Start()` 时通过参数指定,默认为 "Thread"。返回的引用指向内部存储的 `Containers::String` 对象。 - -线程名称主要用于调试、日志记录和性能分析工具中标识线程。 - -**参数:** 无 - -**返回:** 线程名称的常量引用 - -**线程安全:** ✅ - -**示例:** - -```cpp -#include "XCEngine/Threading/Thread.h" -#include - -using namespace XCEngine::Threading; - -int main() { - Thread t1; - t1.Start([]() {}, "RenderingThread"); - - Thread t2; - t2.Start([]() {}, "PhysicsThread"); - - Thread t3; - t3.Start([]() {}); - - std::cout << "Thread 1 name: " << t1.GetName().CStr() << std::endl; - std::cout << "Thread 2 name: " << t2.GetName().CStr() << std::endl; - std::cout << "Thread 3 name: " << t3.GetName().CStr() << std::endl; - - t1.Join(); - t2.Join(); - t3.Join(); - - return 0; -} -``` - -## 相关文档 - -- [Thread 总览](thread.md) - 返回类总览 diff --git a/docs/api/threading/thread/join.md b/docs/api/threading/thread/join.md deleted file mode 100644 index 064fbdef..00000000 --- a/docs/api/threading/thread/join.md +++ /dev/null @@ -1,47 +0,0 @@ -# Thread::Join - -```cpp -void Join(); -``` - -等待线程执行完成并回收其资源。调用 `Join()` 会阻塞当前线程,直到目标线程结束运行。如果目标线程已经结束或从未启动,则此调用立即返回。 - -`Join()` 只能调用一次。在调用 `Join()` 后,`std::thread` 对象不再代表任何线程,不能再次调用 `Join()` 或 `Detach()`。 - -析构函数会自动调用 `Join()`,确保线程对象销毁前等待线程结束。 - -**注意:** 如果线程已经被分离(Detach)或已经 Join 过,调用此方法将导致未定义行为。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ❌ - -**示例:** - -```cpp -#include "XCEngine/Threading/Thread.h" -#include - -using namespace XCEngine::Threading; - -int main() { - Thread t; - t.Start([]() { - for (int i = 0; i < 3; ++i) { - std::cout << "Working... " << i << std::endl; - Thread::Sleep(100); - } - }, "WorkerThread"); - - std::cout << "Waiting for thread to complete..." << std::endl; - t.Join(); - std::cout << "Thread completed!" << std::endl; - return 0; -} -``` - -## 相关文档 - -- [Thread 总览](thread.md) - 返回类总览 diff --git a/docs/api/threading/thread/sleep.md b/docs/api/threading/thread/sleep.md deleted file mode 100644 index b8138eb7..00000000 --- a/docs/api/threading/thread/sleep.md +++ /dev/null @@ -1,37 +0,0 @@ -# Thread::Sleep - -```cpp -static void Sleep(uint32_t milliseconds); -``` - -静态方法,使当前线程进入休眠状态指定毫秒数。在休眠期间,线程不会消耗 CPU 时间片,让系统可以将资源分配给其他线程。 - -实现基于 `std::this_thread::sleep_for`,使用 `std::chrono::milliseconds` 包装休眠时长。休眠精度取决于操作系统调度器的精度。 - -**参数:** -- `milliseconds` - 休眠时长,以毫秒为单位 - -**返回:** 无 - -**线程安全:** ✅ - -**示例:** - -```cpp -#include "XCEngine/Threading/Thread.h" -#include - -using namespace XCEngine::Threading; - -int main() { - std::cout << "Sleeping for 500ms..." << std::endl; - Thread::Sleep(500); - std::cout << "Wake up!" << std::endl; - return 0; -} -``` - -## 相关文档 - -- [Thread 总览](thread.md) - 返回类总览 -- [Yield](yield.md) - 让出时间片 diff --git a/docs/api/threading/thread/start.md b/docs/api/threading/thread/start.md deleted file mode 100644 index 45e7c75c..00000000 --- a/docs/api/threading/thread/start.md +++ /dev/null @@ -1,47 +0,0 @@ -# Thread::Start - -```cpp -template -void Start(Func&& func, const Containers::String& name = "Thread"); -``` - -启动一个新线程并执行传入的可调用对象。该方法是模板方法,可以接受任何可调用对象,包括普通函数、Lambda 表达式、仿函数等。 - -调用 `Start()` 后,线程立即开始执行。线程 ID 通过 `native_handle()` 获取并转换为 `uint64_t` 类型。 - -**注意:** `Start()` 不是线程安全的,不应在同一 `Thread` 对象上并发调用。 - -**参数:** -- `func` - 要执行的线程函数,可以是任意可调用对象 -- `name` - 线程名称,默认为 "Thread",用于调试和日志记录 - -**返回:** 无 - -**线程安全:** ❌ - -**示例:** - -```cpp -#include "XCEngine/Threading/Thread.h" -#include - -using namespace XCEngine::Threading; - -void FreeFunction(int value) { - std::cout << "Free function called with: " << value << std::endl; -} - -int main() { - Thread t; - t.Start(FreeFunction, "FreeFuncThread"); - t.Start([]() { - std::cout << "Lambda thread executing" << std::endl; - }, "LambdaThread"); - t.Join(); - return 0; -} -``` - -## 相关文档 - -- [Thread 总览](thread.md) - 返回类总览 diff --git a/docs/api/threading/thread/thread.md b/docs/api/threading/thread/thread.md deleted file mode 100644 index 3ca32742..00000000 --- a/docs/api/threading/thread/thread.md +++ /dev/null @@ -1,65 +0,0 @@ -# Thread - -**命名空间**: `XCEngine::Threading` - -**类型**: `class` - -**头文件**: `XCEngine/Threading/Thread.h` - -**描述**: 线程类,封装 std::thread 提供命名的线程管理功能。 - -## 概述 - -`Thread` 类封装了 `std::thread`,提供统一的线程管理接口。设计用于跨平台线程创建和管理,支持为线程指定名称便于调试和日志记录。 - -类提供实例方法用于启动、等待(Join)和分离(Detach)线程,以及静态工具方法用于获取当前线程 ID、线程睡眠和让出 CPU 时间片。 - -## 类型别名 - -| 类型 | 定义 | 描述 | -|------|------|------| -| `Id` | `uint64_t` | 线程唯一标识符类型 | - -## 公共方法 - -| 方法 | 描述 | -|------|------| -| [`Thread()`](thread.md) | 默认构造函数 | -| [`~Thread()`](thread.md) | 析构函数 | -| [`Start`](start.md) | 启动线程,执行传入的函数 | -| [`Join`](join.md) | 等待线程结束 | -| [`Detach`](detach.md) | 分离线程,使其独立运行 | -| [`GetId`](get-id.md) | 获取线程 ID | -| [`GetName`](get-name.md) | 获取线程名称 | -| [`GetCurrentId`](get-current-id.md) | 获取当前线程 ID | -| [`Sleep`](sleep.md) | 线程休眠指定毫秒数 | -| [`Yield`](yield.md) | 让出当前线程的时间片 | - -## 使用示例 - -```cpp -#include "XCEngine/Threading/Thread.h" - -using namespace XCEngine::Threading; - -void WorkerFunction() { - printf("Worker thread running\n"); -} - -int main() { - Thread thread; - thread.Start(WorkerFunction, "WorkerThread"); - thread.Join(); - - Thread::Sleep(1000); - Thread::Yield(); - auto currentId = Thread::GetCurrentId(); - return 0; -} -``` - -## 相关文档 - -- [Mutex](../mutex/mutex.md) - 互斥锁 -- [TaskSystem](../task-system/task-system.md) - 任务调度系统 -- [../threading.md](../threading.md) - 模块总览 diff --git a/docs/api/threading/thread/yield.md b/docs/api/threading/thread/yield.md deleted file mode 100644 index 7c94773b..00000000 --- a/docs/api/threading/thread/yield.md +++ /dev/null @@ -1,50 +0,0 @@ -# Thread::Yield - -```cpp -static void Yield(); -``` - -静态方法,向调度器提示当前线程愿意让出 CPU 时间片,让其他线程有机会执行。此方法适用于需要 busy-wait 或自旋等待的场景。 - -实现基于 `std::this_thread::yield()`。调度器行为取决于操作系统。 - -**警告:** 过度使用 `Yield()` 可能导致性能问题。在多数情况下,使用 `Sleep()` 是更好的选择。 - -**参数:** 无 - -**返回:** 无 - -**线程安全:** ✅ - -**示例:** - -```cpp -#include "XCEngine/Threading/Thread.h" -#include -#include - -using namespace XCEngine::Threading; - -int main() { - std::atomic ready{false}; - - Thread t; - t.Start([&ready]() { - while (!ready.load()) { - Thread::Yield(); - } - std::cout << "Worker: ready flag is set!" << std::endl; - }, "YieldWorker"); - - Thread::Sleep(100); - ready.store(true); - - t.Join(); - return 0; -} -``` - -## 相关文档 - -- [Thread 总览](thread.md) - 返回类总览 -- [Sleep](sleep.md) - 线程休眠 diff --git a/docs/api/threading/threading.md b/docs/api/threading/threading.md deleted file mode 100644 index 91956710..00000000 --- a/docs/api/threading/threading.md +++ /dev/null @@ -1,76 +0,0 @@ -# Threading 模块概览 - -**命名空间**: `XCEngine::Threading` - -**类型**: `module` - -**头文件**: `XCEngine/Threading/Threading.h` - -**描述**: XCEngine 的线程和并发模块,提供多线程编程所需的同步原语和任务系统。 - -## 概述 - -Threading 模块提供了一套完整的多线程编程工具,包括线程封装、同步原语和并行任务系统。 - -## 模块内容 - -### 同步原语 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [Mutex](mutex/mutex.md) | `Mutex.h` | 互斥锁 | -| [SpinLock](spinlock/spinlock.md) | `SpinLock.h` | 自旋锁 | -| [ReadWriteLock](read-write-lock/read-write-lock.md) | `ReadWriteLock.h` | 读写锁 | - -### 线程 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [Thread](thread/thread.md) | `Thread.h` | 线程封装类 | - -### 任务系统 - -| 组件 | 文件 | 描述 | -|------|------|------| -| [ITask](task/task.md) | `Task.h` | 任务基类 | -| [LambdaTask](lambda-task/lambda-task.md) | `LambdaTask.h` | Lambda 任务封装模板 | -| [TaskGroup](task-group/task-group.md) | `TaskGroup.h` | 任务组 | -| [TaskSystem](task-system/task-system.md) | `TaskSystem.h` | 并行任务调度系统 | -| [TaskSystemConfig](task-system-config/task-system-config.md) | `TaskSystemConfig.h` | 任务系统配置 | - -## 同步原语对比 - -| 原语 | 适用场景 | 特点 | -|------|----------|------| -| `Mutex` | 一般互斥 | 可重入性差,开销适中 | -| `SpinLock` | 短临界区 | 无系统调用,开销低 | -| `ReadWriteLock` | 读多写少 | 读写分离,提高并发 | - -## 任务系统使用示例 - -```cpp -#include "Threading/TaskSystem.h" - -// 初始化任务系统 -TaskSystemConfig config; -config.workerThreadCount = 4; -TaskSystem::Get().Initialize(config); - -// 提交并行任务 -TaskSystem::Get().Submit([]() { - // 执行工作 -}); - -// 使用任务组 -TaskGroup* group = TaskSystem::Get().CreateTaskGroup(); -group->AddTask([]() { /* 任务1 */ }); -group->AddTask([]() { /* 任务2 */ }); -group->Wait(); - -// 销毁任务组 -TaskSystem::Get().DestroyTaskGroup(group); -``` - -## 相关文档 - -- [Memory 模块](../memory/memory.md) - 内存分配器