Application design and planning Discussion

Hi all,

Since I never had the experience to deeply a full app or game in Google play or Appstore, I appreciate sharing your expertise in the following:

  1. Is there any template to help in design or model the app before you start coding?

  2. How do you manage different phones such as galaxy tab, iphone, Samsung s2 etc. I meant they have different resolutions so how can build one for all or you need to build one for each!!

  3. How do you manage the orientation of the device? if the user change to portrait to landscape for example, should I put code to manage that or you need to build one for specific orientation.

  4. Is there a good website or simple tool to help design graphics for the applications ? or I need to learn some new graphics software such adobe Photoshop etc

  5. Any useful advice for beginner to design complete app with a big hope  :slight_smile:

Regards
Abdul

Hi Abdul,

Here are a few thoughts on your questions:

  1. Very roughly, I think a good structure for a game is something like this:
  • main.lua preloads key assets (textures, sounds, music), performs any other initialization, and then uses storyboard to load the first scene
  • Have a separate file to store key configuration info and data, to avoid globals (http://www.coronalabs.com/blog/2013/05/28/tutorial-goodbye-globals/)
  • Use storyboard to manage scenes, including your menu systems and the gameplay scene itself
  • Maintain the data describing a particular part of your game (e.g., a level) in a separate file from the storyboard file that actually presents it
  1. You can use config.lua to manage this.  See some info at these links: http://docs.coronalabs.com/guide/basics/configSettings/index.htmlhttp://www.coronalabs.com/blog/2012/12/04/the-ultimate-config-lua-file/http://forums.coronalabs.com/topic/37362-improvement-to-the-ultimate-configlua-file/
  2. You can manage that in the config.lua file too.  Your code can also listen to orientation change events and act accordingly, if need be.  http://docs.coronalabs.com/api/event/orientation/index.html
  3. Photoshop and Illustrator are the most common professional tools that I know of.  GIMP and Inkscape are similar tools, but they’re free
  4. Start small.  Focus on learning the fundamentals of coding first.  Read books on Lua and programming in general, and use the Corona documentation extensively
  • Andrew

Thanks Andrew for you advice and comments in the mentioned points. Let us wait for other to share their experience as well :slight_smile:

I have comment in regards to the orientation and resolution :

I understand from you how to detect for example the device type or the movement. But I can see it is very difficult to design code and pictures for each one. I think there is must be a way to design graphics once which can be applied to all devices. Could be !!

Regards

Abdulaziz

Hi Abdulaziz,

Generally, you can just design your graphics once, use them in your Corona project, and it’ll work on all device sizes and resolutions.  You can also design your graphics at multiple resolutions, so that Corona uses higher resolution versions on higher resolution devices.

For screens with different aspect ratios, it’s up to you to decide how you want to handle it.  If search through the Corona blog, you’ll find a few posts about it.

  • Andrew

Hi Abdul,

Here are a few thoughts on your questions:

  1. Very roughly, I think a good structure for a game is something like this:
  • main.lua preloads key assets (textures, sounds, music), performs any other initialization, and then uses storyboard to load the first scene
  • Have a separate file to store key configuration info and data, to avoid globals (http://www.coronalabs.com/blog/2013/05/28/tutorial-goodbye-globals/)
  • Use storyboard to manage scenes, including your menu systems and the gameplay scene itself
  • Maintain the data describing a particular part of your game (e.g., a level) in a separate file from the storyboard file that actually presents it
  1. You can use config.lua to manage this.  See some info at these links: http://docs.coronalabs.com/guide/basics/configSettings/index.htmlhttp://www.coronalabs.com/blog/2012/12/04/the-ultimate-config-lua-file/http://forums.coronalabs.com/topic/37362-improvement-to-the-ultimate-configlua-file/
  2. You can manage that in the config.lua file too.  Your code can also listen to orientation change events and act accordingly, if need be.  http://docs.coronalabs.com/api/event/orientation/index.html
  3. Photoshop and Illustrator are the most common professional tools that I know of.  GIMP and Inkscape are similar tools, but they’re free
  4. Start small.  Focus on learning the fundamentals of coding first.  Read books on Lua and programming in general, and use the Corona documentation extensively
  • Andrew

Thanks Andrew for you advice and comments in the mentioned points. Let us wait for other to share their experience as well :slight_smile:

I have comment in regards to the orientation and resolution :

I understand from you how to detect for example the device type or the movement. But I can see it is very difficult to design code and pictures for each one. I think there is must be a way to design graphics once which can be applied to all devices. Could be !!

Regards

Abdulaziz

Hi Abdulaziz,

Generally, you can just design your graphics once, use them in your Corona project, and it’ll work on all device sizes and resolutions.  You can also design your graphics at multiple resolutions, so that Corona uses higher resolution versions on higher resolution devices.

For screens with different aspect ratios, it’s up to you to decide how you want to handle it.  If search through the Corona blog, you’ll find a few posts about it.

  • Andrew