「Xamarin.AndroidのViewとMonoGameを混在させる」の版間の差分

編集の要約なし
編集の要約なし
 
(同じ利用者による、間の1版が非表示)
3行目: 3行目:
たとえばMonoGameには「文字入力」などという軟弱な概念はないので日本語入力対応のテキストボックスを使いたい場合や、[[Google AdMob]]で[[バナー広告]]を表示したい場合などが考えられる。
たとえばMonoGameには「文字入力」などという軟弱な概念はないので日本語入力対応のテキストボックスを使いたい場合や、[[Google AdMob]]で[[バナー広告]]を表示したい場合などが考えられる。


なお、この方法は[[iOS]]対応などのマルチプラットフォーム対応などクソくらえである。[[ググる]]と「[[Xamarin.Forms]]と[[MonoGame]]で同様のことをやりたい」という事例が[[stackoverflow.com]]などで散見されたが、その解決策は「[[CocosSharp]]を使え」というものであった。CocosSharpを軽く触ってみたが、[[物理演算]]のために[[固定フレームレート]]にしたいが設定方法がわからない、[[3Dモデル]]の描画方法がわからないなど、わからないことだらけで撃沈した。
なお、以下の方法は[[iOS]]などのマルチプラットフォーム対応などクソくらえである。[[ググる]]と「[[Xamarin.Forms]]と[[MonoGame]]で同様のことをやりたい」という事例が[[stackoverflow.com]]などで散見されたが、その解決策は「MonoGame使うのやめて[[CocosSharp]]を使え」というものであった。CocosSharpを軽く触ってみたが、[[物理演算]]のために[[固定フレームレート]]にしたいが設定方法がわからない、[[3Dモデル]]の描画方法がわからないなど、わからないことだらけで撃沈した。


== 実装例 ==
== 実装例 ==
新規プロジェクトを作った直後に自動生成される[[ソースコード]]はこんな感じ。アクティビティにいきないMonoGameのViewを追加している。MonoGameも普通のViewじゃん。
新規プロジェクトを作った直後に自動生成される[[ソースコード]]はこんな感じ。アクティビティにいきないMonoGameのViewを追加している。つまりMonoGameの描画領域も普通のAndroid.View.Viewから派生したものだ。


<source lang="csharp">
<source lang="csharp">
18行目: 18行目:
</source>
</source>


MonoGameもXamarin.AndroidのViewの一種でした。ならば普通にAndroid.Widget.Layoutに噛ませばいいんじゃね。
ならば普通にAndroid.Widget.Layoutに噛ませばいいんじゃね。


<source lang="csharp">
<source lang="csharp">