Haxe nedir?

Haxe, çapraz derleyiciye sahip açık kaynak kodlu programlama dilidir. Yani Haxe ile yazdığınız programı istediğiniz programlama dilinine çevirip o programlama dilinde derlenmesini sağlayabilirsiniz. Bu yeteneği sayesinde Haxe'de yazdığınız bir oyunu çaba sarf etmeden istediğiniz platforma çıkarabilirsiniz. Haxe'in bu yeteneği ve performansından dolayı Haxe'de oyun yazmak oldukça popülerdir.

Haxe'in Çeviri Yapabildiği Diller ve Platformlar

İsimÇıkışKullanım Alanları
JavaScriptSourcecodeBrowser, Desktop, Mobile, Server
NekoBytecodeDesktop, Server, CLI
HashLinkBytecodeDesktop, Mobile, Game consoles
PHPSourcecodeServer
PythonSourcecodeDesktop, Server
LuaSourcecodeDesktop, Scripting
C++SourcecodeDesktop, Mobile, Server, Game consoles
FlashBytecodeDesktop, Mobile
JavaSourcecodeDesktop, Mobile, Server
JVMBytecodeDesktop, Mobile, Server
C#SourcecodeDesktop, Mobile, Server

Haxe'in Sözdizimi (Syntax) Yetenekleri


Değişken içerisinde 2'ye bölünen tam sayıları oluşturan döngü yazmak.

var evenNumbers = [for (i in 0...100) if (i % 2 == 0) i];

Platform koşuluna göre kod yazabilirsiniz.


#if js
    js.Lib.alert("Hello");
#elseif sys
    Sys.println("Hello");
#end

Okuma ve yazma erişimi özelliği olan fonksiyonlar oluşturabilirsiniz.

public var color(get,set);
function get_color() {
    return element.style.backgroundColor;
}
function set_color(c:String) {
    trace('Setting background of element to $c');
    return element.style.backgroundColor = c;
}

ADT değişkeni oluşturmak.

enum Result {
    Success(data:Array<Int>);
    UserError(msg:String);
    SystemError(msg:String, position:PosInfos);
}

Makro Özelliği

Makro bir önişleyicidir. Yani marko ile yazdığınız kod program derlenmesinden önce derlenir.
Daha fazla bilgi için tıklayın.

Haxe'de Oyun Geliştirmek

Haxe kullanarak oyun geliştirmek istiyorsanız önünüze birçok oyun motoru veya çerçevesi çıkacaktır. Kafanızı karıştırmadan size ihtiyacınıza göre oyun motoru önereceğim.

Heaps.io

Yüksek grafikli 3D bir oyun yapmak istiyorsanız heaps.io mantıklı bir tercih olucaktır. Fakat Haxe'de iyi değilseniz ve ingilizceniz yeterli seviyede değil ise bu işe kalkışmayın. Çünkü heaps.io motoru iyi belgelenmemiştir ve size yardım edecek öğretici veya topluluk yoktur. (2D desteği de var.)

Haxeflixel

Haxeflixel, Openfl ve Haxe'in birleşmiş olduğu bir oyun motorudur. 2D oyun yapmak istiyorsanız ve henüz Haxe'de yeniyseniz Haxeflixel diğer oyun motorlarına nazaran daha fazla belgesi ve öğreticisi vardır. Ayrıca topluluğun da yardım edeceğini düşünüyorum.

Kha

Kha, 3D ve 2D çalışabileceğiniz düşük seviyeli SDK'dır. Bir oyun motoru değildir, Yani kha ile bir oyun yapmak istiyorsanız her şeyi kendiniz yapmanız gerekir. Fakat çok hızlı ve hafiftir. Eğer isterseniz kha kullanarak kendi oyun motorunuzu bile yapabilirsiniz.
Kha kullanarak yapılmış oyun motorları için tıklayın.