---
# System prepended metadata

title: 30/06/21 Практика Евчук Даяна

---


# 30/06/21 Практика Евчук Даяна
## За сегодня: 
1. Присутствовала на паре с 8.00
2. [Чебурашка](https://www.shadertoy.com/view/fllSzn#)

```
float circle(vec2 a, vec2 point, float r, float blur)
{
    float b=length(a-point);
    float c=smoothstep(r,r-blur,b);
    return c;
}

void mainImage( out vec4 fragColor, in vec2 fragCoord )
{
    
    vec2 a = fragCoord.xy/iResolution.xy;
     a-=.5;
     a.x*=iResolution.x / iResolution.y;
     vec3 color=vec3(9.);
    
      float c=circle(a, vec2(.0, .2), .3, .01); // head
       c-=circle(a, vec2(.0, .1), .037, .01); // head
       c-=circle(a, vec2(.0, .0), .08, .02);// smile
       c+=circle(a, vec2(.0, .035), .08, .02);// smile
       c+=circle(a, vec2(-.4, .2), .2, .01); // left eir
       c+=circle(a, vec2(.4, .2), .2, .01); // right eir
       c+=circle(a, vec2(.2, -.48), .1, .01); // right leg
       c+=circle(a, vec2(-.2, -.48), .1, .01); // left leg
       c+=circle(a, vec2(.0, -.3), .2, .02); // body
       c-=circle(a, vec2(-.08, .2), .07, .01); // eye l
       c-=circle(a, vec2(.08, .2), .07, .01);// eye r
       c+=circle(a, vec2(-.08, .2), .053, .01); // eye l
       c+=circle(a, vec2(.08, .2), .053, .01);// eye r
       c-=circle(a, vec2(-.08, .2), .03, .01); // eye l
       c-=circle(a, vec2(.08, .2), .03, .01);// eye r
       c-=circle(a, vec2(-.4, .2), .1, .04); // eir
       c-=circle(a, vec2(.4, .2), .1, .04);// eir 
       c-=circle(a, vec2(.0, -.2), .1, .01);// body
       c+=circle(a, vec2(-.3, -.3), .1, .01); // left lapka
       c+=circle(a, vec2(.3, -.3), .1, .01); // right lapka
       
        color=vec3(0., 7., 2.)* c;
    
         fragColor = vec4(color, 3);
   
}
```

3. [ФИО](https://www.shadertoy.com/view/NllXzr)
 *Для лучшего развития и понимания, я пересмотрела предложенные работы от сайта Shadertoy, где нашла пример этого кода, постаралась его разобрать и переделать.*

```
const int font[] = int[](
 0x69f99, 0x79797, 0xe111e, 0x79997, 0xf171f, 0xf1711, 0xe1d96, 0x99f99, 
 0xf444f, 0x88996, 0x95159, 0x1111f, 0x9f999, 0x9bd99, 0x69996, 0x79971,
 0x69b5a, 0x79759, 0xe1687, 0xf4444, 0x99996, 0x999a4, 0x999f9, 0x99699,
 0x99e8e, 0xf843f, 0x6bd96, 0x46444, 0x6942f, 0x69496, 0x99f88, 0xf1687,
 0x61796, 0xf8421, 0x69696, 0x69e84, 0x66400, 0x0faa9, 0x0000f, 0x00600,
 0x0a500, 0x02720, 0x0f0f0, 0x08421, 0x33303, 0x69404, 0x00032, 0x00002,
 0x55000, 0x00000, 0x00202, 0x42224, 0x24442);

const ivec2 MAP_SIZE = ivec2(4,5);


int drawChar( in int char, in vec2 pos, in vec2 size, in vec2 uv )
{
    uv = vec2(MAP_SIZE)*(uv-pos)/size;

    ivec2 iuv = ivec2(round(uv));
    
    if( iuv.x<0 || iuv.x>MAP_SIZE.x-1 ||
        iuv.y<0 || iuv.y>MAP_SIZE.y-1 ) return 0;

    int index = MAP_SIZE.x*iuv.y + iuv.x;
    
    return (font[char]>>index)&1;

}

vec2  charSize;
float spaceSize;
vec2  charPos;
int   chr;

#define DC(a) chr += drawChar( a, charPos, charSize, uv); charPos.x += spaceSize;

#define _A DC(0)
#define _B DC(1)
#define _C DC(2)
#define _D DC(3)
#define _E DC(4)
#define _F DC(5)
#define _G DC(6)
#define _H DC(7)
#define _I DC(8)
#define _J DC(9)
#define _K DC(10)
#define _L DC(11)
#define _M DC(12)
#define _N DC(13)
#define _O DC(14)
#define _P DC(15)
#define _Q DC(16)
#define _R DC(17)
#define _S DC(18)
#define _T DC(19)
#define _U DC(20)
#define _V DC(21)
#define _W DC(22)
#define _X DC(23)
#define _Y DC(24)
#define _Z DC(25)
#define _BLNK DC(49)

void Start( void )
{
    chr = 0;
}

float End( void )
{
    return float(chr);
}


void SetSize( float size )
{
    charSize = size*vec2(MAP_SIZE) / float(MAP_SIZE.x);
    spaceSize = charSize.x*1.25;
}

void SetPos( in vec2 pos )
{
    charPos = pos;
}

void mainImage( out vec4 fragColor, in vec2 fragCoord )
{
	vec2 uv = fragCoord / iResolution.y;
    

    Start();
    
    SetSize( 0.05 );
	SetPos( vec2(0.45, 0.55) );
    
    _E _V _C _H _U _K   _BLNK   _D _A _Y _A _N _A 
    
     SetSize( 0.05 );
	SetPos( vec2(0.50, 0.45) );
    
    _A _N _A _T _O _L _I _E _V _N _A
    
    
    
    float txt = End();        
    
	fragColor = vec4(7,0,txt,4.9);
}
```

4. [Копатыч с пчёлками](https://www.shadertoy.com/view/stlXRr)

```
float circle(vec2 a, vec2 point, float r, float blur)
{
    float b=length(a-point);
    float c=smoothstep(r,r-blur,b);
    return c;
}

void mainImage( out vec4 fragColor, in vec2 fragCoord )
{
    
    vec2 a = fragCoord.xy/iResolution.xy;
    a-=.5;
    a.x*=iResolution.x / iResolution.y;
    vec3 color=vec3(9.);
    
    float c=circle(a, vec2(.0, .0), .3, .02); // body
   c-=circle(a, vec2(.0, .0), .044, .01); // nose
   c+=circle(a, vec2(-.0, .02), .044, .01); // рот
     c+=circle(a, vec2(-.2, .2), .057, .01); //  ухо     
 c+=circle(a, vec2(.2, .2), .057, .01); //  ухо 
     c+=circle(a, vec2(.2, -.30), .1, .01); // right leg
     c+=circle(a, vec2(-.2, -.30), .1, .01); // left leg
      c-=circle(a, vec2(.0, .1), .044, .01); // nose
     c-=circle(a, vec2(-.08, .2), .07, .01); // eye l
      c-=circle(a, vec2(.08, .2), .07, .01);// eye r
      c+=circle(a, vec2(-.08, .2), .053, .01); // eye l
      c+=circle(a, vec2(.08, .2), .053, .01);// eye r
       c-=circle(a, vec2(-.08, .2), .03, .01); // eye l
      c-=circle(a, vec2(.08, .2), .03, .01);// eye r
      c+=circle(a, vec2(-.3, .0), .1, .01); // left lapka
    c+=circle(a, vec2(.3, .0), .1, .01); // right lapka
    
     c-=circle(a, vec2(-.62, .2), .09, .01); //  пчела
    c+=circle(a, vec2(-.62, .2), .09, .01); //  пчела  
    c+=circle(a, vec2(-.62, .2), .050, .01); //  пчела 
     c-=circle(a, vec2(-.58, .2), .050, .01); //  пчела 
     
      c-=circle(a, vec2(-.52, .2), .09, .01); //  пчела
    c+=circle(a, vec2(-.52, .2), .09, .01); //  пчела  
    c+=circle(a, vec2(-.52, .2), .050, .01); //  пчела 
     c-=circle(a, vec2(-.48, .2), .050, .01); //  пчела 
     
     c+=circle(a, vec2(-.43, .2), .025, .01); //  пчела 
     
     c+=circle(a, vec2(-.50, .3), .03, .01); //  пчела
     c+=circle(a, vec2(-.54, .3), .03, .01); //  пчела
     
     
     
     
     
      c-=circle(a, vec2(.62, -.2), .09, .01); //  пчела
    c+=circle(a, vec2(.62, -.2), .09, .01); //  пчела  
    c+=circle(a, vec2(.62, -.2), .050, .01); //  пчела 
     c-=circle(a, vec2(.58, -.2), .050, .01); //  пчела 
     
      c-=circle(a, vec2(.52,-.2), .09, .01); //  пчела
    c+=circle(a, vec2(.52, -.2), .09, .01); //  пчела  
    c+=circle(a, vec2(.52, -.2), .050, .01); //  пчела 
     c-=circle(a, vec2(.48, -.2), .050, .01); //  пчела 
     
     c+=circle(a, vec2(.43, -.2), .025, .01); //  пчела 
     
     c+=circle(a, vec2(.50, -.1), .03, .01); //  пчела
     c+=circle(a, vec2(.54, -.1), .03, .01); //  пчела
     
     
     
     
    color=vec3(4., 9., 2.)* c;
    
    fragColor = vec4(color, 3);
   
}
```