Comments (2)
You'll need to get the vertices in CCW order and also set the normals for each polygon. The easiest way is to call c2MakePoly
after assigning vertices in any order. So, try this:
c2Poly poly_world;
poly_world.count = 4;
poly_world.verts[0] = c2V(-1.0, -1.0);
poly_world.verts[1] = c2V(1.0, -1.0);
poly_world.verts[2] = c2V(1.0, 1.0);
poly_world.verts[3] = c2V(-1.0, 1.0);
c2MakePoly(&poly_world);
c2Poly poly_car;
poly_car.count = 4;
poly_car.verts[0] = c2V(-0.05, -1.04);
poly_car.verts[1] = c2V(0.05, -1.04);
poly_car.verts[2] = c2V(0.05, -0.94);
poly_car.verts[3] = c2V(-0.05, -0.94);
c2MakePoly(&poly_car);
int res = c2PolytoPoly(&poly_car, NULL, &poly_world, NULL);
printf("res: %d\n", res);
c2Manifold m;
c2PolytoPolyManifold(&poly_car, NULL, &poly_world, NULL, &m);
printf("m.count: %d\n", m.count);
from cute_headers.
Thanks, it does the trick!
May I suggest a short note about this in the doc of c2PolytoPolyManifold?
Subsidiary question: when I fix the winding "by hand", the resulting manifolds are less consistent than when I call c2MakePoly. Does this function does some other "magic" on the poly? (I would like to avoid calling it every frame for every car)
from cute_headers.
Related Issues (20)
- [cute_sound.h v2.x] Support multiple contexts. HOT 2
- http://randygaul.net is taken over by squatters HOT 1
- cute_net.h times out over the internet HOT 5
- Dynamically set panning for an individual playing sound HOT 2
- cute_aseprite.h - v1.3 Tilesets Discussion HOT 4
- cute_aseprite.h - Aseprite v1.3 property map support
- Cute_tiled "staggered" causes warning HOT 1
- inclusion of infinite maps and chunks HOT 3
- c2TOI returning wrong contact point
- cute_tls - allow ignoring certificate errors HOT 1
- cute_tiled: Force loading RGBA for tintedcolor
- cute_tiled: object `type` field HOT 4
- [Cute_Net.h] Knowing if a packet has been sent. HOT 3
- [cute_tiled_h]: Field `name` points to wrong memory address. HOT 2
- cute_aseprite.h "warning C4456: declaration of 'frame' hides previous local declaration"
- Usage of c2x and rotation HOT 1
- cute_aseprite.h crash with both 9-slice and pivot enabled. HOT 1
- cute_sound 2.x has no equivalent of 1.x cs_stop_sound
- cute_aseprite Crash on tags user data
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cute_headers.