[ armilian @ 17.12.2005. 11:51 ] @
Sa jos nekoliko drugara odlucio sam da pravim igricu.Hteo sam prvo tj hteli smo prvo RPG pa smo se odlucili za neku space(svemirsku) strategiju jer mi je lakse napraviti scene i modele u 3dmaxu.Sada trazimo engine za nasu igricu i koji je najbolji za ubacivanje 3dmax modela u engine.Pokusao sam sa blenderom ali nesto ne ide.I koji bi nam engine bio najbolji?Imamo i c/c++ i vb i vb.net programera mene i jos jednog za 3dsmax,mayu i lightwave i jos dvojcu za crtanje i photoshop... tako da znanje nije problem problem je iskustvo.
[ franticnick @ 17.12.2005. 13:24 ] @
Ako znate C++ pogledajte Ogre3D: www.ogre3d.org. Na sajtu cete naci i pluginove za mesh export/import (MAX, Maya, Blender...itd)

Pozdrav,
Nikola.
[ armilian @ 18.12.2005. 15:56 ] @
Ok hvala na pomoci!
[ biotech @ 18.12.2005. 16:56 ] @
www.irrlicht.sourceforge.net

ovo ti je jos jednostavnije resenje,jeste da ogre3d ima kvalitetniji render ali je irrlicht neuporedivo laksi za koriscenje i ima sve sto jedan 3d engine treba da ima....samo jos da napomenem da irrlicht nije game nego 3d engine
[ franticnick @ 18.12.2005. 20:19 ] @
Citat:
biotech: www.irrlicht.sourceforge.net

ovo ti je jos jednostavnije resenje,jeste da ogre3d ima kvalitetniji render ali je irrlicht neuporedivo laksi za koriscenje i ima sve sto jedan 3d engine treba da ima....samo jos da napomenem da irrlicht nije game nego 3d engine


Sta je to kod Ogre-a komplikovano, iliti sta je kod Irrlichta "neuporedivo" lakse za koriscenje? Dosta sam vremena proveo na netu gledajuci open-source 3D engine i ni jedan nije ni blizu dokumentovan i pun tutorijala i primera kao Ogre3D. Da ne pominjem Ogre-ov community.

PS
Ni Ogre3D nije game engine. OGRE = Object-Oriented Graphics Rendering Engine.

Pozdrav,
Nikola.
[ biotech @ 18.12.2005. 20:43 ] @
#include <irrlicht.h>
using namespace irr;

#pragma comment(lib, "Irrlicht.lib")

int main()
{
IrrlichtDevice *device =
createDevice(EDT_DIRECT3D9, dimension2d<s32>(1024, 768), 16,
false, false, false, 0);
device->setWindowCaption(L"Hello World! - Irrlicht Engine Demo");
IVideoDriver* driver = device->getVideoDriver();
ISceneManager* smgr = device->getSceneManager();
IGUIEnvironment* guienv = device->getGUIEnvironment();

IGUISkin* skin = guienv->getSkin();
IGUIFont* font = guienv->getFont("../../media/fonthaettenschweiler.bmp");
if (font)
skin->setFont(font);
IAnimatedMesh* mesh = smgr->getMesh("../../media/athlete.3ds");
IAnimatedMeshSceneNode* node = smgr->addAnimatedMeshSceneNode( mesh );
smgr->addCameraSceneNodeMaya();
while(device->run())
{
driver->beginScene(true, true, SColor(255,128,128,128));
smgr->drawAll();
guienv->drawAll();
driver->endScene();
}
device->drop();
return 0;
}


e vidis ovo je hello world za irrlicht..ovim kodom ucitavas model i prikazujes ga,registrovana je i kamera tipa maya kojom mozes da rotiras objekat...najjednostavniji primer...dali moze da bude jednostavnije od ovoga???

