Autor Wątek:  Skrypt do programu Blender  (Przeczytany 10936 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Offline carmel4a

  • Zasłużony dla Symulatora
  • Wiadomości: 175
    • Zobacz profil
    • Moja stronka na Tumblrze z changelogiem ze STAREGO projektu.
  • Otrzymane polubienia: 36
Skrypt do programu Blender
« dnia: 28 Sierpnia 2017, 21:41:16 »
Witam, w tym wątku będziemy prezentować postępy w pracy nad skryptem oraz aktualną listę jego możliwości.
Nad skryptem aktualnie pracuje ja i @krzysiuup. Pierwsze podejście do skryptu zaczął @firleju.

Możliwości:
- bezstratne wczytanie obiektów typu node ... track .
- bezstratne wczytanie obiektów typu node ... traction .
- stratne wczytanie trójkątów terenu. Stratne są: normalne, mapowanie uv, tekstura.

- stratny export trójkątów terenu. Stratne są: normalne, mapowanie uv, tekstura.

- import/export t3d. Stratne są: wygładzanie, tekstury .dds (częściowo), freespotlight, stars.

- import danych DEM, np. NMT-100 w formacie ASCII(XYZ) jako vertex cloud. Inne skrypty (np. BlenderGIS) mogą zamienić wynik w siatke.

Changelog:
« Ostatnia zmiana: 28 Sierpnia 2017, 21:56:32 wysłana przez carmel4a »
Toruń robię.
Ma ktoś stare zdjęcia z Bydgoszczy Głównej?

Podczas tworzenia dodatków nie muszę uwzględniać (co nie oznacza, że nie mogę) uwag które nie dotyczą zagadnień w przyklejonych wątkach TD.

Offline Balaclava

  • Zasłużony dla Symulatora
  • Wiadomości: 936
  • vel. krzysiuup
    • Zobacz profil
  • Otrzymane polubienia: 726
Odp: Skrypt do programu Blender
« Odpowiedź #1 dnia: 28 Sierpnia 2017, 21:48:09 »
Moja działka to skrypt na import T3D i ulepszanie skryptu na eksport T3D. Obecnie po kilku solidnych refaktoryzacjach mamy dość wydajny kod. Skrypt importu póki co nie wczytuje wygładzania i nie odbija DDS - to pojawi się na dniach. Oprócz tego zaimplementować trzeba funkcje budujące obiekt typu freespotlight i stars, wybór tekstury do podstawienia za replacableskin.
Dokumentacja dla przyszłych pokoleń deweloperów:
MaSzynowa Wiki
Narzędzia deweloperskie - Blender

Offline Balaclava

  • Zasłużony dla Symulatora
  • Wiadomości: 936
  • vel. krzysiuup
    • Zobacz profil
  • Otrzymane polubienia: 726
Odp: Skrypt do programu Blender
« Odpowiedź #2 dnia: 01 Października 2017, 21:42:59 »
W załączniku poprawiona wersja eksportu. Poprawia kilka wad poprzedniego skryptu:
  • Dodawanie slasha przed nazwą tekstury wczytywanej bezpośrednio z katalogu textures.
  • Możliwość dodania do obiektu informacji o teksturze wymiennej.

Instalacja:
1. Wypakować archiwum. Folder maszyna_dev_tools wrzucić do folderu C:\Program Files\Blender Foundation\Blender\2.78\scripts\addons.
2. Uruchomić Blendera i otworzyć menu File > User Preferences.
3. W panelu User Preferences wybrać zakładkę Addons.
4. W wyszukiwarce po lewej stronie wpisać frazę "maszyna".
5. Zaznaczyć pozycję Import-Export: Maszyna Developer Tools
6. Zapisać zmiany poprzez wciśnięcie przycisku Save User Preferences

Pod poniższym linkiem znajduje się omówienie właściwości submodeli w kontekście Blendera.
https://wiki.eu07.pl/index.php/Blender_-_modelowanie
« Ostatnia zmiana: 17 Października 2017, 17:06:47 wysłana przez krzysiuup »
Dokumentacja dla przyszłych pokoleń deweloperów:
MaSzynowa Wiki
Narzędzia deweloperskie - Blender

Offline Balaclava

  • Zasłużony dla Symulatora
  • Wiadomości: 936
  • vel. krzysiuup
    • Zobacz profil
  • Otrzymane polubienia: 726
Odp: Skrypt do programu Blender
« Odpowiedź #3 dnia: 17 Października 2017, 17:06:09 »
W dzisiejszym uaktualnieniu:
* Eksport submodelu typu Stars
* Poprawka dla zapisu tekstur - wszystkie ścieżki poprzedzane są backslashem, poza tymi ładowanymi z katalogu dynamic (rozwiązanie tymczasowe)
* Poprawki małych bugów

Instalacja analogicznie jak poprzednio - z tą różnicą, że wcześniej należy usunąć starszą wersję skryptu poprzez usunięcie folderu blender/2.x/scripts/addons/maszyna_dev_tools/export_t3d
Dokumentacja skryptu: https://wiki.eu07.pl/index.php/Blender_-_modelowanie
« Ostatnia zmiana: 17 Października 2017, 17:07:19 wysłana przez krzysiuup »
Dokumentacja dla przyszłych pokoleń deweloperów:
MaSzynowa Wiki
Narzędzia deweloperskie - Blender

Offline Balaclava

  • Zasłużony dla Symulatora
  • Wiadomości: 936
  • vel. krzysiuup
    • Zobacz profil
  • Otrzymane polubienia: 726
Odp: Skrypt do programu Blender
« Odpowiedź #4 dnia: 18 Grudnia 2017, 18:10:26 »
W dzisiejszej aktualizacji:
  • Likwidacja najczętszych błędów powodujących crash skryptu. Ich powodem był brak aktywnej warstwy UV lub brak przypiętej tekstury do materiału. Obecnie w pierwszym przypadku zapisywane współrzędne UV zawsze wynoszą 0, 0. W drugim przypadku wartość atrybutu Map ustawiana jest na none.
  • Dodanie panelu edycyjnego umożliwiającego łatwą zmianę właściwości Selfillum, MaxDistance, MinDistance, Anim oraz pozwala na wybranie indeksu tekstury wymiennej.
  • Liczby zaokrąglane do 5 miejsc po przecinku, obcinanie nieznaczących zer.
Od dzisiejszego wydania skrypt eksportu staje się projektem open-source. Repozytorium dostępne tutaj: https://gitlab.com/krzysiuup/maszyna_t3d_export.
Zmienił się także sposób instalacji skryptu. Przed instalacją należy usunąć poprzednią wersję skryptu, pozbywając się folderu C:\Program Files\Blender Foundation\Blender\2.78\scripts\addons\maszyna_dev_tools.
  • Wejść w menu File > User Preferences > Add-ons > Install add-on from file.
  • W przeglądarce plików wskazać pobraną paczkę ze skryptem.
  • W wyszukiwarce po lewej stronie wpisać frazę "maszyna"
  • Zaznaczyć checkboxa przy pozycji Import-Export: Maszyna T3D model exporter
  • Kliknąć na strzałkę obok checkboxa. Rozwinie się panel ustawień skryptu, w którym należy wybrać ścieżkę do głównego katalogu symulatora.
  • Zapisać zmiany przyciskiem Save User Settings
« Ostatnia zmiana: 19 Grudnia 2017, 17:28:41 wysłana przez krzysiuup »
Dokumentacja dla przyszłych pokoleń deweloperów:
MaSzynowa Wiki
Narzędzia deweloperskie - Blender

Offline Balaclava

  • Zasłużony dla Symulatora
  • Wiadomości: 936
  • vel. krzysiuup
    • Zobacz profil
  • Otrzymane polubienia: 726
Odp: Skrypt do programu Blender
« Odpowiedź #5 dnia: 29 Maja 2018, 17:36:29 »
W dzisiejszej aktualizacji:
  • Dodana możliwość zapisu wektorów normalnych, na życzenie @Stelego
  • Szamańskie odbijanie pionowe tekstur DDS, de facto jest to odbijanie całej siatki UV submodelu mapowanego taką teksturą. Głupie, ale działa.

Procedura instalacji trochę się skomplikowała, ale na pewno sobie z nią poradzicie. Znajduje się ona w dołączonym pliku PDF.
Proszę pamiętać o uprzednim odinstalowaniu starszych wersji skryptu!
« Ostatnia zmiana: 29 Maja 2018, 17:37:32 wysłana przez krzysiuup »
Dokumentacja dla przyszłych pokoleń deweloperów:
MaSzynowa Wiki
Narzędzia deweloperskie - Blender

Offline Balaclava

  • Zasłużony dla Symulatora
  • Wiadomości: 936
  • vel. krzysiuup
    • Zobacz profil
  • Otrzymane polubienia: 726
Odp: Skrypt do programu Blender
« Odpowiedź #6 dnia: 12 Czerwca 2018, 19:29:32 »
Nie ma aktualizacji, ale chciałem tylko powiedzieć że wykryłem błąd w skrypcie. Przez moją nieuwagę submodele typu FreeSpotLight mają dopisaną linijkę NumVerts: 0 Na dniach postaram się wydać kolejny update, póki co proszę poprawiać błędnie zapisane submodele notatnikiem.
Dokumentacja dla przyszłych pokoleń deweloperów:
MaSzynowa Wiki
Narzędzia deweloperskie - Blender

Offline chudya

  • Wiadomości: 4
    • Zobacz profil
  • Otrzymane polubienia: 2
Odp: Skrypt do programu Blender
« Odpowiedź #7 dnia: 23 Czerwca 2018, 13:32:24 »
Nie wiem, czy powinienem pisać w tym wątku. Jeśli nie, proszę o przeniesienie we właściwe miejsce.
Mam nast. problem: przy próbie eksportu otrzymuję komunikat błędu
Value error: path is on mount 'F', start on mount 'D'
location:,unknown location.:-1
Jak mogę coś poprawić, aby skrypt działał prawidłowo?

Offline Balaclava

  • Zasłużony dla Symulatora
  • Wiadomości: 936
  • vel. krzysiuup
    • Zobacz profil
  • Otrzymane polubienia: 726
Odp: Skrypt do programu Blender
« Odpowiedź #8 dnia: 23 Czerwca 2018, 13:42:00 »
Należy ustawić ścieżkę do roota MaSzyny w panelu User Preferences. Opisane jest to w PDF. Domyślam się że zapomniałeś kliknąć "Save user settings".
Dokumentacja dla przyszłych pokoleń deweloperów:
MaSzynowa Wiki
Narzędzia deweloperskie - Blender

Offline chudya

  • Wiadomości: 4
    • Zobacz profil
  • Otrzymane polubienia: 2
Odp: Skrypt do programu Blender
« Odpowiedź #9 dnia: 23 Czerwca 2018, 13:57:23 »
Ścieżkę ustawiłem, save wcisnąłem. Kiedy otwieram User preferences, to ścieżka tam widnieje.
Blendera mam na C, Maszynę na D, a Moje dokumenty i podfolder z danymi Blendera na F.
Jak to poustawiać, żeby skrypt działał?
Próbowałem eksportować na wszystkie powyższe dyski, ale błąd wyświetla się taki sam.

Offline Balaclava

  • Zasłużony dla Symulatora
  • Wiadomości: 936
  • vel. krzysiuup
    • Zobacz profil
  • Otrzymane polubienia: 726
Odp: Skrypt do programu Blender
« Odpowiedź #10 dnia: 23 Czerwca 2018, 14:01:35 »
No to może tak: podaj kolejno pełne ścieżki do katalogu z MaSzyną, i ścieżkę, do której eksportujesz model. Ewentualnie jeśli masz jakieś tekstury, to ich ścieżki również podaj.
Skrypt jest zbudowany tak, że tekstury nakładane na model muszą pochodzić z podfolderów w roocie. Model niekoniecznie musi być zapisywany w tych podfolderach, chyba że jest to dynamic. Wspomnę o tym w następnych wersjach PDFa.
« Ostatnia zmiana: 23 Czerwca 2018, 14:03:23 wysłana przez krzysiuup »
Dokumentacja dla przyszłych pokoleń deweloperów:
MaSzynowa Wiki
Narzędzia deweloperskie - Blender

Offline chudya

  • Wiadomości: 4
    • Zobacz profil
  • Otrzymane polubienia: 2
Odp: Skrypt do programu Blender
« Odpowiedź #11 dnia: 23 Czerwca 2018, 14:07:10 »
Maszyna: D:\kolej\Maszyna_EU07
Eksportować próbowałem najpierw do F:\Users\Artur\Moje dokumenty\Blender\bariera.  W tym samym folderze jest i model i tekstura. Potem próbowałem eksportować do D: i F:
Dla wszystkich lokalizacji błąd jest ten sam.
Gdzie mam umieścić tekstury, model i dokąd eksportować?

Offline Balaclava

  • Zasłużony dla Symulatora
  • Wiadomości: 936
  • vel. krzysiuup
    • Zobacz profil
  • Otrzymane polubienia: 726
Odp: Skrypt do programu Blender
« Odpowiedź #12 dnia: 23 Czerwca 2018, 14:28:48 »
Tekstury, których używasz, musisz ładować z folderu textures w roocie. Najlepiej też od razu ekportować model do folderu models.
Dokumentacja dla przyszłych pokoleń deweloperów:
MaSzynowa Wiki
Narzędzia deweloperskie - Blender

Offline chudya

  • Wiadomości: 4
    • Zobacz profil
  • Otrzymane polubienia: 2
Odp: Skrypt do programu Blender
« Odpowiedź #13 dnia: 15 Lipca 2018, 10:20:53 »
Dobrze, już znalazłem rozwiązanie swojego problemu. Dziękuję za pomoc :)