2010年3月31日水曜日

Corona基礎編2 画像貼付けと簡単なtransition

前回の基礎編1のプログラムに画像の貼付けと簡単なtransitionをつけてみました。
とりあえず今回のソースです。

--
-- アプリに画像貼付け
local backImage = display.newImage("sample.png")

-- x座標とy座標の設定
local x,y = display.stageWidth/2,0
--RGBの色
local r,g,b = 255,255,255
--表示する文字列の設定
local hello = display.newText("Hello,Corona",x,y,nil,24)
--文字列の色指定
hello:setTextColor(r,g,b)

transition.to(hello,{y=display.stageHeight/2,time=1000})
--

今回新しく出てきたのは3種類ですね。
1.display.newImage(画像ファイル名)
指定された画像ファイルを読み込んでアプリに画像を貼付けます。
ちなみにもっと引数を増やして、
display.newImage(ファイルネーム[、ベースディレクトリ名][、x座標、y座標])という風にもできます。
[]でくくられている引数は無くてもデフォルト値で補われます。
ディレクトリはアプリのルートディレクトリで、
x,yはともに0で補われます。

2.display.stageWidthとdisplay.stageHeight
これは端末の横の長さ、縦の長さを取得できます。
これらを利用して機種依存を少なくすることができます。

3.transition.to(対象となるオブジェクト,{最終目標値})
transition.toはアニメーション用のメソッドです。
今回はhelloオブジェクトを対象とし、helloオブジェクトのyを画面の中央まで、
1000ミリ秒かけて動くという最終目標値を設定しています。

次回はボタンをこれにボタンを付けてみます。
それと画像ファイルでいいフリー素材が見つかったらそれを含めてzip形式でサンプルを公開します。
しばしお待ちを。

2010年3月29日月曜日

Corona基礎編1 Hello,Corona!!

というわけで、すごく簡単なHello,WorldならぬHello,Coronaプログラムを書いてみました。

以下ソースコード
--
hello = display.newText( "Hello,Corona", 10, 80, nil , 24 )
hello:setTextColor( 255,255,255 )
--
これだけでスマートフォン上にHello,Coronaと表示されます。
以下ちょっとした関数説明。
display.newText(String,x,y,font name,size)
 String:表示したい文字列
 x,y:座標
 font name:使いたいフォントの名前を文字列で
 size:文字のサイズの数値

注:fontに関しては使う機種によって用意されているfontが違います。
Coronaのサンプルコードにfont確認用のプログラムが用意されていると書いてありますが、
見つからないので、見つけたらBlogに記事として載せておこうと思います。

この行では変数helloにnewTextの戻り値、テキスト情報を格納しています。

setTextColor( r,g,b )
r:赤色の濃さ
g:緑色の濃さ
b:青色の濃さ
この関数自体には説明はいらないかと。
helloのフィールドメソッド(Luaでどういう言葉を使っているかわからないのでJava風に)であるsetTextColorを呼び出して文字の色の指定をしています。標準は0,0,0で黒色です。 
 : はJavaでいうところの . です。フィールド呼び出しの演算子ですね。

この二つを行うことによって文字が表示されます。

とりあえず初めてのCorona自体の解説でした。
次回は画像貼付けの予定です。多分今日の夜にでもささっと書いて公開します。ではでは

2010年3月23日火曜日

Android版Coronaについての情報が公開されました

Anscaの対応の速さは恐ろしいですね。
前にSymbian版だすよーといっておいてiPad版だいたい終わったという報告もうけ、
さてさて、ここがきっとCoronaがシェアを握るための鍵となるであろうAndroid版Coronaの情報公開が行われました。
以下いろいろリンク
Ansca公式Blog:Corona, now with a lot more Android
動画:Corona SDK for Android & iPhone
公式Blogを読む限りではやはりSymbian版よりもAndroid版の方を先に出せという要望は結構あった様ですね。ある程度完成したので情報公開といったところでしょうか。
気になるのはAndroidSDKにあったIntent等の機能はいれるのかどうかですかね。
動画を見る限りではiPhone版と同等の機能をいれてしまった感がするので、
IntentによってAndroidの標準搭載のアプリ群とのデータのやりとりであったりはどうなってるのか気になります。
場合によってはデータを取りたければDBにアクセスしろということになるのか。
Luaでのマルチプラットフォーム自体はすごく魅力的で、
Javaの思想であった「Once write , run anywhere」は保ちつつ、アンドロイド用ライブラリ等があってもいいかなとすこし思いました。

何か自分なりにいまのままのCoronaでintentを実現するにはどうするか考えてみよう。
(あからさまにコルーチンとかの応用な気がしないでもない)

追記
LuaにてAndroidのライブラリーが動かせることをAndroid上のコンソールで確認しました。
ToastとかDialogが普通に表示できたのでもしかしたらAndroidのライブラリに関してはそのまま使えるかもしれません。

2010年3月22日月曜日

公式ドキュメント&参考になるリンク

リンク集を作る前に記事にしてまとめておきます。

公式ドキュメント
基本的な情報はこれらのドキュメントに掲載されています。
このBlogでも必要なときに取り出して、噛み砕いて翻訳してみます。
※学生レベルの翻訳であること=>僕は英語苦手
API Reference
Application Programming Guide
Device Build Guide
Getting Started Guide
Tools Guide

公式youtubeチャンネル
もちろん英語での動画しか載っていませんが、軽く前もってどういうふうに開発するのかなど知りたい場合や簡単なところから勉強したいという時の副教材としておすすめです。
もしかしたらいつかこれを使って放送するかもしれないです。
http://www.youtube.com/anscamobile

2010年3月21日日曜日

現状報告

長いこと更新が途絶えていましたが、今月末からこのブログを本格的に始動します。

一応更新に関する基本方針を立てました
1、CoronaSDKに関することなら何でも可
(つまりiPhone関係だろうがLua関係だろうが出てきます)
2、できれば一週間に一回は更新すること
(早めにまとめて日本にできるだけ情報を流通させたいという理由より)
3、日本のCorona普及に向けて努力すること
(とりあえずまずは個人で一アプリつくってみます)

今のところこの3点に基づきしばらく更新する予定です。

基本的に内容に関する質問や疑問等ありましたら、Blogに何らかの形でコメントをくださるか
日本コロナの会までよろしくお願いします。 
keiなのでした。

自分のTwitterID:@muxukeikei

日本コロナの会
http://groups.google.co.jp/group/coronaja
http://twitter.com/JapanCoronaGrp