Jump to content
Araştır
  • Diğer seçenekler ...
Sonuçları bul ...
Sonuçları bul ...

co3moz

Aktif Üye
  • İçerik sayısı

    81
  • Katılım

  • Son ziyaret

  • Günün Kazananı

    7
  • Puan

    7,685 [ Bağış Yap ]

İletiler : co3moz


  1. Alıntı

    Bazı şeyler değişmeli eyvallah bunun için ben de çabaladım fakat editörleri webe aktarmanın geliştirici için bir anlamı yok ki. Kaldı ki Javacript ile Directx kullanmak performans açısından pek akıllıca değil.

    Demek istediğim; özellikle client tarafında Directx ile ciddi grafiksel iyileştirmeler yapılabilir, ayrıca Map editör vs de geliştirilebilir. Benimkisi naçizane bir öneri, tercih tabii ki senin. Başarılar diliyorum 😄

     


    Zaten mesajınızı öneri olarak gördüm, biraz sert gibi çıktım sanırım :D, Javascriptin performansı zannettiğiniz kadar kötü değil. Zaten yaptığım bir uif editör, amaç bir oyun yazmak olsaydı, webgl kullanabilirdim. Ki zaten dom based render yazmadan önce canvas based render yazdım. Daha performanslı olmasına rağmen onu devam ettirmedim. Temel neden bunun bir editör oluşu ve hızlı render yapmaktansa kullanıcı için daha fazla özellik sağlamasının önemli oluşu ve tüm bunların yanında development sürecinin kolay olması, yönetilebilir olması da önemli

    Bu proje ise deneysel bir üründü, TBL dosyalarını çözebilecek miyim diye şöyle bir göz gezdirdim. Baktım oluyor bir end-product olsun istedim.

    Şu konuya ekstra bir nokta daha eklemek istiyorum. Bir süredir web tarafında knight online 3d modellerinin render edilmesiyle ilgileniyorum. O yüzden bazı şeyler zannettiğinizden daha fazla potansiyele sahip olabilir. Beklemede kalın 🙂

    (Webte GL performansını merak ediyorsanız. three.js'i inceleyebilirsiniz)

     


  2. Alıntı

    Uğraşıp, paylaşan insan görmeyeli uzun zaman olmuş 🙂 eline sağlık

    Edit: Algoritma bilgin var, nodejs ile kısıtlama kendini. C++ öğrenip,directx ve UI mantığını anlarsan mevcut editorleri geliştirebilirsin.

     


    Hocam, mevcut editorleri geliştirmenin hiç bir manası yok. c++, sdl zaten biliyorum. Bazı şeyler artık değişmeli. Bir desktop uygulaması yapmak isteseydim zaten electron ile yapardım.

     


  3. https://hexed.it/#hex:B813AF2F1E000100881BAF2F1E0001005823AF2F1E000100A017AF2F1E000100085AAF2F32000100D00FAF2F140001001029B02F0A000100B038B02F1E00010000D748301E000100B03EAF2F1E0001004027AF2F140001009842AF2F1E00010030EEB12F14000100503CB22F14000100B0B5B02F14000100D003B12F14000100808E0235010001005019023501000100A08EB02F14000100C0DCB02F140001004015B22F140001006063B22F14000100C0C5351788130100B09E3517881301000085AF2F01000100F057B02F010001009067B02F010001004086B42F01000100FE91CC1701000100158ECC1701000100F85A4F3001000100C0BEB52F01000100C0BEB52F01000100D0E5B52F01000100A063493001000100B85F493001000100775D5130201C0100708AB22F01000100A0FFB22F01000100203C491E0100010010A0B12F0100010090D8B22F01000100201F4A300100010080B1B22F01000100B026B32F010001000840491E0100010020C7B12F0100010090D8B22F01000100696EFE0C555A01005172FE0C555A01003976FE0C555A0100217AFE0C555A0100097EFE0C555A0100D80A981601000100A5C8600F054801008DCC600F0548010075D0600F054801005DD4600F0548010045D8600F05480100C00E98160100010087F59110D03B01006FF99110D03B010057FD9110D03B01003F019210D03B010027059210D03B0100A8129816010001008722C311054801006F26C31105480100572AC311054801003F2EC311054801002732C3110548010090169816010001003BBCBF10302A010023C0BF10302A01000BC4BF10302A0100F3C7BF10302A0100DBCBBF10302A010038FB971601000F27D700B708803E01003314B207C83201002F8B1C07B03601002F8B1C07B0360100302C971601000F2720FF971601000F2711B84D08983A0100F9E87E09983A01003314B207C8320100F3E47E09983A01001541E30850460100F006981601000F272D80170AC832010013821907E02E010013821907E02E0100D17D1907E02E0100D17D1907E02E01000803981601000F2739664F08384A010039938009803E010077999807384A010049729807384A010001B5A707983A010059DCC00AB03601000B3F4F08384A010095E18009803E0100CBABD30B384A01009D84D30B384A0100D38DA707983A01008703C10AB0360100678D4F08384A010067BA8009803E0100A342C40B983A0100116BC40B983A0100A566A707983A0100B52AC10AB036010095B44F08384A0100EF09AD0A50460100E9D3250AB0360100C737250AB0360100A305AD0A50460100E351C10AB0360100D10DFE0AB0360100A3E6FD0AB0360100FF34FE0AB036010025FD560B803E01002FFD560B6842010039FD560B5046010025E5EB0AB036010037CBEE0AB036010009A4EE0AB0360100A73FE10B504601004932DE0B504601004FD72E07803E0100CBAFDF0AB03601006F61DF0AB03601009D88DF0AB036010010D0250AB0360100CF33250AB036010013EBAF0AC832010037A1450BC832010059AE480BC8320100F527470BC8320100C543BC0AF82A0100D943BC0AC8320100CF43BC0AE02E01

    Şu adrese girip vermiş olduğun hexi inceleyebilirsin. Gördüğüm kadarıyla aşağıdaki şekilde tutuluyor data..

    4 byte - Item id
    2 byte - Item durability
    2 byte - Item count


    Örneğin; bu hex datasının ilk itemi;

    Item id: 2FAF13B8 (Little endian integer değeri: 800003000, item adı: STR+ Scroll(Stat)(L) (+0))
    Item durability: 30
    Item count: 1

    • Teşekkür 1

  4. Genel iyileştirmeler yapıldı.

    • Çözünürlük dar olduğunda nesnelerin aşağı kayması sorunun düzeltilmesi.
    • Üst menüye Nesne eklentisi yapılacak.
    • Eğer bir dosya açılmadıysa menüde Yeni adında bir buton olacak ve boş bir uif dosyası oluşturacak.
    • Bir nesne seçildiğinde, treeviewde focus, ve accordion gösterimi.
    • Textureler için service worker cache tanımı.
    • Kişisel texture yükleme ve tanımlama.
    • Render problemlerinin giderilmesi.
    • Daha iyi color picker.
    • Buton için alt image sorunları.
    • Renklendirilmiş gruplama



    Resources alanında tıklayarak, sunucu tarafına resim yüklemeden doğrudan browserde kendi texturelerinizi tanımlayabilir. uif'te canlı olarak görebilirsiniz. Not: Sistem sizin için png'i dxt'e çevirmeyecektir. Bunun için png2dxt kullanabilirsiniz (forumda arayarak bulabilirsiniz). Yüklenen png'ler 2'nin üstü olmak zorundadır.

  5. Alıntı

    hatalı dosyayı biliyorum zaten alfabetik olarak gittiği için sıradaki dosyadan olduğu belli. Evet dediğiniz gibi kendim oluşturdum ve 2 nin kuvveti bir değere sahip değil genişlik ve yüksekliği. Yani tek çözüm 2 nin kuvveti şeklinde yapmak mı dosyaları?

     


    Oyunlarda neden bu şekilde olduğunu https://gamedev.stackexchange.com/questions/26187/why-are-textures-always-square-powers-of-two-what-if-they-arent şu adresten okuyabilirsin.

     


  6. Alıntı

    Teşekkürler.
    -- mesaja ek olarak --
    Hocam yalnız şöyle bir sorun var, width ve height değerleri belirtilen aralıkların dışında olduğunda dönüştürme yapmıyor. Bunu nasıl düzenleyebiliriz.
    oXE2Pm.png
    -- mesaja ek olarak --


    Teşekkürler.
    -- mesaja ek olarak --
    Hocam yalnız şöyle bir sorun var, width ve height değerleri belirtilen aralıkların dışında olduğunda dönüştürme yapmıyor. Bunu nasıl düzenleyebiliriz.
    oXE2Pm.png

     


    Bu limitasyon dxt mimarisinden kaynaklanıyor. Tüm texturelar 2'nin bir üssü olmak zorunda. Eğer manuel bir texture yaptıysanız 2'nin üssü olacak bir şekilde hazırlayın. UIF içerisinde texture'i gösterirken tüm texture'i değilde ilgili resmin olduğu alanı kesip gösterebilirsiniz.

    Eğer bu dosya standartlar içerisinde olan bir dosya ise, dxt/png dosyasını gönderebilir misiniz? inceleme yapmak gerekebilir.

    Edit:

    Hangi dosyada hata olduğunu bu durumda basmamışım. ko-png-to-dxt'nin 1.2.0 sürümünü publish ettim. npm'den tekrar indirirseniz güncellenecektir. Bu sürümde hangi dosyada hata olduğu söyleniyor.

     


  7. Uzun bir aradan sonra tekrardan selamlar,

    Eylül ayı gibi uif dosyaları konusunda çalışmaya başladım. Araya başka işler girince biraz aksadı. Halende tam olarak bitmiş değil. Yapılması gereken daha çok şey var.. ancak şimdilik görüntülemek ve basit ayarlar değiştirmek için kullanılabilir durumda. Projeyi geliştirmeye başladığımda bir konsol uygulaması olmasını düşünüyordum, ancak rahat edit yapılması değişikliklerin anında görüntülenebilmesi için projeyi web tarafına aktarmak istedim.

    oX7vB9.png

    Gizli İçerik

      Gizli içeriği görmek için bu konuya bir mesaj yazın.



    Planlanan değişiklikler
     

    • Çözünürlük dar olduğunda nesnelerin aşağı kayması sorunun düzeltilmesi.
    • Üst menüye Nesne eklentisi yapılacak. Bu sayede seçili olan objenin altında yeni objeler tanımlanabilecek.
    • Eğer bir dosya açılmadıysa menüde Yeni adında bir buton olacak ve boş bir uif dosyası oluşturacak.
    • JSON ile yeni uif dosyası oluşturulabilecek.
    • Bir nesne seçildiğinde, treeviewde focus.
    • Image dosyalarında mouse ile texture sürüklemesi yapılması.
    • Textureler için service worker cache tanımı.
    • Kişisel texture yükleme ve tanımlama.
    • En son açılan uif projesinin browserde tutulması.
    • Render problemlerinin giderilmesi.
    • Stil ayarının combobox ile yapılabilmesi

     


    Yapısal sorunu olan dosyalar

    Bu dosyalar eski standartlara göre yapılmış dosyalar. Tanımlamalarında ekstradan n byte olacağı söylenmesine rağmen, n byte genişliğinde bir dizi bulunmuyor. O yüzdende uif->json dönüştürmesinde hata oluşuyor.

    Bu dosyalar haricindeki tüm uif dosyalarını denedim, hepsi sorunsuz bir şekilde json'a çevrilebiliyor.

     

     

     

    • ka_page_quest_us.uif
    • ka_page_quest.uif
    • ka_hotkey_us.uif
    • ka_hotkey.uif
    • ka_characterselect.uif
    • ka_characterselect_us.uif
    • ka_change_us.uif
    • ka_change.uif
    • ka_page_friends.uif
    • ka_page_friends_us.uif
    • ka_page_knights_union_sub_us.uif
    • ka_page_knights_union_sub.uif
    • ka_page_knights_union_main.uif
    • ka_page_knights_union_main_us.uif
    • ka_page_clan.uif
    • ka_page_clan_us.uif
    • ka_page_knights.uif
    • ka_page_knights_us.uif
    • co_login.uif
    • co_login_us.uif
    • ka_page_state.uif
    • ka_page_state_us.uif
    • ka_partyboard_us.uif
    • ka_partyboard.uif

     


    Proje bitene kadar transcode servislerinin kaynağını paylaşmayacağım. Ancak katkıda bulunmak isteyen, istekli herkese özelden projeyi atabilirim.

    Kolay gelsin.
    İyi çalışmalar

     

     

     

     

    • Beğen 8
    • Teşekkür 16
    • Haha 1

  8. Tekrardan selamlar,



    Bir arkadaşım Knight Online'nin bazı ui nesnelerine ihtiyaç duydu, dxt dosyalarını saçma sapan bir tool ile açıp incelemektense basit bir şey geliştirmeyi düşündüm. Temelde bir dxt dosyasını inceleyip tipini ayırt edip png formatına dönüştürecektir. Transparan içeren textureler sorunsuz olarak kayıt edilir. Ayrıca bir klasördeki tüm dxt dosyalarınıda png'e tek bir çağrıyla dönüştürebilirsiniz.

    Aşağıdaki türler desteklenmektedir;



    Örneğin dönüştürdüğüm bir dxt dosyası;

    a1r5g5b5.png



    Kolay gelsin, iyi çalışmalar

    1.2.0 sürümünü publish ettim. Bu sürümde aşağıdaki toolları kurmanıza gerek yoktur!


    npm install --global --production windows-build-tools


    DXT işlemleri cpp üzerinden değilde, javascript üzerinden yapılacaktır.
    • dds türleri (dxt1, dxt3, dxt5)
    • a8r8g8b8
    • x8r8g8b8
    • a4r4b4g4
    • a1r5g5b5
    • tga (bir tga dosyasının uzantısı dxt olarak değiştirilmişse, knightonline.exe okusun ya da okumasın dxt2png bunu farkedip png'e dönüştürecektir)

  9. Selamlar,

    Bir süre önce dxt2png yazmıştım. png2dxt'e gerek yoktur diye düşündüm ama belki bir başkasının ihtiyacı olur. dxt2png'de olduğu gibi bir klasördeki tüm png'leri dxt yapabilirsiniz.

    DXT dosyaları oluştururken aşağıdaki formatları kullanabilirsiniz, farklı formatlar farklı boyut ve kalitede resmi kodlayacaktır.

    • dxt1
    • dxt3
    • dxt5
    • a8r8g8b8
    • x8r8g8b8
    • a4r4g4b4
    • a1r5g5b5



    Gizli İçerik

      Gizli içeriği görmek için bu konuya bir mesaj yazın.


    Kolay gelsin, iyi çalışmalar
    • Teşekkür 4

  10. Tekrardan selamlar,

    Bir arkadaşım Knight Online'nin bazı ui nesnelerine ihtiyaç duydu, dxt dosyalarını saçma sapan bir tool ile açıp incelemektense basit bir şey geliştirmeyi düşündüm. Temelde bir dxt dosyasını inceleyip tipini ayırt edip png formatına dönüştürecektir. Transparan içeren textureler sorunsuz olarak kayıt edilir. Ayrıca bir klasördeki tüm dxt dosyalarınıda png'e tek bir çağrıyla dönüştürebilirsiniz.

    Aşağıdaki türler desteklenmektedir;

    • dds türleri (dxt1, dxt3, dxt5)
    • a8r8g8b8
    • x8r8g8b8
    • a4r4b4g4
    • a1r5g5b5
    • tga (bir tga dosyasının uzantısı dxt olarak değiştirilmişse, knightonline.exe okusun ya da okumasın dxt2png bunu farkedip png'e dönüştürecektir)



    Örneğin dönüştürdüğüm bir dxt dosyası;

    a1r5g5b5.png

    Gizli İçerik

      Gizli içeriği görmek için bu konuya bir mesaj yazın.


    Kolay gelsin, iyi çalışmalar

     

    • Beğen 3
    • Teşekkür 11

  11. Tekrardan selamlar,

    Bir süredir tbl dosyalarını okuma ve şifreleme konuları üzerinde çalışıyordum. 1886 şifrelemesinde bir problem var, açıkçası tbl okuma konusunda fazla vakit kaybettiğim için şimdilik bu konuda bir geliştirme yapmayacağım. Projenin kaynağını ilgili adresten bir kontrol etmenizi ve hatta pull request yapmanızı diliyorum. Planlarda düzenleme yapma da var. JSON formatında tbl'i çıkarabiliyorsunuz. İleri ki adımlarda stdin'den json bekleyip tbl oluşturmada yapmayı düşünüyorum.

    cmd.gif

    Gizli İçerik

      Gizli içeriği görmek için bu konuya bir mesaj yazın.


    Kolay gelsin, iyi çalışmalar

     

    • Teşekkür 4
×
×
  • Yeni Oluştur...