Gå til innhold

Utvikling av en virtuell verden del II


Anbefalte innlegg

Skrevet

Del 1 har blitt diskutert her:

 

http://forum.hardware.no/viewtopic.php?t=1...r=asc&start=100

 

Denne gangen er det på tide å spør om litt andre spørsmål ;)

Info

Vi jobber med å utvikle et slik system som skal kunne brukes til å kjøre en "mini-matrix" i når/hvis vi kommer så langt. Målet er at dette skal kunne kjøre på en dedikert server, og at informasjon fra serveren blir parset i et eget loggspråk som vi utvikler. For at vi skal kunne overvåke dette her enkelt uten at det skal påvirke load for mye tenker vi å ha en egen klient til dette, slik at vi kan koble oss opp mot serveren for så at klienten parser loggkoden over til et "normalt" språk igjen.

 

1) Språk

Hvilket språk er det best å programmere systemet i, er det evnt best å bruke et eget språk i "kjernen" av systemet og et eget for klientleseren?

 

2) OS

Hvilket os blir best å kjøre for Server edt? Rekner med at en klient versjon blir Windows ;)

 

3) Oppbygning

Hva bør det tenkes spessielt på? Med tanke på at et slik system vil ta en evighet å utvikle ønsker vi kun å starte med selve motoren nå, slik at vi kan bygge ut moduler og legge inn "liv" og verdner etterpå.

 

4) Lenker

Har dere lenker til noen andre sider som har informasjon rundt dette emnet? Andre tanker rundt dette?

 

Istedenfor å starte å klage så bør dere tenke over at dette er noe som vil ta tid og det eneste man kan jgøre er å starte et sted. Og hvis vi er heldige så klarer vi å utvikle det slik at programvaren klarer å holde tritt med maskinvaren. :-)

Videoannonse
Annonse
Skrevet

Det blir et enormt prosjekt, og kommer til å sette store krav til koordinasjon såvel som tekniske evner. Mine personlige anbefalinger (åpne for diskusjon)

 

Språk: c++

 

OS: hipp som happ, jeg ville valgt linux, da dette må bli et open source-prosjekt, og de fleste open source-folk er mer positivt instilt til linux, og har mer erfaring med dette OSet.

 

Tenkes spesielt på: Prosjektstyring, fysikk og ai

 

Lenker: Har dårlig tid nå, skal se hva jeg finner senere.

Skrevet

Takker for tilbakemelding ;)

 

Vi er nå 2 stk som leker oss med det, og vi har en dedikert server som dette kjører på allerede, og jeg rekner med at vi får opp en webside der så fort linjen vår funker :-)

 

Det med at alle skal ha skrivetilgang blir værre, blir nok enklere at vi setter opp et system slik at vi vet hvem som gjør hva etc ;) Først skal vi nå få opp "core" systemet , client leseren samt admin programmet før vi starter med implementerer moduler i coren.

 

Vi starter kun med en server (evnt 3 hvis det trengst) til core for nå og samlet alt et sted. Trengst det mer ordner vi med det ;)

 

core:

kjører "matrixen" enten på et OS eller stand-alone, ingen resultater blir vist der.

 

client:

Leser info fra Core og parser infoen over til et "skikkelig" språk

clientprogrammet kan ikke gjøre noenting mot server utenom å lese

 

admin:

Styrer core gjennom et tekst basert system

Skrevet

Leste hele gammeltråden og dette før i dag, og ble inspirert...

Dette skal jeg iaff følge med på, etterhvert vil jeg kanskje bidra litt også...

  • 2 uker senere...
Skrevet

Har dere sett Unreal Engine, så har dere vel lagt merke til at de har gjort noe utrolig smart der, de har et fil system kalt .u som er moduler som inneholder maskin kode(de kaller det script, men det er ikke det) og et klasse hierarki, dette ville vært svært gunstig, siden serveren da kan oppgraderes uten at klientene trenger det.

 

Her er sånn jeg ville gjort det:

Ha to server maskiner med 1000Mb tilkobling, den ene er dedikert til å rendre verdenen, og den andre sender deler av verdenen til brukerne, ettersom hvor brukerne befinner seg.

 

hovedmaskinen(e)(Matrix) har alle modulene(nevnt tidligere) og rendrer en verden utifra dem, modulene burde kunne endres uten å måtte restarte systemet. Bruker du DLL bruker dere LoadLibrary og UnloadLibrary (eller var det UnloadModule?)

