aboutsummaryrefslogtreecommitdiff
path: root/scene/resources/surface_tool.h
diff options
context:
space:
mode:
authorRémi Verschelde2017-03-05 16:44:50 +0100
committerRémi Verschelde2017-03-05 16:44:50 +0100
commit5dbf1809c6e3e905b94b8764e99491e608122261 (patch)
tree5e5a5360db15d86d59ec8c6e4f7eb511388c5a9a /scene/resources/surface_tool.h
parent45438e9918d421b244bfd7776a30e67dc7f2d3e3 (diff)
downloadgodot-5dbf180.tar.gz
godot-5dbf180.tar.zst
godot-5dbf180.zip
A Whole New World (clang-format edition)
I can show you the code Pretty, with proper whitespace Tell me, coder, now when did You last write readable code? I can open your eyes Make you see your bad indent Force you to respect the style The core devs agreed upon A whole new world A new fantastic code format A de facto standard With some sugar Enforced with clang-format A whole new world A dazzling style we all dreamed of And when we read it through It's crystal clear That now we're in a whole new world of code
Diffstat (limited to 'scene/resources/surface_tool.h')
-rw-r--r--scene/resources/surface_tool.h87
1 files changed, 41 insertions, 46 deletions
diff --git a/scene/resources/surface_tool.h b/scene/resources/surface_tool.h
index f859efbfe..542c21e7b 100644
--- a/scene/resources/surface_tool.h
+++ b/scene/resources/surface_tool.h
@@ -29,34 +29,32 @@
#ifndef SURFACE_TOOL_H
#define SURFACE_TOOL_H
-#include "scene/resources/mesh.h"
#include "mikktspace.h"
-
+#include "scene/resources/mesh.h"
class SurfaceTool : public Reference {
- GDCLASS(SurfaceTool, Reference );
+ GDCLASS(SurfaceTool, Reference);
+
public:
struct Vertex {
- Vector3 vertex;
- Color color;
- Vector3 normal; // normal, binormal, tangent
- Vector3 binormal;
- Vector3 tangent;
- Vector2 uv;
- Vector2 uv2;
- Vector<int> bones;
- Vector<float> weights;
+ Vector3 vertex;
+ Color color;
+ Vector3 normal; // normal, binormal, tangent
+ Vector3 binormal;
+ Vector3 tangent;
+ Vector2 uv;
+ Vector2 uv2;
+ Vector<int> bones;
+ Vector<float> weights;
- bool operator==(const Vertex& p_vertex) const;
+ bool operator==(const Vertex &p_vertex) const;
- Vertex() { }
+ Vertex() {}
};
-
private:
-
struct VertexHasher {
static _FORCE_INLINE_ uint32_t hash(const Vertex &p_vtx);
};
@@ -67,9 +65,9 @@ private:
int format;
Ref<Material> material;
//arrays
- List< Vertex > vertex_array;
- List< int > index_array;
- Map<int,bool> smooth_groups;
+ List<Vertex> vertex_array;
+ List<int> index_array;
+ Map<int, bool> smooth_groups;
//memory
Color last_color;
@@ -80,57 +78,54 @@ private:
Vector<float> last_weights;
Plane last_tangent;
- void _create_list(const Ref<Mesh>& p_existing, int p_surface, List<Vertex> *r_vertex, List<int> *r_index,int &lformat);
-
+ void _create_list(const Ref<Mesh> &p_existing, int p_surface, List<Vertex> *r_vertex, List<int> *r_index, int &lformat);
//mikktspace callbacks
- static int mikktGetNumFaces(const SMikkTSpaceContext * pContext);
- static int mikktGetNumVerticesOfFace(const SMikkTSpaceContext * pContext, const int iFace);
- static void mikktGetPosition(const SMikkTSpaceContext * pContext, float fvPosOut[], const int iFace, const int iVert);
- static void mikktGetNormal(const SMikkTSpaceContext * pContext, float fvNormOut[], const int iFace, const int iVert);
- static void mikktGetTexCoord(const SMikkTSpaceContext * pContext, float fvTexcOut[], const int iFace, const int iVert);
- static void mikktSetTSpaceBasic(const SMikkTSpaceContext * pContext, const float fvTangent[], const float fSign, const int iFace, const int iVert);
-protected:
+ static int mikktGetNumFaces(const SMikkTSpaceContext *pContext);
+ static int mikktGetNumVerticesOfFace(const SMikkTSpaceContext *pContext, const int iFace);
+ static void mikktGetPosition(const SMikkTSpaceContext *pContext, float fvPosOut[], const int iFace, const int iVert);
+ static void mikktGetNormal(const SMikkTSpaceContext *pContext, float fvNormOut[], const int iFace, const int iVert);
+ static void mikktGetTexCoord(const SMikkTSpaceContext *pContext, float fvTexcOut[], const int iFace, const int iVert);
+ static void mikktSetTSpaceBasic(const SMikkTSpaceContext *pContext, const float fvTangent[], const float fSign, const int iFace, const int iVert);
+protected:
static void _bind_methods();
public:
-
void begin(Mesh::PrimitiveType p_primitive);
- void add_vertex( const Vector3& p_vertex);
- void add_color( Color p_color );
- void add_normal( const Vector3& p_normal);
- void add_tangent( const Plane& p_tangent );
- void add_uv( const Vector2& p_uv);
- void add_uv2( const Vector2& p_uv);
- void add_bones( const Vector<int>& p_indices);
- void add_weights( const Vector<float>& p_weights);
+ void add_vertex(const Vector3 &p_vertex);
+ void add_color(Color p_color);
+ void add_normal(const Vector3 &p_normal);
+ void add_tangent(const Plane &p_tangent);
+ void add_uv(const Vector2 &p_uv);
+ void add_uv2(const Vector2 &p_uv);
+ void add_bones(const Vector<int> &p_indices);
+ void add_weights(const Vector<float> &p_weights);
void add_smooth_group(bool p_smooth);
- void add_triangle_fan( const Vector<Vector3>& p_vertexes, const Vector<Vector2>& p_uvs=Vector<Vector2>(), const Vector<Color>& p_colors=Vector<Color>(), const Vector<Vector2>& p_uv2s=Vector<Vector2>(), const Vector<Vector3>& p_normals=Vector<Vector3>(), const Vector<Plane>& p_tangents=Vector<Plane>() );
+ void add_triangle_fan(const Vector<Vector3> &p_vertexes, const Vector<Vector2> &p_uvs = Vector<Vector2>(), const Vector<Color> &p_colors = Vector<Color>(), const Vector<Vector2> &p_uv2s = Vector<Vector2>(), const Vector<Vector3> &p_normals = Vector<Vector3>(), const Vector<Plane> &p_tangents = Vector<Plane>());
- void add_index( int p_index);
+ void add_index(int p_index);
void index();
void deindex();
void generate_normals();
void generate_tangents();
- void add_to_format(int p_flags) { format|=p_flags; }
+ void add_to_format(int p_flags) { format |= p_flags; }
- void set_material(const Ref<Material>& p_material);
+ void set_material(const Ref<Material> &p_material);
void clear();
- List< Vertex > &get_vertex_array() { return vertex_array; }
+ List<Vertex> &get_vertex_array() { return vertex_array; }
- void create_from(const Ref<Mesh>& p_existing, int p_surface);
- void append_from(const Ref<Mesh>& p_existing, int p_surface,const Transform& p_xform);
- Ref<Mesh> commit(const Ref<Mesh>& p_existing=Ref<Mesh>());
+ void create_from(const Ref<Mesh> &p_existing, int p_surface);
+ void append_from(const Ref<Mesh> &p_existing, int p_surface, const Transform &p_xform);
+ Ref<Mesh> commit(const Ref<Mesh> &p_existing = Ref<Mesh>());
SurfaceTool();
};
-
#endif