You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-09 12:50:35 +00:00
3D Physics Rework, Other Stuff
-=-=-=-=-=-=-=-=-=-=-=-=-=-
3D Physics:
-Fixed "Bounce" parameter in 3D
-Fixed bug affecting Area (sometims it would not detect properly)
-Vehicle Body has seen heavy work
-Added Query API for doing space queries in 3D. Needs some docs though.
-Added JOINTS! Adapted Bullet Joints: and created easy gizmos for setting them up:
-PinJoint
-HingeJoint (with motor)
-SliderJoint
-ConeTwistJoint
-Generic6DOFJoint
-Added OBJECT PICKING! based on the new query API. Any physics object now (Area or Body) has the following signals and virtual functions:
-input_event (mouse or multitouch input over the body)
-mouse_enter (mouse entered the body area)
-mouse_exit (mouse exited body area)
For Area it needs to be activated manually, as it isn't by default (ray goes thru).
Other:
-Begun working on Windows 8 (RT) port. Compiles but does not work yet.
-Added TheoraPlayer library for improved to-texture and portable video support.
-Fixed a few bugs in the renderer, collada importer, collada exporter, etc.
This commit is contained in:
@@ -95,6 +95,7 @@ const char* GDTokenizer::token_names[TK_MAX]={
|
||||
"var",
|
||||
"preload",
|
||||
"assert",
|
||||
"yield",
|
||||
"'['",
|
||||
"']'",
|
||||
"'{'",
|
||||
@@ -826,6 +827,7 @@ void GDTokenizerText::_advance() {
|
||||
{TK_PR_VAR,"var"},
|
||||
{TK_PR_PRELOAD,"preload"},
|
||||
{TK_PR_ASSERT,"assert"},
|
||||
{TK_PR_YIELD,"yield"},
|
||||
{TK_PR_CONST,"const"},
|
||||
//controlflow
|
||||
{TK_CF_IF,"if"},
|
||||
@@ -1006,7 +1008,7 @@ void GDTokenizerText::advance(int p_amount) {
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#define BYTECODE_VERSION 1
|
||||
#define BYTECODE_VERSION 2
|
||||
|
||||
Error GDTokenizerBuffer::set_code_buffer(const Vector<uint8_t> & p_buffer) {
|
||||
|
||||
@@ -1016,8 +1018,8 @@ Error GDTokenizerBuffer::set_code_buffer(const Vector<uint8_t> & p_buffer) {
|
||||
ERR_FAIL_COND_V( p_buffer.size()<24 || p_buffer[0]!='G' || p_buffer[1]!='D' || p_buffer[2]!='S' || p_buffer[3]!='C',ERR_INVALID_DATA);
|
||||
|
||||
int version = decode_uint32(&buf[4]);
|
||||
if (version>1) {
|
||||
ERR_EXPLAIN("Bytecode is too New!");
|
||||
if (version>BYTECODE_VERSION) {
|
||||
ERR_EXPLAIN("Bytecode is too New! Please use a newer engine version.");
|
||||
ERR_FAIL_COND_V(version>BYTECODE_VERSION,ERR_INVALID_DATA);
|
||||
}
|
||||
int identifier_count = decode_uint32(&buf[8]);
|
||||
|
||||
Reference in New Issue
Block a user