SoftPixel Engine (neu: SVN Repository & CMake files)



  • LukasBanana schrieb:

    Das mit der Textbreite stimmt, das hat mir bisher auch schon Probleme in der GUI bereitet.
    Allerdings: warum ist für Grafikanwendungen Unicode so wichtig? 😕

    mfG

    ist es nicht unbedingt, vereinfacht aber vieles. du musst dich nicht mit codepages und sonstwas rumschlagen. angenommen irgendjemand möchte einen ingamechat für sein programm auf der basis deiner engine erstellen. erwarte nicht, dass jeder russe englisch kann, geschweige denn russisch mit dem unserigen alphabet schreiben will (wenn das überhaupt geht? :P). um eben nicht den codepagekram benutzen zu müssen, verwende von vornherein unicode, das macht das leben einfacher 🙂



  • Also gut, mal sehen wie sich das auch unicode umschreiben lässt.
    Ist bloß etwas nervig andauernd vor jeden Text 'L' schreiben zu müssen.
    Und mit Unicode muss man vür allerart Sonderzeichen (z.B. €) HEX '\u00FF' oder sowas schreiben.
    Die std::string Klasse arbeitet auch nicht mit Unicode, oder?



  • LukasBanana schrieb:

    Die std::string Klasse arbeitet auch nicht mit Unicode, oder?

    Nein, da sie ein typedef auf std::basic_string <char> ist. std::wstring ist ein typedef auf std::basic_string <wchar_t>.



  • naja, unicode hat eigentlich nichts im normalen code verloren. normalerweise gibt es irgendwo ne lokalisierungslib die normalen text dann in unicode wandelt und das gibt man dann aus.
    Oft nutzt man ein externes Tool, das erlaubt es english->andere sprache in eine uebersetzungsdatenbank einzutippen.
    Ausser den Zeichen gibt es noch andere dinge die man bei lokalisierungen beachten muss und die ueberall im code reinzuhacken waere wie jede API ohne wrapper zu nutzen.
    (mich wuerde kyrillisch weit weniger interesieren als Kanji, weil es nicht vom codeschreiber, sondern vom programm nutzer abhaeng, welche sprache eingestellt werden wird).

    dein stichwort fuer google oder sourceforge ist l10n tools bzw lib;)



  • ich bezog mich da hier aber eher erstmal auf den fontrender code, nicht das dass jetzt missverstanden wird 🙂
    ich meine WM_CHAR benutzt utf-16 und WM_UNICHAR utf-32 für den codepoint, unter linux mit X ist der KeySym heutzutage per default ucs4 afaik. in heutigen truetype fonts ist unicode grundsätzlich enthalten, wenn auch nicht alle glyphen, indiziert mit entsprechendem codepoint. um also kyrillisch oder kanji (was ist das?, lol) anzeigen zu lassen ist keine große zauberkunst notwendig 🙂



  • Vielleicht variiere ich das später noch zu:

    namespace io
    {
    
    template <typename T> class string
    {
    /* ... */
    };
    
    typedef string<char> stringc;
    typedef string<wchar_t> stringw;
    
    }
    

    Allerdings kann ich dann in der Klasse nicht sehr gut 'std::string' verwenden sondern musse das addieren und allokieren von speicher alles selber machen



  • wie gesagt, das ist nicht wirklich notwendig. solange du spaeter ueber eine l10nlib die fonts renderst und ausgibst.

    @sothis_
    dann sehen wir das wohl gleich 🙂
    btw. Kanji kennst du nicht? chinesische und japanische schriftzeichen.
    dafuer kennst du aber die kleine kyrillisch randgruppe? *hehe*



  • rapso schrieb:

    dann sehen wir das wohl gleich 🙂

    es ist dem thread nicht sehr zuträglich 500 zeilen code zu posten der nicht im geringsten mit dieser engine kombinierbar ist 🙂

    rapso schrieb:

    btw. Kanji kennst du nicht? chinesische und japanische schriftzeichen.
    dafuer kennst du aber die kleine kyrillisch randgruppe? *hehe*

    oh, wieder was dazu gelernt \o/, lol, nie gehört 😛



  • Okay, noch ne kleine Frage nebenbei.

    Ihr hab mit sicherheit gesehen dass ich meine eigene string Klasse 'cstring' genannt habe damit sie sich in keinem Fall mit der std::string Klasse überschneidet auch nicht wenn man die Namespaces 'ausgeschaltet hat'.
    Ich kahm auf den Namen cstring als ich in der IrrlichtEngine 'stringc' gesehen hatte (das ist auch eine Typen definition wie in meinem letzter Beitrag)

    Meine Frage: Findet ihr den Namen 'cstring' merkwürdig oder findet ihr vielleicht die Klasse wie in meinem letzten Beitrag besser (nur von der Schreibweise her)??



  • hm, die stringklasse der mfc heisst halt CString...



  • Bekanntmachung:

    Neue Release-Version: SoftPixel Engine 1.1

    Erneuerungen:
    * Einige Fehler wurden beseitigt (z.B. funktioniert die Funtkion "video::Texture::setTransFilter" jetzt richtig)
    * Mann kann nun die Transformations-Matrix für jedes Objekt (Node) komplett manuel erzeugen und verändern
    * "array" Klasse hinzugefügt (eigene Container Klasse)

    Rückfrage:

    bool Frage = Gibt es inzwischen schon ein paar Vereinzelte die die SoftPixel Engine nutzen oder die sich schon mal ein bischen damit beschäftig haben?

    `if (Frage == true) // Wenn ja, dann ... ^^

    {Was habt ihr damit bereits gemacht? Konntet ihr damit schon ein bischen was anfangen? Was gefällt euch an ihr/ was nicht?}

    else if (Frage == false) // Wenn nein, dann ...

    {Was habt ihr gegen die *SoftPixel Engine* auszusetzten?}`

    Danke schon mal für euer bisheriges Feedback 🙂



  • Ich fänd's cool, wenn's auf der Homepage ne Doxygen-artige Code-Doku gäbe, einfach zum reinschnuppern in die Interfaces ohne gleich den Quellcode runterladen zu müssen.



  • Ich denke das ließe sich einrichten.
    Vielleicht mache ich mal eine Doxygen Dokumentation 🙂
    Dauert dann aber erst mal noch ... 😉





  • Und hier ist auch schon Version 1.3

    (Ihr könnt die Links des letzten Beitrags benutzen)

    PS: Die Engine unterstützt jetzt Shader (GLSL)



  • So jetzt gibt's auch endlich eine Doxygen Dokumentation 😃



  • Eben gerade habe ich die Version "1.5 beta" veröffentlicht.
    Deutlich stabieler; neue Renderer: Direct3D9 (erst mal nur für 2D nutzbar), "Ray" SoftwareRenderer; anti alias; SkeletAnimationen für's B3D Format



  • Hier habe ich in meinem Forum einen Beitrag zum nächsten Datei Format erstellt, das meine Engine bald unterstützten wird:
    Das Quake 3 Arena Map Datei Format :xmas1:

    http://www.iphpbb3.com/forum/70493062nx15861/3d-grafik-f5/quake-3-arena-bsp-map-loader-t26.html

    Frohe Weihnachtszeit



  • Jemand hatte mal darum gebeten, das Forum meiner Engine auch für Unregistrierte Nutzer zugänglich zumachen.
    Jetzt habe ich ein Unterforum erstellt in dem jeder, in jeder Sprache, Beiträg bzw. Fragen erstellen/ stellen darf 😃

    Hier, unter "Open-Discussions": http://www.iphpbb3.com/forum/index.php?nxu=70493062nx15861

    Unregistrierte Nutzer haben eine eingeschränke Berechtigung. Sie dürfen z.B. keine Dateianhänge erstellen, aber sie können neue Themen und Antworten erstellen 🙂



  • Hier sind mal die ersten ScreenShots meines BSP Loader für Quake 1 / Half-Life 1 und C.S. 1.0 bis 1.6 Maps:

    "de_dust.bsp":
    http://softpixelengine.sourceforge.net/GalleryImg29b.JPG

    "cs_italy.bsp":
    http://softpixelengine.sourceforge.net/GalleryImg28b.JPG

    Das Format wir dmeine Engine in der nächsten Release Version (1.6) unterstützten und laden können 😉


Anmelden zum Antworten