Commit Graph

26537 Commits

Author SHA1 Message Date
Campbell Barton
3d3f6b1ddc fix for 'blender -E' crashing. 2011-09-11 13:46:58 +00:00
Joerg Mueller
ab2fc6f106 Audio:
* Fix for high quality upsampling which was wrong.
* Fix for doppler effects which were calculated wrong for scenes.
* Improved animation evaluation at the beginning and end of a scene.
2011-09-11 12:24:11 +00:00
Campbell Barton
5f62f5c6fe move maxseq define into DNA. 2011-09-11 10:35:26 +00:00
Campbell Barton
64aa651b1b speedup for editmesh drawing.
- avoid needless context switching quad/tri, flat/smooth.
- dont call glNormal3vf() lighting is disabled.

gives ~2x speedup with a subdivided cube, but thats probably the best case, quad/tri smooth/flat mix will slow down a bit.
2011-09-11 10:23:26 +00:00
Thomas Dinges
933a19c997 Game Engine:
Fixed some more abbreviations in the UI.
2011-09-11 10:00:43 +00:00
Dalai Felinto
ff04beb3e4 partial fix for blenderplayer linking problems (decast retour)
This fix the problem of linking the extern components for the KX module.
The remaining linking issues are related to actual bad level access so the fix is a bit more complex.

Remaining linking issues (osx cmake gcc)
###########
Undefined symbols:
  "_buildNavMeshDataByDerivedMesh", referenced from:
      KX_NavMeshObject::BuildVertIndArrays(float*&, int&, unsigned short*&, int&, unsigned short*&, float*&, int&, unsigned short*&, int&, int&)in libge_logic_ketsji.a(KX_NavMeshObject.cpp.o)
      _applyModifier in libbf_modifiers.a(MOD_navmesh.cpp.o)
  "_polyIsConvex", referenced from:
      _applyModifier in libbf_modifiers.a(MOD_navmesh.cpp.o)
  "_polyNumVerts", referenced from:
      KX_NavMeshObject::BuildVertIndArrays(float*&, int&, unsigned short*&, int&, unsigned short*&, float*&, int&, unsigned short*&, int&, int&)in libge_logic_ketsji.a(KX_NavMeshObject.cpp.o)
  "_polyFindVertex", referenced from:
      KX_NavMeshObject::BuildVertIndArrays(float*&, int&, unsigned short*&, int&, unsigned short*&, float*&, int&, unsigned short*&, int&, int&)in libge_logic_ketsji.a(KX_NavMeshObject.cpp.o)
      KX_NavMeshObject::BuildVertIndArrays(float*&, int&, unsigned short*&, int&, unsigned short*&, float*&, int&, unsigned short*&, int&, int&)in libge_logic_ketsji.a(KX_NavMeshObject.cpp.o)
      KX_NavMeshObject::BuildVertIndArrays(float*&, int&, unsigned short*&, int&, unsigned short*&, float*&, int&, unsigned short*&, int&, int&)in libge_logic_ketsji.a(KX_NavMeshObject.cpp.o)
############
2011-09-11 08:21:26 +00:00
Campbell Barton
c400046702 speedup font drawing:
for ascii characters in a utf8 string use glyph_ascii_table lookup rather than call blf_glyph_search(), otherwise fallback to blf_utf8_next() and blf_glyph_search().
2011-09-11 08:12:16 +00:00
Campbell Barton
ee154197f2 fix for error in own commit r40108. 2011-09-11 07:06:21 +00:00
Campbell Barton
5fdbfbaf3a replace magic numbers for flags for uiSetRoundBox(); 2011-09-11 06:41:09 +00:00
Dalai Felinto
5184476fe1 bugfix: [bf-blender-Game Engine][28167] Restart game actuator don't get changed material mode
http://projects.blender.org/tracker/?func=detail&aid=28167&group_id=9&atid=306
Game Actuator (restart or load a new file) will not keep some settings alive (as
we had in 2.49).

In 2.49 the solution used was to use Blender globals (G.fileflags) to get/set
those settings. That was causing the blender file to change if you change the
material mode from the game.

In 2.5 this never worked, and the implementation was buggy (it's relying in the
scene settings, which get reset ever time we restart/load a new file).

My idea for fixing this is to create a new struct (GlobalSettings) where we
store any setting to be preserver during the course of the game. This is
specially important for options that require the game to restart/load new file
(graphic ones). But it later can be expanded to support other things such as
audio settings (e.g. volume), ...
I'm also planning to expand it for stereo and dome settings, but I prefer to
first get this committed and then build a new patch on top of that.


I had some problems in finding a correct way for build/link the blenderplayer
changes, so although it's working I'm not sure this is the best code (e.g. I
couldn't make forward declaration to work in GPG_Application.h for the struct
GlobalSettings so I ended up including KX_KetsjiEngine.h)

[note: I talked with Brecht and he find this is an ok solution. He implemented
it originally so it's good to have his go. However I still think there must be a way to make forward declaration to work. I will see with other devs if there is a better solution]
[also I'm likely renaming glsl to flags later if there are more settings stored in the flags to be used. But for now we are only handling glsl flags]
2011-09-11 05:54:07 +00:00
Campbell Barton
cfa83b0888 use vertex arrays for 3d view grid floor, reduce calls to glColor3ubv. clanup some unrelated odd formatting in draw_rotation_guide. 2011-09-11 05:50:44 +00:00
Campbell Barton
57fcea44df draw grid lines in 1 loop rather then 2. 2011-09-11 05:10:27 +00:00
Campbell Barton
dd31b3265a change grid floor loop
- split out axis drawing into its own loop (makes it more readable)
- left GRID_MIN_PX at 1.0 by mistake last commit.
2011-09-11 04:56:32 +00:00
Campbell Barton
6eaae376a8 simple changes to grid drawing logic.
- make ortho grid drawing use vertex arrays
- make perspective view floor drawing cache result of UI_ThemeColorShade so its not called on every line.
- make perspective view floor only loop once on each axis when the grid floor isnt being drawn (was looking over all grid lines for no reason).
- add UI_GetColorPtrShade3ubv() to replace UI_GetColorPtrBlendShade3ubv() when no blending is needed.
2011-09-11 04:31:09 +00:00
Campbell Barton
599cd56f53 minor edits / cleanup - no functional changes.
- use 'const float *' and array size in some function declarations.
- replace macros for BLI_math functions INPF, VECCOPY, VECADD etc.
- remove unused VertRen.clip struct member.
- remove static squared_dist() from 2 files, replace with BLI_math function len_squared_v3v3().
- use vertex arrays for drawing clipping background in the 3D viewport.
2011-09-11 02:50:01 +00:00
Campbell Barton
3a5f2272ad cmake edits to navmesh so includes are not added unless the game engines enabled. 2011-09-11 00:08:07 +00:00
Sergey Sharybin
fbf3a76f1d Fix #28609: UV Sphere Operator Panel allow Segments and Ring to be manually set to 0
Set hard min for segments and rings to 3.
Lower values doesn't make real sense and can only confuse.
2011-09-10 16:46:30 +00:00
Sergey Sharybin
4e9381bc35 Fixed for navmesh on FreeBSD. Oatch by sambler, thanks! 2011-09-10 14:55:14 +00:00
Sergey Sharybin
782a7a3677 Change priority for editor util library. Gave linking errors here. 2011-09-10 14:28:34 +00:00
Sergey Sharybin
bdd4aa27b0 Another set of fixes for recats: osx uses different order of arguments for sort_r
and it's callback.

Also do not use char constants like 'NAVM' which is casting to int.
And added defautl section to switch in KX_NavMeshObject::DrawNavMesh.
2011-09-10 14:12:15 +00:00
Campbell Barton
322dbc9a0f use vertex arrays for wireframe octahedral bone drawing. 2011-09-10 12:07:16 +00:00
Campbell Barton
357febc168 fix for building with collada and some other warnings 2011-09-10 09:38:38 +00:00
Thomas Dinges
8ed1c07a7b Navigation Mesh Modifier:
* Fix scons define for operator append
* Don't use abbreviations in the UI.
2011-09-10 09:21:46 +00:00
Thomas Dinges
571f7db529 MSVC build fix by MiikaH for NAVMESH. Thanks! :) 2011-09-10 09:06:42 +00:00
Thomas Dinges
e86bda9a5b Compile fix for scons:
* Don't compile with navmesh_conversion.cpp if Game engine is disabled.
2011-09-10 08:25:03 +00:00
Bastien Montagne
21f4ef77c0 Fixing bugs after Recast & Detour branch merge
*The eModifierType_NavMesh enum define was added before WeightVG ones, in ModifierType, breaking file load for WeightVG modifier. New modifier should always be added at the end of that enum!
2011-09-10 07:58:42 +00:00
Thomas Dinges
1334d3cb45 NAVMESH Modifier was not alphabetical correct in the modifier list, as the others. 2011-09-10 07:14:35 +00:00
Campbell Barton
01dca44a84 disable navmesh feature when building without the game engine. 2011-09-10 04:21:58 +00:00
Campbell Barton
fb4abf2e41 fixed linking with CMake 2011-09-10 03:42:45 +00:00
Campbell Barton
0128218254 recast and detour patch now builds again with GCC
- rearrange structs to work for 64bit
- define all vars before goto's
- ifdefs for qsort_r/qsort_s
- dont cast pointers to int only for NULL checks
- dont printf STR_String directly, get the char pointer from it

also minor change to gpu py module, no need to pass empty tuple to PyObject_CallObject, can just be NULL
2011-09-10 03:07:26 +00:00
Campbell Barton
23b843130b fix own mistake in recent commit, was using glIndexPointer incorrectly. 2011-09-10 01:39:21 +00:00
Guillermo S. Romero
a7f3e347b7 SVN maintenance. 2011-09-09 22:02:12 +00:00
Benoit Bolsee
5d4a5b47a0 BGE: merge Recast & Detour branch (sock-2010-nicks).
Add navigation mesh capability to the BGE, both by logic bricks and python.
Add tools to creation navigation mesh in the creator:
- manualy
- automatically from existing mesh with "object.create_navmesh" operator
- automatically from existing mesh with "Navigation mesh" modifier
Editing navigation mesh is possible via special modifier edit mode.
Creation and modification of Navigation mesh is also possible at runtime in the BGE.

Documentation at http://wiki.blender.org/index.php/User:Nicks/Gsoc2010/Docs

Warning: No upgrade is provided for blend files created under the branch.
         If you load a blend with navigation data created with a branch
         build, it will likely crash blender or behave incorrectly.
2011-09-09 21:28:56 +00:00
Benoit Bolsee
673552502b svn merge -r 40061:40078 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-09 19:30:33 +00:00
Campbell Barton
4b1a8d62e1 use opengl vertex arrays for the base widgets, their rounded corners, arrows and emboss. (note, this is from OpenGL 1.1 from 1992, nothing fancy), gives moderate speedup on my system when showing many buttons (10% - 15%). 2011-09-09 14:44:36 +00:00
Sergey Sharybin
657fa2494f [#28595] Select similar edges by face angles ignores z component of normal angles
Patch provided by Andrew Wiggin (ender79). Thanks!
2011-09-09 14:04:33 +00:00
Campbell Barton
5fc9baa962 warning fixes 2011-09-09 13:46:47 +00:00
Sergey Sharybin
8c1b4f8e05 Fix #28590: Sculpt Overlay Texture in Viewport Glitched and Wrong icon for Overlay Option?
Use clamp to border for fixed textures.
2011-09-09 13:42:22 +00:00
Campbell Barton
a3ac15db3d error (case insensitive search replace) 2011-09-09 13:37:17 +00:00
Campbell Barton
40481af180 replace magic numbers with defines to make the interface source more readable.
only functional change is the uiWidgetBase struct stored up to 64 verts, changed this to 36 since thats the most that is used atm, added assert if this ever changes.
2011-09-09 13:10:18 +00:00
Joshua Leung
8af4b90f07 Hotkey tweaks: Start/End frame jumping back to Shift-Left/Right
I'd moved them to Ctrl-Shift-Left/Right having thought that they were
for some reason now conflicting with some other hotkeys. Apparently
not.
2011-09-09 13:02:15 +00:00
Joshua Leung
67ea3180d9 Patch [#23443] Change outliner filter into search
Shane Ambler (sambler) for this 12-month vintage!

From description:
One thing with the outliner filter box is it only filters items that
are currently visible. To find what you want you need to manually
expand a few levels so that what you want to find is visible.

This small patch expands items when filtering is done - effectively
turning it into a search.

Currently this does not alter the datablocks view as expanding all
entries takes waaaay tooooo long.
I prevent the expansion of RNA entries for userprefs which prevents
infinite recursion but the datablocks list is just too big for this
approach. I think it would need a custom outliner_build_tree for a
full search.
2011-09-09 12:46:07 +00:00
Benoit Bolsee
ca170a8ed6 forgot to resolve one conflict in previous merge 2011-09-09 12:37:56 +00:00
Nathan Letwory
bef9509565 Apply small patch by Shane Ambler:
* inline of math funcs for Apple PPC
* eltopo big/little endian ifdef
2011-09-09 12:23:45 +00:00
Benoit Bolsee
c1c4743696 svn merge -r 39975:40061 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-09 12:21:41 +00:00
Benoit Bolsee
01744abd81 GPU: add gpu python module with export_shader() function to export GLSL shader.
shader = gpu.export_shader(scene,material) 

Returns the GLSL shader that blender generates to produce the visual effect
of material in scene for the purpose of reusing the shader in an external engine.
This function is meant to be used in a material exporter so that the GLSL
shader can be exported entirely. The return value is a dictionary containing the
shader source code and all associated data. 

The full documentation is under sphinx.

Warning: there has been an API between the patch and this commit:
uniform['lamp'] and uniform['image'] now return python reference to 
ID block instead of ID name as before. The X3D exporter that uses this
function must be adapted.
2011-09-09 11:55:38 +00:00
Campbell Barton
2b33c6b0b2 workaround for msvc not supporting variable length args in macros. 2011-09-09 11:54:13 +00:00
Brecht Van Lommel
fe48e008e5 Fix #28392: some selection operators were working in linked scenes, others not.
This allows all object selection operators now, useful for inspecting the scene.
2011-09-09 10:15:14 +00:00
Campbell Barton
a59ba9a519 - turn RNA_warning into a macro which includes the function name (was being written in manually but had incorrect func names in places).
- add __func__ define to BLI_utildefines.h for MSVC.
2011-09-09 01:29:53 +00:00
Guillermo S. Romero
ae7401751c SVN maintenance. 2011-09-09 00:46:00 +00:00