It’s Wednesday and time for another FAQ session. Here are five frequently asked questions (FAQ). Question 1 Why is text spacing/positioning slightly different between the simulator and device? Answer The fonts are not the same between devices and simulator. The native.systemFont is different depending on the OS. On the Mac, it is LucidaGrande 24 pt. On iOS, it’s Helvetica. On Win, it’s something else. Different fonts have different font metrics even at the same point size, so that will mean differences in alignment. Even for the same font, there can inevitably be differences, since the font rendering is done by the OS. While MacOS and iOS share similar code paths, the underlying text drawing is slightly different. The same fonts will have slight differences glyph
It’s Wednesday and time for another FAQ session. Here are five frequently asked questions (FAQ). Question 1 How do I bring the Corona window back to the desktop? Answer This is a common issue with Windows programs where the window will disappear if it’s on an external display and the program is restarted without the display. The program is not hung, just trying to display the window on a non-existent display. This can occur with the Corona Windows Simulator (this is not an issue with the Mac Simulator) and here are the steps for getting back the window: Right click on the Corona Simulator tab in the task bar Click on “move” Press an arrow key (left, right, up or down) Move the move until
It’s Wednesday and time for another FAQ session. Here are five frequently asked questions (FAQ). Question 1 Now that you added the Lua File System (LFS), how can I use it to get a list of files in the /Documents directory? Answer The Lua File System was added starting with Corona build 2012.805. You can read the tutorial here. The LFS now makes it possible to create, delete, and access subdirectories. The key to all of this is creating a string containing the path to the directory. In iOS and Android, there are three main directories: Resource, Temporary, and Documents and they are accessed using Corona constants. These userdata constants need to be converted to a string so they can be used with the LFS.
It’s Wednesday and time for another FAQ session. Here are five frequently asked questions (FAQ). Question 1 When I create functions, I sometimes get error messages saying the function name was nil. I play with the code until the error goes away. What are the rules for getting it right?
It’s Wednesday and time for another five frequently asked questions (FAQ). Question 1 Why do images take longer to load on the new iPad (retina)? Answer This issue came up when a user was using large JPEG images on the new iPad Retina and noticed the time to load the images were a lot higher than on the iPad2. One of the reasons is the new iPad accepts larger image sizes, but we also found out a few things that might help if you have images that take a long time to load. First off, use non-progressive JPEGs. Progressive JPEG take longer to load. How you compress JPEGs makes a difference in load times. Compressing to 70% or 80% can cut down the time to
It’s Wednesday and time for another five frequently asked questions (FAQ). Question 1 Should I use PNG or JPG image files in Corona? Answer The answer depends on the quality of the images you need and the size of your app package. Corona supports 32 bit PNG and 32 bit JPGs. PNG supports transparencies with loss-less compression where JPGs are compressed (lossy) but supports a wider range of colors. PNG files are generally a larger file size than JPGs for the same resolution. This can affect the size of your app package. As for the amount of texture memory consumed, both PNG and JPG take up the same amount of openGL memory because the images are uncompressed when loaded into memory. You should also be
This is a new series of blog posts that will appear every Wednesday and covers five frequently asked questions (FAQ) from support cases, the forum, and documentation comments. Hopefully there will be something here for both the experienced Corona users and those using Corona for the first time. So let’s get started.
As our Corona Community expands, we get more and more people asking us how to get started with building their first app and learning the ropes. Of course, there’s always been great tutorial sites like LearningCorona.com and even a few professors teaching classroom courses about Corona SDK around the world, but those don’t always work out for some folks (bloody geography!). So now, you can get instruction straight from the people who know Corona best — us! Now, we have an “Official Ansca Mobile Corona SDK Training” regimen that you can attend online at your leisure. Specifically, we have two courses — Corona 101 (“The Basics”) and Corona 102 (“Building to Your Device”) — that will help you get your feet wet with instruction on a
CAUTION: This tutorial is outdated and the material cannot be confirmed as accurate. A new guide covering this topic is coming soon. This article is designed to get Flash developers quickly oriented within Corona. First, I’ll discuss how to take your existing Flash projects and turn them into Corona projects, followed by a more general introduction to Corona from a Flash perspective. (1) Exporting Assets from Flash A good first step is to export all your graphical assets. When porting from Flash Lite on older devices, I generally recreated higher-resolution assets for the larger iPhone and Android screens. However, web-based Flash games will likely have assets that are already a good size for today’s mobile devices. And of course, if the assets are vector-based, you
Those of you who missed our November 11 webinar a couple weeks back (or those of you who just want to go over what was was covered during the webinar) can now watch it in its entirety below. This time around, Carlos walks you through Event Listeners (one of the core functionalities of Corona), plus object level events and Runtime events. The webinar goes through a quick tutorial on the differences between the two, and covers the Corona event model using functions to create program structure and flow. Thanks for checking in, and we hope to see at the next one!