Gå til innhold

Visual Basic Roundup!


Anbefalte innlegg

Videoannonse
Annonse
  • 2 uker senere...

Hallais godtfolk! :) Min første post i denne tråden, faktisk...

 

Uansett. Jeg har laget en skjermsparer i 3D (med god hjelp av TrueVision3D) navngitt "Magnesium Screensaver".

 

 

Skjermspareren er egentlig to programmer:

 

Black Box

Logoen dunker frem og tilbake mellom helt svarte vegger. Ikke veldig spennende i lengden, men det første jeg gjorde i 3D.

 

mgscr-blackbox-small.jpg

 

 

Landscape

Logoen "flyr" over et landskap generert av et 2048x2048 pixlers bilde (derfor den relativt store filstørrelsen). Her kan man også velge å gå over til standard FPS-kontroller (mus og tastatur for bevelgese) ved å trykke veldig kjapt på Enter-tasten. Scrollehjulet justerer gå-hastigheten.

 

mgscr-landscape-small.jpg

 

 

Du kan hente den ned herfra (7.4 MB). :)

 

Hvis du faktisk gidder å hente den ned, så hadde jeg satt veldig pris på å få vite hvilken FPS-rate du oppnådde i "Landscape-modus" og hvilke spesifikasjoner maskinen din har. Jeg skal skrive et litt mer seriøst program i 3D, og har behov for å vite hva fancy funksjoner jeg kan legge inn... ;)

 

EDIT: Skjermspareren krever DirectX 8.1, men det har vel de fleste nå. Har du ikke TV3D SDK installert (som de fleste ikke har), må du velge "Full installation".

EDIT 2: Du trenger .NET Framework 1.1. ;)

Endret av moskus
Lenke til kommentar
Hvis du faktisk gidder å hente den ned, så hadde jeg satt veldig pris på å få vite hvilken FPS-rate du oppnådde i "Landscape-modus" og hvilke spesifikasjoner maskinen din har.

Jeg fikk jevnt mellom 145-190, avhengig av antall synlige objekter. Spesifikasjonene står i brukerprofilen min.

 

Dette ser virkelig lovende ut, forresten! :thumbup:

Lenke til kommentar
Dette ser virkelig lovende ut, forresten! :thumbup:

Takker! :) Relativt kjapp jobb, egentlig...

Fører dine tall inn i "statistikken".

 

Hvis noen andre skulle være interessert ser mine resultater slik ut:

 

Stasjonær:

AMD Athlon64 +3000

1024 GB RAM

nVidia GeForce Ti 4600

FPS: 160 - 180

 

Laptop:

Celeron 2.2 GHz

512 MB RAM

Intel GM 82852/82855 crappy skjermkort

FPS: 80 - 110

 

Stasjonær på jobb:

AMD Athlon64 +3200

512 GB RAM

nVidia GeForce Ti 4600

FPS: 25 - 30 :no:

Lenke til kommentar
  • 2 uker senere...

Takk for tallene, MicrolaXx og luser32! :)

Føres inn i statistikken!

 

(Er faktisk litt overrasket at den i det heletatt kjører på en 850 MHz...)

 

 

Utrolig nice btw :thumbup:

5049826[/snapback]

Takker! :) Gjenstår enda litt. Vil at "logoen" (ringene) skal justere helning etter terrenget, men har ikke hatt tid til å gjøre noe med det i det siste.

Lenke til kommentar

Jeg holder på å lage et lite spill...

 

Det er liksom i pacman style, med juletema.

 

Nissen e pacman og the grinch e ghostene...

 

Koden funker jo greit men det holder ikke må liksom... trenger hjelp

collition detection koden min e avhengig av split string function noe som gjør den skrekkelig tregt.. spesiellt når "ghostene", benytter seg av samme funtion...

 

 

Veggene og selve figurene e labler som jeg endrer x og y verdiene på...

