I’m still working on my first game attempt (a first-person horror for a high school senior project) and decided to try saving a runtime to test. And… Well, the exported runtime is a lot different from the blender internal game engine.
I should mention I’m using the 2.67b for 32-bit Macintosh computers, and the blenderplayer that came with it.
Anyways, after packing all my files and exporting, the resulting app (fullscreen and windowed):
Doesn’t hide the mouse pointer sometimes
Continues to play audio set to stop when a key is no longer pressed
The character constantly drifts to the left or right (depending on which direction it is told first)
My Pre-rendered video cutscenes don’t display
Some IPO actions are either infinitely looped or don’t play at all.
And overall, it is choppier and lass responsive.
Have I done something wrong with some setting or the export? Or is this some bug?
Any advice would be greatly appreciated
Also, I’m curious to know if it is possible to save stand-alone applications to Windows or Linux from a Mac?
How are you hiding/showing the mouse?
How are you playing audio?
What system are you using for motion?
Are you using relative or absolute paths for the video? How are you playing them?
How are you playing your ipo’s?
I have never known the internal to be different to the export. The most common culprit is file-paths (for things like scripts, textures, sounds)
The mouse is hidden and shown with the basic python showpointer/endpointer scripts tied to logic bricks. I use a lot of logic bricks because I’m TERRIBLE at python right now.
Motion is WASD sensors (not set to pulse mode) tied to simple motion logic bricks that add local forces to the player. The player is steered via Riyuzakisan’s latest mousemove script. The audio I care about is a footstep sound that is looped when the same WASD sensors are triggered, and sent to the sound logic brick. It doesn’t seem to stop becase the WASD sensors seem to trip permanately. Which seems to be the reason the player begins to fly about unstoppably at the first button press. I still can’t stop that though. So you may be right Kevin, I do seem to be having some of this input error problem. Do I just have to wait for the new 2.7 for this to hopefully be fixed then?
Anyways, similarly, the IPO is a little bobbing animation synced to the audio, and looped when WASD is pressed, but not when they’re not. Again, it’s just the “action” logic brick.
I’m not exactly sure what you mean by file paths, but I just went File>External Data>Pack into .blend file, saved, and exported the runtime. I also saved it to the same folder as the original .blend and all my files that are suppossed to be connected to that .blend, so I shouldn’t have had the problem then?
Thanks for helping me! It means a lot, this is eventually going to become part of a school project.
I’m afraid the first stuff does sound like a bug, but…
I can help with the video playback.
Any video playback script you find will have in it a line that points to the video file that you want to play.
In that script it is the line:
movie = GameLogic.expandPath('//' + movieName)
What this means is that blender doesn’t pack the movie file. So when you export your game, you have to keep your movie file in the same relative place.
So if you have the filing structure:
One thing you could try is running your blend file using the mac blendplayer and a mac script. I can’t find a good reference at the moment, but in Linux the script is a .sh file that includes:
blenderplayer /path/to/blend.blend
In windows it’s a .bat that includes something similar. I have no idea what it is for mac.
All right! So if I understood correctly, all I had to do was open up the exported runtime’s internal stuff and shove the video file in next to the blendfile? Because that seemed to work, it even played from a jump drive on a separate user account :). Thank you so much!
Unfortunately, running the blenderplayer from a shell in the terminal resulted in a similarly-lagging, near-uncontrollable mess like the runtime. So, I’m thinking I’m just going to have to wait for it to be fixed in a future update. I’m going to try the 64-bit version later today and see if it is any better, but I’m not expecting it to. But for now, I’ll mark this as Solved. Thanks again for the help!