Commit Graph

899 Commits

Author SHA1 Message Date
58a74bc87f BGE Animations: Fixing various Action Actuator compatibility issues reported by Dalai in issue #28723. 2011-09-25 07:03:20 +00:00
5bd83eede0 svn merge ^/trunk/blender -r40405:40431 2011-09-23 11:30:55 +00:00
a13f94865a svn merge ^/trunk/blender -r40371:40372 2011-09-23 05:59:37 +00:00
4b449aefea remove support for irix 2011-09-21 08:40:30 +00:00
Dalai Felinto
b263aefb0e TexFace to Material Settings big patch
Summary:
========
The idea here is to move the texface options into the material panel.
For images with the change please visit:
http://code.blender.org/index.php/2011/09/bge-material-texface-changes

1 - Some of the legacy problems 2.49 and 2.5x has with the texface system:
==========================================================================
1.1) Shadow, Bilboard and Halo are mutual exclusive (in the code), yet you can
select a face to be more than one mode.
1.2) Sort only works for blend Alpha yet it's an option regardless of the
Transparency Blend you pick.
1.3) Shared doesn't affect anything in BGE.
1.4) ObColor only works for Text objects (old bitmap texts) when using Texture
Face Materials. (not address yet, I so far ignored obcolor)

2 - Notes:
============
2.1) Now "Use Face Textures" in material Option panel will work in Multitexture
even if there is no texture channel.

2.2) In FaceTexture mode it will use TexFace all the time, even if you don't
check the "Use Texture Face" option in the UI. It's a matter of decision, since
the code for either way is there. I decided by the solution that makes the
creation of a material fast - in this mode the user doesn't need to mess with
textures or this "Use Texture Face" option at all. I'm not strong in my opinion
here. But I think if we don't have this then what is the point of the Texture
Face mode?

2.3) I kept references for tface only when we need the image, UV or the tiling
setting. It should help later when/if we split the Image and UV layers from the
tface struct  (Campbell and Brecht proposal).

3 - Changes in a Nutshell:
==========================
3.1) "Texture Face" panel (in the Mesh/Object Data panel) no longer exists. Those settings are all part of the material properties, visible when Game Render is set.

3.2) "Texture Face" Shading mode (in the Render panel) is now called “Single Texture”, it needs a material for special settings (e.g. Billboard, Alpha Sort, …).

3.3) New options in the Material Panel
* Shadeless option in the Material panel is now supported for all three Shading modes.
* Physics is now toggleable, this is the old Collision option.
* Two Side (on) is now called Back Culling (off).
* Alpha Sort is one of the Alpha options, together (and mutually exclusive) to Alpha Blend, Alpha Clip, Add and Opaque (i.e. solid).
* Shadow, Billboard and Halo are grouped in the “Face Orientation” property.
* "Face Textures" and "Face Textures Alpha" (under Options) can be used for all but GLSL shading mode (to be supported in GLSL eventually).
* The backend in the game engine is still the same as before. The only changes are in the interface and in the way you need to think your materials. The bottomline is: It’s no longer possible to share materials between faces that do not share the same game properties.

4 - Acknowledgment:
==================
Mike Pan for the design discussions, and testing along the whole development process.
Vitor Balbio for the first hands-on code with the interface changes. That helped me a lot to push me into work on that.
Benoit Bolsee and Brecht van Lommel for patch review (* no one reviewed the whole patch, or the latest iteractions, so I still hold liability for any problems).
Blender artists that gave feedback and helped testing the patch.

