From 23f1a95984652f6fd173e3412cb26b2f31e4284c Mon Sep 17 00:00:00 2001 From: CJSatnarine Date: Wed, 3 May 2023 12:28:11 -0400 Subject: [PATCH] Added code that actually adds an image texture. --- DirtBlock.png | Bin 0 -> 3258 bytes ImageTextureTrial2.py | 22 ++++++++++++++++++++++ Trial.py | 9 +++++---- 3 files changed, 27 insertions(+), 4 deletions(-) create mode 100644 DirtBlock.png create mode 100644 ImageTextureTrial2.py diff --git a/DirtBlock.png b/DirtBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..222d5c5883d2c56313173101360d8542411f7400 GIT binary patch literal 3258 zcmV;r3`O%&Nk&Gp3;+OEMM6+kP&go_3;+O-L;#%uDxd(M06q~0fm}&NA{cXKjnLn`px!l*MGlym+8x+yukTu{-^kF$ZvdK^8JE;ZvOM^ z0sc4o|F0iGAJx49{=I(G`_g~2|AGG3+=uqxP!IBd+&};OP=C1p@9uB?o75BdC;LzT z{<(j;U;qAC|Gj_X^q>F#+2z2I{Cn}&=V#Wucgg|ISK2Y+|CK-1KUIDj{!{rQ{5ST4 zmP`1*^Dk{5_4NNO4<|p3f3p64{HKrytk2@#>;Ja@J^gR%PycKDSMX2YaK(x-5F7ct z%24MvLWG^dZf+lCijlxDS33(VwOizk?roV;lm3$wfRUIqvCPv~wc0|-Z(BpK2 zl)m9yHAa|?mf-j$!y8edCR=a3k|Llnnan`}uDKev{0 ze^r=8Y<4;(MciXUj4P__+5Srg*QcyCjI^WP41t%dBn%K4$llo^gEZAkmo`+^x^|DD zs+wiHmxv&ZN@!J(3T&q>4+cl@ySXWbzH=J5t$l{g7a=P)*`6__Rwx;EBRdvI&zddc*39yk+6nl@wI@x;SNZ*t(cQDux6Ns2$D# zx8fe7;tnr>LhqY40Pv$LI8o|_=o&Y9s|}OFyTLb`@MSBL4^z~fa^+uuXB?BM+9Z1Z zeYsbmqI$Z`Ga_5##tLi76eI-x9Z!9*E?Q`YmS)mx5%&BUGDdcUzMvOUPPmbNsvtNe z3m=!x!Qb?$P3H*bvV=K>ds(b9NQ?e)0KWj|trD%U_Davy`>XF~67lX&|AaFty7qK$ zqV8j*&uMGOrwWU{T`waT0lP0zHrF$>Y+^bcF9~kdL(UbwNwPlaX$Nak!u(d%j;J$b z3Rk?g)@cznJ&0f`;qz6C!>_-ddC=8wq=RMj1THy$nL$SKf=jk zHE!(uzUR(K;z5Nzt3@al_w|Y{LL%T0=$!$YsKV))x-})Ab|^KP`1xx{(k4}Md!CE- zbFEtJ%9z#7@8;IzJh;$c#50E&PC((E2wos|GJ z6MGEFZz?0aIa&t=y|%6&bLIp|f=Npx{!yw97GCiGEB<6>?HE2h6LR@mOxckTyc?mn zWKnJ)X5R{vEL{SsU`ENFb-aA8=2VA?03X<58)It$AmPe{&1^D5+`LwhtBMuq

aDjgt zQ#dHSdAp5C5i_suSB{#fT#^aYZ)JYdA!-BjC2gGiABmGbhCdTK-%$@_i?ah4qSYJ# zVEQ>~kmv8CC4Cwzd&?9s&em?CiPvxZF2<(_;q@FvTb7Y_AY+yR@cXJ;?Xe=!nXxKJ zFE=GWgY(9*N*qY>a8JXZ#hsqGE4z_D=~1jY5#GvFUh&`=@G}bRMl2k;jHx0gcBjUW z%D}I}h3J#9#tA_j)qn^3F|R3qpGF(n1@F|rWR7pj_BZ}IDT=@_T_(_f{tR@c0a46h zqp-u~_tPhGM7w9y1-aJn#Og$6!0dXhM6dt`up~VkP}@C&X^7`3XBrxl+jkdP0iC7j zx2Yu_i#(!9PVb)}f&X}ks&}7F_5cQW5*SD><&9oUm3Xp1ND$L)mtsMB`V1M>LFfOH zyG<>Lafe$qKR8WwLWmxF4Q^XVX}}gi6JIEpbwkrM{)!X;mLS{02ovWMk)u)3a+#9+ z8nj*ll_mSF+#qy3&GNr@a_lpC>+d7%WRB~I5EF&+Tm&oCyN+N9$_}r&TAk3H|;kCRQsO8potGeE? z{ENke$nw49iB$9wsYrE@mPQYj!j?++iX=_3eIFWO*44mRrY3au#0l{}b;f|1&vqwg zu^!f$W@sH}Fcea(U4wJmk9S=zGkrbL8%5c^ZP|V{N)?0UJQw1(?mGYQ0ThEu;vd5s0q7U^PH~-VvlC9%y{De#p92VhE!}gVR#Oiw z5kLX{qj6;x<%*+b3Ke!2=z+TQfc`F>Cyi$bCpeuRoAJP@V?W;{GI!e=6Qd9J><2Ku?<0*n;yIDX4Y-R|}F>PNLi-hBBw!POr zimuaB>9xlqAWP=hLyPCGiPfa(?8WG0-dX8wvKSLg9zCcHn)03nY8qc;iM!K02-!)l zTs_~w*-_;s)8RQuG}#<2t=a&+z~fZm+VYv|9i2!D5nEOMWO|~nYU~BnnSKI>()*d~ zrCR4zD7n+H3(~drE8c^3qx3di{Nk11#ShgesmjoDW&6MXjaE>0xcQq20tdw}H|30wecb`63|MN(KLQlaIrnr?pOPuszAh#;`IPFb3G!HQM5e$|HN$pKgIe|gvcO0>_$dhaTW$;_*zkUCQE=dwY;1pV)s}MlXd8(?05Fcb_m`We`S5S2czWmeV?e| zX}ktC&6F$xlO=TG2kOcKA@F(b&xsKQ#@DE-vF)N3qLGOk7G7H#uL&5Rd$d#JH+Wp=L#=`jh}*F*Zww8r+~>K0md*8zJKv(qU~Ha zB#qzSo(MWgFeJdBj||gd1k?pAaz#qA={*@BgJuHQ(EN;C+XllCM)03-7tGA& zgEJF{=1!Nh&3l*tU}-h0pey6`d4dowoTir9+SPq%Ii#P09KjU`ucG7_ZS%U>jHJ9{ zZ(3x!PY}q3&e8Ad3i!SSO)=XF{8_$uu4=`z5tRYH zi79IVxR1v*V!!OB>~9_a|K86<;@vtbB|~~7dRwaR0qnw0Qy}-suqn4*l&dv+f9Ng!JBtuSjLKu9-21e47 z(pYt`oc>SdyAb@iYUTw9H<}xVKH=n{a1mhiV9{m2J18&w`X3qp!eZY{ z&jt^*R}$mDHtH=3e2E?pB^YEcX03uvLz+%wPY_xszeun=RzVpDJNN<^Ww`jv%0wpu slZwBuHF-qb>xD%>rgzC-3p(=MxbJBnJ~Xka583DW8X0B*aCQIy09qq$G5`Po literal 0 HcmV?d00001 diff --git a/ImageTextureTrial2.py b/ImageTextureTrial2.py new file mode 100644 index 0000000..a8f198b --- /dev/null +++ b/ImageTextureTrial2.py @@ -0,0 +1,22 @@ +# Link to the code from StackExchange: https://blender.stackexchange.com/questions/157531/blender-2-8-python-add-texture-image + +#Import python +import bpy +from bpy import context, data, ops + + +mat = bpy.data.materials.new(name="New_Mat") +mat.use_nodes = True +bsdf = mat.node_tree.nodes["Principled BSDF"] +texImage = mat.node_tree.nodes.new('ShaderNodeTexImage') +texImage.image = bpy.data.images.load("C:\\Users\\satna\\OneDrive\\Desktop\\Programming\\Python\\Blender\\Blender-World-Generator\\DirtBlock.png") +mat.node_tree.links.new(bsdf.inputs['Base Color'], texImage.outputs['Color']) + +ob = context.view_layer.objects.active + +# Assign it to object +if ob.data.materials: + ob.data.materials[0] = mat +else: + ob.data.materials.append(mat) + diff --git a/Trial.py b/Trial.py index 8291247..f017f93 100644 --- a/Trial.py +++ b/Trial.py @@ -8,9 +8,9 @@ size = 1; # Setting the x, y, and z positions. x = y = z = size / 2; # Setting the number of cubes in each coordinate. -xNum = 20; -yNum = 20; -zNum = 1; +xNum = 3; +yNum = 3; +zNum = 3; # Setting the initial value for the number of cubes in each recursive call. cubeCount = 0; # Setting the maximum amount of cubes that is needed to be created. @@ -71,4 +71,5 @@ spawnGround(); # - z is for creating cubes in the z axis. # - I need to add the materials to the cubes and somehow save it in the Blender program. # - I need to replace the nested for loop with a recursive function to spawn the ground. -# - I need to add a function to create a tree in a random position. This function will create cubes and put them in a way to look like a tree. It will also assign the correct materials to their proper cubes. \ No newline at end of file +# - I need to add a function to create a tree in a random position. This function will create cubes and put them in a way to look like a tree. It will also assign the correct materials to their proper cubes. +# - I need to find a way to create creat and assign a single material to all the respective cubes. \ No newline at end of file