i ja sam dosta vremena proveo trazeci open source 3dengine i ovaj mi je najvise odgovarao+radi na linuxu,ima podrsku za vertex i pixel shadere,ucitava dosta formate ima exportere/importere za mya/max/lightwave....i mnoge druge,ima podrsku za d3d8,d3d9,opengl (doduse 1.4) ima potpuni softverski renderer,hlsl i glsl
itd....dobar je,to sto si ti izabrao ogre neznaci da je bolji od irrlichta
[ std::geek @ 18.12.2005. 22:28 ] @
I jedan i drugi su dobri. Ima jos dobrih endzina, npr. Nebula2 http://nebuladevice.cubik.org/documentation/nebula2/index.shtml
Svaki od ovih "free" endzina ima i dobrih i losih strana. Irrlicht i Ogre su odlicni, ali oba prakticno nemaju level editor. Nebula2 je komplikovanija za upotrebu ali ima dobar level editor i odlicnu podrsku za skriptovanje (LUA, Tcl, Python).

Postoje i jeftini komercijalni endzini koji isto odlican izbor:

1. C4 Engine - $100 po developeru, fantasticne mogucnosti, odlican level editor
http://www.terathon.com/c4engine/index.html

2. Torque Engine - $100 za Indie, $495 za Commercial licence
http://www.garagegames.com/
[ srdjandakic @ 18.12.2005. 23:54 ] @

www.truevision3d.com

$free - za free software
$150 - po naslovu
$500 - unlimited
[ franticnick @ 19.12.2005. 00:13 ] @
Citat:
biotech:
...
e vidis ovo je hello world za irrlicht..ovim kodom ucitavas model i prikazujes ga,registrovana je i kamera tipa maya kojom mozes da rotiras objekat...najjednostavniji primer...dali moze da bude jednostavnije od ovoga???



Moram da priznam je kod koji si napisao prilicno ruzan u poredjenju sa Ogre-ovim. Moras da brines o device-u i pravis while petlju da bi se scena isrtavala. Ogre3D je mnogo vise OO orijentisan pa takve detalje ne vidis (sem ako ne zelis da ih vidis).

Da bi napravio "Hello World!" u Ogre-u dovoljno je da nasledis klasu ExampleApplication, preklopis metodu CreateScene i otkucas otprilike:

Code:

mSceneMgr->setAmbientLight( ColourValue( 1, 1, 1 ) );
Entity *ent1 = mSceneMgr->createEntity( "Robot", "robot.mesh" );
SceneNode *node1 = mSceneMgr->getRootSceneNode()->createChildSceneNode( "RobotNode" );
node1->attachObject( ent1 );



Kao rezultat dobijas scenu gde je registrovana kamera koju mozes da rotiras/pomeras misem i strelicama, ukljuceno svetlo i ucitan model "robot.mesh". (Code je preuzet sa "Ogre Wiki" - http://www.ogre3d.org/wiki/index.php/Basic_Tutorial_1).

Citat:

i ja sam dosta vremena proveo trazeci open source 3dengine i ovaj mi je najvise odgovarao+radi na linuxu,ima podrsku za vertex i pixel shadere,ucitava dosta formate ima exportere/importere za mya/max/lightwave....i mnoge druge,ima podrsku za d3d8,d3d9,opengl (doduse 1.4) ima potpuni softverski renderer,hlsl i glsl
itd....dobar je,to sto si ti izabrao ogre neznaci da je bolji od irrlichta


Sve sto si nabrojao podrzava i Ogre3D. Uz sve to materijale, particles, GUI, texture... itd. mozes da kontrolises uz pomoc skripti ili dinamicki, kako ti volja. Kompletan feature list na: http://www.ogre3d.org/index.ph...k=view&id=13&Itemid=62

Ne vredi da se sad ubedjujemo (a i mozemo:) koji je endzine bolji. Mene je Ogre3D prevashodno osvojio svojom arhitekturom. Kod je pisan u OO maniru (korisceni su patterni i sva najbolja iskustva u projektovanju OO softvera) tako da mozes da konfigurises/menjas Ogre kako ti volja a da pri tom ne pocupas svu kosu na glavi :)
Bas iz tog razloga, ljudi tako lako uspevaju da Ogre3D prebace na PDA, XBox, PS2, Dreamcast...
(http://www.ogre3d.org/phpBB2/viewtopic.php?t=15938&highlight=)

Pretpostavljam da ga ni devmaster.net nije bez veze proglasio za no.1 open-source 3D engine: http://www.devmaster.net/engines/ :) A SourceForge za "Project of the Month" http://sourceforge.net/potm/potm-2005-03.php

Citat:


std::geek: I jedan i drugi su dobri. Ima jos dobrih endzina, npr. Nebula2 http://nebuladevice.cubik.org/documentation/nebula2/index.shtml
Svaki od ovih "free" endzina ima i dobrih i losih strana. Irrlicht i Ogre su odlicni, ali oba prakticno nemaju level editor. Nebula2 je komplikovanija za upotrebu ali ima dobar level editor i odlicnu podrsku za skriptovanje (LUA, Tcl, Python).


Da, i pored gomile korisnih pluginova koje community pravi, jos uvek se ceka na kvalitetan Ogre level editor. Postoji Octopus plugin za Max3D koji je uradila druzina koja pravi Yake Game-Engine (www.yake.org) ali jos ga ne bih nazvao potpuno funkcionalanim.

Pozdrav,
Nikola.
[ biotech @ 19.12.2005. 00:33 ] @
@franticnick

kod je uzet iz prvog primera u dokumentaciji
i da dobro je sto ogre3d podrzava texture,to je stvarno jedna od the most advance featuresa 8-) .... a tu spada i GUI a i particlesi

