Sounds in 3D

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

Flash

Betreff: Sounds in 3D

BeitragSo, März 19, 2006 17:39
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi!

Ich habe seit kurzer Zeit angefangen mit BlitzBasic zu programmieren. Meinem Interesse gilt hier vorrangig dem Sound, da ich selbst blind bin, jedoch gerne Spiele - hauptsächlich mit Audio - erstellen möchte. Darum stelle ich hier mal meine Fragen:
Ich habe bis jetzt immer nur Beispiele gesehen, die ein Bild als Mittelpunkt hatten. Kann ich auch 3D-Objekte erstellen und ihnen einen Sound zuweisen, ohne daß ich ein Bild dafür benötige? Wenn ja, wie würde ein solcher Code aussehen, wenn man das ganze mit der Tastatur steuern würde? Z.B. Das Beispiel mit dem Flugzeug, welches in der Hilfe von BlitzBasic auftaucht. ICh hoffe, ich konnte mich einigermaßen verständlich ausdrücken und bin Dankbar für jede Hilfe, die ich hier kriegen kann.

Ciao!
 

ke^kx

BeitragSo, März 19, 2006 18:06
Antworten mit Zitat
Benutzer-Profile anzeigen
Für Sounds im 3D Raum kannst du ql:createlistener, ql:emitSound und ql:load3dsound benutzen.

Das du blind bist tut mir Leid Sad Aber das hast du wahrscheinlich schon viel zu oft gehört und nervt dich nur Wink Aber mal aus interesse: Wie gehts du dann mit dem PC um? mit Spracherkennung und Sprachausgabe?

Jiriki
http://i3u8.blogspot.com
Asus Striker II
Intel Core2Quad Q9300 @ 2,5 GHz (aber nur zwei Kerne aktiv aufgrund der Instabilität -.-)
Geforce 9800 GTX
2GB RAM
 

D²O

BeitragSo, März 19, 2006 18:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo und Willkommen hier im Forum.

Ja es ist möglich, dazu gibt es die befehle
"Load3DSound"
und
"EmitSound".

Wenn Du es noch nicht gemacht hast, dann lade Dir die Deutsche Hilfe datei
von www.blitzbase.de runter.
Sie ersetzt die Englische Hilfe und es sind sehr gute beispiele dabei,
auch für 3D sound.

Ich wünsch Dir viel spass beim Coden und überrasche uns mit mal mit einem
Soundspiel, ist sicher Interessant.

Hier noch der Beispielcode aus der hilfe.
Code: [AUSKLAPPEN]
GRAPHICS3D 640,480
SETBUFFER BACKBUFFER()

camera=CREATECAMERA()
POSITIONENTITY camera,0,1,-10

light=CREATELIGHT()
ROTATEENTITY light,90,0,0



cube=CREATECUBE()

POSITIONENTITY cube,0,1,0

microphone=CREATELISTENER(camera)
sound=LOAD3DSOUND("media/ufo.wav")

WHILE NOT KEYHIT(1)
   IF KEYDOWN(205)=1 THEN TURNENTITY camera,0,-1,0
   IF KEYDOWN(203)=1 THEN TURNENTITY camera,0,1,0
   IF KEYDOWN(208)=1 THEN MOVEENTITY camera,0,0,-0.05
   IF KEYDOWN(200)=1 THEN MOVEENTITY camera,0,0,0.05
   IF MOUSEHIT(1) =1 THEN EMITSOUND(sound,cube)
   RENDERWORLD
   TEXT 0,0,"Benutze Cursortasten zum Verschieben"
   TEXT 0,20,"Mit linker Maustaste Sound abspielen"
   FLIP
WEND
END
Blitz+; Blitz3d; BlitzMax; GLBasic; Purebasic;
GameMaker Studio 1.4xx; AGK;
 

Flash

Betreff: Danke

BeitragSo, März 19, 2006 18:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi!

Danke erstmal für die Hilfe und die nette Aufnahme. Die Frage mag jetzt dumm klingen und ich kann nur beteuern, ich hab schon ein bißchen Ahnung vom Programmieren:-), aber ich dachte, daß CreateCube usw. zur Grafik gehören.

Ja, die deutsche Hilfe hab ich mir runte geladen. Jedoch nach dem ich die Soundnamen geändert hab, auf ein Geräusch, was ich auf jeden Fall habe und die Anweisung mit dem Bild rausgenommen hab, klappte es nicht, das Programm hatte einen Fehler, wenn ich die Maustaste gedrückt hatte. Dieses Phenomen hatte ich aber auch vor dem verändern des Beispielcodes.

Bis bald!
 

D²O

BeitragSo, März 19, 2006 19:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Kannst Du mal den Code und die dateien dazu hochladen oder mir per mail zusenden ?
d2o@deuteriumoxid.com
Vieleicht hat sich da nur ein kleiner Fehler eingeschlichen.

Ach, und hast Du die neuste BB Version?