Patch review and original documentation can be found here:
http://wiki.blender.org/index.php/User:Dfelinto/TexFace
http://codereview.appspot.com/4289041/
2011-09-19 19:55:59 +00:00
1ff373ef5b svn merge -r40166:40279 ^/trunk/blender 2011-09-17 04:59:14 +00:00
862aababb3 - remove deprecated pose channel members
- change short -> char for flags that support it.
- add pose 'temp' pointer to use for outliner drawing (was using 'prev' and restoring which seems dodjy)
2011-09-16 02:42:50 +00:00
fddc655aec svn merge -r40140:r40148 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-12 04:57:20 +00:00
9a1f3c587e - fix for mesh_get_mapped_verts_nors copying short normals to floats without scaling.
- BL_SkinDeformer also did this though for that case its not a problem because the normals are later accumulated anyway.
2011-09-12 04:29:35 +00:00
75b3936128 svn merge -r40075:40104 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-10 23:49:39 +00:00
c1c4743696 svn merge -r 39975:40061 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-09 12:21:41 +00:00
dbd6658d73 svn merge -r 37306:39975 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-07 15:34:04 +00:00
a167ee1262 svn merge -r39951:39986 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-07 00:46:11 +00:00
813d09cb59 BGE fix: ignore sounds that cannot be opened instead of crashing. ;-) 2011-09-06 21:02:26 +00:00
e74e245030 svn merge -r39890:39951 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-06 03:16:12 +00:00
0991bed413 fix some complier warnings and add -Wundef to CMake's default GCC warnings. 2011-09-05 23:40:52 +00:00
103b06d4df BGE animations: fixing initialization order issues for BL_ActionActuator and BL_ArmatureObject. Thanks to z0r for pointing them out and providing a fix. 2011-09-04 01:42:47 +00:00
70e3541f3a BGE animations: Fixing a potential crash when using camera IPOs. The IPOs were being created off of blendercamera->adt->action when they should have been using the supplied action. Thanks to z0r for pointing out the problem and a potential fix. 2011-09-04 01:27:16 +00:00
8295480bbe BGE animations: Fixing a crash that would happen if the property for a property mode action actuator was invalid. 2011-09-03 19:33:07 +00:00
58227c1016 svn merge -r39878:39890 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-03 12:57:33 +00:00
8e232af37c svn merge -r39831:39877 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-03 02:49:21 +00:00
0cd5dce245 whitespace edits 2011-09-03 02:15:49 +00:00
99d5fa70de BGE animations: This is an attempt to help smooth out some more compatibility issues with the new action actuator. It now has a similar pulse behavior to the old actuator. This has worked well in most of my tests, but YoFrankie still has problems, and it appears to have gotten a little worse. 2011-09-01 21:47:46 +00:00
2365c64014 whitespace bge edits 2011-09-01 02:12:53 +00:00
fb3f7d9566 svn merge -r39792:39829 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-01 00:56:21 +00:00
9bc92b2146 svn merge -r39781:39792 https://svn.blender.org/svnroot/bf-blender/trunk/blender, merge pepper, manually merged source/blender/editors/transform/transform_generics.c 2011-09-01 00:35:30 +00:00
471c005137 typo fix: end of lines ;; --> ; 2011-08-31 01:07:55 +00:00
947d4a654b Fix for [#25062] Sound Actuator - Positional Audio.
Now all sounds that are not mono but have 3D checked automatically get reduced to mono during BGE conversion time.
Also removed the now unneeded function sound_get_channels and added a missing header file to audaspace's CMakeLists.txt.
2011-08-30 10:09:10 +00:00
43ab8e8624 * Merge trunk up to r39790.
* Subversion bump (also for init_userdef_do_versions).
* Minor fix for compilation without ffmpeg.
2011-08-30 08:22:03 +00:00
c5a3f361a0 svn merge -r39765:39781 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-08-30 00:23:11 +00:00
296cc41b03 BGE Animations: Various changes to make code reviewers happy:
* Naming/style changes
  * Taking advantage of switch statements
  * Removing unneeded NULL checks
  * etc
2011-08-29 06:19:55 +00:00
Dalai Felinto
ea07e367c5 bge bugfix: [#28362] Controllers names appear incorrectly with a python query
the uniquename was never fully implemented for sensors and actuators, only for controllers.
at some point we either get rid of all of them, or bring them all on.

For now removing the "unique name" of controllers
2011-08-29 03:20:15 +00:00
5065d4c744 svn merge -r39664:39762 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-08-29 00:46:56 +00:00
c73d5b939d check for unlikely error when freeing a library blend file from the BGE. 2011-08-28 05:01:16 +00:00
94b3e83b6c fix for bug with all rotation modes being treated as euler by the BGE, this bug is in trunk too but fixing here because this code will replace whats in trunk.
also make initializers less verbose for ipo transform assignment.
2011-08-27 03:13:54 +00:00
7fc26e0123 Committing patch #25675 "Make "Cast Buffer Shadows" option work in viewport and BGE" by me.
Description from the tracker:
"It's really handy to be able to prevent an object/material from casting a shadow. So, I made use of the Cast Buffer Shadows option in the material settings, and made it work in the viewport and the BGE."
2011-08-24 20:28:54 +00:00
db4071d2b6 BGE Animations: Lamp and Camera IPOs are now handled like object IPOs, which means lamps and cameras are no longer stuck to just their active action. However, the Blender UI seems a little restrictive in this area. 2011-08-17 09:38:50 +00:00
17e88915fd BGE Animations: Updating BL_ActionActuator.frame to work with the new actuator. 2011-08-11 03:27:47 +00:00
7707140fd1 BGE Animations: Always update the localtime used for continuous animations. Previously this was only done on a positive or negative pulse, which could lead to some issues with a continuous flipper animation. 2011-08-10 20:05:30 +00:00
802f69df78 BGE Animations: Fixing issues with initialization order in BL_ShapeDeformer 2011-08-09 03:27:05 +00:00
88786f6fca BGE Animations: Fixing the Continue option when using the Flipper play type. Also removing a couple of debug prints. 2011-08-09 03:06:22 +00:00
8883702f8a BGE Animations: Various compatibility fixes:
* Blendin for Loop End works even after a negative pulse. Flipper could still use some work in this area.
  * Continuous works a lot better.
  * BL_Action::SetFrame() should work a little smoother.
2011-08-08 04:28:30 +00:00
daab78bc61 Merging trunk up to r39145. 2011-08-07 15:25:06 +00:00
2d884fc035 3D Audio GSoC:
* Pepper depends on ffmpeg 0.7.1 or higher now, windows and mac build systems set to ffmpeg-0.8
* Fixed orientation retrieval in OpenAL device code.
* Added stopAll() method to AUD_IDevice (also for Python) and call it on BGE exit
* Changed BGE to use audaspace via native C++ instead over the C API.
* Made AUD_SequencerFactory and AUD_SequencerEntry thread safe.
* Changed sound caching into a flag which fixes problems on file loading, especially with undo.
* Removed unused parameter from sound_mute_scene_sound
* Fixed bug: changing FPS didn't update the sequencer sound positions.
* Fixed bug: Properties of sequencer strips weren't set correctly.
* Minor warning fixes.
2011-08-07 11:54:58 +00:00
5cc0bb0d1b BGE Animations: The IPO conversion code relied on objects having an adt, but this isn't always the case. object->adt can be NULL, which causes a crash. Now BL_InterpolatorLists are cached by action instead of adt. 2011-08-07 04:57:23 +00:00
7e0049d27a BGE Animations: Making the ping pong mode for action actuators behave more like trunk. The behavior is a lot closer, but there are still differences when interrupting a ping pong action. I'm still trying to decide if these are acceptable differences as they don't look all that simple to fix. 2011-08-06 00:35:16 +00:00
aa1477cce1 https://svn.blender.org/svnroot/bf-blender/trunk/blender, in sync with trunk now 2011-08-05 08:28:03 +00:00
f77af0a8ce change BLO_library_append_begin to take a main argument rather then a context, means the BGE doesnt need to make a new empty context just to pass as an arg.
added doxygen description too.

this quiets the print when the BGE does linking.
2011-08-05 05:26:19 +00:00
03c1585e3a BGE Animations: BGEDeformVerts() now handles normals instead of relying on BL_MeshDeformer::RecalcNormals(), which BlenderDeformVerts() still uses. As expected, the BGEDeformVerts() version isn't as accurate, but it avoids a sqrt per vertex. This gives about a 15~20% improvement in time spent on the rasterizer in my test scene, which resulted in about 5 more fps. However, the main reason for the new normal code is it will be easier to do on the GPU (doesn't rely on neighbor information). 2011-08-01 23:02:10 +00:00
e4a512351d BGE Animations: Save the deform number to pose channel map created by BL_SkinDeformer::BGEDeformVerts() so it isn't recreated on every update. This gives minor speed ups, but I mostly did it because I thought it was a little cleaner this way. 2011-07-29 01:59:36 +00:00