Men uff hastigheten.. :(

 

Jeg skammer meg sånn over koden at jeg ikke tørr å ligge den inn enda... jeg skal ha den ferdig til om jeg så må skulke skolen for å bli ferdig...

 

Noen som vet hvordan jeg kan lage ny collition detection ved bruk av directX eller noe slikt.. det e 2d og alt som beveger seg har 4 kanter så det kan ikke være så vanskelig..

Er det noen andre funksjoner jeg kan bruke som øker hastigheten...

 

Eller jeg er nesten litt lost ... så bare kom med tips...

 

:innocent:

 

Tusen tusen tusen takk for svar

Lenke til kommentar

Ja, det er helt patetisk men jeg må begynne et sted :blush:

 

den grønne tingen e liksom nissen... :blush:

Lage noe bedre når koden bak faktisk funker...

 

screen.JPG

 

Som du ser... dårlig GUI og design men jeg orker ikke og lage det skikkelig får jeg vet at koden bak det faktisk lar seg lage....

 

ta en titt på koden då

 

Public Function goleft(ByVal lbl As Label) As Boolean
       Dim temp() As String
       Dim i As Integer
       Dim good As Boolean
       For i = 0 To walls.Items.Count - 1
           temp = Split(walls.Items(i), "|")
           'collition detection
           If obj.Location.X = CInt(temp(0)) + CInt(temp(3)) Or lbl.Location.X = CInt(temp(0)) + CInt(temp(3)) + speed2 Or lbl.Location.X = CInt(temp(0)) + CInt(temp(3)) - speed2 Then
               If lbl.Location.Y > CInt(temp(1)) + CInt(temp(2)) Then
                   Return True
               ElseIf lbl.Location.Y + lbl.Height < CInt(temp(1)) Then
                   Return True
               End If
               Return False
           End If
       Next
       Return True
   End Function
   Public Function goright(ByVal lbl As Label) As Boolean
       Dim temp() As String
       Dim i As Integer
       Dim good As Boolean
       For i = 0 To walls.Items.Count - 1
           temp = Split(walls.Items(i), "|")
           'collition detection
           If lbl.Location.X + lbl.Width = temp(0) Or lbl.Location.X + lbl.Width + speed2 = temp(0) Or lbl.Location.X + lbl.Width - speed2 = temp(0) Then
               If lbl.Location.Y > CInt(temp(1)) + CInt(temp(2)) Then
                   Return True
               ElseIf lbl.Location.Y + lbl.Height < CInt(temp(1)) Then
                   Return True
               End If
               Return False
           End If
       Next
       Return True
   End Function
   Public Function goup(ByVal lbl As Label) As Boolean
       Dim temp() As String
       Dim i As Integer
       Dim good As Boolean
       For i = 0 To walls.Items.Count - 1
           temp = Split(walls.Items(i), "|")
           'collition detection
           If lbl.Location.Y = CInt(temp(1)) + CInt(temp(2)) Or lbl.Location.Y = CInt(temp(1)) + CInt(temp(2)) + speed2 Or lbl.Location.Y = CInt(temp(1)) + CInt(temp(2)) - speed2 Then
               If lbl.Location.X + lbl.Width < CInt(temp(0)) Then
                   Return True
               ElseIf lbl.Location.X > temp(0) + CInt(temp(3)) Then
                   Return True
               End If
               Return False
           End If
       Next
       Return True
   End Function
   Public Function godown(ByVal lbl As Label) As Boolean
       Dim temp() As String
       Dim i As Integer
       Dim good As Boolean
       For i = 0 To walls.Items.Count - 1
           temp = Split(walls.Items(i), "|")
           'collition detection
           If lbl.Location.Y + lbl.Height = CInt(temp(1)) Or lbl.Location.Y + lbl.Height + speed2 = CInt(temp(1)) Or lbl.Location.Y + lbl.Height - speed2 = CInt(temp(1)) Then
               If lbl.Location.X + lbl.Width < CInt(temp(0)) Then
                   Return True
               ElseIf lbl.Location.X > temp(0) + CInt(temp(3)) Then
                   Return True
               End If
               Return False
           End If
       Next
       Return True
   End Function

 

Det er ikke effektivt nok til å lage noe skikkelig... ikke faen om det e :dontgetit:

 

Sett på hva folk har laget her... og jeg e så :blush: over koden min

Endret av chills
Lenke til kommentar

Chills, det ser jo ganske stilig ut! Men hva er det faktisk som skal skje? (Og kan du reformatere koden ved bruk av dette programmet? Enklere å lese ;))

 

Holder selv på med et julespill... navngitt "Red Sled Down". Idéen er at julenissen har krasjlandet på vei ut til alle ventende barn, og at du må hjelpe han å samle dem opp igjen slik at han kan komme seg videre.

 

Har i tillegg til dette tenkt å gå videre med denne enkle idéen til å inkludere en level der julenissen på bruke kjelken nedover en bakke for å samle presanger, og kanskje en der han må finne reinsdyrene sine igjen.

 

Har du en idé til en level, så si absolutt i fra! :)

 

Problemet er nå å prøve å animere julenissen. Jeg har absolutt ikke peiling på slik animasjon (viser det seg :p, bein, meshes og greier som må kobles sammen).

 

Jeg kan komme til å slite med å bli ferdig til begynnelsen av Desember, så hvis noen vil være med (f.eks. Chills, kanskje?), så er det bare å hive seg på! Men det nevnes at dette er VB.net.

 

 

RedSledDown1.jpg

 

RedSledDown2.jpg

Lenke til kommentar

Igjen :blush: Min kode.. uff eg føler meg som en :wallbash:

 

Faen ditt spill så jo bare :ohmy: , utrolig tøft.

 

Mitt lille spill, nei det skulle være liksom pacman = nissen, ghosts = The grinch...

Men men...

 

Jeg kunne godt tenke og hjelpe til altså... men ja du ser jo mitt nivå... :blush:

 

Du må få med han derre aadnk, han er også veldig tallentfull... men han bruker 6.0

jeg har ingen annelse på hva forskjellen mellom 6.0 og vb.net e :dontgetit:

 

3D er et nivå over det jeg kan... jeg VIL klare å lage noe enkelt 2d som ser tøft ut...

Men så er ikke akkurat split string function en FPS booster heller :!:

 

Så jeg e blank på selve hardcore delene her... forresten Truevision 3D var tøft...

Lastet det ned og så på sample kode... kjempe tøft.. men det vil ta meg tid å sette meg inn i det.. :hmm:

 

Jeg holder fremdeles på med en 24 video tutorial på vb.net, (kommet til cd 9), så tror eg kularen litt med HARDCORE 3D greier :yes:

 

Men jeg GLEDER meg til å se på ferdig resultatet på ditt spill ;)

 

Damn jeg skammer meg plutselig enda mer av å ha postet den koden min :blush:

Lenke til kommentar
Damn jeg skammer meg plutselig enda mer av å ha postet den koden min :blush:

 

Må du gi deg, mann! Du har iallfall skrevet koden fra bunn! Jeg har hjelp av en "enkel å bruke" 3D-motor. Dessuten ville du nok kjenne igjen deler av koden min fra TV3D tutorial'ene... ;)

 

Jeg er heller ikke noen Aadnk (som må være begrepet på en person med stålkontroll på VB), men det funker nå iallfall. Noen ganger. :p

Lenke til kommentar

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...