Page MenuHome

Keyed animations slow in blenderplayer on OS X
Open, NormalPublic

Description

System Information

Computer 1: 13" Macbook Air

OS: OS X 10.8.5
CPU: Intel i7 1.7GHz
RAM: 8GB
Graphics: Intel HD Graphics 5000 1GB

Computer 2: 15" Macbook Pro

OS: OS X 10.9 (Build 13A603)
CPU: Intel i7 2.6
RAM: 16GB
GPU: Nvidia Geforce GT 650M 1GB(discrete) and Intel HD Graphics 4000 1GB(integrated)

Blender Version
Broken: Blender 2.69 (64-bit)
Worked: Don't know (difficult to test as I have to use a friend's computer)

Short description of error

On OS X, animations in the blenderplayer run slowly - apparently about 5fps - even when the rest of the game has a (much) higher refresh rate. On Windows and Linux, keyed animations in blenderplayer are fine.

Exact steps for others to reproduce the error

The test file above contains 5 animated objects. From left to right:

  • Object: Two cubes parented an animated using keyframed location and rotation.
  • Armature IK: A mesh with bones using IK to animate.
  • Armature Keyed: A mesh with bones using a keyed animation.
  • Python: An object moved using a Python script on every logic tick.
  • Physics: Cubes bouncing around using Bullet dynamics (rigid body).
  • Open the file above in Blender on OS X.
  • Press P to start the game.
    • Result: All five animations should play with the same frame rate.
  • Open the file in blenderplayer. You may need to run it from the console, e.g. ./blenderplayer.app/Contents/MacOS/blenderplayer osx_anim_test1.blend
    • Result: The first three animations display poorly, at only 5fps or so. The two on the right (Python and Physics) display well, probably at 60fps.

Details

Type
Bug

Event Timeline

Alex Fraser (z0r) updated the task description. (Show Details)
Alex Fraser (z0r) raised the priority of this task from to Needs Triage.
Alex Fraser (z0r) added a project: Game Engine.
Alex Fraser (z0r) set Type to Bug.

Here it works fine, they are all equally smooth.
I even forced my OSX to use my integrated display (Intel HD Graphics 3000) and no problems either

The above test was performed with a Mac Book Pro, OSX 10.8.5, Vanilla/official 2.69 blenderplayer, processor i7. Tested with AMD Radeon HD 6750M and the integrated intel)

Thanks for testing it. Very strange that the results are different - you have quite a similar system to the one my colleague has. And it's not just this file; it also happens on my big game.

Hi
Made the test on MacPro with AMD 7970 -> all @ 60fps here, in Blender == Player

Jens

Discussed with @jens verwiebe (jensverwiebe) in IRC; we think we need to test again on Computer 2 to confirm that the nVidia card is being used. Jens suspects that the issue is related to running on Intel HD.

To check which card is in use, check About this Mac > System Information > Graphics/Monitors. Select a graphics card from the list on the right, and the monitors that it uses will be listed below.

Questions about this:

  • What happens if an application is dragged onto the other monitor? Does it use a different GPU?
  • What happens if the application is half-way between two monitors?

See also:

Works fine here also, all animations play with the same good framerate in official Blender 2.69.0 release's blenderplayer (started from cmdline)

MacBook Pro Retina, 13-inch, Late 2012
Intel HD Graphics 4000 1024 MB

Thanks for testing! Well, I guess I will have to test further on my friends' computers to find out what is different about them.

Hi
I think this issue shouldn't be a biggie as it works when played in Blender directly.
Must check if we have a slightly other situation when playing in standalone player.
Would be nice if ppl with MacBooks, expecially with Intel gfx could check and comment.

My guess atm.: player somehow uses Intel gfy always and we must push it to switch to
dedicated NVidia gfx somehow.

Jens

Can't a software like gfxCardStatus be used to identify which graphic card is used at the moment?

Tested on two more Macs:

OS: OS X 10.6.8 (Build 10K549)
CPU: Intel Core 2 Duo (2.53GHz)
RAM: 4GB
GPU: Nvidia GeForce 9400M

OS: OS X 10.9 (Build 13A603)
CPU: Intel Core i7 (2.3GHz)
RAM: 4GB
GPU: Nvidia Geforce GT 650M 1GB(discrete) and Intel HD Graphics 4000 1GB(integrated)

As expected, the bug is only present on the second computer (the one with the Intel graphics card). This is despite the first computer being much older. The second one is almost the same configuration as "Computer 2" in the issue description.

For the second computer, we checked which graphics card was in use as described in T37514#16. A screenshot of the Activity Monitor is included below.

The row for BlenderPlayer is listed as requiring high-performance graphics; therefore it seems that blenderplayer is using the nVidia GPU for drawing, however the bug is still present. This suggests that the presence of the Intel card triggers the bug, even when it isn't being used - or the bug is triggered by something else entirely.

Could you try running the attached file (glinfo.blend) and comparing the console output between Blender and the Blenderplayer?

Don't know if anyone can help, but I am using a VERY high poly model, and I've HIDDEN it, so that the computer doesn't need to process it, but that does not help. I try to manipulate the armature for animations and it still is not moving with my mouse in realtime, it is delayed by several seconds, which is frustrating because I don't know what position my bones are in and it is very hard to edit. I have downloaded the latest NVIDIA driver for Mac, which may help you guys out for your other problems. Still, my armature is slow and I want to make animations, but this makes it next to impossible, especially since Blender moves my bones every which way instead of following my mouse cursor, which would not be so bad if I got realtime feedback to adjust my mouse cursor to Blender's strange xyz coordinate system. I have

OS: OS X Mountain Lion (latest)
CPU: 2.6 GHz i7
RAM: 8GB
GPU: Nvidia GeForce GT 650M
Driver: Latest NVIDIA for Mac

Hi JJDeveloper,

I don't think your issue is related to this bug report, because this ticket is about the game engine. Have a look on BlenderArtists, e.g:

http://blenderartists.org/forum/archive/index.php/t-177183.html

If that doesn't help please open a new ticket.

I don't know how to post on here. Also, sorry, but ticket? I just have a 4 million vert model I wish to export.

@JJ (JJDeveloper) the bug tracker (this website) is used to report bugs. A bug report is also called a ticket.
You should ask for help using blender somewhere else, like the link z0r suggested. If something is malfunctioning with the export, you should fill in a new report/ticket.

@Alex Fraser (z0r) did you do what moguri suggested?
>> Could you try running the attached file (glinfo.blend) and comparing the console output between Blender and the Blenderplayer?

Inês Almeida (brita_) triaged this task as Normal priority.Jul 21 2014, 9:44 PM

ok so... The problem i'm having is after i make my Armatures and Meshes i make a few animations for the Armature, everything is running smoothly in the Standalone Player.

BUT! When i save my file and reopen Blender...... I press the Standalone Player in BGE and what happens? My armature is moving very choppy! This happens for all my Creatures/Characters/EVERYTHING THAT MOVES WITH ARMATURES!

...... Please help me.....

(I use low Textures and LowPoly Meshes, I even delete the Meshes and Textures and it's still very choppy, and i also use IK Rigs as well{F161093})

Let me know if i should put this commit elsewhere :) ty

I'm also using a 2012 Macbook Pro

Hi @Sweet (Elijah),

Could you please open the original test file

and run it once in the embedded player and once in standalone - do you see the same behaviour described in the first comment?

Yes! Only with the Armature Keyed and Armature IK