فهرست منبع

[core] Camera2d comment updates (#5401)

* Make the comments on the camera 2d fields more clear about what space each one is in.

* rlparser: update raylib_api.* by CI

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Jeffery Myers 2 روز پیش
والد
کامیت
6f7cd3a9ab

+ 4 - 4
src/raylib.h

@@ -334,10 +334,10 @@ typedef Camera3D Camera;    // Camera type fallback, defaults to Camera3D
 
 // Camera2D, defines position/orientation in 2d space
 typedef struct Camera2D {
-    Vector2 offset;         // Camera offset (displacement from target)
-    Vector2 target;         // Camera target (rotation and zoom origin)
-    float rotation;         // Camera rotation in degrees
-    float zoom;             // Camera zoom (scaling), should be 1.0f by default
+    Vector2 offset;         // Camera offset (screen space offset from window origin)
+    Vector2 target;         // Camera target (world space target point that is mapped to screen space offset)
+	float rotation;         // Camera rotation in degrees (pivots around target)
+    float zoom;             // Camera zoom (scaling around target), must not be set to 0, set to 1.0f for no scale
 } Camera2D;
 
 // Mesh, vertex data and vao/vbo

+ 4 - 4
tools/rlparser/output/raylib_api.json

@@ -769,22 +769,22 @@
         {
           "type": "Vector2",
           "name": "offset",
-          "description": "Camera offset (displacement from target)"
+          "description": "Camera offset (screen space offset from window origin)"
         },
         {
           "type": "Vector2",
           "name": "target",
-          "description": "Camera target (rotation and zoom origin)"
+          "description": "Camera target (world space target point that is mapped to screen space offset)"
         },
         {
           "type": "float",
           "name": "rotation",
-          "description": "Camera rotation in degrees"
+          "description": "Camera rotation in degrees (pivots around target)"
         },
         {
           "type": "float",
           "name": "zoom",
-          "description": "Camera zoom (scaling), should be 1.0f by default"
+          "description": "Camera zoom (scaling around target), must not be set to 0, set to 1.0f for no scale"
         }
       ]
     },

+ 4 - 4
tools/rlparser/output/raylib_api.lua

@@ -769,22 +769,22 @@ return {
         {
           type = "Vector2",
           name = "offset",
-          description = "Camera offset (displacement from target)"
+          description = "Camera offset (screen space offset from window origin)"
         },
         {
           type = "Vector2",
           name = "target",
-          description = "Camera target (rotation and zoom origin)"
+          description = "Camera target (world space target point that is mapped to screen space offset)"
         },
         {
           type = "float",
           name = "rotation",
-          description = "Camera rotation in degrees"
+          description = "Camera rotation in degrees (pivots around target)"
         },
         {
           type = "float",
           name = "zoom",
-          description = "Camera zoom (scaling), should be 1.0f by default"
+          description = "Camera zoom (scaling around target), must not be set to 0, set to 1.0f for no scale"
         }
       }
     },

+ 4 - 4
tools/rlparser/output/raylib_api.txt

@@ -399,10 +399,10 @@ Struct 13: Camera3D (5 fields)
 Struct 14: Camera2D (4 fields)
   Name: Camera2D
   Description: Camera2D, defines position/orientation in 2d space
-  Field[1]: Vector2 offset // Camera offset (displacement from target)
-  Field[2]: Vector2 target // Camera target (rotation and zoom origin)
-  Field[3]: float rotation // Camera rotation in degrees
-  Field[4]: float zoom // Camera zoom (scaling), should be 1.0f by default
+  Field[1]: Vector2 offset // Camera offset (screen space offset from window origin)
+  Field[2]: Vector2 target // Camera target (world space target point that is mapped to screen space offset)
+  Field[3]: float rotation // Camera rotation in degrees (pivots around target)
+  Field[4]: float zoom // Camera zoom (scaling around target), must not be set to 0, set to 1.0f for no scale
 Struct 15: Mesh (17 fields)
   Name: Mesh
   Description: Mesh, vertex data and vao/vbo

+ 4 - 4
tools/rlparser/output/raylib_api.xml

@@ -155,10 +155,10 @@
             <Field type="int" name="projection" desc="Camera projection: CAMERA_PERSPECTIVE or CAMERA_ORTHOGRAPHIC" />
         </Struct>
         <Struct name="Camera2D" fieldCount="4" desc="Camera2D, defines position/orientation in 2d space">
-            <Field type="Vector2" name="offset" desc="Camera offset (displacement from target)" />
-            <Field type="Vector2" name="target" desc="Camera target (rotation and zoom origin)" />
-            <Field type="float" name="rotation" desc="Camera rotation in degrees" />
-            <Field type="float" name="zoom" desc="Camera zoom (scaling), should be 1.0f by default" />
+            <Field type="Vector2" name="offset" desc="Camera offset (screen space offset from window origin)" />
+            <Field type="Vector2" name="target" desc="Camera target (world space target point that is mapped to screen space offset)" />
+            <Field type="float" name="rotation" desc="Camera rotation in degrees (pivots around target)" />
+            <Field type="float" name="zoom" desc="Camera zoom (scaling around target), must not be set to 0, set to 1.0f for no scale" />
         </Struct>
         <Struct name="Mesh" fieldCount="17" desc="Mesh, vertex data and vao/vbo">
             <Field type="int" name="vertexCount" desc="Number of vertices stored in arrays" />