Als «c++» getaggte Fragen

C ++ ist eine statisch typisierte, frei formulierte, kompilierte Mehrparadigma-Programmiersprache für allgemeine Zwecke.

1
Hotplugging Joysticks und Gamepads unter OSX
Ich habe die plattformübergreifenden Joystick-Unterstützungsfunktionen für GLFW, SDL2 und SFML getestet. SDL2 scheint am vollständigsten zu sein, kann jedoch nicht erkennen, wann Joysticks unter OSX ausgesteckt wurden. Für mich ist dies ein grundlegendes Merkmal. Die Unterstützung der Joystick-Erkennung scheint auf dem Mac viel schwächer zu sein als unter Windows. Was …
7 c++  macos  joystick 

2
Griffbewegung mit QuadTree
Ich habe derzeit eine QuadTree, die alle meine Entitäten enthält. Es funktioniert gut und ich habe es ziemlich anständig optimiert, aber das einzige, was weh tut, ist, dass ich fast jeden Frame entferne und in ihn einfüge. Ein kleiner Code: entityMap.remove(it->second, it->second->getLastAABB()); // Removes the entity, getLastAABB is it's last …

3
Terrain & Multi-Texturierung
Ich verwende OpenGL (Version 4.4) (und C ++, wenn das wichtig ist). Ich habe einen Terrain-Renderer erstellt. Das Terrain wird als 3D-Skalarfeld (Isofläche / Voxel) gespeichert. Es wird eine leicht modifizierte Version von Marching Cubes verwendet , um eine Polygonisierung durchzuführen (Konvertieren des Skalarfelds in Dreiecke). Derzeit texturiere ich das …

1
Wie kann ich FBX-Animationen mit dem FBX SDK importieren?
Ich habe die Netze korrekt mit all ihren Eckpunkten, Indizes, UVs und Normalen geladen. Ich versuche gerade, die Animationen richtig zum Laufen zu bringen. Ich habe mir die FBX SDK-Dokumentation mit wenig Hilfe angesehen. Wenn mir jemand beim Einstieg helfen oder mich in die richtige Richtung weisen könnte, wäre ich …
7 c++  directx11  fbx 

2
Was ist der effizienteste Weg, um auf Ressourcen zuzugreifen?
Ich habe einen Ressourcenmanager, der Ressourcen lädt und zurückgibt. Derzeit kehre ich nur shared_ptrsfür die von mir erstellten Ressourcen zurück, denke aber darüber nach, so etwas wie einfache Handles zu verwenden, wobei Sie eine ID erhalten, mit der Sie auf die Ressource zugreifen. Die Gründe sind expliziteres Eigentum und auch …

4
Face-Click-Erkennung (wie in Minecraft)
Ich arbeite an einer Box-basierten Spiel-Engine wie Minecraft und habe mich gefragt, wie ich das "angeklickte Gesicht" beim Platzieren von Blöcken erkennen kann. Ich habe diese Engine in C ++ (DirectX / D3D), C # (XNA) und Flash (away3d & papervision3d) erstellt. Der Engine-Code ist bei jedem ziemlich gleich, aber …
7 xna  c#  c++  3d  directx 


2
Wie funktioniert dies in DirectX 11, dem Batching von Grundelementen für die Leistung, tatsächlich?
Ich scheine das nicht verstehen zu können. Microsoft sagt, dass eine der möglichen Optimierungen für eine Direct3D 11, wenn Grundelemente stapelweise aufgerufen werden sollen. Um beispielsweise 300 Dreiecke zu zeichnen, die jedes Mal die Draw-Methode aufrufen, müssen Sie stattdessen alle gleichzeitig packen und zeichnen. Was ich nicht verstehe, ist, wie …

2
Optimale OpenGL 2D Sprite-Stapelverarbeitung (Best Practice)
Ich arbeite an einer einfachen 2D-Engine mit OpenGL (3.3+) zum Rendern und habe mich gefragt, wie die optimale Methode für das Sprite-Batching aussehen würde. Ich plane, alle Sprites in einen (oder weniger) Texturatlanten zu setzen. Es überrascht nicht, dass jedes Sprite aus 2 Dreiecken und 4 Texturkoordinaten besteht. Nehmen wir …
7 c++  opengl  2d  sprites  rendering 

1
CPU-Auslastung, Game-Loop und Sleep ()
Ich habe auf zahlreichen Diskussionsseiten über dieses Thema gelesen, aber ich kann anscheinend keine eindeutige (aktuelle) Antwort finden, und ich hoffe, dies gibt mir weitere Einblicke: Ich habe den ausgezeichneten Artikel zur Spielschleifenzeit auf Fix your timestep gelesen! Die CPU-Auslastung wird jedoch nicht berücksichtigt, sodass sie zu 100% ausgeführt wird. …

1
Wie weise ist diese Multithreading-Architektur?
Ich schreibe eine Spiel-Engine neu, die ich geschrieben habe, um so viel wie möglich zu parallelisieren. Ich denke darüber nach, Eigenschaften zu erstellen, auf die von mehreren Threads aus zugegriffen werden kann. Alle verwenden Accessoren, die boost scoped_locks verwenden, um Race-Bedingungen zu vermeiden. Angenommen, ich habe einen Charakter mit der …

1
Raumschiff-Interieurs: Wie geht man bei der Implementierung vor?
Ich erstelle ein 3D-Weltraumspiel mit Ogre3D für Grafiken mit C ++ und eine der Funktionen besteht darin, frei im Raumschiff-Interieur herumlaufen zu können, aber ich bin nicht sicher, wie ich es implementieren soll. Folgendes kann ich mir bisher vorstellen: Ein einzelnes Modell des Raumschiffs, dessen Innenraum ebenfalls modelliert, aber irgendwie …

3
C ++ und OpenGL ES: glDrawArrays-Aufrufe sind zeitaufwändig
Derzeit profiliere ich mein iOS. Alle Aufrufe von glDrawArrays sind teuer. Hier ist zum Beispiel ein Screenshot des Rendering-Teils eines Partikelsystems: Wie Sie sehen können, nimmt der glDrawArraysAufruf von dieser Methode 39% der CPU-Zeit in Anspruch. Während andere Anrufe mögen glUniform1iund glBindVertexArrayOESsehr schnell sind. Warum ist nicht glDrawArraysso schnell wie …

2
Wie drehe ich die Kamera zentriert um die Position der Kamera?
Zur Zeit benutze ich gluLook wie folgt: gluLookAt(position.x, position.y, position.z, viewPoint.x, viewPoint.y, viewPoint.z, upVector.x, upVector.y, upVector.z); Wenn Sie mehr Informationen benötigen, wissen Sie nicht, wie ich sie ändern kann, damit sich die Kamera so verhält, als würde sie sich um sich selbst drehen, anstatt sich um ihren Blickwinkel zu drehen. …

3
Was ist eine gute Entitätshierarchie für ein 2D-Spiel?
Ich bin gerade dabei, ein neues 2D-Spiel aus einem Code zu erstellen, den ich vor einiger Zeit geschrieben habe. Die Objekthierarchie für Entitäten lautet wie folgt: Scene(zB MainMenu): Enthält mehrere Entitäten und Delegierte update()/ draw()an jede Entity: Basisklasse für alle Dinge in einer Szene (zB MenuItemoder Alien) Sprite: Basisklasse für …
7 c++  2d  scene  oop  entities 

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.