Texture Designer - jauns attēlu apstrādes rīks

Viss par spēļu vizuālā izskata veidošanu no mākslinieciskās puses - 3D, 2D modelēšana, dizainēšana u.tml.
Message
Author
snake5
Posts: 361
Joined: 07 Dec 2010, 03:54
Contact:

Texture Designer - jauns attēlu apstrādes rīks

#1 Post by snake5 » 26 Jun 2011, 16:08

Iepriekšējā rīka testēšana noslēdzās ar tādu domu, ka vajag kaut ko ātrāku. Šeit, pēc 2 mēnešiem, ir iznācis kaut kas ātrāks. Rīks, kuram angliski nosaukums ir...

Texture Designer (angliski)
Informācija latviski.

Rīks ir diezgan vienkāršs, ātrs (ar mūsdienīgiem GPU attēli tiek apstrādāti ātrāk par dažām milisekundēm) un spēj daudz izdarīt:

Image Image

Rīks ir veidots tā, lai lietotājam nevajadzētu izpildīt liekas darbības. Strādājot ar GIMP un Photoshop, diezgan bieži sanāk lietot Undo/Redo, pēc tiem pārlikt vecos efektus, mocīties ar attēlu daļu iezīmēšanas rīkiem, lai vēlāk atklātu, ka kaut kas ir nepareizi, u.tml. Šeit tas nenotiks, jo attēlu modifikācijas necīnās par vietu.
Ir iespējams jaukt tekstūru ģenerēšanu ar attēlu apstrādi un dažādos interesantos veidos radīt jaunas tekstūras. Ir pat iespējams veidot normālvektoru tekstūras (normālmapes), ātrāk nekā to bija iespējams darīt ar iepriekšējo rīku:

Image Image

Iespējams rīku nopirkt pa ~35 latiem. Ir arī demonstrācijas versija, kuru var izmēģināt, lai saprastu, vai rīks šķiet piemērots darbam.

Ļoti noderētu arī ieteikumi un kritika, jo ar tiem man būs vieglāk uzlabot šo rīku un padarīt to noderīgāku.

bubu
Guru
Guru
Posts: 398
Joined: 07 Dec 2010, 11:54

Re: Texture Designer - jauns attēlu apstrādes rīks

#2 Post by bubu » 26 Jun 2011, 19:04

Pārāk alienisks interfeiss. Lietotāji ir stulbas aitas, kurām vajag vienkāršu interfeisu, nevis katrai programmai tagad developeri taisīs savu GUI pa saviem standartiem.

Demo no pilnās atšķiras tikai ar izmēra limitēšanu? To tak tev uzlauzīs viens-un divi (atceramies edija spider agloritmus). Piedāvāju uztaisīt paraugdemonstrējumu, ja netici.
Un 4kx4k * 4 * sizeof(float) aizņem 256Mb. Ar vai tad var kautko sakarīgu darīt realtaimā izņemot load->save ?

Un emm:
Nepieciešama videokarte ar Shader Model 4 (vai jaunāka) atbalstu – tai jāspēj strādāt ar 32 bitu floating point RGBA tekstūrām, veseliem skaitļiem un “dynamic branching”
Tavos šeideros neredzēju operēšanu ar veseliem skaitļiem (cikla skaitītāji neskaitās). Viss pārejais ir SM3, nevis SM4.
Pie tam - tu lieto OpenGL 2.x kontekstu, kas tev dod SM3 iespējas, nevis SM4. Nemelo "pircējiem", ka nepieciešams SM4 :)

Visādi citādi - forši. Īsti gan nesapratu blura nodei jēgu "Seperate". Blurs pēc definīcijas ir seperable. Rezultātam nav jāatšķirās, ja taisa naivo implementāciju vai seperable. Pēdējam gan performance ir daudz ātrāka.

snake5
Posts: 361
Joined: 07 Dec 2010, 03:54
Contact:

Re: Texture Designer - jauns attēlu apstrādes rīks

#3 Post by snake5 » 26 Jun 2011, 20:18

