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!

Werbeanzeige

Techie

Alter Hase

  • »Techie« ist der Autor dieses Themas

Beiträge: 717

Wohnort: Bayreuth

Beruf: Student | Hilfswissenschaftler in der Robotik

  • Private Nachricht senden

1

23.02.2013, 22:03

DirectX in C# einbinden

Hi,
ich habe mir gedacht, dass ich mal zur Abwechslung DirectX in C# nutzen ( für mein Projekt Master of Orbs. Habe zum Glück noch nicht so viel geschrieben ).
Das Problem ich kann die Lib nicht finden, somit nicht einbinden.

Wie kann ich, dass beheben? Soll ich dann die D3dx9.dll's in C:\Windows\System32 einbinden?

Gruß Techie

P.S.: DirectX SDK schon installiert.
I write my own game engines because if I'm going to live in buggy crappy filth, I want it to me my own - Ron Gilbert

Sylence

Community-Fossil

Beiträge: 1 663

Beruf: Softwareentwickler

  • Private Nachricht senden

2

23.02.2013, 22:10

Du kannst DirectX nicht so ohne weiteres aus C# heraus benutzen.

Die Arbeit haben sich aber schon andere Leute gemacht: SharpDX

Techie

Alter Hase

  • »Techie« ist der Autor dieses Themas

Beiträge: 717

Wohnort: Bayreuth

Beruf: Student | Hilfswissenschaftler in der Robotik

  • Private Nachricht senden

3

23.02.2013, 22:24

Komisch in Tutorials heißt es ich soll Microsoft.DirectX.dll einbinden
und

C#-Quelltext

1
2
using Microsoft.DirectX;
using Microsoft.DirectX.Direct3D;

Das solle reichen um mit DirectX unter C# zu arbeiten...

Oder habe ich hier irgendwas übersehen?
I write my own game engines because if I'm going to live in buggy crappy filth, I want it to me my own - Ron Gilbert

Sylence

Community-Fossil

Beiträge: 1 663

Beruf: Softwareentwickler

  • Private Nachricht senden

4

23.02.2013, 22:27

Das ist Managed DirectX (MDX) und wird seit Ewigkeiten nicht mehr weiter entwickelt...
Und die Assemblies sollten eigentlich auch automatisch von Vs gefunden werden, wenn du eine neue Referenz hinzufügen willst, wenn die installiert sind. Kann aber auch sein, dass die mittlerweile rausgeflogen sind.

Nichts desto trotz würde ich dir einfach SharpDX empfehlen. Damit kannst du alle Tutorials, die eigentlich für DirectX aus C++ gedacht sind benutzen, weil es da so gut wie keine Unterschiede gibt.

Techie

Alter Hase

  • »Techie« ist der Autor dieses Themas

Beiträge: 717

Wohnort: Bayreuth

Beruf: Student | Hilfswissenschaftler in der Robotik

  • Private Nachricht senden

5

23.02.2013, 22:36

Mann, das finde ich ja schade :(

Ich würde gerne direkt DirectX nutzen ohne externe Ressourcen. Dann muss das Projekt doch in C++ sein.

Ok vielen Dank Sylence für deine Antworten.
I write my own game engines because if I'm going to live in buggy crappy filth, I want it to me my own - Ron Gilbert

Sylence

Community-Fossil

Beiträge: 1 663

Beruf: Softwareentwickler

  • Private Nachricht senden

6

23.02.2013, 22:37

Wenn du C# benutzt, dann hast du doch eh schon das komplette .NET Framework als "externe Ressource"? Und MDX wär das auch ;)

Techie

Alter Hase

  • »Techie« ist der Autor dieses Themas

Beiträge: 717

Wohnort: Bayreuth

Beruf: Student | Hilfswissenschaftler in der Robotik

  • Private Nachricht senden

7

23.02.2013, 22:45

Ich meine, dass das andere nicht Microsoft kommt :]
I write my own game engines because if I'm going to live in buggy crappy filth, I want it to me my own - Ron Gilbert

Sacaldur

Community-Fossil

Beiträge: 2 301

Wohnort: Berlin

Beruf: FIAE

  • Private Nachricht senden

8

23.02.2013, 22:48

bei SharpDX handelt es sich meines Wissens um einen Wrapper, der "nur" die DirectX-Schnittstelle für .Net Anwendungen zur Verfügung stellt. Im Hintergrund muss natürlich noch ein wenig mehr gemacht werden, da Unmanaged in Managed verpackt werden muss, aber es ist immernoch verhältnismäßig wenig. Du solltest auch nicht unbedingt externe Bibliotheken ausschließen, nur weil du so wenig externes wie möglich nehmen willst, bzw. nur weil du alles selbst machen willst. Ich habe beispielsweise anfangs auch überlegt, ob ich für mein Spiel eine eigene "Scriptsprache" (in dem Fall einfach nur eine Ansammlung von Befehlen und keine komplexeren Strukturen) entwickle, allerdings bin ich davon abgewichen und habe Python verwendet. Würde ich mal die Notwendigkeit besitzen, etwas komplexere Physik zu benötigen, dann würde ich definitiv eine Bibliothek wie Box2D nehmen und gar nicht erst versuchen, es selbst zu implementieren.
Würde es dir nicht darum gehen, ein bestimmtes Spiel damit umzusetzen sondern du einfach nur ein wenig damit rumprobieren willst, dann wäre es durchaus verständlich, wenn du einen etwas schwierigereren Weg nimmst. Du hast allerdings selbst geschrieben, dass du dein Spiel damit entwickeln wollen würdest und deswegen solltest du eher bei dem bleiben, was du bereits verwenden kannst, als komplett neu mit Werzkeugen anzufangen, die du dir erst aneignen müsstest.
Spieleentwickler in Berlin? (Thema in diesem Forum)
---
Es ist ja keine Schande etwas falsch zu machen, als Programmierer tu ich das täglich, [...].

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

9

23.02.2013, 23:17

Damit kann er aber auch einfach selbst auf die Nase fallen. Dann wird ers schon einsehen denke ich;) Wirklich ein Spiel entwickeln zu wollen und dann mit DirectX und C++ anzufangen ist meiner Meinung nach allgemein nicht besonders sinnvoll. Aber die Erfahrung kann man ja selbst machen und dann sehen, dass es so nicht besonders gut geht.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

10

23.02.2013, 23:46

Ich würde gerne direkt DirectX nutzen ohne externe Ressourcen. Dann muss das Projekt doch in C++ sein.

Konzentier dich doch auf das, was du tun willst, nicht wie.
Willst du ein Spiel entwickeln? Dann tu das und lass dich nicht von solchen Lächerlichkeiten abhalten.

Werbeanzeige