Kohi Game Engine
editor_gizmo.h File Reference
#include <defines.h>
#include <math/math_types.h>
#include <resources/resource_types.h>

Go to the source code of this file.

Data Structures

struct  editor_gizmo_mode_data
 
struct  editor_gizmo
 

Typedefs

typedef enum editor_gizmo_mode editor_gizmo_mode
 
typedef enum editor_gizmo_interaction_type editor_gizmo_interaction_type
 
typedef struct editor_gizmo_mode_data editor_gizmo_mode_data
 
typedef enum editor_gizmo_orientation editor_gizmo_orientation
 
typedef struct editor_gizmo editor_gizmo
 

Enumerations

enum  editor_gizmo_mode {
  EDITOR_GIZMO_MODE_NONE = 0 , EDITOR_GIZMO_MODE_MOVE = 1 , EDITOR_GIZMO_MODE_ROTATE = 2 , EDITOR_GIZMO_MODE_SCALE = 3 ,
  EDITOR_GIZMO_MODE_MAX = EDITOR_GIZMO_MODE_SCALE
}
 
enum  editor_gizmo_interaction_type {
  EDITOR_GIZMO_INTERACTION_TYPE_NONE , EDITOR_GIZMO_INTERACTION_TYPE_MOUSE_HOVER , EDITOR_GIZMO_INTERACTION_TYPE_MOUSE_DOWN , EDITOR_GIZMO_INTERACTION_TYPE_MOUSE_DRAG ,
  EDITOR_GIZMO_INTERACTION_TYPE_MOUSE_UP , EDITOR_GIZMO_INTERACTION_TYPE_CANCEL
}
 
enum  editor_gizmo_orientation { EDITOR_GIZMO_ORIENTATION_GLOBAL = 0 , EDITOR_GIZMO_ORIENTATION_LOCAL = 1 , EDITOR_GIZMO_ORIENTATION_MAX = EDITOR_GIZMO_ORIENTATION_LOCAL }
 

Functions

KAPI b8 editor_gizmo_create (editor_gizmo *out_gizmo)
 
KAPI void editor_gizmo_destroy (editor_gizmo *gizmo)
 
KAPI b8 editor_gizmo_initialize (editor_gizmo *gizmo)
 
KAPI b8 editor_gizmo_load (editor_gizmo *gizmo)
 
KAPI b8 editor_gizmo_unload (editor_gizmo *gizmo)
 
KAPI void editor_gizmo_refresh (editor_gizmo *gizmo)
 
KAPI editor_gizmo_orientation editor_gizmo_orientation_get (editor_gizmo *gizmo)
 
KAPI void editor_gizmo_orientation_set (editor_gizmo *gizmo, editor_gizmo_orientation orientation)
 
KAPI void editor_gizmo_selected_transform_set (editor_gizmo *gizmo, transform *xform)
 
KAPI void editor_gizmo_update (editor_gizmo *gizmo)
 
KAPI void editor_gizmo_mode_set (editor_gizmo *gizmo, editor_gizmo_mode mode)
 
KAPI void editor_gizmo_interaction_begin (editor_gizmo *gizmo, struct camera *c, struct ray *r, editor_gizmo_interaction_type interaction_type)
 
KAPI void editor_gizmo_interaction_end (editor_gizmo *gizmo)
 
KAPI void editor_gizmo_handle_interaction (editor_gizmo *gizmo, struct camera *c, struct ray *r, editor_gizmo_interaction_type interaction_type)
 

Typedef Documentation

◆ editor_gizmo

typedef struct editor_gizmo editor_gizmo

◆ editor_gizmo_interaction_type

◆ editor_gizmo_mode

◆ editor_gizmo_mode_data

◆ editor_gizmo_orientation

Enumeration Type Documentation

◆ editor_gizmo_interaction_type

Enumerator
EDITOR_GIZMO_INTERACTION_TYPE_NONE 
EDITOR_GIZMO_INTERACTION_TYPE_MOUSE_HOVER 
EDITOR_GIZMO_INTERACTION_TYPE_MOUSE_DOWN 
EDITOR_GIZMO_INTERACTION_TYPE_MOUSE_DRAG 
EDITOR_GIZMO_INTERACTION_TYPE_MOUSE_UP 
EDITOR_GIZMO_INTERACTION_TYPE_CANCEL 

◆ editor_gizmo_mode

Enumerator
EDITOR_GIZMO_MODE_NONE 
EDITOR_GIZMO_MODE_MOVE 
EDITOR_GIZMO_MODE_ROTATE 
EDITOR_GIZMO_MODE_SCALE 
EDITOR_GIZMO_MODE_MAX 

◆ editor_gizmo_orientation

Enumerator
EDITOR_GIZMO_ORIENTATION_GLOBAL 

The gizmo's transform operations are relative to global transform.

EDITOR_GIZMO_ORIENTATION_LOCAL 

The gizmo's transform operations are relative to local transform.

EDITOR_GIZMO_ORIENTATION_MAX 

The gizmo's transform operations are relative to the current view.

Function Documentation

◆ editor_gizmo_create()

KAPI b8 editor_gizmo_create ( editor_gizmo out_gizmo)

◆ editor_gizmo_destroy()

KAPI void editor_gizmo_destroy ( editor_gizmo gizmo)

◆ editor_gizmo_handle_interaction()

KAPI void editor_gizmo_handle_interaction ( editor_gizmo gizmo,
struct camera c,
struct ray r,
editor_gizmo_interaction_type  interaction_type 
)

◆ editor_gizmo_initialize()

KAPI b8 editor_gizmo_initialize ( editor_gizmo gizmo)

◆ editor_gizmo_interaction_begin()

KAPI void editor_gizmo_interaction_begin ( editor_gizmo gizmo,
struct camera c,
struct ray r,
editor_gizmo_interaction_type  interaction_type 
)

◆ editor_gizmo_interaction_end()

KAPI void editor_gizmo_interaction_end ( editor_gizmo gizmo)

◆ editor_gizmo_load()

KAPI b8 editor_gizmo_load ( editor_gizmo gizmo)

◆ editor_gizmo_mode_set()

KAPI void editor_gizmo_mode_set ( editor_gizmo gizmo,
editor_gizmo_mode  mode 
)

◆ editor_gizmo_orientation_get()

KAPI editor_gizmo_orientation editor_gizmo_orientation_get ( editor_gizmo gizmo)

◆ editor_gizmo_orientation_set()

KAPI void editor_gizmo_orientation_set ( editor_gizmo gizmo,
editor_gizmo_orientation  orientation 
)

◆ editor_gizmo_refresh()

KAPI void editor_gizmo_refresh ( editor_gizmo gizmo)

◆ editor_gizmo_selected_transform_set()

KAPI void editor_gizmo_selected_transform_set ( editor_gizmo gizmo,
transform xform 
)

◆ editor_gizmo_unload()

KAPI b8 editor_gizmo_unload ( editor_gizmo gizmo)

◆ editor_gizmo_update()

KAPI void editor_gizmo_update ( editor_gizmo gizmo)