diff options
| author | sotech117 <michael_foiani@brown.edu> | 2023-12-13 13:47:44 -0500 |
|---|---|---|
| committer | sotech117 <michael_foiani@brown.edu> | 2023-12-13 13:47:44 -0500 |
| commit | 33a1cdc3532d145944b00a4ca03fd01d4d5b9532 (patch) | |
| tree | 833760d85ed92c39c1f9ffbd591dde4cf619689e /scenefiles-4d | |
| parent | 4fb06778c1a19914c759ab5db495754b1fd9e2c3 (diff) | |
get the collision detections for cubes and sphers to work using specific cases of separate axis theorem. however, the velocities are no longer flipping.
Diffstat (limited to 'scenefiles-4d')
| -rw-r--r-- | scenefiles-4d/cube_cube_collision.json | 66 | ||||
| -rw-r--r-- | scenefiles-4d/cube_sphere_collision.json | 66 | ||||
| -rw-r--r-- | scenefiles-4d/five_shapes.json | 7 | ||||
| -rw-r--r-- | scenefiles-4d/unit_cube.json | 14 |
4 files changed, 150 insertions, 3 deletions
diff --git a/scenefiles-4d/cube_cube_collision.json b/scenefiles-4d/cube_cube_collision.json new file mode 100644 index 0000000..14867fb --- /dev/null +++ b/scenefiles-4d/cube_cube_collision.json @@ -0,0 +1,66 @@ +{ + "name": "root", + "globalData": { + "ambientCoeff": 0.5, + "diffuseCoeff": 0.5, + "specularCoeff": 0.5, + "transparentCoeff": 0, + "gravity": [0.0, -0.0098, 0.0, 0.0] + }, + "cameraData": { + "position": [3.0, 3.0, 3.0, 3.0], + "up": [0.0, 1.0, 0.0, 0.0], + "heightAngle": 30.0, + "depthAngle": 30.0, + "focus": [0.0, 0.0, 0.0, 0.0], + "over": [0.0, 0.0, 0.0, 1.0] + }, + "groups": [ + { + "lights": [ + { + "type": "directional", + "color": [1.0, 1.0, 1.0], + "direction": [0.0, -1.0, 0.0, 0.0] + }, + { + "type": "directional", + "color": [1.0, 1.0, 1.0], + "direction": [1.0, 1.0, 3.0, 3.0] + } + ] + }, + { + "groups": [ + { + "translate": [-1.0, 0.0, 0.0, 0.0], + "rotate": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], + "scale": [1.0, 1.0, 1.0, 1.0], + "primitives": [ + { + "type": "cube", + "diffuse": [1.0, 0.0, 0.0], + "specular": [1.0, 1.0, 1.0], + "shininess": 25.0, + "velocity": [0.0, 0.0, 0.0, 0.0] + } + ] + }, + { + "translate": [5.0, 0.0, 0.0, 5.0], + "rotate": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], + "scale": [1.0, 1.0, 1.0, 1.0], + "primitives": [ + { + "type": "cube", + "diffuse": [0.0, 1.0, 0.0], + "specular": [1.0, 1.0, 1.0], + "shininess": 25.0, + "velocity": [-0.1, 0.0, 0.0, -0.1] + } + ] + } + ] + } + ] +} diff --git a/scenefiles-4d/cube_sphere_collision.json b/scenefiles-4d/cube_sphere_collision.json new file mode 100644 index 0000000..dad0721 --- /dev/null +++ b/scenefiles-4d/cube_sphere_collision.json @@ -0,0 +1,66 @@ +{ + "name": "root", + "globalData": { + "ambientCoeff": 0.5, + "diffuseCoeff": 0.5, + "specularCoeff": 0.5, + "transparentCoeff": 0, + "gravity": [0.0, -0.0098, 0.0, 0.0] + }, + "cameraData": { + "position": [3.0, 3.0, 3.0, 3.0], + "up": [0.0, 1.0, 0.0, 0.0], + "heightAngle": 30.0, + "depthAngle": 30.0, + "focus": [0.0, 0.0, 0.0, 0.0], + "over": [0.0, 0.0, 0.0, 1.0] + }, + "groups": [ + { + "lights": [ + { + "type": "directional", + "color": [1.0, 1.0, 1.0], + "direction": [0.0, -1.0, 0.0, 0.0] + }, + { + "type": "directional", + "color": [1.0, 1.0, 1.0], + "direction": [1.0, 1.0, 3.0, 3.0] + } + ] + }, + { + "groups": [ + { + "translate": [-1.0, 0.0, 0.0, 0.0], + "rotate": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], + "scale": [1.0, 1.0, 1.0, 1.0], + "primitives": [ + { + "type": "cube", + "diffuse": [1.0, 0.0, 0.0], + "specular": [1.0, 1.0, 1.0], + "shininess": 25.0, + "velocity": [0.0, 0.0, 0.0, 0.0] + } + ] + }, + { + "translate": [5.0, 0.0, 0.0, 5.0], + "rotate": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], + "scale": [1.0, 1.0, 1.0, 1.0], + "primitives": [ + { + "type": "sphere", + "diffuse": [0.0, 1.0, 0.0], + "specular": [1.0, 1.0, 1.0], + "shininess": 25.0, + "velocity": [-0.1, 0.0, 0.0, -0.1] + } + ] + } + ] + } + ] +} diff --git a/scenefiles-4d/five_shapes.json b/scenefiles-4d/five_shapes.json index c6c6645..4a49ef2 100644 --- a/scenefiles-4d/five_shapes.json +++ b/scenefiles-4d/five_shapes.json @@ -20,7 +20,12 @@ { "type": "directional", "color": [1.0, 1.0, 1.0], - "direction": [-3.0, -2.0, -1.0] + "direction": [-3.0, 2.0, -1.0, 1.0] + }, + { + "type": "directional", + "color": [1.0, 1.0, 1.0], + "direction": [3.0, -2.0, -3.0, 1.0] } ] }, diff --git a/scenefiles-4d/unit_cube.json b/scenefiles-4d/unit_cube.json index 6b1ee6f..b21615a 100644 --- a/scenefiles-4d/unit_cube.json +++ b/scenefiles-4d/unit_cube.json @@ -21,7 +21,17 @@ { "type": "directional", "color": [1.0, 1.0, 1.0], - "direction": [-3.0, -2.0, -1.0, 0.0] + "direction": [3.0, 3.0, 3.0, 3.0] + }, + { + "type": "directional", + "color": [1.0, 0.0, 0.0], + "direction": [3.0, -3.0, 3.0, -3.0] + }, + { + "type": "directional", + "color": [0.0, 0.0, 1.0], + "direction": [-3.0, 3.0, 3.0, -3.0] } ] }, @@ -34,7 +44,7 @@ "primitives": [ { "type": "cube", - "diffuse": [1.0, 0.0, 0.0], + "diffuse": [1.0, 0.0, 1.0], "specular": [1.0, 1.0, 1.0], "shininess": 25.0, "velocity": [0.0, 0.0, 0.0, 0.0] |
