Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Suchergebnisse

Suchergebnisse 1-20 von insgesamt 117.

Werbeanzeige

06.04.2006, 08:48

Forenbeitrag von: »Jens«

Sound-Daten in Echtzeit abrufen und grafisch darstellen

Hallo, ich möchte verschiedene 3D-Soundbuffer gemeinsam abspielen und die Mischung der Sounddaten abrufen, damit sie grafisch dargestellt werden können. Unterm DX9-SDK habe ich ein Beispiel gefunden (CaptureSound), bei dem Sounddaten aufgenommen und in eine Datei geschrieben werden. Dort werden wiederholt blockweise Daten abgeholt und nacheinander in die WAVE-Datei geschrieben. Diese Daten sind gut auszuwerten, grafisch darzustellen, aber ich möchte nicht erst einen Sound capturen, der ja bereit...

03.04.2006, 13:17

Forenbeitrag von: »Jens«

Hüllenkurve über einen 3D-Soundbuffer

Danke Euch, Hallo David, einen zweiten Thread wollte ich dafür nicht nehmen, weil ich sonst wieder mit CriticalSection sämtliche globale Objekte, auf die ich zugreife, locken müsste. Das erspare ich mir in dieser Anwwendung, in dem ich SetVolume in OnIdle von CWinApp (MFC) in bestimmten Abständen (iCount == 0 || iCount == 1) durchführe. ------- mmm. also das ganze in OnIdle durchzuführen, war ne doofe Idee von mir. Die Zeitabstände sind unberechenbar, weil die MsgPump logischerweise einige ander...

03.04.2006, 11:01

Forenbeitrag von: »Jens«

Hüllenkurve über einen 3D-Soundbuffer

Hallo, ist es irgendwie möglich, die Amplitude beim Abspielen eines Soundbuffers (DirectSound) durch eine Hüllenkurve (wie bei einem Synthesizer) zu beeinflussen? In den DX-SDK-Samples habe ich die Beispiele Crossfade und Amplitudenmodulation entdeckt, aber keines bringt mich wirklich weiter, denn beim Modulationseffekt kann man nur angeben, ob in Rechteck oder Dreieckskurve moduliert wird und beim Crossfade-Bsp wird DirectMusic und MIDI verwendet. Ich habe aber einen WAVE-Sound in einem Buffer ...

17.03.2006, 00:53

Forenbeitrag von: »Jens«

lesend auf den PrimarySoundBuffer zugreifen

Hi Leute, ich habe noch die erste Auflage des Buches 3D SP, reicht mir immer noch ;-) Gut ist, dass schon dort auch auf 3D-Sounds eingegangen wird. Ich habe aber das Problem, nicht herauszubekommen, wie nun der PrimaryBuffer ausgelesen werden kann, denn diese Sounddaten möchte ich grafisch darstellen. Im MSDN habe ich eine Methode ReadBuffer entdeckt, die aber irgendwie nur unter VB verfügbar sein soll (seltsam). In den j-com-classes ist nur noch die writeBuffer verfügbar und für C++ überhaupt k...

18.12.2003, 09:05

Forenbeitrag von: »Jens«

erst Destroy, dann PostQuitMessage

im MSDN gibt es ein gutes Beispiel dazu: Quellcode 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 case WM_CLOSE: // Create the message box. If the user clicks // the Yes button, destroy the main window. if (MessageBox(hwnd, szConfirm, szAppName, MB_YESNOCANCEL) == IDYES) DestroyWindow(hwndMain); else return 0; case WM_DESTROY: // Post the WM_QUIT message to // quit the application terminate. PostQuitMessage(0); return 0; Das bedeutet, dass erst die WM_CLOSE-Message kommt, dadurch DestroyWindow aus...

12.12.2003, 13:59

Forenbeitrag von: »Jens«

im Dialogfenster oder nich?

