DxライブラリAndroid版とC++だけでAndroidアプリ開発はできるでしょうか?
グラフィックなどは特にこだわりません。
Windowsアプリケーションのような機能に特化したものを作りたいです。
開発環境はVisualStudio2017でNaitiveActivity(Android)のプロジェクトにDxLibを追加して作りたいと思っています。
DxLibとC++だけでAndroidアプリは開発できますか?
Re: DxLibとC++だけでAndroidアプリは開発できますか?
出来ますよ。
2017年2月 にバージョン 3.17b から Android に対応 していますね。
https://dxlib.xsrv.jp/
DXライブラリ Android版は、OpenGL ES を使ったAndroidアプリの開発に必ず付いて回るOpenGL ES やAndroid関連のプログラムを使い易くまとめた形で利用できるようにしたC++言語用のゲームライブラリです。(使用する際はC言語の知識だけで大丈夫です、なお Java版はありません)
これによってプログラマーはゲームの本質的なプログラムに専念することが出来ます。かなり本格的なソフト制作からお遊び程度のミニゲーム制作まで幅広くカバーしています!
なお、文字コードの違いを除いてDXライブラリ Windows版と同じ感覚で Androidアプリが開発できますので、Windows用に開発したソフトの移植もある程度容易に行うことができます。
https://dxlib.xsrv.jp/dxdload.html
ここから DXライブラリー Android版 をダウンロードします。
https://dxlib.xsrv.jp/dxinfo.html
DXライブラリの主な特徴を以下に記します。
1.Windowsプログラム( Android版の場合は Androidアプリプログラム )だと意識しなくて済む
2.ライブラリの色が薄い
3.ライブラリのソースコードを公開
まず1の『Windowsプログラム( Android版の場合は Androidアプリプログラム )だと意識しなくて済む』ですが、 これは大抵の同種のライブラリでも同じだと思います。『メッセージループ』だとか、 WindowsAPI云々などとは99%無縁の環境でゲームプログラムが出来ます。 ( Android版の場合も同じく、Androidアプリ特有の『アクティビティ( Activity )』や『ビュー( View )』といったものを意識せずにプログラムを組むことができます。 )
次に2の『ライブラリの色が薄い』ですが、これは何を意味するかといいますと… いわゆるライブラリ独自の『規則』や『法則』が少ないということです。つまり、このライブラリでつちかったゲームプログラム技法は 他の開発環境に移っても通用しますし、逆を言えば他の環境で養ってきたプログラム技法もこのライブラリで通用する率が高いということです。
これは重要なことで、逆に独自性が高いライブラリですと他の開発環境に移ったときに 今まで築いてきた知識が全く役に立たなかったり、そのライブラリを使おうとしたときに多くの 知識と技能を再構築しなくてはならなくなるという事態に陥ります。
3の『ライブラリのソースコードを公開』 は、今では特徴というほどでもありませんが… 見ようと思えばライブラリ内部で何が行われているか確認することができます。
DXライブラリの仕様
必須開発環境及びソフト
Android版
Visual Studio 2015以降 又は Android の NativeActivityアプリをビルドできる開発環境。
使用言語
Android版
C++
( Java 用のDXライブラリ Android版はありません )
2017年2月 にバージョン 3.17b から Android に対応 していますね。
https://dxlib.xsrv.jp/
DXライブラリ Android版は、OpenGL ES を使ったAndroidアプリの開発に必ず付いて回るOpenGL ES やAndroid関連のプログラムを使い易くまとめた形で利用できるようにしたC++言語用のゲームライブラリです。(使用する際はC言語の知識だけで大丈夫です、なお Java版はありません)
これによってプログラマーはゲームの本質的なプログラムに専念することが出来ます。かなり本格的なソフト制作からお遊び程度のミニゲーム制作まで幅広くカバーしています!
なお、文字コードの違いを除いてDXライブラリ Windows版と同じ感覚で Androidアプリが開発できますので、Windows用に開発したソフトの移植もある程度容易に行うことができます。
https://dxlib.xsrv.jp/dxdload.html
ここから DXライブラリー Android版 をダウンロードします。
https://dxlib.xsrv.jp/dxinfo.html
DXライブラリの主な特徴を以下に記します。
1.Windowsプログラム( Android版の場合は Androidアプリプログラム )だと意識しなくて済む
2.ライブラリの色が薄い
3.ライブラリのソースコードを公開
まず1の『Windowsプログラム( Android版の場合は Androidアプリプログラム )だと意識しなくて済む』ですが、 これは大抵の同種のライブラリでも同じだと思います。『メッセージループ』だとか、 WindowsAPI云々などとは99%無縁の環境でゲームプログラムが出来ます。 ( Android版の場合も同じく、Androidアプリ特有の『アクティビティ( Activity )』や『ビュー( View )』といったものを意識せずにプログラムを組むことができます。 )
次に2の『ライブラリの色が薄い』ですが、これは何を意味するかといいますと… いわゆるライブラリ独自の『規則』や『法則』が少ないということです。つまり、このライブラリでつちかったゲームプログラム技法は 他の開発環境に移っても通用しますし、逆を言えば他の環境で養ってきたプログラム技法もこのライブラリで通用する率が高いということです。
これは重要なことで、逆に独自性が高いライブラリですと他の開発環境に移ったときに 今まで築いてきた知識が全く役に立たなかったり、そのライブラリを使おうとしたときに多くの 知識と技能を再構築しなくてはならなくなるという事態に陥ります。
3の『ライブラリのソースコードを公開』 は、今では特徴というほどでもありませんが… 見ようと思えばライブラリ内部で何が行われているか確認することができます。
DXライブラリの仕様
必須開発環境及びソフト
Android版
Visual Studio 2015以降 又は Android の NativeActivityアプリをビルドできる開発環境。
使用言語
Android版
C++
( Java 用のDXライブラリ Android版はありません )
Re: DxLibとC++だけでAndroidアプリは開発できますか?
サンプル
宣言 int DrawCircleAA( float x , float y , float r , int posnum , unsigned int Color, int FillFlag ) ;
円の描画(アンチエイリアス効果付き)
DXライブラリ 関数リファレンスページ
https://dxlib.xsrv.jp/dxfunc.html
宣言 int DrawCircleAA( float x , float y , float r , int posnum , unsigned int Color, int FillFlag ) ;
円の描画(アンチエイリアス効果付き)
#include "DxLib.h"
int android_main( void )
{
unsigned int Cr ;
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1; // エラーが起きたら直ちに終了
}
Cr = GetColor( 0 , 0 , 255 ) ; // 青色の値を取得
// 円を描画
DrawCircleAA( 320.0f , 240.0f , 150.0f , 32 , Cr , FALSE ) ;
WaitKey() ; // キーの入力待ち(『WaitKey』を使用)
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
DXライブラリ 関数リファレンスページ
https://dxlib.xsrv.jp/dxfunc.html
-
- 記事: 26
- 登録日時: 5年前
Re: DxLibとC++だけでAndroidアプリは開発できますか?
回答有り難うございます。
DxLibで大抵の動作はサポートされているようですね。
UI面でもDxLibとC++だけで行けるのでしょうか?
Win32APIであればCreateWindow的なAPIがあれば行けると思うのですが...。
お示しいただいたリンク先を見たところ、UIを作る(ボタンやリストボックスなど)関数が無いようです。
やはりここはJavaで作るしかないのでしょうか?
できればC++だけですべてを行いたいのですが...。
DxLibで大抵の動作はサポートされているようですね。
UI面でもDxLibとC++だけで行けるのでしょうか?
Win32APIであればCreateWindow的なAPIがあれば行けると思うのですが...。
お示しいただいたリンク先を見たところ、UIを作る(ボタンやリストボックスなど)関数が無いようです。
やはりここはJavaで作るしかないのでしょうか?
できればC++だけですべてを行いたいのですが...。