增加材质和纹理
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
#pragma once
|
||||
|
||||
#include "dvc_config.h"
|
||||
#include "device/dvc_device.h"
|
||||
#include "scene/dvc_scene.h"
|
||||
#include "device/dvc_uniform_buffer.h"
|
||||
#include "device/dvc_render_target.h"
|
||||
@@ -10,9 +11,18 @@ DV_CORE_BEGIN_NAMESPACE
|
||||
class DV_CORE_API RenderPipe
|
||||
{
|
||||
public:
|
||||
Device& getDevice() {
|
||||
return m_device;
|
||||
}
|
||||
const Device& getDevice() const {
|
||||
return m_device;
|
||||
}
|
||||
UniformBuffer& getUniformBuffer() {
|
||||
return m_uniformBuffer;
|
||||
}
|
||||
const UniformBuffer& getUniformBuffer() const {
|
||||
return m_uniformBuffer;
|
||||
}
|
||||
AntiAliasingTech getAntiAliasingTech() const {
|
||||
return m_aaTech;
|
||||
}
|
||||
@@ -24,12 +34,13 @@ public:
|
||||
void process(RenderTarget& renderTarget);
|
||||
|
||||
protected:
|
||||
AntiAliasingTech m_aaTech;
|
||||
Device& m_device;
|
||||
AntiAliasingTech m_aaTech = AntiAliasingTech::AA_None;
|
||||
UniformBuffer m_uniformBuffer;
|
||||
RenderableArray m_renderableQueue;
|
||||
|
||||
public:
|
||||
RenderPipe();
|
||||
RenderPipe(Device& device);
|
||||
~RenderPipe();
|
||||
};
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ public:
|
||||
PrimitiveType primitiveType;
|
||||
PrimitiveAttributes vertexData;
|
||||
DeviceBufferAccessorConstPtr indices;
|
||||
VertexShaderInterface* vs;
|
||||
MaterialConstPtr material;
|
||||
};
|
||||
typedef std::vector<Node> NodeArray;
|
||||
|
||||
|
||||
@@ -12,6 +12,7 @@ class VertexShaderStep
|
||||
public:
|
||||
struct Node
|
||||
{
|
||||
MaterialConstPtr material;
|
||||
DeviceBufferPtr vertexBuf;
|
||||
VertexDesc vertexDesc;
|
||||
size_t vertexCounts;
|
||||
@@ -21,7 +22,7 @@ public:
|
||||
typedef std::vector<Node> NodeArray;
|
||||
|
||||
public:
|
||||
void process(UniformBuffer& uniformBuffer, const InputAssemberStep::NodeArray& assembedNodeArray);
|
||||
void process(RenderPipe& pipe, const InputAssemberStep::NodeArray& assembedNodeArray);
|
||||
|
||||
public:
|
||||
NodeArray m_nodes;
|
||||
|
||||
@@ -20,7 +20,7 @@ public:
|
||||
typedef std::vector<Fragement> FragementArray;
|
||||
|
||||
public:
|
||||
void process(const VertexShaderStep::NodeArray& vsNodeArray, AntiAliasingTech aaTech, int32_t canvasWidth, int32_t canvasHeight);
|
||||
void process(RenderPipe& pipe, const VertexShaderStep::NodeArray& vsNodeArray, AntiAliasingTech aaTech, int32_t canvasWidth, int32_t canvasHeight);
|
||||
|
||||
public:
|
||||
StartOffsetArray m_startOffsetArray;
|
||||
|
||||
Reference in New Issue
Block a user