Ubuntu 18.04 için Raylib kurulumu

M Serdar Oygen
6 min readMay 11, 2019

Raylib, C99 ile yazılmış, 3D destekli, çoklu platform destekli, basit ve kullanımı kolay bir oyun kütüphanesi. Grafik arayüzü, çeşitli yardımcılar ve sürükle bırak olmadan oyun geliştirmek isteyenler ve oyunumu tamamen ben kodlayayım diyenler için harika bir kütüphane. Çünkü Raylib daha önce kullandığınız oyun geliştirme araçlarına hiç benzemiyor. Şimdi bu kütüphaneyi nasıl edineceğimize bir bakalım. Eğer ondan önce Raylib websitesini ziyaret edip Raylib ile yaplan oyunları incelemek isterseniz buraya tıklayarak ulaşabilirsiniz.

Raylib kütüphanesini edinebilmeniz için bazı araçlara ihtiyacınız var.

1- GCC

sudo apt install gcc

2- make

make Ubuntu ile birlikte gelen bir araç. Ayrıca kurmanıza gerek yok. Ancak olurda make yüklü değil gibi bir uyarı alırsanız(böyle bir uyarı alan var mı onu bile bilmiyorum) terminalinize bunu yapıştırabilirsiniz. Bu komut gcc gibi başka araçlarıda yükler.

sudo apt-get install build-essential

3- git

sudo apt install build-essential git

4- CMake (opsiyonel)

Raylib’i build etmenin birden fazla yolu olduğundan bunu da buraya bırakıyorum.

sudo apt install cmake

Şimdi sırada gerekli kütüphaneler var.

sudo apt install libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev

ALSA ses için, MESA OpenGL için ve X11 ise pencere için.

Raylib’i build etmek.

Raylib kütüphanesini derlemenin üç yolu var.

1- Static Library

2- Dynamic Shared Library

3- Web Library (Raylib’in Linux’tan başka 8 platformda daha çalıştığını söylemişmiydim.)

Kurulumu Ubuntu 18.04 üzerinden anlattığımdan Dynamic Shared Library olarak derleyeceğiz.

make ile build etmek.

make ve CMake dosyaları indirdiğimiz dosyaların içinde mevcut. Geliştirici eklemiş.

ADIM 1

Raylib’i build edebilmek için Raylib GitHub reposundan kaynak kodunu alıyoruz.

git clone https://github.com/raysan5/raylib.git raylib
Bende hali hazırda bir Raylib olduğu için medium dizinine raylib adıyla clone ettim.

Bağlantıdan sonra gelen parametre dizini belirtiyor. Eğer farklı bir dizine indirirseniz buradan sonraki işlemlerde dizini doğru yazmayı unutmayın :).

ADIM 2

clone işlemi tamamlandıysa şimdi “raylib/src” dizinine gidelim.

cd raylib/src/

ADIM 3

Raylib sistemimize make ve CMake dosyaları ile geldiği için make komutu ile derlemeye devam edeceğiz.

make PLATFORM=PLATFORM_DESKTOP RAYLIB_LIBTYPE=SHARED

Dynamic Shared Library yerine başka bir şekilde derlemek isterseniz

Statik versiyon:

make PLATFORM=PLATFORM_DESKTOP

Web versiyon:

make PLATFORM=PLATFORM_WEB

İleride kafanız eserde kütüphanenin tipini değiştirmek isterseniz derlemeden önce

make clean

komutunu çalıştırmayı unutmayın.

CMake ile build etmek.

CMake ile build etmenin bir avantajı var. Eğer olurda yüklenemeyen veya eksik bir paket varsa CMake bunu size söyler. Sizde onları rahatça kurar ve devam edersiniz.

ADIM 1

Raylib’i build edebilmek için Raylib GitHub reposundan kaynak kodunu alıyoruz.

git clone https://github.com/raysan5/raylib.git raylib
Bende hali hazırda bir Raylib olduğu için medium dizinine raylib adıyla clone etmiştim.

Bağlantıdan sonra gelen parametre dizini belirtiyor. Eğer farklı bir dizine indirirseniz buradan sonraki işlemlerde dizini doğru yazmayı unutmayın :).

ADIM 2

clone işlemi tamamlandıysa şimdi “raylib” dizinine gidelim.

cd raylib
Bende hali hazırda bir Raylib olduğu için medium dizinine raylib adıyla clone ettim.

ADIM 3

build dizinini oluşturup o dizine gidelim.

mkdir build && cd build

ADIM 4

cmake kullanarak Raylib’i derleyelim.

cmake -DSHARED=ON -DSTATIC=ON ..

ADIM 5

make komutu ile dosyaları build edelim.

make

ADIM 6

build ettiğimiz dosyaları çalıştıralım.

make install

Artık Raylib kütüphanesini kullanabilirsiniz. Tabi projenizi build etmeyi biliyorsanız. Eğer hala https://www.raylib.com/ adresindeki projeleri ve örnekleri kurcalamadıysanız kendi bilgisayarınızda inceleyebilirsiniz. Raylib kendi örnek ve oyunlarıyla geliyor demiştim. Şimdi onlara bakalım.

