Files
XCEngine/docs/api/rhi/sampler/bind.md
2026-03-20 02:35:45 +08:00

1.2 KiB
Raw Blame History

RHISampler::Bind

virtual void Bind(unsigned int unit) = 0;

将采样器绑定到指定的纹理单元。该方法将采样器状态设置到渲染管线的对应纹理采样槽位,使其后续的纹理采样操作可以使用此采样器。

参数:

参数 类型 描述
unit unsigned int 纹理单元索引,指定绑定到哪个纹理采样槽位(通常 0-15

返回:

线程安全:

复杂度: O(1)

示例:

#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);
}

相关文档