schau Dir mal die EM_-Nachrichten an. Im MSDN stehen alle, die Du brauchst, um ein Edit-SteuerCtrl vollständig zu manipulieren. Und um einfach nur den Text herauszuholen (wie CuTeX0r bereits erwähnte): GetWindowText(hWnd, // handle to edit window pstrText, // buffer iBufLen)

12.12.2003, 13:47

Forenbeitrag von: »Jens«

besser ists...

eine Funktion für Win: Quellcode 1 2 3 4 5 6 7 8 GUID guid; if (SUCCEEDED(::CoCreateGuid(&guid))) strGUID.Format("%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X", guid.Data1, guid.Data2, guid.Data3, guid.Data4[0], guid.Data4[1], guid.Data4[2], guid.Data4[3], guid.Data4[4],guid.Data4[5], guid.Data4[6], guid.Data4[7]);

12.12.2003, 12:22

Forenbeitrag von: »Jens«

alles wieder klaro

Danke für Eure Hilfe. Habe mich mit der Kameraposition a bissle verschätzt. Sie war falsch -> zu weit oben. Das mit der Division durch zwei soll einfach nur veranlassen, dass bei Änderung der Position, die Richtung nicht direkt auf den Ursprung geleitet wird, sondern immer ein bisschen mehr in nach hinten (natürlich in Abhängigkeit von Pos)

08.12.2003, 13:01

Forenbeitrag von: »Jens«

DX-Licht -> Spotlight scheint nicht in die richtige Richt

Hi Leute, lange nix gehört von Euch ;-) Wenn ich ein spotlight erzeuge: Quellcode 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ZeroMemory(&light, sizeof(light)); light.Type = D3DLIGHT_SPOT; light.Range = 10.0f; light.Diffuse.r = 0.5f; light.Diffuse.g = 1.0f; light.Diffuse.b = 0.5f; light.Position = D3DXVECTOR3(-1.0f, -1.0f, -2.0f); light.Direction = D3DXVECTOR3(-light.Position.x/2.0f, -light.Position.y/2.0f, -light.Position.z/2.0f); light.Theta = 0.5f; light.Phi = 1.0f; light.Falloff = 1.0f; light.Attenu...

23.11.2003, 22:54

Forenbeitrag von: »Jens«

und das schlimmste ist ja...

stellt Euch mal vor, Ihr schreibt ein kleines Proggi, welches schon Jahre im Web herumhängt. Nun kommt einer daher, der die Idee hatte, genau dieses Verfahren zum Patent anzumelden!!! Und nun muss der Autor zahlen! Ist das toll? Das finde ich gerecht. :-( Die FFII.org hat eigentlich schon lange aktiv dagegen angekämpft, aber ich weiß nicht so richtig, wie weit die und deren Gehilfen gekommen sind? Gibt es da noch Hoffnung?

27.10.2003, 21:20

Forenbeitrag von: »Jens«

ja stimmt...

... und zwar genau im umgekehrten Verhältnis.

10.10.2003, 16:48

Forenbeitrag von: »Jens«

genau, man lernt nie aus! ;-)

ObjectPolling? noch nie gehört. Weiß nicht, ob ich das gemeint habe, aber is wurscht :-) Aber das mit dem Objektpolling (warum eigentlich Polling?) ist ja echt interessant. Super Link :huhu: So nun habe ich mit Pooling aufm anderen Monitor angeschaut ;-) ach mist, ich kann ja nicht mal lesen...

10.10.2003, 09:35

Forenbeitrag von: »Jens«

Kopierkonstruktor

