Idea for tool for prototyping iPhone games in 2.5

Hi folks,

This is something I’m hoping to look into in at the start of next year ( we already have a non-Blender setup using a similar scheme in-house ), but I thought I’d post some info, and graphics etc, to get some feedback from existing Python tool scripters on the best way to accomplish this ( or if will even be possible ).

Part of the reason I’m planning on looking into it is due to Ton’s long term picture of allowing Blender to be heavily customised into a tool for specific artists needs.

For developing iPhone games, it’s always handy to have the window set to the actual pixel size* of either 320x480 or 480x320. Even handler is having that window surrounded by something that looks like an iPhone.

I’ve uploaded 2 pngs ( really it’s the same PNG but one is rotated 90 degrees ) here…

*Note that the dpi on the phone is different to the screen dpi. In our custom ( non-Blender ) tool, the artists can shrink down the skinned visualisation of the game to the relative size ( eg to check for finger sizes ) - this of course means a non-mapping of pixel to pixel - you can’t have both at the same time, but being able to easily switch between both options is very useful ).

With 2.5, now that we can have additional pop-up windows, it would be cool to have a pop-up window showing this image, but then showing a 3D window located where the screen should be ( in the white rectangle area ), which would update / synch when the main 3D window is updated ( ie if you scrub the timeline / play the animation ), or when objects are moved in the main scene.

Some other options that would be useful ( checking to see if these are possible also, or useful )…

  • Disable gizmo in this 3D viewport

  • Allow this window to be scaled, but…

    • Keeping the aspect ratio
    • Keeping the 3D window within the scaled specified area
  • Allow auto-flip between the horizontal / vertical orientation

  • Have a hidden / graphic button that closed the window of the iPhone button area is pressed ( close app button )

  • Have a finger overlaid on the screen, at the correct size ( taking into account scale ) of the screen, to allow for the artist to pre-detect too small / too close together items etc.

  • Have no window border, but have the alpha from the PNG used as a window mask

  • Set up a draggable area for the skinned non-bordered window ( eg anywhere where alpha > 128, or have a separate mask for dragging )

The finger option is something that we find very useful here, before creating something and placing it on the iPhone itself, where it is then more resource heavy to change.

Here’s the PNG of the finger that we use ( the mouse cursor is placed around where the finger nail is )

Anywho, hopefully based on some feedback I can get an idea of the challenge, and some pointers.

Many thanks in advance…