> For the complete documentation index, see [llms.txt](https://krjaeh0.gitbook.io/j-log/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://krjaeh0.gitbook.io/j-log/gamedev/gameplayprogrammer/shadergraph/shaderlecture1.md).

# ShaderLecture1

⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠\
You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving'

## Excalidraw Data

### Text Elements

* uvw ^oudfsbXL
* xyz ^5MdBV1RB
* 2D ^r9jZ57Fl
* 3D ^54kAh2oz
* 포토샵의 레이어 개념 ^B8I3iue3
* 전계도 ^ES2yqgZr
* 노말맵 : 질감(빛의 굴절표현) ^8FCqBrca
* RGB 체널로 구성됨 ^UoylGeht
* R : <
* G : 위로
* B : 앞으로(직각이 될수록 검정)5 ^wnctUfSc
* 게임엔진에서는 뭘하는가 ^ucY0hcIM
* 마스크 ^OQLo5eS6
* 0.5 0.5 0.1 이 기본값 ^8MXVbTMF
* 셸식 세이딩 ^0QYfwwpu

### Drawing

```compressed-json
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
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://krjaeh0.gitbook.io/j-log/gamedev/gameplayprogrammer/shadergraph/shaderlecture1.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
