Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-12-2009
subrul subrul is offline
Registrado
 
Registrado: nov 2009
Posts: 2
Poder: 0
subrul Va por buen camino
cargar sonido con delphi 7

Hola,

a ver si alguien me puede echar una mano.

Soy un estudiante que esta haciendo un juego tipo arkanoid en delphi 7 pero tengo algunas dificultades ya que nunca habia usado este programa ni sabia nada de la programacion en pascal.


En resumen, querria que alguien me ayudara diciendome con que comandos (en delphi 7) puedo cargar un sonido (lo quiero por ejemplo que suena un bip cada vez que la pelota rebota en una pared). He cargado texturas pero no se como hacerlo con sonidos. Se puede cargar un video? en que formatos? y un gif? que comando tengo que poner en el "uses" en caso de poder usar gif (por ejemplo, si cargo texturas jpeg tengo que poner "jpeg" en el "uses").

Otra cosa. Tengo 3 esferas con sus respectivos comportamientos behaviours, y cada vez que una de ellas esta mas abajo de -13 en el eje Y, se destruyen. Lo que quiero es que logicamente cuando la ultima de ellas pase de -13 el juego se acabe. Habia pensado en hacer una variable que cuente, cada vez que una de ellas baje de -13 que el contador se ponga a 1, y cuando el contador llegue a 3 que se acabe el juego, pero no se como hacer lo del contador.


A ver si alguien me puede ayudar. Me gustaria que me dijerais que comandos tengo que poner en el "uses" en caso de necesitarlo, de que clase son las variables que usare (integer, strings, etc...), en que procedures tengo que poner las cosas, etc, ya que soy novato y no tengo idea.


Muchas gracias.


PD: He decidido poner un post porque llevo una semana mirando muchos tutoriales y la mayoria estan orientados a hacer procesadores de texto, aun asi he aprendido "mucho" ya que partia de 0.

copiare mi UNIT1 del programa por si alguien le interesa, a modo de curiosidad (logicamente partiendo de 0 no he podido hacer solo lo que muestro a continuacion, sino con ayuda):







unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, GLWin32Viewer, GLMisc, GLScene, GLObjects, GLODEManager,
GLCadencer, jpeg, VectorGeometry, Keyboard, ExtCtrls, dynode, Menus;

type
TForm1 = class(TForm)
GLScene1: TGLScene;
visor: TGLSceneViewer;
camara1: TGLCamera;
luz: TGLLightSource;
paredtrasera: TGLCube;
bloqueestatico1: TGLCube;
helice3: TGLCube;
helice1: TGLCube;
helice2: TGLCube;
bloqueestatico2: TGLCube;
gestorODE: TGLODEManager;
GLRenderPoint1: TGLRenderPoint;
GLCadencer1: TGLCadencer;
GLDummyCube1: TGLDummyCube;
pelota: TGLSphere;
bloque1: TGLCube;
soporte: TGLCube;
bloque3: TGLCube;
listaUniones: TGLODEJointList;
ladoderecho: TGLSphere;
ladoizquierdo: TGLSphere;
Timer1: TTimer;
paredizquierda: TGLCube;
paredderecha: TGLCube;
techo: TGLCube;
suelo: TGLCube;
pelota2: TGLSphere;
pelota3: TGLSphere;
procedure GLCadencer1Progress(Sender: TObject; const deltaTime,
newTime: Double);
procedure Timer1Timer(Sender: TObject);
procedure gestorODECollision(Sender, Object1, Object2: TObject;
var Contact: TdContact; var HandleCollision: Boolean);

private

colisionAnterior, colisionActual : boolean;
colisionespelota: Integer;

public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.GLCadencer1Progress(Sender: TObject; const deltaTime,
newTime: Double);
var
dinsoporte: TGLODEDynamic;

begin

dinsoporte := soporte.Behaviours[0] as TGLODEDynamic;

if IsKeyDown(VK_LEFT) then
dinsoporte.AddForce(AffineVectorMake(0, 0, -50));

if IsKeyDown(VK_RIGHT) then
dinsoporte.AddForce(AffineVectorMake(0, 0, 50));

colisionAnterior := colisionActual;
colisionActual := false;

if pelota.Position.Y < -13 then
begin

end;


gestorODE.Step(deltaTime)
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
Timer1.Enabled := false;
end;

procedure TForm1.gestorODECollision(Sender, Object1, Object2: TObject;
var Contact: TdContact; var HandleCollision: Boolean);
var
comp1 : TGLODEBehaviour;
comp2 : TGLODEBehaviour;
obj1 : TGLCustomSceneObject;
obj2 : TGLCustomSceneObject;


begin
comp1 := Object1 as TGLODEBehaviour;
comp2 := Object2 as TGLODEBehaviour;
obj1 := comp1.Owner.Owner as TGLCustomSceneObject;
obj2 := comp2.Owner.Owner as TGLCustomSceneObject;


if ((obj1.Name = 'pelota') or
(obj1.Name = 'pelota2') or
(obj1.Name = 'pelota3')) and ((obj2.Name = 'bloque1') or
(obj2.Name = 'bloque2') or
(obj2.Name = 'bloque3'))then
begin
colisionActual := true;
if colisionAnterior = false then

begin
obj2.Tag := obj2.Tag+1;

if obj2.Tag = 1 then
obj2.Material.Texture.Image.LoadFromFile('prueba piedra.JPG')

else

begin
comp2.Manager := nil;
obj2.Visible := false;
end;
end;
end;
end;




end.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Control de Sonido con Delphi EdwinFC API de Windows 2 04-02-2009 14:25:43
sonido y microfono en delphi cmm07 Varios 0 07-04-2008 14:59:18
Cargar dll no delphi 5 Mike Deet API de Windows 0 10-03-2008 02:00:45
transformar datos en sonido con delphi y sacarlos por la tarjeta de sonido Johnnywin Internet 3 21-09-2006 20:49:11
Agregar sonido en Delphi jescar .NET 2 17-09-2006 08:30:04


La franja horaria es GMT +2. Ahora son las 15:52:45.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi