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
Die Stadt ist das Ergebnis einer reinen Simulation. Sie wächst binnen einer Minute so heran.Zitat
sieht es mir stark nach einer reinen Simulation aus, wenn ich aber die Beschreibung lese, habe ich eher ein Bild wie von SimCity im Kopf
C# und XNA Game Studio.Zitat
Was hier noch interessant wäre: Verwendete Sprache, Bibiliotheken, etc.
Die Spiel-Engiene läuft ja schon so weit. Alles schön gekapselt und objektorientiert. Wird leicht mit einer guten Grafik zu verbinden sein.Zitat
Du willst dieses Spiel auf die Beine stellen und da das Tutorial zu Terrains bei dir nicht funktioniert glaubst du dass du es nicht schaffst? Wenn das schon so ein großes Problem ist, dann wirst du bei deinem Spiel noch ganz andere Probleme bekommen.
Quellcode |
|
1 |
Fehler 1 Errors compiling C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1Content\Series4Effects.fx:error X3539: ps_1_x is no longer supportedC:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1Content\Series4Effects.fx(117,23): ID3DXEffectCompiler::CompileEffect: There was an error compiling expressionID3DXEffectCompiler: Compilation failed C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1Content\Series4Effects.fx 117 23 WindowsGame1 |
Quellcode |
|
1 |
Fehler 4 Die beste Übereinstimmung für die überladene Microsoft.Xna.Framework.Graphics.VertexDeclaration.VertexDeclaration(params Microsoft.Xna.Framework.Graphics.VertexElement[])-Methode hat einige ungültige Argumente. C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1\Game1.cs 83 40 WindowsGame1Fehler 1 Der Name "VertexElementMethod" ist im aktuellen Kontext nicht vorhanden. C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1\Game1.cs 23 73 WindowsGame1Fehler 2 Der Name "VertexElementMethod" ist im aktuellen Kontext nicht vorhanden. C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1\Game1.cs 24 87 WindowsGame1Fehler 3 Der Name "VertexElementMethod" ist im aktuellen Kontext nicht vorhanden. C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1\Game1.cs 25 89 WindowsGame1Fehler 6 2-Argument: Kann nicht von "Microsoft.Xna.Framework.Graphics.VertexElement[]" in "Microsoft.Xna.Framework.Graphics.VertexElement" konvertiert werden. C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1\Game1.cs 83 70 WindowsGame1Fehler 5 1-Argument: Kann nicht von "Microsoft.Xna.Framework.Graphics.GraphicsDevice" in "Microsoft.Xna.Framework.Graphics.VertexElement" konvertiert werden. C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1\Game1.cs 83 62 WindowsGame1Fehler 7 "Microsoft.Xna.Framework.Graphics.VertexBuffer" enthält keinen Konstruktor, der 3-Argumente akzeptiert. C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1\Game1.cs 189 35 WindowsGame1Fehler 13 "Microsoft.Xna.Framework.Graphics.VertexBuffer" enthält keine Definition für "SizeInBytes", und es konnte keine Erweiterungsmethode "SizeInBytes" gefunden werden, die ein erstes Argument vom Typ "Microsoft.Xna.Framework.Graphics.VertexBuffer" akzeptiert. (Fehlt eine Using-Direktive oder ein Assemblyverweis?) C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1\Game1.cs 240 54 WindowsGame1Fehler 14 "Microsoft.Xna.Framework.Graphics.IndexBuffer" enthält keine Definition für "SizeInBytes", und es konnte keine Erweiterungsmethode "SizeInBytes" gefunden werden, die ein erstes Argument vom Typ "Microsoft.Xna.Framework.Graphics.IndexBuffer" akzeptiert. (Fehlt eine Using-Direktive oder ein Assemblyverweis?) C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1\Game1.cs 241 54 WindowsGame1Fehler 11 "Microsoft.Xna.Framework.Graphics.GraphicsDevice" enthält keine Definition für "Vertices", und es konnte keine Erweiterungsmethode "Vertices" gefunden werden, die ein erstes Argument vom Typ "Microsoft.Xna.Framework.Graphics.GraphicsDevice" akzeptiert. (Fehlt eine Using-Direktive oder ein Assemblyverweis?) C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1\Game1.cs 236 24 WindowsGame1Fehler 12 "Microsoft.Xna.Framework.Graphics.GraphicsDevice" enthält keine Definition für "VertexDeclaration", und es konnte keine Erweiterungsmethode "VertexDeclaration" gefunden werden, die ein erstes Argument vom Typ "Microsoft.Xna.Framework.Graphics.GraphicsDevice" akzeptiert. (Fehlt eine Using-Direktive oder ein Assemblyverweis?) C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1\Game1.cs 238 24 WindowsGame1Fehler 8 "Microsoft.Xna.Framework.Graphics.GraphicsDevice" enthält keine Definition für "RenderState", und es konnte keine Erweiterungsmethode "RenderState" gefunden werden, die ein erstes Argument vom Typ "Microsoft.Xna.Framework.Graphics.GraphicsDevice" akzeptiert. (Fehlt eine Using-Direktive oder ein Assemblyverweis?) C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1\Game1.cs 211 20 WindowsGame1Fehler 15 "Microsoft.Xna.Framework.Graphics.EffectPass" enthält keine Definition für "End", und es konnte keine Erweiterungsmethode "End" gefunden werden, die ein erstes Argument vom Typ "Microsoft.Xna.Framework.Graphics.EffectPass" akzeptiert. (Fehlt eine Using-Direktive oder ein Assemblyverweis?) C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1\Game1.cs 244 22 WindowsGame1Fehler 10 "Microsoft.Xna.Framework.Graphics.EffectPass" enthält keine Definition für "Begin", und es konnte keine Erweiterungsmethode "Begin" gefunden werden, die ein erstes Argument vom Typ "Microsoft.Xna.Framework.Graphics.EffectPass" akzeptiert. (Fehlt eine Using-Direktive oder ein Assemblyverweis?) C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1\Game1.cs 234 22 WindowsGame1Fehler 16 "Microsoft.Xna.Framework.Graphics.Effect" enthält keine Definition für "End", und es konnte keine Erweiterungsmethode "End" gefunden werden, die ein erstes Argument vom Typ "Microsoft.Xna.Framework.Graphics.Effect" akzeptiert. (Fehlt eine Using-Direktive oder ein Assemblyverweis?) C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1\Game1.cs 246 20 WindowsGame1Fehler 9 "Microsoft.Xna.Framework.Graphics.Effect" enthält keine Definition für "Begin", und es konnte keine Erweiterungsmethode "Begin" gefunden werden, die ein erstes Argument vom Typ "Microsoft.Xna.Framework.Graphics.Effect" akzeptiert. (Fehlt eine Using-Direktive oder ein Assemblyverweis?) C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1\Game1.cs 231 20 WindowsGame1 |
Ne das geht alles.Zitat
http://www.riemers.net/eng/Tutorials/XNA/Csharp/series1.php Dieses Tutorial? Dort wird aber Shaderversion 2.0 verwendet und nicht 1.0.
Ja ich weiß. Ich versuche die Fehler peu-a-peu zu beheben. Falls was übrig bleibt melde ich michZitat
Deine Fehlermeldung kann ich auch nicht ganz verstehen. Die Formatierung ist schrecklich und so ist es kein Spaß da durch zu checken
Ja ich werde sie im Spiel verändern müssen.Zitat
Das mit dem Shader macht Sinn, wenn du die Werte zwischendurch verändern willst, da die Höhe jedes mal neu bestimmt wird. Versuch dich vielleicht erst an einer Version ohne Shader.
C#-Quelltext |
|
1 2 3 4 5 6 |
private void DrawTerrain(Matrix currentViewMatrix) { effect.CurrentTechnique = effect.Techniques["Colored"]; Matrix worldMatrix = Matrix.Identity; effect.Parameters["xWorld"].SetValue(worldMatrix); effect.Parameters["xView"].SetValue(currentViewMatrix); effect.Parameters["xProjection"].SetValue(projectionMatrix); effect.Parameters["xEnableLighting"].SetValue(true); effect.Parameters["xAmbient"].SetValue(0.4f); effect.Parameters["xLightDirection"].SetValue(new Vector3(-0.5f, -1, -0.5f)); //effect.Begin(); foreach (EffectPass pass in effect.CurrentTechnique.Passes) { //pass.Begin(); //device.Vertices[0].SetSource(terrainVertexBuffer, 0, VertexPositionNormalColored.SizeInBytes); device.SetVertexBuffer(terrainVertexBuffer); device.Indices = terrainIndexBuffer; //device.VertexDeclaration = terrainVertexDeclaration; int noVertices = terrainVertexBuffer.SizeInBytes / VertexPositionNormalColored.SizeInBytes; int noTriangles = terrainIndexBuffer.SizeInBytes / sizeof(int) / 3; device.DrawIndexedPrimitives(PrimitiveType.TriangleList, 0, 0, noVertices, 0, noTriangles); //pass.End(); } //effect.End(); } |
Quellcode |
|
1 2 3 4 5 6 |
Fehler 1 "Microsoft.Xna.Framework.Graphics.VertexBuffer" enthält keine Definition für "SizeInBytes", und es konnte keine Erweiterungsmethode "SizeInBytes" gefunden werden, die ein erstes Argument vom Typ "Microsoft.Xna.Framework.Graphics.VertexBuffer" akzeptiert. (Fehlt eine Using-Direktive oder ein Assemblyverweis?) C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1\Game1.cs 242 54 WindowsGame1 Fehler 2 "Microsoft.Xna.Framework.Graphics.IndexBuffer" enthält keine Definition für "SizeInBytes", und es konnte keine Erweiterungsmethode "SizeInBytes" gefunden werden, die ein erstes Argument vom Typ "Microsoft.Xna.Framework.Graphics.IndexBuffer" akzeptiert. (Fehlt eine Using-Direktive oder ein Assemblyverweis?) C:\Users\win7\Desktop\CivSim\WindowsGame1\WindowsGame1\WindowsGame1\Game1.cs 243 54 WindowsGame1 |
Werbeanzeige