Jak se vyrábí grafické uživatelské rozhraní Blender 3D 2.8x?

Chci znát všechny procesy, fungování, zapojené jazyky, příklady kódu a adresy URL oficiální stránky s aktualizovanými informacemi pokud je to možné.

POZNÁMKA: Nejsem programátor. Chci jen vědět, jak a kde se začít učit.

Před devíti lety uživatel odpověděl :

Za předpokladu, že mluvíte o řadě 2.5 Blenderu, na nejnižší úrovni je uživatelské rozhraní Blenderu implementováno pomocí OpenGL (primárně kódováno v C). Zahrnuto do toho je vrstva Pythonu . To znamená, že je poměrně snadné jej upravit Uživatelské rozhraní Blenderu používající Python, aniž by hodně obětovalo výkon.

A podle obnovení lepší reakce na vývoj GUI a portab ility , ale neaktualizováno (4 roky staré):

č. Balíček grafického uživatelského rozhraní Blenderu nemůžete použít v jiných programech mimo Blender. Balíček grafického uživatelského rozhraní Blenderu je určen výhradně k použití s Blenderem na různých platformách. Blender má také vlastní okno správce. A widgety uživatelského rozhraní v Blenderu jsou úzce spjaty s Blenderovým datovým API (vlastnosti RNA / ID)

Existuje GHOST (General Handy Operating System Toolkit), který lze použít i mimo Blender, ale je velmi nízký a poskytuje pouze přístup k oknu, myš, klávesnici, ndof a tablety z X11 / MS-Windows / OS X. Ve skutečnosti nic nekreslí; tlačítka nebo text například zpracovává vlastní kód Blenderu.

Před rokem , ale ne tak podrobně, jak je potřeba:

Celé uživatelské rozhraní Blenderu je na obrazovce vykresleno pomocí OpenGL. Většina uživatelského rozhraní je definované v C a některé části, jako většina rozložení, v Pythonu.

Takže:

  1. vím že Blender může vykreslovat scény v počítačích, které nepodporují Blender Software přes jeho binární soubory – které přijímají příkazy CLI (Command Line Interface) – protože už dávno jsem nemohl spustit 2,79, ale 2,76 … Ale koryto SheepIt Render Farm můžete bez problémů s procesorem a svěrákem vykreslit další soubory 2,79 bez problémů.
    • Díky podpoře rozhraní CLI je Blender GUI nezávislé (což znamená, že GUI právě provádí volání CLI při každé změně) nebo je GUI téměř jádro (což znamená, že Blender Core Code je spojen se změnami v kódu GUI) ?
  2. Grafické uživatelské rozhraní Blenderu (nebo jeho část) můžete efektivně implementovat do jiné aplikace, která používá jazyky [oblíbené příklady]?

Proč

Hledám konkrétní odpověď, protože se chci hluboce podílet na vývoji Inkscape a jeho skutečné hlavní problémy (pro uživatele) nejsou zcela vyvinuté grafické uživatelské rozhraní a žádná podpora CMYK. Na druhou stranu je Blender ve skutečnosti super industrializovaný (což znamená, že jeho použití je zcela PRO- bez CONs- pro firmy).

Inkscape Developers přenášejí veškerý svůj základ kódu ( je založen na C) až C ++ a chtějí také rozdělit uživatelské rozhraní na samostatnou implementaci, aby mohli používat soubory CSS k jejímu vývoji, a chci vědět, jestli v tomto procesu je možné přistupovat k Blender Codebase.

Komentáře

  • CLI je také uživatelské rozhraní. Prostě používá příkazový řádek a ne pěknou grafiku. CLI i GUI komunikují s " backend ", který ve skutečnosti dělá věci. Vzhledem k tomu, že Blender je OpenSource (a licencován jako GPL), neměl by být problém vytvořit pro něj nové grafické uživatelské rozhraní v jiném jazyce, ale to většinou závisí na jazyce. Jazyk by musel nějak komunikovat s backendem. Ve většině jazyků obvykle existuje způsob, jak " zabalit " binární soubory, takže je lze použít jako knihovny, ale to je jazykově specifické.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *