jhasse / chipmunkpp Goto Github PK
View Code? Open in Web Editor NEWChipmunk Physics C++ wrapper
Home Page: bixense.com/chipmunkpp
License: zlib License
Chipmunk Physics C++ wrapper
Home Page: bixense.com/chipmunkpp
License: zlib License
What's the latest Chipmunk version supported? I'm trying to build your wrapper using the Chipmunk++ solution on Chipmunk 7.0.0. I'm getting the following build errors.
1>------ Build started: Project: Chipmunk++, Configuration: Debug Win32 ------
vect.cpp
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2833: 'operator cpLayers' is not a recognized operator or type
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2059: syntax error : 'newline'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2238: unexpected token(s) preceding ';'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C2146: syntax error : missing ';' before identifier 'l'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
types.cpp
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2833: 'operator cpLayers' is not a recognized operator or type
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2059: syntax error : 'newline'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2238: unexpected token(s) preceding ';'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C2146: syntax error : missing ';' before identifier 'l'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
(root)\chipmunkwrapper\src\chipmunkpp\types.cpp(6): error C2614: 'cp::Layers' : illegal member initialization: 'l' is not a base or member
(root)\chipmunkwrapper\src\chipmunkpp\types.cpp(9): error C2614: 'cp::Layers' : illegal member initialization: 'l' is not a base or member
(root)\chipmunkwrapper\src\chipmunkpp\types.cpp(13): error C2833: 'operator cpLayers' is not a recognized operator or type
(root)\chipmunkwrapper\src\chipmunkpp\types.cpp(13): fatal error C1903: unable to recover from previous error(s); stopping compilation
space.cpp
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2833: 'operator cpLayers' is not a recognized operator or type
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2059: syntax error : 'newline'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2238: unexpected token(s) preceding ';'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C2146: syntax error : missing ';' before identifier 'l'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
(root)\chipmunkwrapper\src\chipmunkpp\space.cpp(11): error C2027: use of undefined type 'cpSpace'
(root)\chipmunk2d\include\chipmunk\chipmunk.h(121) : see declaration of 'cpSpace'
(root)\chipmunkwrapper\src\chipmunkpp\space.cpp(11): error C2227: left of '->staticBody' must point to class/struct/union/generic type
(root)\chipmunkwrapper\src\chipmunkpp\space.cpp(78): error C2061: syntax error : identifier 'cpLayers'
(root)\chipmunkwrapper\src\chipmunkpp\space.cpp(84): error C2061: syntax error : identifier 'cpLayers'
(root)\chipmunkwrapper\src\chipmunkpp\space.cpp(86): error C2039: 't' : is not a member of 'cpSegmentQueryInfo'
(root)\chipmunk2d\include\chipmunk\cpshape.h(40) : see declaration of 'cpSegmentQueryInfo'
(root)\chipmunkwrapper\src\chipmunkpp\space.cpp(87): error C2039: 'n' : is not a member of 'cpSegmentQueryInfo'
(root)\chipmunk2d\include\chipmunk\cpshape.h(40) : see declaration of 'cpSegmentQueryInfo'
(root)\chipmunkwrapper\src\chipmunkpp\space.cpp(89): error C3536: 'rtn': cannot be used before it is initialized
(root)\chipmunkwrapper\src\chipmunkpp\space.cpp(89): error C2664: 'std::shared_ptrcp::Shape cp::Space::findPtr(cpShape *) const' : cannot convert argument 1 from 'int' to 'cpShape *'
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
(root)\chipmunkwrapper\src\chipmunkpp\space.cpp(93): error C2061: syntax error : identifier 'cpLayers'
(root)\chipmunkwrapper\src\chipmunkpp\space.cpp(128): error C2660: 'cpSpaceAddCollisionHandler' : function does not take 8 arguments
shape.cpp
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2833: 'operator cpLayers' is not a recognized operator or type
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2059: syntax error : 'newline'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2238: unexpected token(s) preceding ';'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C2146: syntax error : missing ';' before identifier 'l'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
(root)\chipmunkwrapper\src\chipmunkpp\shape.cpp(17): error C2660: 'cpShapePointQuery' : function does not take 2 arguments
(root)\chipmunkwrapper\src\chipmunkpp\shape.cpp(22): error C2660: 'cpShapeSegmentQuery' : function does not take 4 arguments
(root)\chipmunkwrapper\src\chipmunkpp\shape.cpp(24): error C2039: 't' : is not a member of 'cpSegmentQueryInfo'
(root)\chipmunk2d\include\chipmunk\cpshape.h(40) : see declaration of 'cpSegmentQueryInfo'
(root)\chipmunkwrapper\src\chipmunkpp\shape.cpp(25): error C2039: 'n' : is not a member of 'cpSegmentQueryInfo'
(root)\chipmunk2d\include\chipmunk\cpshape.h(40) : see declaration of 'cpSegmentQueryInfo'
(root)\chipmunkwrapper\src\chipmunkpp\shape.cpp(39): error C3861: 'cpShapeSetGroup': identifier not found
(root)\chipmunkwrapper\src\chipmunkpp\shape.cpp(51): error C2061: syntax error : identifier 'cpLayers'
(root)\chipmunkwrapper\src\chipmunkpp\shape.cpp(55): fatal error C1903: unable to recover from previous error(s); stopping compilation
segmentshape.cpp
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2833: 'operator cpLayers' is not a recognized operator or type
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2059: syntax error : 'newline'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2238: unexpected token(s) preceding ';'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C2146: syntax error : missing ';' before identifier 'l'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
polyshape.cpp
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2833: 'operator cpLayers' is not a recognized operator or type
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2059: syntax error : 'newline'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2238: unexpected token(s) preceding ';'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C2146: syntax error : missing ';' before identifier 'l'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
(root)\chipmunkwrapper\src\chipmunkpp\polyshape.cpp(7): error C2660: 'cpPolyShapeNew' : function does not take 4 arguments
(root)\chipmunkwrapper\src\chipmunkpp\polyshape.cpp(7): error C2664: 'cp::Shape::Shape(cpShape *,std::shared_ptrcp::Body)' : cannot convert argument 1 from 'std::shared_ptrcp::Body' to 'const cp::Shape &'
Reason: cannot convert from 'std::shared_ptrcp::Body' to 'const cp::Shape'
No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
(root)\chipmunkwrapper\src\chipmunkpp\polyshape.cpp(11): error C3861: 'cpPolyShapeGetNumVerts': identifier not found
circleshape.cpp
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2833: 'operator cpLayers' is not a recognized operator or type
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2059: syntax error : 'newline'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2238: unexpected token(s) preceding ';'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C2146: syntax error : missing ';' before identifier 'l'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
body.cpp
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2833: 'operator cpLayers' is not a recognized operator or type
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2059: syntax error : 'newline'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2238: unexpected token(s) preceding ';'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C2146: syntax error : missing ';' before identifier 'l'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
(root)\chipmunkwrapper\src\chipmunkpp\body.cpp(26): error C3861: 'cpBodySetPos': identifier not found
(root)\chipmunkwrapper\src\chipmunkpp\body.cpp(30): error C3861: 'cpBodyGetPos': identifier not found
(root)\chipmunkwrapper\src\chipmunkpp\body.cpp(34): error C3861: 'cpBodyGetVel': identifier not found
(root)\chipmunkwrapper\src\chipmunkpp\body.cpp(38): error C3861: 'cpBodySetVel': identifier not found
(root)\chipmunkwrapper\src\chipmunkpp\body.cpp(42): error C3861: 'cpBodyGetVelLimit': identifier not found
(root)\chipmunkwrapper\src\chipmunkpp\body.cpp(46): error C3861: 'cpBodySetVelLimit': identifier not found
bb.cpp
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2833: 'operator cpLayers' is not a recognized operator or type
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2059: syntax error : 'newline'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2238: unexpected token(s) preceding ';'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C2146: syntax error : missing ';' before identifier 'l'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
arbiter.cpp
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2833: 'operator cpLayers' is not a recognized operator or type
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2059: syntax error : 'newline'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2238: unexpected token(s) preceding ';'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C2146: syntax error : missing ';' before identifier 'l'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
chipmunk.cpp
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2833: 'operator cpLayers' is not a recognized operator or type
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2059: syntax error : 'newline'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(19): error C2238: unexpected token(s) preceding ';'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C2146: syntax error : missing ';' before identifier 'l'
(root)\chipmunkwrapper\src\chipmunkpp\types.hpp(21): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
(root)\chipmunkwrapper\src\chipmunk.cpp(10): error C2660: 'cpAreaForPoly' : function does not take 2 arguments
I'm a big fan of chipmunkpp, but as far as I can see, there is no support for collision handlers.
I think this would be a very useful feature - is there any plan to add this?
I'm kinda struggling to add collison handlers. I added a collision type to my rigid bodies, now how exactly do i pass a collison function to space.AddCollisionHanlder? Some explanation for this would be cool.
It would be nice to have CMake support including FindChipmunkpp if possible
Issues of Chipmunk2D which are blocking support for version 7 in Chipmunk++:
Last working version of Chipmunk++: https://github.com/jhasse/chipmunkpp/tree/v6.2.1
Stuff that needs to be figured out:
I've tried to create the doxygen docs from the folder docs/
with the command doxygen
, but the documentation created had only a title and the doxygen layout in it. I need a documentation for my current project, and this is the only one I can find... (yes I've looked into the test.cpp code, but I like good docs ;) )
I can't seem to find a license for your wrapper. If it makes any difference, I will only use the library if it is licensed under one of MIT, ZLIB, or BSD. Chipmunk uses the MIT license so that would be my suggestion.
Please update this version.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.