Ursachen für MAV
Übersicht

![]() |
EingeproggtBetreff: Ursachen für MAV |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich hab schon wieder ein Problem ![]() Auf meinem PC läuft alles perfekt und wenn ich es jemandem anderen geb, hat er dauernd MAVs.... Ich hab leider keine Ahnung, warum. Ich weiß, dass MAVs kommen, wenn - Image does Not exist - Array Index out of Bounds - Bei WritePixelFast und ReadPixelfast außerhalb der Buffergröße - Integer divided by zero ist glaub ich auch noch ein MAV Wo noch? Ich find keine möglichen Fehlerquellen mehr... |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn der Jemand anders die Exe ausführt ohne den Ordner in dem sie liegt geöffnet zu haben...? | ||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
Abrexxes |
![]() Antworten mit Zitat ![]() |
---|---|---|
Falscher Zugriff auf Banks und Dims etc | ||
flashmaxel |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Texturen nicht quatratisch oder keine relativen Pfade verwendet? | ||
Real C programmers never die; they cast to void. |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
wenn man mehr Texturen im aktuellen Screen anzeigen will, als in den VRAM passen. Gibt nen MAV mit Fehlerverweis auf RenderWorld() | ||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Eingeproggt |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hab vergessen zu sagen, dass ich in 2D arbeite. Kann der von Dreamora beschriebene Fehler auch bei 2D-Graphik eintreten, wenn sie nicht in den VRAM passt?
Ansonsten schonmal danke, ich hab einiges zum Testen / Überprüfen.... |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
FWeinbehemals "ich" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Bei manchen Graphik Karten Kanst du nur "Normale" Formate für eine Textur nehmen ich glaube Grade nVidia ist da sehr kleinlich da müssen doch alle Texturen immer Rechteckig sein also 32x32 64x64 128x128 Usw. | ||
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
In 2D gelten einige der Dinge die hier genannt wurden nicht.
Die meisten Textureinschränkungen und Probleme entfallen, weil 2D keine Hardware Beschleunigung hat und drum auch nicht an Hardware Beschränkungen scheittert. Was den VRAM betrifft, da bin ich mir nicht sicher ob die DirectDraw Surfaces nicht dennoch in den VRAM passen müssten. Jedoch hast du in pure 2D weniger solcher Probleme weil du garkeine so grossen Grafiken verwenden kannst (oder überhaupt willst), dass du da an Problemgrenzen stösst, denn 500x500 grosse Bilder kannst du dir höchstens für den Hintergrund und ein paar ähnlich grosse Bilder leisten. (Im gezeichneten Zustand meine ich, was du lädst, ist irrelevant, da DX die Bilder im RAM hält und im VRAM ohnehin nur das endet, was effektiv notwendig ist) |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
DrFreak339 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
also das problem mit nvidia karten und nicht x^2 dimensionierten bildern in 2d-modus hatte ich auch. wenn ein bild zB 400x400 oder so war, gabs IMMER nen mav mit "image does not exist" -> bild auf zB 512x512 machen, denn gehts.. ![]() |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Spontan: Du hattest ne 6600GT? ![]() |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
DrFreak339 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ne, 6150 onboard, die wohl verbuggteste graka aller zeiten.. und: ich hatte die neusten treiber installiert | ||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Urgs, ok damit hast du gewohnen ... Onboard Karten.
Naja die 6150 ist als Konkurrenz zur Intel GMA 950 angesetzt worden ... und ist auch ähnlich grottig ... ABER: immerhin befolgt sie die DX7 spezifikationen, die schreiben nämlich ganz klar quadratisch und 2er Potenz vor (ist auch effizienter sie quadratisch zu haben, wie sicher viele mit GF5200 und Radeon 9000, 9100, 9200 bestätigen werden ![]() |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
DrFreak339 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
naja.. sie befolgt nich alles, was DX7 vorschreibt, wie ich in dem "Devil Shadow System"-thread beschrieben hab -> zB keine cubemaps+enbm auf einer mesh. wahrscheinlich hat die graka noch mehr bugs, die mir eben noch nicht aufgefallen sind (und auch nicht mehr auffallen werden, da ich in den PC inzwischen ne x1300 pro eingebaut hab) | ||
![]() |
Eingeproggt |
![]() Antworten mit Zitat ![]() |
---|---|---|
Dieser VidMem lässt mich nicht in Ruhe (und damit verbundene MAVs)
Also ich hab den Fehler bei meinem Freund noch nicht finden können, hab aber nen neuen Verdacht... Hab es heute Abend geschafft, meinem PC einen MAV bei "LoadImage" zu entlocken. Schlicht und einfach, weil das Bild zu groß war, denk ich mal. Jetzt muss ich also (das muss ich sowieso ![]() Damals tröstete ich mich, dass es auf diesen 1 MB nicht so ankommt, aber jetzt würd ich ihn doch gern wegkriegen. (Für all die, die sich jetzt wundern, ob ich da meinem VRAM vergewaltige... Ja, ich teste die Grenzen mal gründlich aus und bin scheinbar an sie gestoßen.) EDIT: Jetzt kapier ich gar nix mehr... 420MB AvailVidMem und trotzdem MAV bei "LoadImage"? (Der Pfad existiert wirklich, und wenn nicht würds den MAV ja erst beim Zeichnen geben) |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
![]() |
Eingeproggt |
![]() Antworten mit Zitat ![]() |
---|---|---|
Sry, dass das ein Doppelpost wird, hatte eigentlich auf Antowrten gehofft. Nunja, ich hab "Neuigkeiten" in meinem Fall:
Mein Freund hat das Spiel nochmal getestet und jetzt gings. Der einzige Unterschied zu vorher ist nach seinen Angaben eine andere WinXP-Version. Kann das die Ursache sein? Ich mein BB läuft doch auf allen XP's? |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Bilder enden erst im RAM, net im VRAM, wie alles was geladen wird und nicht ne Textur mit TextureFlag 256 ist.
Speziell bei Bildern ist es so das sie primär im RAM sind und nur im VRAM, im Unterschied zu den Texturen. Ausnahme ist hier nur die BlitzPlus Flag die es gibt bei LoadImage, die da ein wenig mehr Spielraum einräumt. Und wie kommst du auf 1MB? Das wär dann 256x256 oder? weil die Grösse eines JPGs interessiert niemanden. 32Bit BMP Datei gibt dir die wahre Grösse an, sonst nix. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Eingeproggt |
![]() Antworten mit Zitat ![]() |
---|---|---|
Auf den einen MB kam ich damals, weil ich nach jedem Neu-Laden mir den AvialVidMem anzeigen ließ. Der wurde trotz Freeimage, Delete, CloseFile,... bei jedem Mal um ca. 1 MB weniger.
(Hintergrundanwendungen waren eig nur WMP und alles, was Windows halt so treibt) Aber wenn alles im Ram gehalten wird, wundert mich das schon etwas ![]() Wie siehts mit dem Thema WinXP aus? Danke zwischendurch mal ![]() EDIT: Das mit dem BMP ist mir bewusst. Die Graphiken sind dann riesengroß aufgebläht, aber passen alle noch locker in meinen RAM bzw VRAM. |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
AvailVidMem ist auch mit Vorsicht zu geniessen.
Nur weil du etwas freigibst, wird der VRAM nicht gelöscht. Das macht keinen Sinn. Er wird nur als "nicht mehr genutzt" geflagt, sprich wenn später VRAM gebraucht wird, wird einfach drüber geschrieben. Explizit die Karte locken um den Speicher zu löschen wäre sehr Performance schädigend, da ja nicht nur gelöscht werden muss, wenn du "free ..." machst, sondern auch dann wenn DX merkt dass die Textur / DXSurface garnimmer gebraucht wird. WinXP ist hier eher von Vorteil. Unter Vista hast du das Problem das der Desktop 3D ist, unter den abbandoned OS (Win98, ME) hast du das Problem, dass ihr Speichermanager für RAM grottig ist *weswegen der für XP ja von 2K her kommt* womit du prinzipiell schonma Probleme hast wenn du viel lädst und wieder frei gibst. Speziell bei nicht konstanter Grösse der Daten. Und warum wundert es dich? DXSurfaces die im RAM gehalten werden, müssen da rein passen. Die Auslagern lässt DX glaub nicht zu (bin ich mir net ganz sicher). Wenn du also mehr versuchst im RAM zu lagern (viele haben den Irrglauben man braucht in 2D zb 4000x3000 Pixel Bilder, vergessen dabei aber wieviel RAM die brauchen sprich dass sie bei vielen garnicht gehen können!) als in den RAM passt kann es schonmal zu entsprechenden Effekten kommen. 4000x3000 setzt nämlich ein System voraus, dass aus dem 3D Zeitalter kommt, kein 2D System. Die haben selten mehr als 8-16, bestenfalls 32MB VRAM. Und dort passt das Bild nicht rein. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group