12 #include <RenderGizmo.h>
17 class DtFxGizmoRenderer;
29 virtual void draw_sphere(
30 const bdiFarPosition& center,
32 const bdiVec4f& color,
35 int stacks = 10)
override;
38 virtual void add_fp_line(
39 const bdiFarPosition& p1,
40 const bdiFarPosition& p2,
41 const bdiVec4f& color1,
42 const bdiVec4f& color2)
override;
47 return pos - m_camera_pos;
51 virtual void draw_coordinate_system(
const bdiFarPosition& pos,
const bdiMat4f& base,
52 float size = .5f,
float alpha = .5f)
override;
60 virtual void draw_buffered_data()
override;
67 const bdiFarPosition& start,
68 const bdiFarPosition& end,
71 const bdiVec4f& color_4f)
override {
76 const bdiFarPosition& start,
77 const bdiFarPosition& end,
81 const bdiVec4f& brush,
82 int options = EDGE_AND_FILL)
override {
87 const bdiFarPosition& start,
88 const bdiFarPosition& end,
91 const bdiVec4f& color)
override {
95 virtual void draw_circle(
97 const bdiFarPosition& center,
99 const bdiVec4f& color_4f,
101 int num_sides = 12)
override;
105 const bdiVec3f& axis,
106 const bdiFarPosition& center,
109 const bdiVec4f& color_4f,
111 int cap = 1)
override {
116 const bdiFarPosition& start,
117 const bdiFarPosition& end,
119 const bdiVec4f& color_4f,
121 int cap = 1)
override {
126 const bdiVec3f& axis,
127 const bdiFarPosition& center,
131 const bdiVec4f& brush,
132 int options = EDGE_AND_FILL)
override {
137 const bdiFarPosition& start,
138 const bdiFarPosition& end,
141 const bdiVec4f& brush,
142 int options = EDGE_AND_FILL)
override
151 const bdiVec4f& brush,
152 int options = EDGE_AND_FILL)
override
158 const bdiFarPosition& target,
162 const bdiVec4f& brush,
163 int options = EDGE_AND_FILL)
override
169 const bdiFarPosition& target,
170 const bdiVec3f& snormal,
174 const bdiVec4f& brush,
175 int options = EDGE_AND_FILL)
override
181 const bdiVec3f& axis,
182 const bdiFarPosition& center,
185 const bdiVec4f& color_4f,
186 int solid = 1)
override
192 const bdiVec3f& axis,
193 const bdiFarPosition& center,
197 const bdiVec4f& brush,
198 int options = EDGE_AND_FILL)
override
204 const bdiFarPosition& center,
207 const bdiVec4f& brush,
208 int options = EDGE_AND_FILL,
209 int num_slices = -1)
override
215 const bdiMat4f& transform,
218 const bdiVec4f& brush,
219 int options = EDGE_AND_FILL,
220 int num_slices = -1)
override {
225 const bdiFarPosition& p1,
226 const bdiFarPosition& p2,
227 const bdiVec4f& color1,
228 const bdiVec4f& color2,
229 float line_width = -1.0f)
237 const bdiFarPosition& p1,
238 const bdiFarPosition& p2,
239 const bdiVec4f& color)
override
245 const bdiMat4f& model_matrix,
249 const bdiVec4f& color)
override
256 const bdiVec3f& min_xyz,
257 const bdiVec3f& max_xyz,
258 const bdiVec3f& rotation,
259 const bdiFarPosition& rotation_pt,
260 const bdiVec4f& color)
override
268 const bdiVec3f& axis,
269 const bdiFarPosition& center,
271 const bdiVec4f& color,
272 int solid = 1)
override {
277 const bdiVec3f& color)
override {
281 virtual bdiVec3f
get_eye_point(
const bdiCameraFrustum& get_eye_point)
override {
return bdiVec3f(); }
285 const bdiFarPosition& pos,
286 const bdiVec3f& orientation,
287 const bdiVec3f& velocity,
288 const bdiVec4f& color,
290 float camera_fov)
override {
296 const bdiVec3f& orientation,
297 const bdiVec3f& velocity,
298 const bdiVec4f& color,
300 float camera_fov)
override
306 const bdiFarPosition& pos,
308 const bdiVec4f& color,
309 float camera_fov)
override {
313 virtual void draw_point_array(
const bdiRenderPointArray& array,
float point_size = 1.0f)
override
319 const bdiVec4f& color,
const bdiVec4f& color2,
float line_width = 1.0f)
override
325 const bdiVec4f& color,
const bdiVec4f& color2,
float line_width = 1.0f)
override
331 int draw_normals,
float line_width = 1.0f)
override {
337 const bdiVec4f& color,
int edged = 0)
override {
341 virtual void draw_quad_array(
const bdiMat4f& model_matrix,
const bdiRenderQuadArray& array,
342 const bdiVec4f& color,
int edged = FILL)
override {
346 const bdiRenderQuadArray& array,
int edged = FILL)
override {
352 int world_coords_already_camera_local = 0)
override {
356 virtual void world_to_screen(
const bdiMat4f& model_matrix,
const bdiFarPosition& world,
358 int world_coords_already_camera_local = 0)
override {
363 bdiFarPosition* world,
364 int world_coords_already_camera_local = 0)
override {
372 virtual void draw_point(
const bdiFarPosition& point,
const bdiVec4f& color)
override { ; }
395 virtual void draw_text(
float x,
float y,
const bdiVec4f& pen_color,
const char* text,
float text_scale = 1.0f) { ; }
396 virtual void draw_text(
float x,
float y,
const char* text)
override { ; }
400 virtual void draw_queued_text(bdiVec3fArray& verts, bdiVec2fArray& uvs, bdiVec4fArray& colors)
override { ; }
403 bdiVec3fArray& verts,
405 bdiVec4fArray& colors)
override
425 virtual void draw_streamed_data(
const bdiMat4f& model_matrix,
int primitive_type,
const bdiVec3fArray& verts,
426 const bdiVec4fArray* colors = NULL,
const bdiVec3fArray* normals = NULL,
const bdiVec2fArray* uvs = NULL,
const bdiUShortArray* indexes = NULL,
427 const bdiVec4f& default_color = bdiVec4f(1, 1, 1, 1),
const diguyGraphicsMaterial* mtl = NULL)
override
432 virtual void draw_streamed_data(
const bdiMat4f& model_matrix,
int primitive_type,
const bdiVec3fArray& verts,
439 const float* uvs)
override
virtual void set_depth_test_type(bdiDepthTestOption option) override
Definition: DtBdiRenderGizmoRemapper.h:388
virtual void draw_fp_line(const bdiFarPosition &p1, const bdiFarPosition &p2, const bdiVec4f &color1, const bdiVec4f &color2, float line_width=-1.0f) override
Definition: DtBdiRenderGizmoRemapper.h:224
virtual void disable_depth_write() override
Definition: DtBdiRenderGizmoRemapper.h:374
a class to quickly render a bunch of basic primitives as debugging aids
Definition: DtFxGizmoRenderer.h:79
virtual void draw_cylinder(const bdiFarPosition &start, const bdiFarPosition &end, float radius, const bdiVec4f &color_4f, int solid=1, int cap=1) override
Definition: DtBdiRenderGizmoRemapper.h:115
virtual bdiVec3f get_eye_point(const bdiCameraFrustum &get_eye_point) override
Definition: DtBdiRenderGizmoRemapper.h:281
virtual void gl_debug_marker(const char *marker) override
Definition: DtBdiRenderGizmoRemapper.h:417
virtual void draw_point_array(const bdiRenderPointArray &array, float point_size=1.0f) override
Definition: DtBdiRenderGizmoRemapper.h:313
virtual void draw_fp_line_array(const bdiFarPositionArray &array, const bdiVec4f &color, const bdiVec4f &color2, float line_width=1.0f) override
Definition: DtBdiRenderGizmoRemapper.h:318
virtual void enable_alpha_test() override
Definition: DtBdiRenderGizmoRemapper.h:382
virtual void draw_fp_line_array(int vert_count, const bdiFarPosition *array, const bdiVec4f &color, const bdiVec4f &color2, float line_width=1.0f) override
Definition: DtBdiRenderGizmoRemapper.h:324
virtual void draw_arrow(const bdiFarPosition &start, const bdiFarPosition &end, float arrow_width, float shaft_width, const bdiVec4f &color_4f) override
Definition: DtBdiRenderGizmoRemapper.h:66
virtual void draw_point(const bdiFarPosition &point, const bdiVec4f &color) override
Definition: DtBdiRenderGizmoRemapper.h:372
virtual void draw_opengl_primitive(diguyGraphicsShaderProgram *shader, int primitive_type, int vert_count, const float *verts, const float *colors, const float *normals, const float *uvs) override
Definition: DtBdiRenderGizmoRemapper.h:438
virtual void draw_cone(const bdiVec3f &axis, const bdiFarPosition ¢er, float radius, float height, const bdiVec4f &color_4f, int solid=1) override
Definition: DtBdiRenderGizmoRemapper.h:180
virtual void draw_box(const bdiMat4f &model_matrix, bool hightlight, const bdiVec3f &p1, const bdiVec3f &p2, const bdiVec4f &color) override
Definition: DtBdiRenderGizmoRemapper.h:244
virtual void draw_selected_disc(const bdiVec3f &axis, const bdiFarPosition ¢er, float radius, const bdiVec4f &color, int solid=1) override
Definition: DtBdiRenderGizmoRemapper.h:267
virtual void draw_box(bool hightlight, const bdiFarPosition &p1, const bdiFarPosition &p2, const bdiVec4f &color) override
Definition: DtBdiRenderGizmoRemapper.h:235
virtual void set_buffered_data_sets_material(int value) override
Definition: DtBdiRenderGizmoRemapper.h:445
virtual void draw_quad_array(const bdiMat4f &model_matrix, const bdiRenderQuadArray &array, const bdiVec4f &color, int edged=FILL) override
Definition: DtBdiRenderGizmoRemapper.h:341
virtual void world_to_screen(const bdiFarPosition &world, bdiVec3f *screen, int world_coords_already_camera_local=0) override
Definition: DtBdiRenderGizmoRemapper.h:350
virtual void draw_wedge_with_normal(const bdiFarPosition ¢er, const bdiFarPosition &target, const bdiVec3f &snormal, float inner_radius, float arc_width, const bdiVec4f &pen, const bdiVec4f &brush, int options=EDGE_AND_FILL) override
Definition: DtBdiRenderGizmoRemapper.h:168
voidpf void uLong size
Definition: ioapi.h:39
virtual void enable_depth_test() override
switches the bucket the buffered data goes into
Definition: DtBdiRenderGizmoRemapper.h:57
#define DT_DLL_VRVFX
Definition: vrvFx.h:20
virtual void draw_symbolic_character(const bdiFarPosition &pos, const char *symbol, const bdiVec3f &orientation, const bdiVec3f &velocity, const bdiVec4f &color, int depth_test, float camera_fov) override
Definition: DtBdiRenderGizmoRemapper.h:294
virtual void draw_rotated_box(bool hightlight, const bdiVec3f &min_xyz, const bdiVec3f &max_xyz, const bdiVec3f &rotation, const bdiFarPosition &rotation_pt, const bdiVec4f &color) override
Definition: DtBdiRenderGizmoRemapper.h:254
virtual void draw_frustum(const bdiCameraFrustum &frust, const bdiVec3f &color) override
Definition: DtBdiRenderGizmoRemapper.h:276
virtual void draw_coordinate_system(const bdiMat4f &modelview, const bdiMat4f &base, float size=.5f, float alpha=.5f) override
Definition: DtBdiRenderGizmoRemapper.h:265
virtual float get_text_height(const char *text) override
Definition: DtBdiRenderGizmoRemapper.h:398
Contains DLL export macros.
virtual void draw_text(float x, float y, const bdiVec4f &pen_color, const char *text, float text_scale=1.0f)
Definition: DtBdiRenderGizmoRemapper.h:395
virtual void draw_edged_cylinder(const bdiVec3f &axis, const bdiFarPosition ¢er, float radius, float height, const bdiVec4f &pen, const bdiVec4f &brush, int options=EDGE_AND_FILL) override
Definition: DtBdiRenderGizmoRemapper.h:125
virtual void init_font_drawing() override
not implemented yet
Definition: DtBdiRenderGizmoRemapper.h:64
virtual void end_2d_mode() override
Definition: DtBdiRenderGizmoRemapper.h:394
virtual void free_resource(unsigned int vertex_object) override
Definition: DtBdiRenderGizmoRemapper.h:414
virtual void draw_skeleton(bdiCreature *creature) override
Definition: DtBdiRenderGizmoRemapper.h:421
virtual void get_viewport_size(float *width, float *height) override
Definition: DtBdiRenderGizmoRemapper.h:412
virtual void enable_depth_write() override
Definition: DtBdiRenderGizmoRemapper.h:375
virtual void disable_alpha_test() override
Definition: DtBdiRenderGizmoRemapper.h:381
virtual void enable_blend() override
Definition: DtBdiRenderGizmoRemapper.h:378
virtual void draw_simplified_character(int class_type, const bdiFarPosition &pos, const bdiVec3f &orientation, const bdiVec3f &velocity, const bdiVec4f &color, int depth_test, float camera_fov) override
Definition: DtBdiRenderGizmoRemapper.h:283
virtual void draw_edge_array(bdiRenderEdgeArray &array, const bdiVec4f &color, int draw_normals, float line_width=1.0f) override
Definition: DtBdiRenderGizmoRemapper.h:330
virtual void disable_blend() override
Definition: DtBdiRenderGizmoRemapper.h:377
virtual void draw_quad_array(const bdiVec4f &color, const bdiRenderQuadArray &array, int edged=FILL) override
Definition: DtBdiRenderGizmoRemapper.h:345
virtual void draw_streamed_data(const bdiMat4f &model_matrix, int primitive_type, const bdiVec3fArray &verts, const diguyGraphicsMaterial *mtl) override
Definition: DtBdiRenderGizmoRemapper.h:432
virtual void draw_edged_arrow(const bdiFarPosition &start, const bdiFarPosition &end, float arrow_width, float shaft_width, const bdiVec4f &pen, const bdiVec4f &brush, int options=EDGE_AND_FILL) override
Definition: DtBdiRenderGizmoRemapper.h:75
virtual void add_text_to_draw_queue(float x, float y, const bdiVec4f &pen_color, const char *string, float text_scale, bdiVec3fArray &verts, bdiVec2fArray &uvs, bdiVec4fArray &colors) override
Definition: DtBdiRenderGizmoRemapper.h:402
virtual void draw_edged_sphere(const bdiMat4f &transform, float radius, const bdiVec4f &pen, const bdiVec4f &brush, int options=EDGE_AND_FILL, int num_slices=-1) override
Definition: DtBdiRenderGizmoRemapper.h:214
virtual void begin_2d_text_mode() override
Definition: DtBdiRenderGizmoRemapper.h:392
virtual void draw_edged_sphere(const bdiFarPosition ¢er, float radius, const bdiVec4f &pen, const bdiVec4f &brush, int options=EDGE_AND_FILL, int num_slices=-1) override
Definition: DtBdiRenderGizmoRemapper.h:203
DtFxGizmoRenderer * myFxGizmoRenderer
Definition: DtBdiRenderGizmoRemapper.h:454
virtual void world_to_screen(const bdiMat4f &model_matrix, const bdiFarPosition &world, bdiVec3f *screen, int world_coords_already_camera_local=0) override
Definition: DtBdiRenderGizmoRemapper.h:356
virtual float get_text_width(const char *text) override
Definition: DtBdiRenderGizmoRemapper.h:397
int m_depth_test_mode
Definition: DtBdiRenderGizmoRemapper.h:455
virtual void gl_PushDebugGroup(const char *group) override
Definition: DtBdiRenderGizmoRemapper.h:448
virtual void draw_torus(const bdiFarPosition ¢er, float inner_radius, float outer_radius, const bdiVec4f &pen, const bdiVec4f &brush, int options=EDGE_AND_FILL) override
Definition: DtBdiRenderGizmoRemapper.h:147
virtual void draw_wedge(const bdiFarPosition ¢er, const bdiFarPosition &target, float inner_radius, float arc_width, const bdiVec4f &pen, const bdiVec4f &brush, int options=EDGE_AND_FILL) override
Definition: DtBdiRenderGizmoRemapper.h:157
virtual void draw_edged_cone(const bdiVec3f &axis, const bdiFarPosition ¢er, float radius, float height, const bdiVec4f &pen, const bdiVec4f &brush, int options=EDGE_AND_FILL) override
Definition: DtBdiRenderGizmoRemapper.h:191
virtual void gl_PopDebugGroup() override
Definition: DtBdiRenderGizmoRemapper.h:449
virtual void draw_text(float x, float y, const char *text) override
Definition: DtBdiRenderGizmoRemapper.h:396
virtual void draw_queued_text(bdiVec3fArray &verts, bdiVec2fArray &uvs, bdiVec4fArray &colors) override
Definition: DtBdiRenderGizmoRemapper.h:400
virtual void disable_depth_test() override
switches the bucket the buffered data goes into
Definition: DtBdiRenderGizmoRemapper.h:55
virtual void enable_alpha_to_coverage() override
Definition: DtBdiRenderGizmoRemapper.h:386
virtual void screen_to_world(const bdiVec3f &screen, bdiFarPosition *world, int world_coords_already_camera_local=0) override
Definition: DtBdiRenderGizmoRemapper.h:362
virtual void set_line_width(float width) override
Definition: DtBdiRenderGizmoRemapper.h:390
virtual void draw_edged_cylinder(const bdiFarPosition &start, const bdiFarPosition &end, float radius, const bdiVec4f &pen, const bdiVec4f &brush, int options=EDGE_AND_FILL) override
Definition: DtBdiRenderGizmoRemapper.h:136
virtual void begin_2d_mode() override
Definition: DtBdiRenderGizmoRemapper.h:393
virtual void disable_alpha_to_coverage() override
Definition: DtBdiRenderGizmoRemapper.h:385
virtual void draw_light_source(const bdiVec3f &position, float size) override
Definition: DtBdiRenderGizmoRemapper.h:419
virtual void draw_streamed_data(const bdiMat4f &model_matrix, int primitive_type, const bdiVec3fArray &verts, const bdiVec4fArray *colors=NULL, const bdiVec3fArray *normals=NULL, const bdiVec2fArray *uvs=NULL, const bdiUShortArray *indexes=NULL, const bdiVec4f &default_color=bdiVec4f(1, 1, 1, 1), const diguyGraphicsMaterial *mtl=NULL) override
Definition: DtBdiRenderGizmoRemapper.h:425
virtual void draw_point_arrays() override
Definition: DtBdiRenderGizmoRemapper.h:423
a class that fills out the bdi RenderGizmo private interface and maps it to the DtFxGizmoRenderer.
Definition: DtBdiRenderGizmoRemapper.h:23
virtual void draw_auto_scaling_arrow(const bdiFarPosition &start, const bdiFarPosition &end, float arrowSize, float shaftWidth, const bdiVec4f &color) override
Definition: DtBdiRenderGizmoRemapper.h:86
virtual void draw_triangle_array_as_quads(const bdiOctTreeTriangleArray &array, const bdiVec4f &color, int edged=0) override
Definition: DtBdiRenderGizmoRemapper.h:336
virtual float distance_to_render_position(const bdiVec3f &pos) override
Definition: DtBdiRenderGizmoRemapper.h:368
virtual void draw_simplified_crowd(const bdiFarPosition &pos, const float radius, const bdiVec4f &color, float camera_fov) override
Definition: DtBdiRenderGizmoRemapper.h:305
virtual void draw_cylinder(const bdiVec3f &axis, const bdiFarPosition ¢er, float radius, float height, const bdiVec4f &color_4f, int solid=1, int cap=1) override
Definition: DtBdiRenderGizmoRemapper.h:104
virtual bdiVec3f convert_to_local_camera(const bdiFarPosition &pos) override
converts high precision to camera relative floats suitable to send to gpu.
Definition: DtBdiRenderGizmoRemapper.h:46