29791 ScanImage67 (2)

29791 ScanImage67 (2)



I '1 ;{*IH :h\W'L\klU TWORZYMY TRÓJWYMIAROWĄ GRĘ, CZ. 1


Uruchamiamy projekt wykorzystujący silnik irrlicht


Zainstalowaliśmy już środowisko programistyczne i wszystlde niezbędne dodatki. Możemy więc przystąpić do uruchomienia jednego z dołączonych do silnika Irrlicht projektów. Dzięki temu dowiemy się, jak wygląda proces kompilowania -wiedza ta przyda się później, podczas tworzenia własnej gry.

1 Uruchamiamy środowisko programistyczne SharpDevelop. Z menu [Ml wybieramy podmenu [otwórz] oraz pozycję |.-g. grojek/Rozwiązanle...!.

2 Z katalogu C:\Irrlicht\Examples.net\ 01.HelloWorld_cs wybieramy plik


nil 0i.HeiioWoild_7.0.cłpioil i klikamy.na przycisk ifltwórz]. W oknje z pytaniem • klikamy

Znateiono Projekt Vtsua) Studlo.fCT, Ceyprzekonwitować go do Sdutton Format 9.00 (Vi5ual Studio 2005)7


na przycisk [Ml- Dzięki temu projekt napisany dla Microsoft Visual Studio .NET zostaje przekonwertowany na format SharpDevelop.


1 Po chwili w panelu • otwarty zostaje I projektU^a Qi.HelioWorld_7.01. Możemy zająć się jego kompilacją i uruchomieniem.


B [25 Rozwiązanie 01.HdloWor1d_7.0 Sgl 01.HelloWorld_7,0 B3 •{•jyi Referencje •fi App.lco )■•••■ gjj Assembłylnfo.cs i-- gjj} Example.cs


4 Najpierw w dowolnym edytorze tekstowym otwieramy do edycji plik E 01.HeltaWotld_7.0.»lnl.


9 Ekspert radzi


Ekspert zachęca do przejrzenia zawartości znajdujących się w projekcie plików. W kolejnym artykule poznamy szczegółową budowę projektu oraz znaczenie poszczególnych plików.


i Popularne silniki gier


Microsoft Visuai Studio Solufcion File, Format yersipn 9.00 ił SharpD.eyalop 2.0.6.1710

Proj oct(*{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}")


"01.HelloWorld 7.0", "Ol.HelloWorld^?.0.csproj "<04123B67-C0'dB-4BD7-86C9-CCCA17503D04)"

EndProjoct Global

GlobalSectlon (TOwtidnConfiguratlbiiglatforniB)

,'Conf igName. o] Any CPU = Debug]Any CPU \

Vconf igName. lj Any CPU = ReleasejAny CPU_/

E n dGlobnISgctłon

GlobalSection(ProjectDępendenoięs) “ postSolution

EndGlobalSection

GlobalSectlon(Extens±bilityGlobąls) “ postSolution

EndGlobalSection

GlobalSection(ExtensibilityAddIns) «* postSolution

EndGlobalSection

GlobalSectlon(ProjectGonfigurationplatforms) = postSolution

{04123B67-C0DB-4BD7-86C9-CCCA17503D04}.DebugIAny CPU.ActiveCfg = Debug|Any CPU {04123B67-C0DB-4BD7-86C9-CCCA17503D04}.Debug|Any CPU.Build.O <* Debug|Any CPU {04123B67-C0DB-4BD7-86C9-CCCA17503D04).Releaae|Any CPU.ActiveCfg « Release|Any CPU {04123B67-C0DB-4BD7-86C9-CCCA17503DO4}.ReleasejAny CPU.Build.O - ReleasejAny CPU {04123B67-CODB-4BD7-86C9-CCCA17503D04}.ConfigName.0 <04123B67-C0DB-4BD7~86C9-CCCA17S03D04}.ConfigName.0 {04123B67-Ć0DB-4BD7-86C9-CCCA17503D04 >.ConfigName.1 {04123B67-CODB-4BD7-86C9-CCCA17503D04}.ConfigName.1

EndGloba1Sect ion EndGlobal


preSolution


Any CPU.Build.O =* DebugJAny CPU Any CPU.ActiveCfg = DebugIAny CPU Any CPU.Build.O » ReleasejAny CPU Any CPU.ActiyeCfg ** ReleasejAny CPU


World_7.0.s!n


Usuwamy z niego wiersze 4 i zapisujemy dokonane zmiany. Jest to niezbędne do poprawnej kompilacji projektu w SharpDevelop.


fcnnroole-c* |

«J > X

|7JJ .01 HHkł'^vkt£v«rc<«

—31-

-3

\r*li\y System:

u*ino Ierilchc; // compiler orcoc here? Look ac che : ualno Irrlicht.Vldeo: uain® Irrlicht.Core:

ualno Irrlicht.Scene;    ______


PROBIEH3 olth thłs source?

Sanie solutlcne vlch miahc help:

-    It your canpiler complalna thec 1Irrlicht1 cannodd che Irrlicht.NIT.dli £lle lin toln\uln32-Vlsu. łn che solutlon browser.

-    It conrpiles, but your program throus en exceptl> "An unhanctlcd excopclon q£ type 1 System.IO.FIleN' Addlttonal mCortnatloni file or osaewbly nsuw* Ir:' vaa not lound.*1

Solutlont You are jnissing the Jlle Irrliche.IiLL. Tok exeniplc uhero cblo program to.


W panelu


klikamy dwukrotnie na


w nazwę pliku i ,31 Exampte.cs] (czyli główny plik źródłowy przykładowej aplikacji). Treść pliku pojawia się w edytorze SharpDevelop f.

6 Musimy teraz zmodyfikować pewien fragment kodu tak, aby skompilowana aplikacja mogła bez problemów załadować modele oraz tekstury. W tym celu linie 45, 46 oraz 47 zmieniamy na f.


7 Modyfikacji dokonujemy również w wierszach o numerach 51 oraz 52. Znajdujący się w nich kod zamieniamy na •:--------------


8 Teraz możemy już skompilować przykładowy projekt. Klikamy prawym przycis-


ITexture texSydney = device.VideoDriver.GetTexture(’£**..Y... \media\sydney .btnp"); ITexture toxWall = devIce.Videppriv.er .GetTexture{0".. \. \.. \.. \ media Wall. bmp");

IToxturo texLogo ■ device.VideoDriver.GetTexture(g*..\roedia\irrlichtlogoaligned.jpg");


Irrlicht.Scene.łAnimatedMesh mesh = device.SceneManager.GetMesh(@    \\.Y..\media\sydney.md2");


i


5

i ' 1 ‘ TT f. .

---

Nazwa silnika Strona WWW

crystai hpace

www.crystalspace3d.org

uoom engme

www.3ddownloads.com/

showfile,php3?filejd=7430

uoom ó engme

http://iddevnetcom/doom3

Irrlicht engine

http://irrlicht.sourceforge.net

darmowy (Open Source)

Silnik o otwartym kodzie napisany w języku C++. Pozwala na tworzenie projektów komercyjnych bez potrzeby publikacji ich kodu źródłowego.

Cena . ■' '■; Najważniejsze cechy

darmowy (licencja LGPL)

Napisany w C++. Ma budowę modułową, która rozszerzana jest poprzez dodatkowe wtyczki.

Ma zaimplementowany silnik fizyczny, wsparcie dla poziomów Quake'a (program konwertujący), dźwięk 20 oraz 30.

darniowy (licencja bNU brl)

Nie jest pełnym silnikiem 30 - ma pewne ograniczenia wynikające z zastosowanych algorytmów. Nie można na przykład tworzyć poziomów, w których jedno pomieszczenie znajduje się nad drugim, Obiekty znajdujące się w polu widzenia gracza to tak naprawdę odpowiednio wyświetlane obrazy 20.

niejawna

W chwili stworzenia wyróżniał się renderin-giem wypukłości (bump mapping) oraz miękkimi cieniami dynamicznymi.

Gry wykorzystujące silnik

Exltium,Vitalstate. BonezAdzentures

Doom, Doom II, HeXen, Heretic, Strife. HacX

Doom3.Quake4

Arena, Road Wars 3D, SlamSoccer2006. Bloodgiver


64 LUTY 2007


eKspert



Wyszukiwarka

Podobne podstrony:
29791 ScanImage67 (2) I 1 ;{*IH :hW LklU TWORZYMY TRÓJWYMIAROWĄ GRĘ, CZ. 1Uruchamiamy projekt wykor
ScanImage67 (2) I 1 ;{*IH :hW LklU TWORZYMY TRÓJWYMIAROWĄ GRĘ, CZ. 1Uruchamiamy projekt wykorzystuj
89782 ScanImage65 (2) ! TWORZYMY TRÓJWYMIAROWĄ GRĘ, CZ. 1Ekspert prezentuje Przygotowujemy środowisk
53244 ScanImage001 (23) o fu
Przykładowe formy dla przemysłu tworzyw sztucznychME PAC CZ -
4 Tworzysz sieciową grę wideo. Co wpływa na twoją decyzję odnośnie wyboru protokołu transportowego d
Skrzynka ?zpieczników w komorze silnika cz 1 Skrzynka bezpiecznikowa A w komorze silnika, modele
198 [3]    Cz. Byrdy: Projektowanie konstrukcji lekkich ścian i dachów z
ScanImage004 28 10/1993 Tablica.1 Parametry regulatora kąta wyprzedzenia zapłonu silnika. Kęt
D (96) korpusu (cz. 36) oraz obudowy silnika (cz. 36a) przetykamy w miejscach oznaczonych punktami n
i INNOWACYJNA GOSPODARKA HZarządzanie dużą infrastrukturą badawczą cz.ll; projekty naukowe wokół
MEPAC CZ ics.Projektowanie CAD, CAM CAD Używamy systemy SOLID WORKS PREMIUM i SOLID WORKS

więcej podobnych podstron