From a35d79b332855b759ee2e0028cc95a009c22a185 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 7 Oct 2024 16:41:02 +0000 Subject: [PATCH] deploy: aeff9e2b22c3c3e44f32de792464c074b9f2c160 --- 404.html | 2 +- .../{0058b4c6.feb7f0de.js => 0058b4c6.4c983b01.js} | 2 +- .../{2a0f5d50.d95faed7.js => 2a0f5d50.60e94b8a.js} | 2 +- assets/js/9beb87c2.45705939.js | 1 + assets/js/9beb87c2.cbb4a56e.js | 1 - assets/js/runtime~main.1d4c6feb.js | 1 - assets/js/runtime~main.20777961.js | 1 + docs/category/documentation/index.html | 2 +- docs/category/jitter-demo/index.html | 2 +- docs/category/quickstart/index.html | 2 +- docs/changelog/index.html | 14 +++++++++++--- docs/demo/jitterdemo/index.html | 2 +- docs/documentation/00unmanaged-memory/index.html | 2 +- docs/documentation/01world-entities/index.html | 2 +- docs/documentation/02simulation-step/index.html | 2 +- docs/documentation/03raycasting/index.html | 2 +- docs/documentation/04contact-generation/index.html | 2 +- docs/intro/index.html | 2 +- docs/quickstart/hello-world/index.html | 2 +- docs/quickstart/project-setup/index.html | 4 ++-- docs/quickstart/render-loop/index.html | 2 +- docs/webasm/index.html | 2 +- index.html | 2 +- 23 files changed, 32 insertions(+), 24 deletions(-) rename assets/js/{0058b4c6.feb7f0de.js => 0058b4c6.4c983b01.js} (98%) rename assets/js/{2a0f5d50.d95faed7.js => 2a0f5d50.60e94b8a.js} (98%) create mode 100644 assets/js/9beb87c2.45705939.js delete mode 100644 assets/js/9beb87c2.cbb4a56e.js delete mode 100644 assets/js/runtime~main.1d4c6feb.js create mode 100644 assets/js/runtime~main.20777961.js diff --git a/404.html b/404.html index d98e1d49..4dde7afa 100644 --- a/404.html +++ b/404.html @@ -4,7 +4,7 @@ Page Not Found | Jitter Physics - + diff --git a/assets/js/0058b4c6.feb7f0de.js b/assets/js/0058b4c6.4c983b01.js similarity index 98% rename from assets/js/0058b4c6.feb7f0de.js rename to assets/js/0058b4c6.4c983b01.js index 32cd3fda..0020535d 100644 --- a/assets/js/0058b4c6.feb7f0de.js +++ b/assets/js/0058b4c6.4c983b01.js @@ -1 +1 @@ -"use strict";(self.webpackChunkjitterphysics=self.webpackChunkjitterphysics||[]).push([[849],{6164:e=>{e.exports=JSON.parse('{"version":{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"tutorialSidebar":[{"type":"link","label":"Jitter Physics 2","href":"/docs/intro","docId":"intro","unlisted":false},{"type":"category","label":"Quickstart","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Project Setup","href":"/docs/quickstart/project-setup","docId":"quickstart/project-setup","unlisted":false},{"type":"link","label":"Setting Up a Render Loop","href":"/docs/quickstart/render-loop","docId":"quickstart/render-loop","unlisted":false},{"type":"link","label":"Hello World","href":"/docs/quickstart/hello-world","docId":"quickstart/hello-world","unlisted":false}],"href":"/docs/category/quickstart"},{"type":"category","label":"Documentation","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Unmanaged Memory","href":"/docs/documentation/00unmanaged-memory","docId":"documentation/00unmanaged-memory","unlisted":false},{"type":"link","label":"World Entities","href":"/docs/documentation/01world-entities","docId":"documentation/01world-entities","unlisted":false},{"type":"link","label":"Simulation Step","href":"/docs/documentation/02simulation-step","docId":"documentation/02simulation-step","unlisted":false},{"type":"link","label":"Ray Casting","href":"/docs/documentation/03raycasting","docId":"documentation/03raycasting","unlisted":false},{"type":"link","label":"Contact Generation","href":"/docs/documentation/04contact-generation","docId":"documentation/04contact-generation","unlisted":false}],"href":"/docs/category/documentation"},{"type":"category","label":"Jitter Demo","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Overview","href":"/docs/demo/jitterdemo","docId":"demo/jitterdemo","unlisted":false}],"href":"/docs/category/jitter-demo"},{"type":"link","label":"Web demo","href":"/docs/webasm","docId":"webasm","unlisted":false},{"type":"link","label":"Changelog","href":"/docs/changelog","docId":"changelog","unlisted":false}]},"docs":{"changelog":{"id":"changelog","title":"Changelog","description":"Jitter 2.4.4 (09-14-2024)","sidebar":"tutorialSidebar"},"demo/jitterdemo":{"id":"demo/jitterdemo","title":"Overview","description":"Jitter Demo is a 3D renderer which shows the capabilities of Jitter Physics.","sidebar":"tutorialSidebar"},"documentation/00unmanaged-memory":{"id":"documentation/00unmanaged-memory","title":"Unmanaged Memory","description":"The constructor of the world class takes three optional arguments, each with quite large default values:","sidebar":"tutorialSidebar"},"documentation/01world-entities":{"id":"documentation/01world-entities","title":"World Entities","description":"For a more detailed description of the entities of a world, namely Islands, Shapes, RigidBodies, Constraints, and Arbiters, refer to the corresponding documentation pages.","sidebar":"tutorialSidebar"},"documentation/02simulation-step":{"id":"documentation/02simulation-step","title":"Simulation Step","description":"Call world.Step(float dt, bool multiThread = true) to simulate a time step of length dt. Every time world.Step is called, the following phases are performed in the engine:","sidebar":"tutorialSidebar"},"documentation/03raycasting":{"id":"documentation/03raycasting","title":"Ray Casting","description":"Retrieve information about where a ray, defined by an origin and a direction, hits a target. Generally, the actual hit point can be calculated using the fraction value returned by the appropriate functions using the formula:","sidebar":"tutorialSidebar"},"documentation/04contact-generation":{"id":"documentation/04contact-generation","title":"Contact Generation","description":"Jitter exclusively uses algorithms based on the Minkowski sum to detect collisions (available in the NarrowPhase class), i.e., there is no explicit code for the collision of two boxes, for example.","sidebar":"tutorialSidebar"},"intro":{"id":"intro","title":"Jitter Physics 2","description":"You will find tutorials and documentation here. Work in progress. You can help","sidebar":"tutorialSidebar"},"quickstart/hello-world":{"id":"quickstart/hello-world","title":"Hello World","description":"We will now add physics to the scene. We do this by creating a new instance of the World class and adding several rigid bodies to it.","sidebar":"tutorialSidebar"},"quickstart/project-setup":{"id":"quickstart/project-setup","title":"Project Setup","description":"Requirements","sidebar":"tutorialSidebar"},"quickstart/render-loop":{"id":"quickstart/render-loop","title":"Setting Up a Render Loop","description":"The first thing we need to do is to familiarize ourselves a bit with Raylib_cs. Replace the content of Program.cs with the following code:","sidebar":"tutorialSidebar"},"webasm":{"id":"webasm","title":"Web demo","description":"A demo scene showing Jitter2 running in the browser (size 14MB).","sidebar":"tutorialSidebar"}}}}')}}]); \ No newline at end of file +"use strict";(self.webpackChunkjitterphysics=self.webpackChunkjitterphysics||[]).push([[849],{6164:e=>{e.exports=JSON.parse('{"version":{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"tutorialSidebar":[{"type":"link","label":"Jitter Physics 2","href":"/docs/intro","docId":"intro","unlisted":false},{"type":"category","label":"Quickstart","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Project Setup","href":"/docs/quickstart/project-setup","docId":"quickstart/project-setup","unlisted":false},{"type":"link","label":"Setting Up a Render Loop","href":"/docs/quickstart/render-loop","docId":"quickstart/render-loop","unlisted":false},{"type":"link","label":"Hello World","href":"/docs/quickstart/hello-world","docId":"quickstart/hello-world","unlisted":false}],"href":"/docs/category/quickstart"},{"type":"category","label":"Documentation","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Unmanaged Memory","href":"/docs/documentation/00unmanaged-memory","docId":"documentation/00unmanaged-memory","unlisted":false},{"type":"link","label":"World Entities","href":"/docs/documentation/01world-entities","docId":"documentation/01world-entities","unlisted":false},{"type":"link","label":"Simulation Step","href":"/docs/documentation/02simulation-step","docId":"documentation/02simulation-step","unlisted":false},{"type":"link","label":"Ray Casting","href":"/docs/documentation/03raycasting","docId":"documentation/03raycasting","unlisted":false},{"type":"link","label":"Contact Generation","href":"/docs/documentation/04contact-generation","docId":"documentation/04contact-generation","unlisted":false}],"href":"/docs/category/documentation"},{"type":"category","label":"Jitter Demo","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Overview","href":"/docs/demo/jitterdemo","docId":"demo/jitterdemo","unlisted":false}],"href":"/docs/category/jitter-demo"},{"type":"link","label":"Web demo","href":"/docs/webasm","docId":"webasm","unlisted":false},{"type":"link","label":"Changelog","href":"/docs/changelog","docId":"changelog","unlisted":false}]},"docs":{"changelog":{"id":"changelog","title":"Changelog","description":"Jitter 2.4.5 (10-07-2024)","sidebar":"tutorialSidebar"},"demo/jitterdemo":{"id":"demo/jitterdemo","title":"Overview","description":"Jitter Demo is a 3D renderer which shows the capabilities of Jitter Physics.","sidebar":"tutorialSidebar"},"documentation/00unmanaged-memory":{"id":"documentation/00unmanaged-memory","title":"Unmanaged Memory","description":"The constructor of the world class takes three optional arguments, each with quite large default values:","sidebar":"tutorialSidebar"},"documentation/01world-entities":{"id":"documentation/01world-entities","title":"World Entities","description":"For a more detailed description of the entities of a world, namely Islands, Shapes, RigidBodies, Constraints, and Arbiters, refer to the corresponding documentation pages.","sidebar":"tutorialSidebar"},"documentation/02simulation-step":{"id":"documentation/02simulation-step","title":"Simulation Step","description":"Call world.Step(float dt, bool multiThread = true) to simulate a time step of length dt. Every time world.Step is called, the following phases are performed in the engine:","sidebar":"tutorialSidebar"},"documentation/03raycasting":{"id":"documentation/03raycasting","title":"Ray Casting","description":"Retrieve information about where a ray, defined by an origin and a direction, hits a target. Generally, the actual hit point can be calculated using the fraction value returned by the appropriate functions using the formula:","sidebar":"tutorialSidebar"},"documentation/04contact-generation":{"id":"documentation/04contact-generation","title":"Contact Generation","description":"Jitter exclusively uses algorithms based on the Minkowski sum to detect collisions (available in the NarrowPhase class), i.e., there is no explicit code for the collision of two boxes, for example.","sidebar":"tutorialSidebar"},"intro":{"id":"intro","title":"Jitter Physics 2","description":"You will find tutorials and documentation here. Work in progress. You can help","sidebar":"tutorialSidebar"},"quickstart/hello-world":{"id":"quickstart/hello-world","title":"Hello World","description":"We will now add physics to the scene. We do this by creating a new instance of the World class and adding several rigid bodies to it.","sidebar":"tutorialSidebar"},"quickstart/project-setup":{"id":"quickstart/project-setup","title":"Project Setup","description":"Requirements","sidebar":"tutorialSidebar"},"quickstart/render-loop":{"id":"quickstart/render-loop","title":"Setting Up a Render Loop","description":"The first thing we need to do is to familiarize ourselves a bit with Raylib_cs. Replace the content of Program.cs with the following code:","sidebar":"tutorialSidebar"},"webasm":{"id":"webasm","title":"Web demo","description":"A demo scene showing Jitter2 running in the browser (size 14MB).","sidebar":"tutorialSidebar"}}}}')}}]); \ No newline at end of file diff --git a/assets/js/2a0f5d50.d95faed7.js b/assets/js/2a0f5d50.60e94b8a.js similarity index 98% rename from assets/js/2a0f5d50.d95faed7.js rename to assets/js/2a0f5d50.60e94b8a.js index e2fa8b69..eb5c71a7 100644 --- a/assets/js/2a0f5d50.d95faed7.js +++ b/assets/js/2a0f5d50.60e94b8a.js @@ -1 +1 @@ -"use strict";(self.webpackChunkjitterphysics=self.webpackChunkjitterphysics||[]).push([[38],{8051:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>p,frontMatter:()=>s,metadata:()=>a,toc:()=>d});var r=n(4848),o=n(8453);const s={sidebar_position:1},i="Project Setup",a={id:"quickstart/project-setup",title:"Project Setup",description:"Requirements",source:"@site/docs/01_quickstart/00-project-setup.md",sourceDirName:"01_quickstart",slug:"/quickstart/project-setup",permalink:"/docs/quickstart/project-setup",draft:!1,unlisted:!1,editUrl:"https://github.com/notgiven688/jitterphysics2/tree/main/docs/docs/01_quickstart/00-project-setup.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"Quickstart",permalink:"/docs/category/quickstart"},next:{title:"Setting Up a Render Loop",permalink:"/docs/quickstart/render-loop"}},c={},d=[{value:"Requirements",id:"requirements",level:3},{value:"Create a New Console Application and Add Jitter and Raylib",id:"create-a-new-console-application-and-add-jitter-and-raylib",level:3}];function l(e){const t={a:"a",code:"code",h1:"h1",h3:"h3",p:"p",pre:"pre",...(0,o.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(t.h1,{id:"project-setup",children:"Project Setup"}),"\n",(0,r.jsx)(t.h3,{id:"requirements",children:"Requirements"}),"\n",(0,r.jsxs)(t.p,{children:["Install the ",(0,r.jsx)(t.a,{href:"https://dotnet.microsoft.com/download/dotnet/8.0",children:".NET 8.0 SDK"}),"."]}),"\n",(0,r.jsx)(t.p,{children:"Ensure that dotnet is correctly set up by executing the following command:"}),"\n",(0,r.jsx)(t.pre,{children:(0,r.jsx)(t.code,{className:"language-sh",children:"dotnet --version\n"})}),"\n",(0,r.jsx)(t.h3,{id:"create-a-new-console-application-and-add-jitter-and-raylib",children:"Create a New Console Application and Add Jitter and Raylib"}),"\n",(0,r.jsx)(t.p,{children:'First, create a new directory named "BoxDrop" and navigate into it:'}),"\n",(0,r.jsx)(t.pre,{children:(0,r.jsx)(t.code,{className:"language-sh",children:"mkdir BoxDrop && cd BoxDrop\n"})}),"\n",(0,r.jsx)(t.p,{children:"Next, create a new console application in this directory and add Raylib-cs and Jitter2:"}),"\n",(0,r.jsx)(t.pre,{children:(0,r.jsx)(t.code,{className:"language-sh",children:"dotnet new console\ndotnet add package Raylib-cs --version 6.1.1\ndotnet add package Jitter2 --version 2.4.4\n"})}),"\n",(0,r.jsx)(t.p,{children:"You have completed the setup. If you now execute the following command:"}),"\n",(0,r.jsx)(t.pre,{children:(0,r.jsx)(t.code,{className:"language-sh",children:"dotnet run\n"})}),"\n",(0,r.jsx)(t.p,{children:'Your console should display: "Hello, World!".'})]})}function p(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(l,{...e})}):l(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>i,x:()=>a});var r=n(6540);const o={},s=r.createContext(o);function i(e){const t=r.useContext(s);return r.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:i(e.components),r.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkjitterphysics=self.webpackChunkjitterphysics||[]).push([[38],{8051:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>p,frontMatter:()=>s,metadata:()=>a,toc:()=>d});var r=n(4848),o=n(8453);const s={sidebar_position:1},i="Project Setup",a={id:"quickstart/project-setup",title:"Project Setup",description:"Requirements",source:"@site/docs/01_quickstart/00-project-setup.md",sourceDirName:"01_quickstart",slug:"/quickstart/project-setup",permalink:"/docs/quickstart/project-setup",draft:!1,unlisted:!1,editUrl:"https://github.com/notgiven688/jitterphysics2/tree/main/docs/docs/01_quickstart/00-project-setup.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"Quickstart",permalink:"/docs/category/quickstart"},next:{title:"Setting Up a Render Loop",permalink:"/docs/quickstart/render-loop"}},c={},d=[{value:"Requirements",id:"requirements",level:3},{value:"Create a New Console Application and Add Jitter and Raylib",id:"create-a-new-console-application-and-add-jitter-and-raylib",level:3}];function l(e){const t={a:"a",code:"code",h1:"h1",h3:"h3",p:"p",pre:"pre",...(0,o.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(t.h1,{id:"project-setup",children:"Project Setup"}),"\n",(0,r.jsx)(t.h3,{id:"requirements",children:"Requirements"}),"\n",(0,r.jsxs)(t.p,{children:["Install the ",(0,r.jsx)(t.a,{href:"https://dotnet.microsoft.com/download/dotnet/8.0",children:".NET 8.0 SDK"}),"."]}),"\n",(0,r.jsx)(t.p,{children:"Ensure that dotnet is correctly set up by executing the following command:"}),"\n",(0,r.jsx)(t.pre,{children:(0,r.jsx)(t.code,{className:"language-sh",children:"dotnet --version\n"})}),"\n",(0,r.jsx)(t.h3,{id:"create-a-new-console-application-and-add-jitter-and-raylib",children:"Create a New Console Application and Add Jitter and Raylib"}),"\n",(0,r.jsx)(t.p,{children:'First, create a new directory named "BoxDrop" and navigate into it:'}),"\n",(0,r.jsx)(t.pre,{children:(0,r.jsx)(t.code,{className:"language-sh",children:"mkdir BoxDrop && cd BoxDrop\n"})}),"\n",(0,r.jsx)(t.p,{children:"Next, create a new console application in this directory and add Raylib-cs and Jitter2:"}),"\n",(0,r.jsx)(t.pre,{children:(0,r.jsx)(t.code,{className:"language-sh",children:"dotnet new console\ndotnet add package Raylib-cs --version 6.1.1\ndotnet add package Jitter2 --version 2.4.5\n"})}),"\n",(0,r.jsx)(t.p,{children:"You have completed the setup. If you now execute the following command:"}),"\n",(0,r.jsx)(t.pre,{children:(0,r.jsx)(t.code,{className:"language-sh",children:"dotnet run\n"})}),"\n",(0,r.jsx)(t.p,{children:'Your console should display: "Hello, World!".'})]})}function p(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(l,{...e})}):l(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>i,x:()=>a});var r=n(6540);const o={},s=r.createContext(o);function i(e){const t=r.useContext(s);return r.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:i(e.components),r.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/9beb87c2.45705939.js b/assets/js/9beb87c2.45705939.js new file mode 100644 index 00000000..52a2416f --- /dev/null +++ b/assets/js/9beb87c2.45705939.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkjitterphysics=self.webpackChunkjitterphysics||[]).push([[539],{5851:(e,i,n)=>{n.r(i),n.d(i,{assets:()=>o,contentTitle:()=>l,default:()=>h,frontMatter:()=>s,metadata:()=>d,toc:()=>a});var t=n(4848),r=n(8453);const s={sidebar_position:5},l="Changelog",d={id:"changelog",title:"Changelog",description:"Jitter 2.4.5 (10-07-2024)",source:"@site/docs/changelog.md",sourceDirName:".",slug:"/changelog",permalink:"/docs/changelog",draft:!1,unlisted:!1,editUrl:"https://github.com/notgiven688/jitterphysics2/tree/main/docs/docs/changelog.md",tags:[],version:"current",sidebarPosition:5,frontMatter:{sidebar_position:5},sidebar:"tutorialSidebar",previous:{title:"Web demo",permalink:"/docs/webasm"}},o={},a=[{value:"Jitter 2.4.5 (10-07-2024)",id:"jitter-245-10-07-2024",level:3},{value:"Jitter 2.4.4 (09-14-2024)",id:"jitter-244-09-14-2024",level:3},{value:"Jitter 2.4.3 (08-31-2024)",id:"jitter-243-08-31-2024",level:3},{value:"Jitter 2.4.2 (08-26-2024)",id:"jitter-242-08-26-2024",level:3},{value:"Jitter 2.4.1 (08-21-2024)",id:"jitter-241-08-21-2024",level:3},{value:"Jitter 2.4.0 (08-10-2024)",id:"jitter-240-08-10-2024",level:3},{value:"Jitter 2.3.1 (06-02-2024)",id:"jitter-231-06-02-2024",level:3},{value:"Jitter 2.3.0 (05-20-2024)",id:"jitter-230-05-20-2024",level:3},{value:"Jitter 2.2.1 (04-29-2024)",id:"jitter-221-04-29-2024",level:3},{value:"Jitter 2.2.0 (01-02-2024)",id:"jitter-220-01-02-2024",level:3},{value:"Jitter 2.1.1 (12-17-2023)",id:"jitter-211-12-17-2023",level:3},{value:"Jitter 2.1.0 (12-10-2023)",id:"jitter-210-12-10-2023",level:3},{value:"Jitter 2.0.1 (10-28-2023)",id:"jitter-201-10-28-2023",level:3},{value:"Jitter 2.0.0 (10-22-2023)",id:"jitter-200-10-22-2023",level:3},{value:"Jitter 2.0.0-beta (10-17-2023)",id:"jitter-200-beta-10-17-2023",level:3},{value:"Jitter 2.0.0-alpha (09-18-2023)",id:"jitter-200-alpha-09-18-2023",level:3}];function c(e){const i={code:"code",h1:"h1",h3:"h3",li:"li",p:"p",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(i.h1,{id:"changelog",children:"Changelog"}),"\n",(0,t.jsx)(i.h3,{id:"jitter-245-10-07-2024",children:"Jitter 2.4.5 (10-07-2024)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Added new methods to NarrowPhase: Distance and Overlap."}),"\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.strong,{children:"Breaking Change:"})," Renamed NarrowPhase.SweepTest to NarrowPhase.Sweep."]}),"\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.strong,{children:"Breaking Change:"})," Renamed NarrowPhase.GJKEPA to NarrowPhase.Collision."]}),"\n",(0,t.jsx)(i.li,{children:"Made PointTest, Raycast and SweepTest to use new SimplexSolver and SimplexSolverAB implementations."}),"\n",(0,t.jsx)(i.li,{children:"Fixed normal in GJKEPA for separating case."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-244-09-14-2024",children:"Jitter 2.4.4 (09-14-2024)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Implemented fixes and workarounds for using Jitter with a debugger attached."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-243-08-31-2024",children:"Jitter 2.4.3 (08-31-2024)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Correct corner case beeing wrong in MPR collision detection due to typo (bug fix)."}),"\n",(0,t.jsx)(i.li,{children:"FatTriangleShape level did not properly take transformations into account (bug fix)."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-242-08-26-2024",children:"Jitter 2.4.2 (08-26-2024)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Added FatTriangleShape to give triangles thickness which can be useful for static triangle meshes."}),"\n",(0,t.jsx)(i.li,{children:"Removal from potential pairs in DynamicTree ignores filters from now on (bug fix)."}),"\n",(0,t.jsx)(i.li,{children:"Use sweep tests for speculative contacts, vastly improving simulation quality in this scenario."}),"\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.strong,{children:"Breaking Change:"})," Redefinition of NarrowPhase.SweepTest results."]}),"\n",(0,t.jsx)(i.li,{children:"Improved TriangleEdgeCollisionFilter."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-241-08-21-2024",children:"Jitter 2.4.1 (08-21-2024)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Improved TriangleEdgeCollisionFilter."}),"\n",(0,t.jsx)(i.li,{children:"Implemented analytical box and sphere ray casting."}),"\n",(0,t.jsx)(i.li,{children:"Made Restitution and Friction public in Contact."}),"\n",(0,t.jsx)(i.li,{children:"Improved DynamicTree interface."}),"\n",(0,t.jsx)(i.li,{children:"Add Debug.Asserts in ActiveList."}),"\n",(0,t.jsx)(i.li,{children:"Mark ArbiterKey as readonly."}),"\n",(0,t.jsx)(i.li,{children:"Added enumerator to PairHashSet."}),"\n",(0,t.jsx)(i.li,{children:"Changed ShapeHelper.MakeHull to take a generic of type ICollection."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-240-08-10-2024",children:"Jitter 2.4.0 (08-10-2024)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Improved TrimPotentialPairs logic."}),"\n",(0,t.jsx)(i.li,{children:"Optimized quaternion vector transformation."}),"\n",(0,t.jsx)(i.li,{children:"Extended functionality of ContactData.UsageMask."}),"\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.strong,{children:"Breaking Change:"})," Overhauled the shape system. Regular shapes (box, sphere, capsule, ...) now derive from RigidBodyShape. Some method signatures changed slightly, e.g. ray casting."]}),"\n",(0,t.jsx)(i.li,{children:"Improved exceptions."}),"\n",(0,t.jsx)(i.li,{children:"Added ReferenceFrameAttribute."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-231-06-02-2024",children:"Jitter 2.3.1 (06-02-2024)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"ReadOnly wrappers (ReadOnlyList, ReadOnlyHashset) are now structs."}),"\n",(0,t.jsx)(i.li,{children:"Shapes with very small dimensions might have close to zero or zero mass/inertia. Creating rigid bodies from them now throws an exception (use body.AddShape(shape, setMassInertia: false) to not use the shape's mass properties)."}),"\n",(0,t.jsx)(i.li,{children:"Added BeginCollide and EndCollide events per body."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-230-05-20-2024",children:"Jitter 2.3.0 (05-20-2024)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Added RigidBody.RemoveShape overload to remove multiple shapes at once."}),"\n",(0,t.jsx)(i.li,{children:"Marked Rigid.ClearShapes deprecated."}),"\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.strong,{children:"Breaking Change:"})," Use JQuaternion for orientations. Sorry for the API break."]}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-221-04-29-2024",children:"Jitter 2.2.1 (04-29-2024)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Add optional activate parameter to world.AddShape."}),"\n",(0,t.jsx)(i.li,{children:"Add NarrowPhase.SweepTest."}),"\n",(0,t.jsx)(i.li,{children:"EPA collision detection: various improvements."}),"\n",(0,t.jsx)(i.li,{children:"Improve exit condition for RayCast and PointTest."}),"\n",(0,t.jsx)(i.li,{children:"Remove redundant ArgumentException for zero mass shapes."}),"\n",(0,t.jsx)(i.li,{children:"Handle zero time steps. Throw ArgumentException for negative time steps."}),"\n",(0,t.jsx)(i.li,{children:"Add joint base class to joint classes."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-220-01-02-2024",children:"Jitter 2.2.0 (01-02-2024)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.strong,{children:"Breaking Change:"})," Renamed ",(0,t.jsx)(i.code,{children:"Raycast"})," to ",(0,t.jsx)(i.code,{children:"RayCast"}),"."]}),"\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.code,{children:"world.Remove(world.NullBody)"})," does now remove all shapes, constraints and contacts associated with NullBody."]}),"\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.code,{children:"world.AddShape(shape)"})," respects the activation state of the associated rigid body. Most notable: performance improvement when directly adding ",(0,t.jsx)(i.code,{children:"TriangleShape"}),"s to world.NullBody for static geometry."]}),"\n",(0,t.jsx)(i.li,{children:"Performance improvements for ConvexHullShape."}),"\n",(0,t.jsx)(i.li,{children:"Improved termination condition in GJKEPA collision detection."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-211-12-17-2023",children:"Jitter 2.1.1 (12-17-2023)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsxs)(i.li,{children:["Fixed O(n^2) problem in ",(0,t.jsx)(i.code,{children:"TriangleMesh"})," due to hash collisions."]}),"\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.code,{children:"WorldBoundingBox"})," of ",(0,t.jsx)(i.code,{children:"Shape"})," is now updated even if no ",(0,t.jsx)(i.code,{children:"RigidBody"})," is attached."]}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-210-12-10-2023",children:"Jitter 2.1.0 (12-10-2023)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsxs)(i.li,{children:["Added debug drawing for rigid bodies (",(0,t.jsx)(i.code,{children:"RigidBody.DebugDraw"}),")."]}),"\n",(0,t.jsxs)(i.li,{children:["Fixed a bug in ",(0,t.jsx)(i.code,{children:"CalculateMassInertia"})," within ",(0,t.jsx)(i.code,{children:"TransformedShape.cs"}),"."]}),"\n",(0,t.jsxs)(i.li,{children:["Improved ray casting performance and introduced ",(0,t.jsx)(i.code,{children:"NarrowPhase.PointTest"}),"."]}),"\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.strong,{children:"Breaking Change:"})," Inverted behavior of ",(0,t.jsx)(i.code,{children:"BroadPhaseCollisionFilter"}),"."]}),"\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.strong,{children:"Breaking Change:"})," Inverted definition of damping factors in ",(0,t.jsx)(i.code,{children:"RigidBody.Damping"})," (0 = no damping, 1 = immediate halt)."]}),"\n",(0,t.jsxs)(i.li,{children:["Added ",(0,t.jsx)(i.code,{children:"RigidBody.SetMassInertia"})," overload to enable setting the inverse inertia to zero."]}),"\n",(0,t.jsx)(i.li,{children:"An exception is now thrown when a body's mass is set to zero."}),"\n",(0,t.jsxs)(i.li,{children:["Fixed a bug in the friction handling in ",(0,t.jsx)(i.code,{children:"Contact.cs"}),"."]}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-201-10-28-2023",children:"Jitter 2.0.1 (10-28-2023)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Fixed a bug in contact initialization which affected soft body physics."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-200-10-22-2023",children:"Jitter 2.0.0 (10-22-2023)"}),"\n",(0,t.jsx)(i.p,{children:"Initial stable Release."}),"\n",(0,t.jsx)(i.h3,{id:"jitter-200-beta-10-17-2023",children:"Jitter 2.0.0-beta (10-17-2023)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Added softbodies."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-200-alpha-09-18-2023",children:"Jitter 2.0.0-alpha (09-18-2023)"}),"\n",(0,t.jsx)(i.p,{children:"Initial Release."})]})}function h(e={}){const{wrapper:i}={...(0,r.R)(),...e.components};return i?(0,t.jsx)(i,{...e,children:(0,t.jsx)(c,{...e})}):c(e)}},8453:(e,i,n)=>{n.d(i,{R:()=>l,x:()=>d});var t=n(6540);const r={},s=t.createContext(r);function l(e){const i=t.useContext(s);return t.useMemo((function(){return"function"==typeof e?e(i):{...i,...e}}),[i,e])}function d(e){let i;return i=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:l(e.components),t.createElement(s.Provider,{value:i},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/9beb87c2.cbb4a56e.js b/assets/js/9beb87c2.cbb4a56e.js deleted file mode 100644 index e676bfd0..00000000 --- a/assets/js/9beb87c2.cbb4a56e.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkjitterphysics=self.webpackChunkjitterphysics||[]).push([[539],{5851:(e,i,n)=>{n.r(i),n.d(i,{assets:()=>o,contentTitle:()=>l,default:()=>h,frontMatter:()=>s,metadata:()=>d,toc:()=>a});var t=n(4848),r=n(8453);const s={sidebar_position:5},l="Changelog",d={id:"changelog",title:"Changelog",description:"Jitter 2.4.4 (09-14-2024)",source:"@site/docs/changelog.md",sourceDirName:".",slug:"/changelog",permalink:"/docs/changelog",draft:!1,unlisted:!1,editUrl:"https://github.com/notgiven688/jitterphysics2/tree/main/docs/docs/changelog.md",tags:[],version:"current",sidebarPosition:5,frontMatter:{sidebar_position:5},sidebar:"tutorialSidebar",previous:{title:"Web demo",permalink:"/docs/webasm"}},o={},a=[{value:"Jitter 2.4.4 (09-14-2024)",id:"jitter-244-09-14-2024",level:3},{value:"Jitter 2.4.3 (08-31-2024)",id:"jitter-243-08-31-2024",level:3},{value:"Jitter 2.4.2 (08-26-2024)",id:"jitter-242-08-26-2024",level:3},{value:"Jitter 2.4.1 (08-21-2024)",id:"jitter-241-08-21-2024",level:3},{value:"Jitter 2.4.0 (08-10-2024)",id:"jitter-240-08-10-2024",level:3},{value:"Jitter 2.3.1 (06-02-2024)",id:"jitter-231-06-02-2024",level:3},{value:"Jitter 2.3.0 (05-20-2024)",id:"jitter-230-05-20-2024",level:3},{value:"Jitter 2.2.1 (04-29-2024)",id:"jitter-221-04-29-2024",level:3},{value:"Jitter 2.2.0 (01-02-2024)",id:"jitter-220-01-02-2024",level:3},{value:"Jitter 2.1.1 (12-17-2023)",id:"jitter-211-12-17-2023",level:3},{value:"Jitter 2.1.0 (12-10-2023)",id:"jitter-210-12-10-2023",level:3},{value:"Jitter 2.0.1 (10-28-2023)",id:"jitter-201-10-28-2023",level:3},{value:"Jitter 2.0.0 (10-22-2023)",id:"jitter-200-10-22-2023",level:3},{value:"Jitter 2.0.0-beta (10-17-2023)",id:"jitter-200-beta-10-17-2023",level:3},{value:"Jitter 2.0.0-alpha (09-18-2023)",id:"jitter-200-alpha-09-18-2023",level:3}];function c(e){const i={code:"code",h1:"h1",h3:"h3",li:"li",p:"p",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(i.h1,{id:"changelog",children:"Changelog"}),"\n",(0,t.jsx)(i.h3,{id:"jitter-244-09-14-2024",children:"Jitter 2.4.4 (09-14-2024)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Implemented fixes and workarounds for using Jitter with a debugger attached."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-243-08-31-2024",children:"Jitter 2.4.3 (08-31-2024)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Correct corner case beeing wrong in MPR collision detection due to typo (bug fix)."}),"\n",(0,t.jsx)(i.li,{children:"FatTriangleShape level did not properly take transformations into account (bug fix)."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-242-08-26-2024",children:"Jitter 2.4.2 (08-26-2024)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Added FatTriangleShape to give triangles thickness which can be useful for static triangle meshes."}),"\n",(0,t.jsx)(i.li,{children:"Removal from potential pairs in DynamicTree ignores filters from now on (bug fix)."}),"\n",(0,t.jsx)(i.li,{children:"Use sweep tests for speculative contacts, vastly improving simulation quality in this scenario."}),"\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.strong,{children:"Breaking Change:"})," Redefinition of NarrowPhase.SweepTest results."]}),"\n",(0,t.jsx)(i.li,{children:"Improved TriangleEdgeCollisionFilter."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-241-08-21-2024",children:"Jitter 2.4.1 (08-21-2024)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Improved TriangleEdgeCollisionFilter."}),"\n",(0,t.jsx)(i.li,{children:"Implemented analytical box and sphere ray casting."}),"\n",(0,t.jsx)(i.li,{children:"Made Restitution and Friction public in Contact."}),"\n",(0,t.jsx)(i.li,{children:"Improved DynamicTree interface."}),"\n",(0,t.jsx)(i.li,{children:"Add Debug.Asserts in ActiveList."}),"\n",(0,t.jsx)(i.li,{children:"Mark ArbiterKey as readonly."}),"\n",(0,t.jsx)(i.li,{children:"Added enumerator to PairHashSet."}),"\n",(0,t.jsx)(i.li,{children:"Changed ShapeHelper.MakeHull to take a generic of type ICollection."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-240-08-10-2024",children:"Jitter 2.4.0 (08-10-2024)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Improved TrimPotentialPairs logic."}),"\n",(0,t.jsx)(i.li,{children:"Optimized quaternion vector transformation."}),"\n",(0,t.jsx)(i.li,{children:"Extended functionality of ContactData.UsageMask."}),"\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.strong,{children:"Breaking Change:"})," Overhauled the shape system. Regular shapes (box, sphere, capsule, ...) now derive from RigidBodyShape. Some method signatures changed slightly, e.g. ray casting."]}),"\n",(0,t.jsx)(i.li,{children:"Improved exceptions."}),"\n",(0,t.jsx)(i.li,{children:"Added ReferenceFrameAttribute."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-231-06-02-2024",children:"Jitter 2.3.1 (06-02-2024)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"ReadOnly wrappers (ReadOnlyList, ReadOnlyHashset) are now structs."}),"\n",(0,t.jsx)(i.li,{children:"Shapes with very small dimensions might have close to zero or zero mass/inertia. Creating rigid bodies from them now throws an exception (use body.AddShape(shape, setMassInertia: false) to not use the shape's mass properties)."}),"\n",(0,t.jsx)(i.li,{children:"Added BeginCollide and EndCollide events per body."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-230-05-20-2024",children:"Jitter 2.3.0 (05-20-2024)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Added RigidBody.RemoveShape overload to remove multiple shapes at once."}),"\n",(0,t.jsx)(i.li,{children:"Marked Rigid.ClearShapes deprecated."}),"\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.strong,{children:"Breaking Change:"})," Use JQuaternion for orientations. Sorry for the API break."]}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-221-04-29-2024",children:"Jitter 2.2.1 (04-29-2024)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Add optional activate parameter to world.AddShape."}),"\n",(0,t.jsx)(i.li,{children:"Add NarrowPhase.SweepTest."}),"\n",(0,t.jsx)(i.li,{children:"EPA collision detection: various improvements."}),"\n",(0,t.jsx)(i.li,{children:"Improve exit condition for RayCast and PointTest."}),"\n",(0,t.jsx)(i.li,{children:"Remove redundant ArgumentException for zero mass shapes."}),"\n",(0,t.jsx)(i.li,{children:"Handle zero time steps. Throw ArgumentException for negative time steps."}),"\n",(0,t.jsx)(i.li,{children:"Add joint base class to joint classes."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-220-01-02-2024",children:"Jitter 2.2.0 (01-02-2024)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.strong,{children:"Breaking Change:"})," Renamed ",(0,t.jsx)(i.code,{children:"Raycast"})," to ",(0,t.jsx)(i.code,{children:"RayCast"}),"."]}),"\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.code,{children:"world.Remove(world.NullBody)"})," does now remove all shapes, constraints and contacts associated with NullBody."]}),"\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.code,{children:"world.AddShape(shape)"})," respects the activation state of the associated rigid body. Most notable: performance improvement when directly adding ",(0,t.jsx)(i.code,{children:"TriangleShape"}),"s to world.NullBody for static geometry."]}),"\n",(0,t.jsx)(i.li,{children:"Performance improvements for ConvexHullShape."}),"\n",(0,t.jsx)(i.li,{children:"Improved termination condition in GJKEPA collision detection."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-211-12-17-2023",children:"Jitter 2.1.1 (12-17-2023)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsxs)(i.li,{children:["Fixed O(n^2) problem in ",(0,t.jsx)(i.code,{children:"TriangleMesh"})," due to hash collisions."]}),"\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.code,{children:"WorldBoundingBox"})," of ",(0,t.jsx)(i.code,{children:"Shape"})," is now updated even if no ",(0,t.jsx)(i.code,{children:"RigidBody"})," is attached."]}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-210-12-10-2023",children:"Jitter 2.1.0 (12-10-2023)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsxs)(i.li,{children:["Added debug drawing for rigid bodies (",(0,t.jsx)(i.code,{children:"RigidBody.DebugDraw"}),")."]}),"\n",(0,t.jsxs)(i.li,{children:["Fixed a bug in ",(0,t.jsx)(i.code,{children:"CalculateMassInertia"})," within ",(0,t.jsx)(i.code,{children:"TransformedShape.cs"}),"."]}),"\n",(0,t.jsxs)(i.li,{children:["Improved ray casting performance and introduced ",(0,t.jsx)(i.code,{children:"NarrowPhase.PointTest"}),"."]}),"\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.strong,{children:"Breaking Change:"})," Inverted behavior of ",(0,t.jsx)(i.code,{children:"BroadPhaseCollisionFilter"}),"."]}),"\n",(0,t.jsxs)(i.li,{children:[(0,t.jsx)(i.strong,{children:"Breaking Change:"})," Inverted definition of damping factors in ",(0,t.jsx)(i.code,{children:"RigidBody.Damping"})," (0 = no damping, 1 = immediate halt)."]}),"\n",(0,t.jsxs)(i.li,{children:["Added ",(0,t.jsx)(i.code,{children:"RigidBody.SetMassInertia"})," overload to enable setting the inverse inertia to zero."]}),"\n",(0,t.jsx)(i.li,{children:"An exception is now thrown when a body's mass is set to zero."}),"\n",(0,t.jsxs)(i.li,{children:["Fixed a bug in the friction handling in ",(0,t.jsx)(i.code,{children:"Contact.cs"}),"."]}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-201-10-28-2023",children:"Jitter 2.0.1 (10-28-2023)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Fixed a bug in contact initialization which affected soft body physics."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-200-10-22-2023",children:"Jitter 2.0.0 (10-22-2023)"}),"\n",(0,t.jsx)(i.p,{children:"Initial stable Release."}),"\n",(0,t.jsx)(i.h3,{id:"jitter-200-beta-10-17-2023",children:"Jitter 2.0.0-beta (10-17-2023)"}),"\n",(0,t.jsxs)(i.ul,{children:["\n",(0,t.jsx)(i.li,{children:"Added softbodies."}),"\n"]}),"\n",(0,t.jsx)(i.h3,{id:"jitter-200-alpha-09-18-2023",children:"Jitter 2.0.0-alpha (09-18-2023)"}),"\n",(0,t.jsx)(i.p,{children:"Initial Release."})]})}function h(e={}){const{wrapper:i}={...(0,r.R)(),...e.components};return i?(0,t.jsx)(i,{...e,children:(0,t.jsx)(c,{...e})}):c(e)}},8453:(e,i,n)=>{n.d(i,{R:()=>l,x:()=>d});var t=n(6540);const r={},s=t.createContext(r);function l(e){const i=t.useContext(s);return t.useMemo((function(){return"function"==typeof e?e(i):{...i,...e}}),[i,e])}function d(e){let i;return i=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:l(e.components),t.createElement(s.Provider,{value:i},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/runtime~main.1d4c6feb.js b/assets/js/runtime~main.1d4c6feb.js deleted file mode 100644 index 108ee922..00000000 --- a/assets/js/runtime~main.1d4c6feb.js +++ /dev/null @@ -1 +0,0 @@ -(()=>{"use strict";var e,t,r,a,o,n={},f={};function c(e){var t=f[e];if(void 0!==t)return t.exports;var r=f[e]={exports:{}};return n[e].call(r.exports,r,r.exports,c),r.exports}c.m=n,e=[],c.O=(t,r,a,o)=>{if(!r){var n=1/0;for(b=0;b=o)&&Object.keys(c.O).every((e=>c.O[e](r[i])))?r.splice(i--,1):(f=!1,o0&&e[b-1][2]>o;b--)e[b]=e[b-1];e[b]=[r,a,o]},c.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return c.d(t,{a:t}),t},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,c.t=function(e,a){if(1&a&&(e=this(e)),8&a)return e;if("object"==typeof e&&e){if(4&a&&e.__esModule)return e;if(16&a&&"function"==typeof e.then)return e}var o=Object.create(null);c.r(o);var n={};t=t||[null,r({}),r([]),r(r)];for(var f=2&a&&e;"object"==typeof f&&!~t.indexOf(f);f=r(f))Object.getOwnPropertyNames(f).forEach((t=>n[t]=()=>e[t]));return n.default=()=>e,c.d(o,n),o},c.d=(e,t)=>{for(var r in t)c.o(t,r)&&!c.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},c.f={},c.e=e=>Promise.all(Object.keys(c.f).reduce(((t,r)=>(c.f[r](e,t),t)),[])),c.u=e=>"assets/js/"+({38:"2a0f5d50",48:"a94703ab",51:"34b8f584",88:"deb49e46",98:"a7bd4aaa",161:"8955095c",183:"1b5ff8e9",235:"a7456010",239:"874e495d",361:"aba21aa0",401:"17896441",539:"9beb87c2",556:"29043984",622:"59717b93",631:"d2f6244d",634:"c4f5d8e4",647:"5e95c892",664:"d9d24967",707:"2acf9b78",742:"53464f74",772:"d639381c",794:"0e7fd199",849:"0058b4c6",969:"14eb3368"}[e]||e)+"."+{38:"d95faed7",48:"f2f129ec",51:"b9173139",88:"d8511d22",98:"09770a5d",161:"1ce88d69",183:"e2f89ee0",235:"4f0d0dc9",237:"2ef5ef8b",239:"f84b7e1a",361:"e73af33a",401:"f65e4f4f",539:"cbb4a56e",556:"f2ffeb99",622:"0989d4a3",631:"7f44a260",634:"4d95c347",647:"df0f3aaf",664:"e4891da1",707:"bf1e0aa1",742:"93cb2f0c",772:"18d6ebf0",794:"3f20d9bb",849:"feb7f0de",969:"0cdfe1bb"}[e]+".js",c.miniCssF=e=>{},c.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),c.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a={},o="jitterphysics:",c.l=(e,t,r,n)=>{if(a[e])a[e].push(t);else{var f,i;if(void 0!==r)for(var d=document.getElementsByTagName("script"),b=0;b{f.onerror=f.onload=null,clearTimeout(s);var o=a[e];if(delete a[e],f.parentNode&&f.parentNode.removeChild(f),o&&o.forEach((e=>e(r))),t)return t(r)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:f}),12e4);f.onerror=l.bind(null,f.onerror),f.onload=l.bind(null,f.onload),i&&document.head.appendChild(f)}},c.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},c.p="/",c.gca=function(e){return e={17896441:"401",29043984:"556","2a0f5d50":"38",a94703ab:"48","34b8f584":"51",deb49e46:"88",a7bd4aaa:"98","8955095c":"161","1b5ff8e9":"183",a7456010:"235","874e495d":"239",aba21aa0:"361","9beb87c2":"539","59717b93":"622",d2f6244d:"631",c4f5d8e4:"634","5e95c892":"647",d9d24967:"664","2acf9b78":"707","53464f74":"742",d639381c:"772","0e7fd199":"794","0058b4c6":"849","14eb3368":"969"}[e]||e,c.p+c.u(e)},(()=>{var e={354:0,869:0};c.f.j=(t,r)=>{var a=c.o(e,t)?e[t]:void 0;if(0!==a)if(a)r.push(a[2]);else if(/^(354|869)$/.test(t))e[t]=0;else{var o=new Promise(((r,o)=>a=e[t]=[r,o]));r.push(a[2]=o);var n=c.p+c.u(t),f=new Error;c.l(n,(r=>{if(c.o(e,t)&&(0!==(a=e[t])&&(e[t]=void 0),a)){var o=r&&("load"===r.type?"missing":r.type),n=r&&r.target&&r.target.src;f.message="Loading chunk "+t+" failed.\n("+o+": "+n+")",f.name="ChunkLoadError",f.type=o,f.request=n,a[1](f)}}),"chunk-"+t,t)}},c.O.j=t=>0===e[t];var t=(t,r)=>{var a,o,n=r[0],f=r[1],i=r[2],d=0;if(n.some((t=>0!==e[t]))){for(a in f)c.o(f,a)&&(c.m[a]=f[a]);if(i)var b=i(c)}for(t&&t(r);d{"use strict";var e,t,r,a,o,n={},c={};function f(e){var t=c[e];if(void 0!==t)return t.exports;var r=c[e]={exports:{}};return n[e].call(r.exports,r,r.exports,f),r.exports}f.m=n,e=[],f.O=(t,r,a,o)=>{if(!r){var n=1/0;for(b=0;b=o)&&Object.keys(f.O).every((e=>f.O[e](r[d])))?r.splice(d--,1):(c=!1,o0&&e[b-1][2]>o;b--)e[b]=e[b-1];e[b]=[r,a,o]},f.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return f.d(t,{a:t}),t},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,f.t=function(e,a){if(1&a&&(e=this(e)),8&a)return e;if("object"==typeof e&&e){if(4&a&&e.__esModule)return e;if(16&a&&"function"==typeof e.then)return e}var o=Object.create(null);f.r(o);var n={};t=t||[null,r({}),r([]),r(r)];for(var c=2&a&&e;"object"==typeof c&&!~t.indexOf(c);c=r(c))Object.getOwnPropertyNames(c).forEach((t=>n[t]=()=>e[t]));return n.default=()=>e,f.d(o,n),o},f.d=(e,t)=>{for(var r in t)f.o(t,r)&&!f.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},f.f={},f.e=e=>Promise.all(Object.keys(f.f).reduce(((t,r)=>(f.f[r](e,t),t)),[])),f.u=e=>"assets/js/"+({38:"2a0f5d50",48:"a94703ab",51:"34b8f584",88:"deb49e46",98:"a7bd4aaa",161:"8955095c",183:"1b5ff8e9",235:"a7456010",239:"874e495d",361:"aba21aa0",401:"17896441",539:"9beb87c2",556:"29043984",622:"59717b93",631:"d2f6244d",634:"c4f5d8e4",647:"5e95c892",664:"d9d24967",707:"2acf9b78",742:"53464f74",772:"d639381c",794:"0e7fd199",849:"0058b4c6",969:"14eb3368"}[e]||e)+"."+{38:"60e94b8a",48:"f2f129ec",51:"b9173139",88:"d8511d22",98:"09770a5d",161:"1ce88d69",183:"e2f89ee0",235:"4f0d0dc9",237:"2ef5ef8b",239:"f84b7e1a",361:"e73af33a",401:"f65e4f4f",539:"45705939",556:"f2ffeb99",622:"0989d4a3",631:"7f44a260",634:"4d95c347",647:"df0f3aaf",664:"e4891da1",707:"bf1e0aa1",742:"93cb2f0c",772:"18d6ebf0",794:"3f20d9bb",849:"4c983b01",969:"0cdfe1bb"}[e]+".js",f.miniCssF=e=>{},f.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),f.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a={},o="jitterphysics:",f.l=(e,t,r,n)=>{if(a[e])a[e].push(t);else{var c,d;if(void 0!==r)for(var i=document.getElementsByTagName("script"),b=0;b{c.onerror=c.onload=null,clearTimeout(s);var o=a[e];if(delete a[e],c.parentNode&&c.parentNode.removeChild(c),o&&o.forEach((e=>e(r))),t)return t(r)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:c}),12e4);c.onerror=l.bind(null,c.onerror),c.onload=l.bind(null,c.onload),d&&document.head.appendChild(c)}},f.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},f.p="/",f.gca=function(e){return e={17896441:"401",29043984:"556","2a0f5d50":"38",a94703ab:"48","34b8f584":"51",deb49e46:"88",a7bd4aaa:"98","8955095c":"161","1b5ff8e9":"183",a7456010:"235","874e495d":"239",aba21aa0:"361","9beb87c2":"539","59717b93":"622",d2f6244d:"631",c4f5d8e4:"634","5e95c892":"647",d9d24967:"664","2acf9b78":"707","53464f74":"742",d639381c:"772","0e7fd199":"794","0058b4c6":"849","14eb3368":"969"}[e]||e,f.p+f.u(e)},(()=>{var e={354:0,869:0};f.f.j=(t,r)=>{var a=f.o(e,t)?e[t]:void 0;if(0!==a)if(a)r.push(a[2]);else if(/^(354|869)$/.test(t))e[t]=0;else{var o=new Promise(((r,o)=>a=e[t]=[r,o]));r.push(a[2]=o);var n=f.p+f.u(t),c=new Error;f.l(n,(r=>{if(f.o(e,t)&&(0!==(a=e[t])&&(e[t]=void 0),a)){var o=r&&("load"===r.type?"missing":r.type),n=r&&r.target&&r.target.src;c.message="Loading chunk "+t+" failed.\n("+o+": "+n+")",c.name="ChunkLoadError",c.type=o,c.request=n,a[1](c)}}),"chunk-"+t,t)}},f.O.j=t=>0===e[t];var t=(t,r)=>{var a,o,n=r[0],c=r[1],d=r[2],i=0;if(n.some((t=>0!==e[t]))){for(a in c)f.o(c,a)&&(f.m[a]=c[a]);if(d)var b=d(f)}for(t&&t(r);i Documentation | Jitter Physics - + diff --git a/docs/category/jitter-demo/index.html b/docs/category/jitter-demo/index.html index d1c3e3c5..359742b4 100644 --- a/docs/category/jitter-demo/index.html +++ b/docs/category/jitter-demo/index.html @@ -4,7 +4,7 @@ Jitter Demo | Jitter Physics - + diff --git a/docs/category/quickstart/index.html b/docs/category/quickstart/index.html index 49062f99..572fcfa3 100644 --- a/docs/category/quickstart/index.html +++ b/docs/category/quickstart/index.html @@ -4,7 +4,7 @@ Quickstart | Jitter Physics - + diff --git a/docs/changelog/index.html b/docs/changelog/index.html index 0c84da2d..06e8bf0e 100644 --- a/docs/changelog/index.html +++ b/docs/changelog/index.html @@ -3,12 +3,20 @@ -Changelog | Jitter Physics - +Changelog | Jitter Physics +

Changelog

+

Jitter 2.4.5 (10-07-2024)

+
    +
  • Added new methods to NarrowPhase: Distance and Overlap.
  • +
  • Breaking Change: Renamed NarrowPhase.SweepTest to NarrowPhase.Sweep.
  • +
  • Breaking Change: Renamed NarrowPhase.GJKEPA to NarrowPhase.Collision.
  • +
  • Made PointTest, Raycast and SweepTest to use new SimplexSolver and SimplexSolverAB implementations.
  • +
  • Fixed normal in GJKEPA for separating case.
  • +

Jitter 2.4.4 (09-14-2024)

  • Implemented fixes and workarounds for using Jitter with a debugger attached.
  • @@ -103,6 +111,6 @@

    J
  • Added softbodies.

Jitter 2.0.0-alpha (09-18-2023)

-

Initial Release.

+

Initial Release.

\ No newline at end of file diff --git a/docs/demo/jitterdemo/index.html b/docs/demo/jitterdemo/index.html index b1889e84..3449eaef 100644 --- a/docs/demo/jitterdemo/index.html +++ b/docs/demo/jitterdemo/index.html @@ -4,7 +4,7 @@ Overview | Jitter Physics - + diff --git a/docs/documentation/00unmanaged-memory/index.html b/docs/documentation/00unmanaged-memory/index.html index f8371a2b..149e0442 100644 --- a/docs/documentation/00unmanaged-memory/index.html +++ b/docs/documentation/00unmanaged-memory/index.html @@ -4,7 +4,7 @@ Unmanaged Memory | Jitter Physics - + diff --git a/docs/documentation/01world-entities/index.html b/docs/documentation/01world-entities/index.html index e7c833ff..68d93c2b 100644 --- a/docs/documentation/01world-entities/index.html +++ b/docs/documentation/01world-entities/index.html @@ -4,7 +4,7 @@ World Entities | Jitter Physics - + diff --git a/docs/documentation/02simulation-step/index.html b/docs/documentation/02simulation-step/index.html index 0f4b9542..d213f65f 100644 --- a/docs/documentation/02simulation-step/index.html +++ b/docs/documentation/02simulation-step/index.html @@ -4,7 +4,7 @@ Simulation Step | Jitter Physics - + diff --git a/docs/documentation/03raycasting/index.html b/docs/documentation/03raycasting/index.html index 69d6131a..24d863ca 100644 --- a/docs/documentation/03raycasting/index.html +++ b/docs/documentation/03raycasting/index.html @@ -4,7 +4,7 @@ Ray Casting | Jitter Physics - + diff --git a/docs/documentation/04contact-generation/index.html b/docs/documentation/04contact-generation/index.html index bf893b50..e63d095f 100644 --- a/docs/documentation/04contact-generation/index.html +++ b/docs/documentation/04contact-generation/index.html @@ -4,7 +4,7 @@ Contact Generation | Jitter Physics - + diff --git a/docs/intro/index.html b/docs/intro/index.html index 43eb092f..8b165d6f 100644 --- a/docs/intro/index.html +++ b/docs/intro/index.html @@ -4,7 +4,7 @@ Jitter Physics 2 | Jitter Physics - + diff --git a/docs/quickstart/hello-world/index.html b/docs/quickstart/hello-world/index.html index 279f9eb4..683c0b43 100644 --- a/docs/quickstart/hello-world/index.html +++ b/docs/quickstart/hello-world/index.html @@ -4,7 +4,7 @@ Hello World | Jitter Physics - + diff --git a/docs/quickstart/project-setup/index.html b/docs/quickstart/project-setup/index.html index da400211..c5226842 100644 --- a/docs/quickstart/project-setup/index.html +++ b/docs/quickstart/project-setup/index.html @@ -4,7 +4,7 @@ Project Setup | Jitter Physics - + @@ -17,7 +17,7 @@