Cogs.Core
RayIntersection.h
1#pragma once
2
3#include "Base.h"
4#include "Utilities/FrustumClassification.h"
5
6namespace Cogs::Core {
7
8 struct Mesh;
9
11 glm::vec3 pos_;
12 glm::vec3 bary;
13 glm::uvec3 index;
14// uint32_t index;
15 };
16
17 bool intersectMesh(std::vector<RayIntersectionHit>& hits,
18 std::vector<FrustumPlanes>& scratch,
19 const glm::mat4& localPickMatrix,
20 const Mesh& mesh,
21 uint32_t startIndex = 0,
22 uint32_t vertexCount = -1,
23 uint32_t subMeshIndex = -1);
24
25 COGSCORE_DLL_API bool frustumClassifyVertex(FrustumPlanes* dstPtr, const glm::mat4& matrix, const glm::vec3* positions, const size_t count);
26
27}
Contains the Engine, Renderer, resource managers and other systems needed to run Cogs....
Meshes contain streams of vertex data in addition to index data and options defining geometry used fo...
Definition: Mesh.h:265