Hot answers tagged

8

The iTunes App Store already has a process in place for adding custom terms and conditions to any app you upload. http://developer.apple.com/library/ios/#documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/8_AddingNewApps/AddingNewApps.html Scroll down to "Providing an End User License Agreement". Tell your lawyer about this if he doesn't ...


7

Using index buffers isn't necessarily faster, as indicated in the Apple docs, "For best performance, your models should be submitted as a single unindexed triangle strip using glDrawArrays". So, while a GL_TRIANGLE_STRIP will do it in 4 vertices without needing an index buffer, and you can use an index buffer, it's pretty lame to try to "save" repeating 2 ...


7

As you have found out, the W3C Vibration API is not supported in the iOS Safari browser (as reported here: https://caniuse.com/#feat=vibration). However, you've pointed out that you plan to package your app for the iOS App Store. To do this, you'll need to package your "web game" into an appropriate native container for installation on the phone. You could ...


6

The key phrase you're looking for is game state serialisation. Game state is what it says. Your game has some sort of structure to keep the current state of the game. In an RPG game, you want to store the list of quests the player is on, how far they are into those quests and what their characters' stats are. Serialisation is the reversible conversion of a ...


6

No simulators that I know of give reasonable expectations of on-device performance. The iOS simulator, in particular, is very bad. And I think the Android one is an emulator.


5

There are a few options available to you: Buy a Mac: This is the most full-proof, but probably the most expensive. If you can figure out what exactly you need (eg. Lion vs. Leopard), you can probably save some of the cost by buying something that's not latest-and-greatest, but "good enough" for development. Run a Mac VM: This is usually illegal (depending ...


5

I would also go for the ID solution. You should give every object in your whole world (not just on the current map) a unique ID. A 32 Bit int should be sufficient. Further every object can store a state value, also a 32 Bit int value. You can squeeze a lot of information into 32 Bit, e.g. you can make 32 flags out of it to store 32 bool values. Or you can ...


5

It is highly not recommended to make an iPad game without a device. The simulator is decent, but some things cannot be tested properly on it. For example, In App Purchases cannot be tested without a device. And believe me, you want to test those things. You also won't get much of an idea of its performance on the simulator since it may run much faster or ...


4

What you're seeing is floating point accuracy, or lack thereof. Even highp is specified as 16 bit in OpenGL ES according to the spec (pdf link). To make things worse, denormals/subnormals are not required (these are used to improve accuracy near zero, but require special handling and, to save silicon space, are often not implemented). Note that's the ...


4

While 24fps is the framerate of movies and that gives the illusion of movement visually, there are a couple of caveats to consider. First off, movie frames have motion blur in them naturally and that makes fast movements look more continuous between frames. Games generally don't have motion blur to connect fast movement between frames, so they need higher ...


4

If it's worth it or not depends entirely on your needs, the goal of the project and the resources available for the project vs what resources it will take to upgrade. However, simply based on what you've described, I would see no reason to upgrade. You've said the game you wrote still runs fine, so it sounds like there's nothing to fix. If there's no ...


4

Use Approach #2 (render to a small offscreen texture, then display that texture onscreen scaled up using nearest-neighbor texture sampling), because: The asset workflow is simpler. You can edit individual pixels, without having to quadruplicate them, or manually scale everything up. The assets will probably take up less space on disk. This is particularly ...


4

It's probably mostly a matter of being smart with 1) unloading of assets when no longer needed and 2) threaded loading of assets (if necessary, sometimes you can hide loading hitches behind "loading" screens). You likely don't have all the images loaded in memory at once. That being said, the on-disk space is pretty irrelevant when it comes to in-memory ...


4

If the enemy waves only effect one player (the one that plays the game), then I really see no need to put this logic on an external server. Having a server would also require an internet connection which can't be taken for granted (especially on iPods and iPads). You could simply store the time when your game exits or goes to the background. Upon relaunch ...


4

I am experiencing the same issue - after updating my iOS apps, there is a period (a few days) when a lot of App Units get reported from China. In fact more App Units then Impressions / Installations / Sessions. And I have Google Analytics (Firebase) installed as well, where I don't see any increased activity. I've read online that this might be due to click-...


3

One approach you can do is use the program luac to compile your scripts to bytecode. This provides an extra layer of obscurity. These compiled lua scripts can be loaded just like a normal text based script. Make sure you keep a text copy of the scripts that you compile however. I believe luac is built when you build Lua from source. Also note that luac ...


3

Comparing iOS Simulator and OSX OpenGL speed is pointless. OpenGL ES on iOS Simulator is a software renderer, and OpenGL in OSX is GPU accelerated. The performance characteristics can thus be expected to be completely different. More to the point, the faster image with the galaxy on the right side of the screen culls more than half of the points against the ...


3

A friend of mine released his game with Xamarin. You just need to create your game in C#, then this software can compile the source to iOS and Android. (And of course, because of the C#, you can also release it on Windows Phone.) Really good stuff.


3

Another approach is to subclass the CCMenuItemImage object. You can override the two functions -(void)selected and -(void)unselected to determine when the user has pressed and is holding.


3

Last time I used the Facebook API they didn't provide any multiplayer or gameplay functionality. I'm pretty sure you have to write that yourself. You can still leverage the Facebook API to publish scores/achievements and find friends of a user. Eg. You can get the user-names, profile pictures from FB and also use the Facebook API to post something on the ...


3

In Box2D, this is called Collision Filtering. Collision filtering allows you to prevent collision between fixtures. For example, say you make a character that rides a bicycle. You want the bicycle to collide with the terrain and the character to collide with the terrain, but you don't want the character to collide with the bicycle (because they must ...


3

Some companies target to release their titles around Christmas. Other companies target E3. There's a lot of buzz around E3 and it is coming soon. So it might be actually a good time to release in summer. And of course, when people go on holiday nowadays, they take their iPhones to the beach and they might just need something to play when they are sunbathing. ...


3

As far as I know all those devices are able to show up to 60 fps, however, for mobile development you should think differently: You've tagged your question with 'directx', but this won't work. iOS as well as Android both support OpenGL ES only, which is a more lightweight version of the desktop OpenGL. The more frames you display, the more work the GPU has ...


3

Unity Remote exists for this purpose. Quoting their description: Unity Remote is an application that allows you to use your target device as a remote control for your project in Unity editor. This is useful during development since it is much quicker to test your project in the editor with remote control than to build and deploy it to the device ...


2

Have you checked out CocoonJS? It's by far one of the best ways to get hardware accelerated HTML5 games on iOS and Android plus they have a cloud compiler where you can upload a single zip and it will build out for multiple platforms.


2

The error message *Cannot find requested emitter type. in ParticleSystemManager::_createEmitter* can basically have two central reasons: The ParticleFX plugin wasn't successfully loaded. This is a problem as the emitter types are defined in it. You specified a non-existing emitter type in your particle script Either way the answer lies in the Ogre.log ...


2

Thanks to jimmyo for mentioning our GameKit ANE. Our updated version includes support for both turn-based and real-time Game Center matches. Phil, the task is not complex with our high-level API. You listen to three important events, and make one call each to advance turn, assign match outcome, and end game. This ANE also provides a low-level API to the ...


2

The catch of Game salad is "write games without coding...". However it doesn't mean write games without programming! Just because you aren't coding doesn't relieve you from knowing the math and logic real programmers have to go through when developing apps!


Only top voted, non community-wiki answers of a minimum length are eligible