سؤال

أنا مهتم بتعلم استخدام برنامج OpenGL وكانت لدي فكرة كتابة متخيل موسيقى.هل يمكن لأي شخص أن يعطيني بعض الإرشادات حول العناصر التي سأحتاجها وكيف يجب أن أتعلم كيفية القيام بذلك؟

هل كانت مفيدة؟

المحلول

إذا كنت تستخدم C++/CLI، فإليك مثال يستخدم شاشة WPF 4 (فورييه؛).

يشير هذا الموقع (مؤرشف) التي تحتوي على قدر كبير من المعلومات حول ما تطلبه، إليك ملخصًا من الصفحة المحددة؛

كيف نقسم الصوت إلى ترددات؟تقوم آذاننا بذلك بالوسائل الميكانيكية ، وعلماء الرياضيات يفعلون ذلك باستخدام تحويلات فورييه ، وأجهزة الكمبيوتر تفعل ذلك باستخدام FFT.

  1. فيزياء الصوت
    • هزاز توافقي
  2. أصوات العينات
  3. تحليل فورييه
  4. ارقام مركبة
  5. تحويل فورييه الرقمي
  6. تحويل فوري مباشر

اهه، لقد وجدت هذا (مؤرشف) بعد بضع دقائق، أصبح محلل C++ أصليًا.تم تضمين الرمز، والذي من شأنه أن يساعدك على الانطلاق والهرب.

نصائح أخرى

طريقتي في إنشاء BeatHarness (http://www.beatharness.com) :

  • تسجيل الصوت في الوقت الحقيقي
  • لديك مؤشر ترابط يقوم بتشغيل FFT على الصوت للحصول على شدة التردد
  • حساب حجم الصوت للقناة اليسرى واليمنى
  • تصفية الترددات في النطاقات (الجهير، الدرجات اللونية النصفية، الثلاثية)

الآن لديك بعض المتغيرات الرائعة لاستخدامها في عرض الرسومات الخاص بك.على سبيل المثال، اعرض صورة حيث يتم ضرب الحجم في الجهير - سيعطيك هذا صورة سيتم تكبيرها مع الإيقاع.من هناك فصاعدا هو خيالك الخاص!:)

هل تحاول كتابة مشغل الصوت/الموسيقى الخاص بك؟ربما يجب عليك محاولة كتابة مكون إضافي لمشغل موجود حتى تتمكن من التركيز على الرسومات بدلاً من التفاصيل الدقيقة لبرامج الترميز وdsp وأجهزة إخراج الصوت.

أعلم أن WinAMP وFoobar لديهما واجهات برمجة تطبيقات للمكونات الإضافية للتصور.أنا متأكد من أن Windows Media Player وiTunes لديهما هذه البرامج أيضًا.ما عليك سوى اختيار مشغل الوسائط والبدء في القراءة.قد يكون لدى بعضها مكونات إضافية لـ OpenGL موجودة والتي يمكنك البدء منها حتى تتمكن من التركيز على OpenGL الخالص.

إذا كنت بعد بعض 3D الأساسي أو تسارع 2D ثم أود أن أوصى شراء نسخة من ديف Astle في "<لأ href =" https://rads.stackoverflow.com/amzn/click/com/1592003699 " يختلط = "نوفولو noreferrer"> بداية برنامج OpenGL لعبة البرمجة "والذي يغطي أساسيات OpenGL في C ++.

وبالنسبة للجزء تحليل الموسيقى، يجب أن تدرس أساس سلسلة فورييه، ثم اختيار تنفيذ خالية من خوارزمية DFFT (فورييه السريع الرقمي تحويل).

يمكنك العثور على تنفيذ خوارزميات FFT وغيرها من المعلومات المفيدة في وصفات رقمية في C كتاب.الكتاب مجاني AFAIK.يوجد ايضا وصفات رقمية في C++ كتاب.

وقد ترغب في النظر في استخدام وظائف الاتحاد الفرنسي للتنس / DCT libvisual على مدى FFTW. انهم أبسط من ذلك بكثير للعمل مع وتوفير البيانات التي من السهل على نحو مماثل للعمل مع من أجل مرئيات توليد. لاعبين عدة وسائل الاعلام والإضافات التصور استخدام libvisual إلى حد ما للصور الخاصة بهم. أمثلة: الطوطم (لاعب)، GOOM (المساعد لالطوطم ولاعبين آخرين)، PsyMP3 الإصدار 2.x (لاعب)

من وجهة نظري ... التحقق من هذا الموقع: http://nehe.gamedev.net/

ومعلومات جيدة حقا، ودروس لاستخدام برنامج OpenGL

وتحرير: http://www.opengl.org/code/

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top