[Ovu poruku je menjao biotech dana 19.12.2005. u 01:45 GMT+1]

[Ovu poruku je menjao biotech dana 19.12.2005. u 01:46 GMT+1]
[ Mitrović Srđan @ 19.12.2005. 08:17 ] @
ovaj c4 po screensima izgleda jako dobro ali ima bas slab community li se meni cini :)
Zanima me do 1000$ jel moze da se nadje neki pristojan engine + level editor
[ Mitrović Srđan @ 19.12.2005. 09:48 ] @
Zanima me jel ovaj paket vredi :)

Code:

Edition      Standard     Extra    Commercial    Professionell    
Level editor    yes    yes    yes    yes   ,        distributable    
Model editor    yes    yes    yes    yes    
Script editor    yes    yes    yes    yes    
Physics engine    no    no    1 object    unlimited    
Client/Server    no    no    4 players    unlimited    
Zone/Multiserver    no    no    no    yes    
Max screen res    800x600    1024x768    unlimited    unlimited    
Static shadows    16 bit     16 bit    24 bit, smooth    24 bit, smooth    
Dynamic shadows    no    no    yes    yes    
Particle generator    yes    yes    yes    yes    
Beam generator    no    no    yes    yes    
Shaders              no    no    yes    yes    
Mirrors              no    no    no    yes    
Terrain             no    yes    yes    yes    
Geometric LOD    no    yes    yes    yes    
Bones animation    no    no    yes    yes    
Render to textures    no    no    no    yes    
Multimedia player    wav, mid    wav, mid    wav,mid,ogg,CD, mp3,avi,mpg    wav,mid,ogg,CD, mp3,avi,mpg    
File packer    no    no    no    yes    
Watermark *    yes    no    no    no    
SDK license    Open Source    Open Source    Open Source    included    
Startup window    fixed    fixed    fixed    customizable    
Start-Logo    yes    yes    yes    no    
Free updates **    yes    yes    yes    yes    
Support (email)    no    no    3 months    12 months    
Price (US $)    49.-    89.-    199.-    899.-    
Edition upgrade    --    69.-    149.-    799.-    
A5 upgrade ***    --    59.-    99.-    450.-



http://www.3dgamestudio.com/
[ nnn @ 19.12.2005. 10:02 ] @
Ja sam radio sa 3dgamestudio A6pro. I mogu da ti kazem da je dsta jednostavan za upotrebu. Objekte ubacujes direktno iz leve editora, a skripte za njih se pisu veoma lako.
Ima odlican help pun tutorijala i primera...
[ std::geek @ 19.12.2005. 10:41 ] @
Citat:
aleksandrin: ovaj c4 po screensima izgleda jako dobro ali ima bas slab community li se meni cini :)
Zanima me do 1000$ jel moze da se nadje neki pristojan engine + level editor


C4 je komercijalni endzin sto znaci da nema uobicajen "open source" community. Ali sa druge strane imas podrsku od strane inzenjera koji su pravili endzin. BTW glavni "arhitekta" C4 endzina je Eric Lengyel, dobro poznat po masi odlicnih tutorijala, predavanja i knjiga za game dev (izmedju ostalog prilozi za Game Programming Gems 1, 2, 3, 5).
http://www.terathon.com/eric/index.html