Örnekleri ve oyunları build etmek.

Evet, kaynak kodunu indirdiğiniz için build etmeniz gerek. (Her şeyi okla gösteren arayüzleri özlemediniz umarım. Daha çok erken :) )

Örnekler için

Önce “raylib/examples” dizinine gidin.

cd raylib/examples

Eğer Raylib’i CMake yardımıyla build ettiyseniz bu satırın altındakini,

make PLATFORM=PLATFORM_DESKTOP

make yardımıyla build ettiyseniz de bu satırın altındaki komutu çalıştırın.

make PLATFORM=PLATFORM_DESKTOP RAYLIB_LIBTYPE=SHARED

Oyunlar için

Önce “raylib/games” dizinine gidin

cd raylib/games

Eğer Raylib’i CMake yardımıyla build ettiyseniz bu satırın altındakini,

make PLATFORM=PLATFORM_DESKTOP

make yardımıyla build ettiyseniz de bu satırın altındaki komutu çalıştırın.

make PLATFORM=PLATFORM_DESKTOP RAYLIB_LIBTYPE=SHARED

HALA PENCERE FALAN AÇILMADI NEREDE BU ÖRNEK OYUNLAR! BEN OYUNUMU NASIL YAPACAĞIM!

Diyenleri duyuyor gibiyim. İşte o an…

“raylib/games” dizinine gidin.

cd raylib/games

“ls” komutunu çalıştırıp ilginizi çeken bir oyun var mı diye bakın.

ls

Ben orada bir “space_invaders” gördüm. Bir bakalım.

Bu komutla sonunda grafik arayüzü olan, build edilmiş, birilerinin çıplak elleriyle yazdığı Space Invaders oyununa ulaşacağız.

./space_invaders

O da ne bir şey açıldı!

İşte örnek olarak konulan oyunlardan biri. “examples” dizinindeki örnekleri de bu şekilde çalıştırabilirsiniz.

KENDİ OYUNUNUZU ÇALIŞTIRMA VAKTİ!

Örnek olsun diye benim fizik dersindeki bir problemin çözümü için eğlencesine yazdığım bir projeyi çalıştıralım. Bu proje bir oyun değil ancak Raylib kullanarak oluşturduğum arayüze sahip bir program. Fikir vermesi açısından göstereceğim.

Problem: elektrik alan ve zaman bilgileriyle şekilde(uygulamada var) gösterilen elektrik alanda elektronun hızını ve konumunu hesaplayınız.

NOT:

Sonuçlar veya istenilen şey fizik bilen birinin istediği gibi çıkmayabilir. NO LİNÇ YES SHARING.

https://www.raylib.com/ adresindeki örneklere ve oyunlara baktınız, az buçuk fikriniz var ve kendi oyununuzu ya da deneme için örneklerden birini yazdınız. Şimdi oyununuzu derleyip çalıştırma vakti.

ADIM 1

Oyununuzun CMake dosyası gibi derlerken komutları ve gcc için kullanılan parametreleri otomatik olarak ekleyen bir parçası olmadığı için bir build scripti yazacağız.(Yeter artık yine mi birşeyler yazıp derleyeceğiz demeyin Raylib böyle bir kütüphane. Dümdüz C yazıyorsunuz. C dilinden ilerlemem sizi yanıltmasın https://github.com/raysan5/raylib/blob/master/BINDINGS.md adresinden Raylib’in desteklediği diğer dillere ulaşabilirsiniz. COMMUNITY POWER!)

Oyununuzu “raylib/projelerim” gibi bir dizine atın.

Daha sonra projenizin olduğu dizinde aşağıdaki komutları çalıştırıp bir build scripti oluşturun ve execute edebilmek için gerekli izinleri verin.

touch build.shchmod 700 build.sh

build.sh dosyasını gedit ile açın ve içine

set -e    # if error, stop the build
cc -g -std=c99 -c -I /opt/raylib/src projeadi.c -o projeadi.o
cc -o projeadi obj/projeadi.o -s -Wall -std=c99 -I/opt/raylib/src -L/opt/raylib/release/libs/linux -lraylib -lGL -lm -lpthread -ldl -lrt -lX11
./projeadi

komutlarını yapıştırın. “projeadi” yazan yere kendi projenizin adını yazın.

Herşey hazırsa aşağıdaki komutla oyununuzu çalıştırabilirsiniz.

sh build.sh
Benim projem için çalıştırma aşamaları

Komutu çalıştırdıktan hemen sonra pencereniz açılacak.

Aşağıdaki ekran görüntüsü benim projeme ait.

Artık Raylib ile istediğiniz oyun fikrinizi C kodlarıyla, herhangi bir yardımcı olmadan gerçekleştirebilirsiniz!

Gelecek yazılarım için beni sosyal medya hesaplarımdan takip etmeyi unutmayın! Yazımdaki hataları sosyal medya hesaplarımdan bana iletmeye çekinmeyin. Görüşmek üzere…

Instagram

Twitter

--

--