Hi DragonMaster, jetzt verstehe ich nicht ganz, warum das mit Zeigern nicht geht: foo(const vector* pVec); foo(&vector(2.0f,1.0f); Es wird sicher doch ein temporäres vectorobjekt erstellt, welches dann im Kopierkonstruktor entweder eine Referenz oder eben eine Adresse darauf erhält. Übrigens, ich mach für jede eigens erstellte Klasse immer eine Methode Assign(const CObj* pObj) als Kopiermethode rein. Die wird im leeren Konstruktor mit Parameter NULL (Init) und im Kopierkonstruktor mit der Adress...

10.10.2003, 00:39

Forenbeitrag von: »Jens«

Pointer oder Referenzen

also ich habe noch nie ein Argument dafür oder dagegen gehört, aber ich benutze Referenzen dann, wenn z. B. ein Parameter unbedingt übergeben werden soll, der in der Funktion gesetzt wird. Pointer hingegen können auch NULL sein (z. B. Standardparameter NULL), also sollte man sie mit ASSERT oder if (ptr != NULL) abfragen.

07.10.2003, 21:18

Forenbeitrag von: »Jens«

möchte wissen, wie dieser Filter funzt...

...wirklich guddi, aber die ziehen alle erst mal die gesamten Emails (Hintergrundmodus ist aber gut!). und was sagt Ihr eigentlich hierzu: http://www.issb.de/ProdukteAS.asp OK, der Filter ist nicht ganz ausgereift und es ist (noch) kein Proxyserver drin, aber das Dingenz wurde für langsame DFÜ-Verbindungen gemacht (z. B. ISDN, Modem). Es werden max. 10 KB Mail gezogen. Ich hatte keine Luste mehr, 200 Emails mit 150 KB Virus herunterzuziehen, die erst dann im Papierkorb landeten...

07.10.2003, 15:46

Forenbeitrag von: »Jens«

echt guter Tipp

danke Dir. Aber auch das finde ich gut: www.spamihilator.com Habe festgestellt, dass das Web voller AntiSPAM-Tools steckt, von denen viele Spitze sind...

28.09.2003, 19:21

Forenbeitrag von: »Jens«

ganz einfach

übergib den binarycode einer routine, die daraus hex oder ascii macht. z. B. mit MFC: routine(...) { ... strTemp.Format("%02X", pstrSource[ix]); strAscii += strTemp; ... } Damit ist der Str genau doppelt so lang, aber das ist notwendig. beim Auslesen genau anders herum. dabei brauchst Du diese Routine: int ChFromHex(LPCTSTR lpch) { int i = 0, cch = 2; char ch; while (cch-- > 0) { ch = *lpch++; if (ch >= 'A') i = (i*16) + (ch - ('A'-10)); else i = (i*16) + (ch - '0'); } return i; } wenns für Win ...

21.09.2003, 11:28

Forenbeitrag von: »Jens«

stimmt

jetzt fehlt mir gerade das KO-Argument gegen Webserver (als Spieleserver) ein :crying: Der Webserver kann natürlich nicht aus eigenem Antrieb senden, sondern immer nur antworten. Somit wäre eine Art Polling notwendig. Und das würde sich sicher nicht günstig auf die Gesamtperformance auswirken. Es ist war, ein eigener Server mit dem Listener und ein paar "Rüsseln", die er pro Connection ausstreckt ;-) ist wohl doch notwendig.

21.09.2003, 02:09

Forenbeitrag von: »Jens«

in C++ net, aber...

in C++ macht es wirklich keinen Sinn, aber stell Dir vor, Du willst einem Formular einer Webseite Daten in einem Feld übergeben, welches Du noch gar nicht kennst oder eine Funktion aufrufen, die in sich in einem nicht bekanntem Frame befindet... Da hilft eval (JavaScript). Denn in JavaScript hat man nicht andere Möglichkeiten, wie in C++. Wolln mal sehen, was er eigentlich will... :roll:

21.09.2003, 01:21

Forenbeitrag von: »Jens«

wirklich interessant

wer hat vonn Kollisionserkennung geredet? Das macht alles der Client! Übermittelt werden nur Positionen und Modelarten. Und die Kommunikation mit dem Webserver muss nicht immer über Scriptsprachen stattfinden! Gerade die Kommunikation mit Webservern haben mir die Erfahrung gebracht, dass gerade dieser in der Lage ist, sehr viele gleichzeitige Nutzer zu verarbeiten. Übrigens geht es nicht darum, Webspace anzubieten, sondern lediglich darum, einen Webserver zur Verfügung zu stellen, der alleine nu...

Werbeanzeige