Probajte demo
http://www.terathon.com/c4engine/download.html

C4 bi bio moj definitivni izbor sto se tice jeftinih komercijalnih endzina.
[ Mitrović Srđan @ 19.12.2005. 13:58 ] @
@nnn
imas neki shotsa svojih radova
i kako ti se "dojmi" graficki.
Po shotsima trenutnih projekata ne deluje lose.
Uz to sam probao i dva demoa i prilicno je dobro za tu cenu.
kakva su tvoja licna iskustva.
[ nnn @ 19.12.2005. 16:12 ] @
Sto se grafike tice od detalja modela, engine moze da prikaze 100,000 poligona na 70 fps. ja samo se letos lozio napravim igru, pa sa otisao mesecipo dana na more, pa pocela skola...
Sad cu videti na zimskom raspustu da nastavim. Sto se tice programiranje, veoma je jednostavan Evo ti primer mog koda koji pokrece svemirski brod sa ubrzanjem, drzi odstojanje od zemlje metar, vrsi detekciju sudara, pokrece kameru, i napravio minimap u donjem levom cosku koji prati brod:

Code:

action brod 
    {
//Map_Window();
    Map_Cam.visible = on; //ukjucuje kameru mape  
 Map_Cam.size_x = 104;     // postavja parametre  te kamere kamere
 Map_Cam.size_y = 104;  
 Map_Cam.pos_x = 663; 
 Map_Cam.pos_y = 470; 
 Map_Cam.tilt = -90; 
 Map_Cam.Noparticle = On;
 Map_Cam.Audible = Off;
    my.passable = off;  //Stavja da je moj brod neprolazan 
//    phent_settype(my,PH_RIGID, PH_SPHERE );
//    phent_setmass(my,2,PH_SPHERE); 
    //phent_setgroup( my, 1 );
    //ph_selectgroup( 1 ); 
        

while(1) 
        {
            if(key_a)   //definise akcije za tastere 
            {
                    my.pan+=2;
                if (my.roll<30)
                    {
                        my.roll+=2;    
                    }
            }
            else
            {
                if (my.roll>0)
                    {
                        my.roll-=1;    
                    }
            }
        
            if(key_d)
            {
                my.pan-=2;
                if (my.roll>-30)
                    {
                        my.roll-=2;    
                    }
            }
                else
            {
                if (my.roll<0)
                    {
                my.roll+=1;    
                    }
            }

        if (key_s) 
        {
        dist.x=cos(my.pan)*2;
        dist.y=sin(my.pan)*2;
        ent_MOVE(nullvector,dist);    
        
        }
        
        if (key_w) 
        {
        if (force<60)
        {
        force+=0.75;
        }    
        }
            else{
                if(force>0){
            force-=0.25;}
                }
       if(force>0){
        move_mode = ignore_passable + glide;
                dist.x=-cos(my.pan)*force;  //zadajem vrednosti za vektor dist
        dist.y=-sin(my.pan)*force;
        ent_MOVE(nullvector,dist);  /krece se po vektoru dist i vrsi detekciju sudara
        }
    if (camera.pan<my.pan+180)    //ovde stavjam da kamera uvek tezi da bude iza          
                                                  // broda
        {
        camera.pan+=1.90;
    }
        if (camera.pan>my.pan+180) 
    {
        camera.pan-=1.90;
    }    

if (my.z>50) {z.x=0;    //ovde stavjam da mi brod uvek tezi istoj visini
z.y=0;
z.z=-5;
ent_move(nullvector,z);
}

if (my.z<50) {z.x=0;
z.y=0;
z.z=5;
ent_move(nullvector,z);
}
camera.x=my.x+dist.x-cos(camera.pan)*350; //ovde stavjam poziciju kamere
camera.y=my.y+dist.y-sin(camera.pan)*350; // u odnosu na brod
camera.z=my.z+40;                                  // gde je 350 udajenost kamere 
camera.tilt=-10;                                      // od broda
       Map_Cam.X = my.X;                         // ovde stavjam da mapa uvek bude
       Map_Cam.Y = my.Y;                         // iznad broda
       Map_Cam.Z = 1000; 
  
wait(1);      //sacekaj sredeci frejm pa opet odradi isto to                                          

}
}