Og vips! et veldig fleksibelt system.

 

Serveren må også sende meldinger om at spesielle filer må kopieres til klientene hvis det trengs(teksturer hovedsaklig, siden geometrien blir rendret på serveren)

 

^ Sånn jeg ville gjort det.

Skrevet

hva skal vi med gigabit servere? ;)

 

vi jobber utifra at serveren(e) gjør alt og klientene får kun logg data, pga praktiske grunner. ;)

 

"serveren" vil nok få nok å gjøre med tiden...

Skrevet

Kan man ikke bruke Fks. Java eller .NET/Mono til klient? (istedet for kun win)

Viss eg ikke tar feil så kan man jo bruke QT(med C\C++)

Skrevet

Det med DLL(SO), jeg tror ikke jeg forklarte det så bra;

Jeg tenkte det slik at dette er noe en utvikler på serveren, som ikke klientene har tilgang til.

At alle modulene(DLL/SO) bare er verktøy som serveren bruker for å lage verdenen og sende den til serveren.

så en har f.eks. et kode vindu i server applikasjonen hvor en skriver et program som blir brukt med verdenen med en gang en kompilerer det.

Det med ustabil kode ville blitt et problem, ihvertfall i Windows, men i Linux kan en vel lage et interrupt eller noe(eller går ikke det i XWindows?)

Det burde jo være mulig å lage en Error Handler selv, men jeg vet ikke hvordan en gjør det(hvis det går)

 

Men slik tenkte jeg at det skulle fungere:

class Object
 class Entity
   class Creature
     class Deamon
     class BaronOfHell
 class GeometricObject
   class Sphere
   class Torus
   class Terrain
 class Sound
o.s.v.

for da kan hver klasse være egne "programmer" og det ville vært nærmere en virtuell verden.

 

Fordelen ville vært at en ikke trengte å restarte serveren hver gang noe skulle forbedres eller legges til, bare laste dll/so på nytt,

I windows er det UnloadModule og LoadLibrary, i Linux har jeg ikke programmert mer enn "Hello World"

Ulempen er ustabil kode, at serveren må restartes allikevel. :gretten:

 

Det er absolutt et interessant prosjekt dere driver med!

Skrevet

Vi kan nok få et par bra tips herfra ja ;)

 

Rekner med at jeg får opp hjemmesiden for prosjektet så fort linjen vår er oppe å kjører, og evnt får klar Rc1 Alfa releaser av klientene slik at man kan koble seg opp mot mainframen vår.

 

Så starter den tunge jobben..

Skrevet

Ang styring så kan jeg se meg ganske enig, ved at vi kan ha noen "vesner" som vi kan bruke i den verdenen som kun kan styres av oss, samt andre som lever for seg selv, fint å ha for debugging etc.

  • 2 uker senere...
Gjest Slettet-66d37
Skrevet

hvordan går prosjektet? spent tilhenger her..kan bidra med hva som helst utenom programmering..

Skrevet (endret)

jeg kunne gjerne tenkt meg og lest den tråden som det ble linket til i første post her (Del 1) men linken fungerte ikke :(

Endret av Eurofighter
  • 2 uker senere...
Skrevet

Og undertegnede savner enda nett (som visstnok skal komme denne uken) før jeg får kommet bra i gang og få opp webserveren samt (matrix) serveren der det er planlagt at ting skal foregå ;)

Gjest Slettet-66d37
Skrevet

trenger man i første omgang tenke på det virtuelle da? går det ikke ann bare å programmere en simulator, så kan man heller lese hva som skjer, lage en oversetter fra en kode til forståelig tekst til oss som ikke har så peil på programmering eller noe..nesten som i matrix når koden faller nedover.

I don`t know..bare noen forslag!

Gjest Slettet-66d37
Skrevet

hehe..har ikke så mye peiling på programmering! bare tenkte på å simulere det du sa, objekter,gravitasjon osv.

bare slang ut noen forslag!

mange bra navn der :)

Fått opp noe hjemmeside?

Skrevet (endret)

Jeg kan nok ikke hjelpe dere serlig men jeg har et forslag, hva med å lage en religion der de største gudene er Mr.Uland og daysleeper?

Endret av robgar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...