Pārāk alienisks interfeiss. Lietotāji ir stulbas aitas, kurām vajag vienkāršu interfeisu, nevis katrai programmai tagad developeri taisīs savu GUI pa saviem standartiem.
Tāpēc centos imitēt Windows UI. Bet cik skatos mākslinieku programmās, katrai ir sava stila UI (un cilvēki īpaši nesūdzas). Tāpēc nav tik traki ar to.
Demo no pilnās atšķiras tikai ar izmēra limitēšanu? To tak tev uzlauzīs viens-un divi (atceramies edija spider agloritmus).
Man jau viens uzmācīgs open source fans izmēģināja, uztaisīja salauztu (nepareizi strādājošu, t.i.) kreku. :D
Acīmredzot nav tik vienkārši, kā izskatās, it īpaši, ja šis labojums ir jāveic vairāk vietās nekā sākumā šķiet, katrā var būt nedaudz citādāk. Vēl piemetu pēdējam demo dažus trikus. Paraugdemonstrējums uzlaušanai tāpēc noderētu. Ja kaut kas izdosies, tad lūdzu atsūti uz PM.
Anyway, es tāpēc jau sen izdomāju, ka demo versiju atstāšu iespēju ziņā atpalikušu un updeitus piedāvāšu tikai pircējiem. Attiecīgi - uzlauž vai nē - nekas īpaši nemainās.
Un 4kx4k * 4 * sizeof(float) aizņem 256Mb. Ar vai tad var kautko sakarīgu darīt realtaimā izņemot load->save ?
Tekstūras tiek ielādētas kā XRGB8 (tikai apstrāde notiek ar FP32), tāpēc ar 512MB videokartes atmiņu vienu vienkāršo tekstūras apstrādes darbību izpildīt sanāks. Ar 2GB - 5. Kad ielikšu FP16 atbalstu - 10, un ar ARGB8 būs 20. (Vienkāršās darbības ir laikam visas, izņemot Blur).
Tavos šeideros neredzēju operēšanu ar veseliem skaitļiem (cikla skaitītāji neskaitās). Viss pārejais ir SM3, nevis SM4.
Hmm, tas ir labāk nekā cerēju. Izlabošu neprecīzo informāciju. :P
Rezultātam nav jāatšķirās, ja taisa naivo implementāciju vai seperable.
Ar non-separable blur'u var lietot citādākas (neregulāras) kernel tekstūras. Sanāk Bokeh efekti u.tml. Citiem vārdiem sakot - "Blur" strādā kā normalizējošs convolution filter (tiek zīmēti pikseļu spraiti, tāpēc tik lēns). Kādreiz pielikšu iespēju izslēgt normalizēšanu, tad arī nomainīšu nosaukumu.

User avatar
vecais_dumais_laacis
Guru
Guru
Posts: 109
Joined: 06 Dec 2010, 18:48
Contact:

Re: Texture Designer - jauns attēlu apstrādes rīks

#4 Post by vecais_dumais_laacis » 26 Jun 2011, 20:48

