OldSchoolHack

Register / Login English

String-Drawing funktioniert nicht

icon Thread: String-Drawing funktioniert nicht

Join Date: Jul 2014

Posts: 12

User-Rating:

3 positive
0 negative
Hi,

zuletzt habe ich OSHGui 2014 verwendet. Dort ging das String-Drawing noch. Ich habe nun die neueste trunk-Version geladen.
Seitdem crasht es bei Strings. Ich vermutete erstmal, dass die Font nicht geladen werden konnte, aber...


TEXT Code:
  1. font = shared_ptr {lineSpacing=0.000000000 pointSize=8.00000000 antiAliased=false ...} [1 strong ref, 1 weak ref] [make_shared]


Ist also alles wie gewollt (Arial, 8.0f, false - genau wie im Sample). Code zum rendern:

TEXT Code:
  1. g.DrawString("bla", Application::Instance().GetDefaultFont(), Drawing::Color::Green(), Drawing::PointF(500, 500));

Hier ist der Call-Stack:
TEXT Code:
  1. meinHack.dll!OSHGui::Drawing::Direct3D9Texture::CreateDirect3D9Texture(const OSHGui::Drawing::Size<float> & size, _D3DFORMAT format) Zeile 269
  2. meinHack.dll!OSHGui::Drawing::Direct3D9Texture::Direct3D9Texture(OSHGui::Drawing::Direct3D9Renderer & _owner, const OSHGui::Drawing::Size<float> & _size) Zeile 173
  3. meinHack.dll!OSHGui::Drawing::Direct3D9Renderer::CreateTexture(const OSHGui::Drawing::Size<float> & size) Zeile 148
  4. meinHack.dll!OSHGui::Drawing::FreeTypeFont::Rasterise(unsigned int startCodepoint, unsigned int endCodepoint) Zeile 193
  5. meinHack.dll!OSHGui::Drawing::Font::GetGlyphData(unsigned int codepoint) Zeile 65
  6. meinHack.dll!OSHGui::Drawing::Font::DrawText(OSHGui::Drawing::GeometryBuffer & buffer, const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & text, const OSHGui::Drawing::Point<float> & position, const OSHGui::Drawing::Rectangle<float> * clip, const OSHGui::Drawing::ColorRectangle & colors, const float spaceExtra, const float scaleX, const float scaleY) Zeile 160
  7. meinHack.dll!OSHGui::Drawing::Graphics::DrawString(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & text, const std::shared_ptr<OSHGui::Drawing::Font> & font, const OSHGui::Drawing::Color & color, const OSHGui::Drawing::Point<float> & origin) Zeile 268
  8. meinHack.dll!DirectXHooks::EndScene(IDirect3DDevice9 * pDevice) Zeile 108

Diese Zeile (264) hier failed wohl und schmeißt die Exception: (Direct3d9Texture.cpp)
TEXT Code:
  1. if (FAILED(D3DXCreateTexture(owner.GetDevice(), static_cast<UINT>(textureSize.Width), static_cast<UINT>(textureSize.Height), 1, 0, format, D3DPOOL_MANAGED, &texture)))
  2. {
  3. throw Misc::Exception();
  4. }



Wie kann ich das beheben?
Die Initialisierungsroutinen sind genau wie im Sample-Projekt (wie damals eben auch schon).

Edit: Gerade noch mal eine Custom-Form erstellt. Wenn ich einen Button adde (ohne Text), geht alles. Sobald ich den Text für den Button setze, crasht es.