Das mit dem createcube ist nur, damit der Sound sich an ein Objekt heftet.
Dieses objekt wird dann mit der tastatur bewegt, analog dazu dann auch der Sound.
Du musst ja nicht die Objekte Texturien sie dienen ja nur als bezugspunkt.
Blitz+; Blitz3d; BlitzMax; GLBasic; Purebasic;
GameMaker Studio 1.4xx; AGK;

x-pressive

BeitragMo, März 20, 2006 0:34
Antworten mit Zitat
Benutzer-Profile anzeigen
Bei den Blitz 3D-Sounds ist das ein ewiges Gefusel, bis man die richtigen Parameter gefunden hat. Und selbst dann bugt es noch oft genug rum und die Lautstärken sind schwer zu steuern (entweder zu laut, oder, in den meisten Fällen, viel zu leise). Bin kein grosser Fan davon.

In den allermeisten Fällen reicht es eigentlich auch, herkömmliche 2D-Sounds zu benutzen. Die Lautstärke eines 2D-Sounds kann man dann ja je nach Entfernung, wenn nötig, via ChannelVolume und einer simplen Distanzformel regulieren.
• BLITZ SHOWCASE:
PARTICLE CANDY • PARTICLE CANDY FOR iPHONE • SPRITE CANDY • DON'T GET ANGRY! 2-3 • CLICK CLACK XL
 

Flash

Betreff: LoopSound in 3D

BeitragMo, März 20, 2006 23:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi!

Ich muß ja bei 3D EmitSound verwenden, um einen Sound in 3D-Effekt abspielen zu können, oder? Aber wie kann ich einen Sound dann noch zusätzlich loopen? LoopSound hat - zumindest bei mir - nicht gegriffen. Danke für Hilfe.Smile

Ciao!

hectic

Sieger des IS Talentwettbewerb 2006

BeitragDi, März 21, 2006 0:45
Antworten mit Zitat
Benutzer-Profile anzeigen
@Flash, LoopSound geht nur, wenn es gleich nach dem laden des Sounds geschrieben steht (bei mir zumindest). Habe mal ein kleines Testprogramm aus der OH modifiziert und funktioniert wunderbar. Hier der Code...Code: [AUSKLAPPEN]
Graphics3D 640,480,0,2
SetBuffer BackBuffer()

camera=CreateCamera()
PositionEntity camera,0,1,-10

light=CreateLight()
RotateEntity light,90,0,0

plane=CreatePlane()

cube=CreateCube()
PositionEntity cube,0,1,0

microphone=CreateListener(camera)
sound=Load3DSound("data\crud.wav")
LoopSound sound

EmitSound(sound,cube)

While Not KeyHit(1)
   If KeyDown(205)=1 Then TurnEntity camera,0,-1,0
   If KeyDown(203)=1 Then TurnEntity camera,0,1,0
   If KeyDown(208)=1 Then MoveEntity camera,0,0,-0.05
   If KeyDown(200)=1 Then MoveEntity camera,0,0,0.05
   RenderWorld

   Text 0,0,"Benutze Cursortasten zum Verschieben"
   If sound=0 Then Text 0,40,"Sound konnte nicht geladen werden!!!"
   Flip
Wend
End
 

Flash

Betreff: Re: Sounds in 3D

BeitragDi, März 21, 2006 4:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi!

Danke, hat tatsächlich funktioniert. Muß wohl was übersehen haben. Danke!

Jan_

Ehemaliger Admin

BeitragDi, März 21, 2006 9:56
Antworten mit Zitat
Benutzer-Profile anzeigen
moin,

Klingt etwas unglaubwürdig, aber ich will trotzdem helfen.
Du fragtest ja, ob man Grafiken für ein Spiel mit 3D Sound braucht.
Leider ja, man muss einen Grafikmodus initialisieren (siehe dazu Graphics3d) aber mann muss keine Polygon Zeichnen, mit Pivot, kannst du viele Objekte machen, ohne dass die Grafikkarte groß etwas berechnen muss.
3D sound in Biltz hat ein Großes Problem, er geht nur Stereo, also 5.1 oder ähnliches ist leider nciht möglich...

ich wünsche trotzdem viel Spaß, beim erstellen deiner Geräcuhkulisse.
between angels and insects

Chester

BeitragDi, März 21, 2006 15:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Entweder ich kann nicht lesen oder in der OH ist ein Fehler:
OH: ql:EmitSound hat Folgendes geschrieben:

Es entsteht ein 3D-Sound, der allerdings nur mit einer speziellen Soundkarte und mit min 4 Boxen realistisch erkling.


MfG
ChEsTeR

P.S.: Mit Dll's ist alles möglich Smile

Jan_

Ehemaliger Admin

BeitragDi, März 21, 2006 15:56
Antworten mit Zitat
Benutzer-Profile anzeigen
hm, da werde ich woll mal windows installieren müssen und es nocmal testen, mit meiner neuen X-FI
wenns darauf nciht läuft, läuft es nirgens.
between angels and insects

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group