lauzt bik slinkjiitis bet nu lauzhamaas vietas apzinaaju - paaraak daudz shobriideejam slinkumam
sub_40A8A0(v2 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
v22 = "DEMO Restriction: All textures must be at most 256x256.";
v34 = "DEMO Restriction: All textures must be at most 256x256.";
v35 = "DEMO Restriction: All textures must be at most 256x256.";
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v55 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v55 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v22 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v83 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
if ( *(char **)(v2 + 548) != "DEMO Restriction: All textures must be at most 256x256." )
strncpy(v12, "DEMO Restriction: All textures must be at most 256x256.", 0x37u);
if ( *(char **)(v2 + 548) != "DEMO Restriction: All textures must be at most 256x256." )
strncpy(v16, "DEMO Restriction: All textures must be at most 256x256.", 0x37u);
sub_40A8A0(v2 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v41 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v38 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
sub_40A8A0(v1 + 544, "DEMO Restriction: All textures must be at most 256x256.");
if ( *(char **)(v44 + 548) != "DEMO Restriction: All textures must be at most 256x256." )
strncpy(v53, "DEMO Restriction: All textures must be at most 256x256.", 0x37u);
if ( *(char **)(v105 + 548) != "DEMO Restriction: All textures must be at most 256x256." )
strncpy(v87, "DEMO Restriction: All textures must be at most 256x256.", 0x37u);
attieciigi katrai vietai jaapielabo ifs
...un ja bites buutu laachi...

bubu
Guru
Guru
Posts: 398
Joined: 07 Dec 2010, 11:54

Re: Texture Designer - jauns attēlu apstrādes rīks

#5 Post by bubu » 26 Jun 2011, 20:53

snake5 wrote:
Pārāk alienisks interfeiss. Lietotāji ir stulbas aitas, kurām vajag vienkāršu interfeisu, nevis katrai programmai tagad developeri taisīs savu GUI pa saviem standartiem.
Tāpēc centos imitēt Windows UI.
Nezinu ko nozīmē "centos", bet rezultāts ir visai tālu no Windows UI. Pa visiem 100% tālu. Drīzāk Blende'rīgam interfeisam tuvāks. Būtu paņēmis kustīgus paneļus ar parastajiem UI kontroļiem (Qt, vai tīrs WinAPI, po), un tad gan būtu Window'isks.
Un cilvēki īpaši nesūdzas tāpēc, ka nav alternatīvas. Tāpat arī Mac'isti - nesūdzas par savu ārprātīgo UI, tāpēc ka nav alternatīvas (viņiem).
snake5 wrote:Acīmredzot nav tik vienkārši, kā izskatās, it īpaši, ja šis labojums ir jāveic vairāk vietās nekā sākumā šķiet, katrā var būt nedaudz citādāk.
Kamon, neesi smieklīgs. Daudzums nevienu neatturēs. Nu vdl ir slinks jā, bet tas neko nenozīmē. Arī tā dažādība, vismaz no vdl posta, ir nieks.
Edijs arī domāja, ka ja skaitli sadalīs daudz saskaitāmajos, un katru ieliks savā "dll" failā, tad sanāks ūber-spider-algoritms, kurā neviens oriģinālo skaitli neuzminēs, jo dll failu būs ļoti daudz.

snake5
Posts: 361
Joined: 07 Dec 2010, 03:54
Contact:

Re: Texture Designer - jauns attēlu apstrādes rīks

#6 Post by snake5 » 26 Jun 2011, 22:03

Nezinu ko nozīmē "centos", bet rezultāts ir visai tālu no Windows UI. Pa visiem 100% tālu. Drīzāk Blende'rīgam interfeisam tuvāks. Būtu paņēmis kustīgus paneļus ar parastajiem UI kontroļiem (Qt, vai tīrs WinAPI, po), un tad gan būtu Window'isks.
Centos = mēģināju atdarināt tikai interaktīvo pusi. Ne izskatu. Es tikai vienu Windows'ā nelietotu UI kontroli pieliku un ir dažas atšķirības ar Popup Menu.
Kamon, neesi smieklīgs. Daudzums nevienu neatturēs. Nu vdl ir slinks jā, bet tas neko nenozīmē. Arī tā dažādība, vismaz no vdl posta, ir nieks.
Ok, tātad es par krekošanu zinu daudz mazāk nekā domāju. Ir kādi ieteikumi, kur sākt? Ar kādu programmu tika atrastas tās vietas? Kādas būtu efektīvākas aizsardzības metodes?

User avatar
vecais_dumais_laacis
Guru
Guru
Posts: 109
Joined: 06 Dec 2010, 18:48
Contact:

Re: Texture Designer - jauns attēlu apstrādes rīks

#7 Post by vecais_dumais_laacis » 26 Jun 2011, 22:18

snake5 wrote:Ok, tātad es par krekošanu zinu daudz mazāk nekā domāju. Ir kādi ieteikumi, kur sākt? Ar kādu programmu tika atrastas tās vietas? Kādas būtu efektīvākas aizsardzības metodes?
ida+hex rays -> +- lasaams nosaciits c kods.

principaa jebkuru aizsardziibu var uzlauzt - atkariigs no veelmes/laika

dumji tev teikt hintus ko vareetu dariit ja kaads tos peec tam izmantos lai atlauztu :D

hints - ieliec piemeeram

Code: Select all

int mwidth = 1; mwidth = mwidth << 8; width = min( width, mwidth );
pie textuuru izveidoshanas. aciis iipashi neleeks bet ja kaads sapatchos ifus pie tekstiem tad softs gljuchiis/kreshos jo tekstuuras buus par mazu. mok veel kautkur var izmantot fixeeta izmeera bufferus kas overflowu rada pie lielaakaam tekstuuraam par 256x256.

pasham shaubos vai ir jeega kautko vairaak meegjinaat samudriit - var meegjinaat komerciaalos packerus/protectorus. - tie protams buus maksas - jaastaas vai atmaksaajaas.

no otras puses - pareekjini vai ir jeega ieguldiit naudu/darbu lai aizsargaatos. parasti publiski lauzh viegli uzlauzhamus softus vai arii populaarus.
...un ja bites buutu laachi...

snake5
Posts: 361
Joined: 07 Dec 2010, 03:54
Contact:

Re: Texture Designer - jauns attēlu apstrādes rīks

#8 Post by snake5 » 26 Jun 2011, 22:55

dumji tev teikt hintus ko vareetu dariit ja kaads tos peec tam izmantos lai atlauztu
Vari kādu caur PM atsūtīt, ja ir laiks. ;)

Par tiem hintiem paldies, nedaudz sāku saprast vairāk.

Tagad gan jau maza jēga meklēt kaut kādas komerciālās aizsardzības, sanāks tikai naudu iztērēt - ja uzlauzīs => nebija jēgas konkrēto aizsardzības sistēmu izvēlēties, ja neuzlauzīs => nebija jēgas aizsargāt. :D

bubu
Guru
Guru
Posts: 398
Joined: 07 Dec 2010, 11:54

Re: Texture Designer - jauns attēlu apstrādes rīks

#9 Post by bubu » 26 Jun 2011, 23:24

Demo versijai no pilnās jāatšķirās ar fīču esamību vai neesamību (fiziski exē). Nevis limitāciju uz izmēru, daudzumu, garumu, platumu, utt.
Tas ir vienīgais hints, kas vajadzīgs, lai demo versiju neuzlauztu.

snake5
Posts: 361
Joined: 07 Dec 2010, 03:54
Contact:

Re: Texture Designer - jauns attēlu apstrādes rīks

#10 Post by snake5 » 26 Jun 2011, 23:31

Ok. Tas man būs.

Starp citu, varbūt kādam šeit ir kāda ideja, ko man domāt par šo? -
Image
:mrgreen:

Post Reply

Return to “Dizains, modelēšana un vizuālā māksla / Design, modelling and visual art”