<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>-_-.log</title>
        <link>https://velog.io/</link>
        <description>개발자 </description>
        <lastBuildDate>Sat, 16 Apr 2022 13:11:52 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <image>
            <title>-_-.log</title>
            <url>https://images.velog.io/images/-_-/profile/708045b4-a4af-461f-9e8d-7ed31b1b1579/social.jpeg</url>
            <link>https://velog.io/</link>
        </image>
        <copyright>Copyright (C) 2019. -_-.log. All rights reserved.</copyright>
        <atom:link href="https://v2.velog.io/rss/-_-" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[Re-zero부터 시작하는 서버개발(1)]]></title>
            <link>https://velog.io/@-_-/Re-zero%EB%B6%80%ED%84%B0-%EC%8B%9C%EC%9E%91%ED%95%98%EB%8A%94-%EC%84%9C%EB%B2%84%EA%B0%9C%EB%B0%9C1</link>
            <guid>https://velog.io/@-_-/Re-zero%EB%B6%80%ED%84%B0-%EC%8B%9C%EC%9E%91%ED%95%98%EB%8A%94-%EC%84%9C%EB%B2%84%EA%B0%9C%EB%B0%9C1</guid>
            <pubDate>Sat, 16 Apr 2022 13:11:52 GMT</pubDate>
            <description><![CDATA[<p>시작합니다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[AnimNotify]]></title>
            <link>https://velog.io/@-_-/AnimNotify</link>
            <guid>https://velog.io/@-_-/AnimNotify</guid>
            <pubDate>Sun, 05 Sep 2021 14:08:41 GMT</pubDate>
            <description><![CDATA[<p>가끔 montage가 짧으면 notify 트리거가 플레이 이후에 트리그 되는 부분이 있는데 알고보니 진짜 blend time 때문임, 기본이 0.25로 되있어서 blend out이 시작되면 montage가중치가 떨어지면서 바로 트리거되지 않고 이후에 됨 ㅋㅋ </p>
]]></description>
        </item>
        <item>
            <title><![CDATA[delegate]]></title>
            <link>https://velog.io/@-_-/delegate</link>
            <guid>https://velog.io/@-_-/delegate</guid>
            <pubDate>Thu, 18 Feb 2021 04:17:33 GMT</pubDate>
            <description><![CDATA[<p>unreal 에서 델리게이트는 약한 관계를 유지하기 위해 사용. A에서 B의 함수들을 호출할때 delegate가 없으면 강한 관계로 호출해야 한다. (B포인터를 가져와서 호출).(  ex:  B-&gt;callFunc()  같은 방식
) (B에 대해 헤드파일을 가져와서 &quot;알게 되고&quot;  포인로 참조하여 함수를 호출했기 때문에 &quot;강한관계&quot; 라고 볼수밖에 없다. 이런식으로 C,D,E에 대해 함수들을 호출하려면 헤더파일을 다 임포트해야 된고 참조를 다 가져와야 하기때문에 코드의 수정도 어렵다.  반면 DELEGATE로 호출하는 경우에는 A에서 델리게이트를 선언한후 해당 델리게이트를 변수로 가지고 있으면 EX:
A헤더:
선언: DECLARE_DELEGATE(FDele_Single); (클래스 외부)
클래스 내부에서 변수를 킵하는 부분: FDele_Single Fuc_DeleSingle; (클래스 내부)</p>
<p>B클래스에서는 A의 델리게이트에 B클래스의 함수를 등록하면 된다.
예: A-&gt;Fuc_DeleSingle.BindUFunction(this, FName(&quot;CallDeleFunc_Single&quot;))
B는 A에 대해 알고있어야 하지만 A는 B에 대해 모르는 상황에서 B의 함수를 호출할수 있게 된다.
C,D,E도 A에 대해서는 알고있어야 하지만 A는 C,D,E를 몰라도 자신이 킵하고있는 델리게이트를 실행시키는 것으로 CDE의 함수를 호출할수 있고 호출시점도 A에서 정할수 있다. 때문에 약한 관계가 유지된다.(어느정도)
호출부분: if(Fuc_DeleSingle.IsBound()==true)    Fuc_DeleSingle.Execute();</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[xml]]></title>
            <link>https://velog.io/@-_-/xml</link>
            <guid>https://velog.io/@-_-/xml</guid>
            <pubDate>Tue, 29 Dec 2020 01:25:47 GMT</pubDate>
            <description><![CDATA[<p>1.XML 문서는 HTML 문서와 마찬가지로 트리(tree) 형태의 계층 구조를 가집니다
2. root 요소는 파일당 하나만 존재한다. root는 모든 요소의 조상이다.
3.xml 선언시:
<?xml version="XML문서버전" encoding="문자셋" standalone="yes|no"?>
<?xml version="1.0" encoding="UTF-8" ?>  등
standalone 속성은 XML 문서가 외부 DTD(Document Type Definition)와 같은 외부 소스의 데이터에 의존하고 있는 문서인지 아닌지를 XML 파서(parser)에 알려주는 역할을 합니다.
이 속성의 기본값은 no이며, yes로 설정하면 이 문서를 파싱(parsing)할 때 참조해야 할 외부 소스가 없다는 것을 의미합니다.
4. xml문법:</p>
<ol>
<li>모든 XML 요소는 종료 태그를 가져야 합니다.
HTML에서는 종료 태그를 생략하거나, 빈 태그를 사용해도 대부분의 경우 문제없이 동작합니다.
하지만 XML에서는 XHTML과 마찬가지로 종료 태그가 생략되면 오류가 발생합니다.
또한, 빈 태그에도 반드시 슬래시(/)를 추가해야만 오류가 발생하지 않습니다.</li>
<li>XML에서 속성값은 반드시 따옴표로 감싸야 합니다.
<student name=홍길동>   // 오류가 발생함.
<student name="이순신"> // 정상적으로 동작함.</li>
<li>XML에서는 예약되어 있는 다섯 개의 특별한 기호가 있습니다.
&lt;  &gt;   &amp; &quot; &#39; 등  ,파서는 이를 인식함</li>
<li>XML 주석(comment) <!-- 주석 내용 --><br>XML 주석에서 시작과 마지막의 하이픈(-)의 개수는 중요하지 않습니다.
다만, 주석의 내용 안에 두 개 이상의 연속된 하이픈은 허용하지 않습니다.</li>
<li>xml 요소 문법 
xml요소란 시작 태그부터 종료까지 모든것 
&lt;요소이름 속성1=&quot;속성값&quot; 속성2=&quot;속성값&quot;... &gt; 내용 &lt;/요소이름&gt;    여기까지가 한개 요소
내용이 없는 빈 요소:
&lt;요소이름 속성1=&quot;속성값&quot; 속성2=&quot;속성값&quot;... /&gt; </li>
<li>xml속성:
XML 속성은 XML 요소에 대한 추가적인 정보를 제공해주며, 해당 요소의 특징을 정의합니다.
속성은 속성명:속성값 의 형식으로 정의된다. 속성값은 &quot;&quot;로 포장
&lt;요소이름 속성1=&quot;속성값&quot; 속성2=&quot;속성값&quot;... &gt;</li>
<li>속성은 여러 개의 값을 가질 수 없으며, 요소처럼 손쉽게 확장할 수 없다는 단점을 가집니다.
또한, 속성은 XML 트리에 포함되지 않기 때문에 다양한 용도로 활용할 수가 없습니다.</li>
<li>xml 네임스페이스: 충돌방지용
&lt;요소이름 xmlns: prefix = &quot;URI&quot;&gt;
XML 네임스페이스의 선언은 xmlns나 xmlns:로 시작합니다.
여기서 URI가 네임스페이스 식별자이다. 
&lt;a:body xmlns:a=&quot;<a href="https://www.w3.org/TR/html5/&quot;&gt;">https://www.w3.org/TR/html5/&quot;&gt;</a> a접두사를 사용하여 네임스페이스 대체
<root xmlns:a="https://www.w3.org/TR/html5/"
 xmlns:b="http://codingsam.com/xml/physical/">
 &lt;a:body&gt;<pre><code> &lt;a:h1&gt;html에서의 제목&lt;/a:h1&gt;
 &lt;a:p&gt;html에서의 단락&lt;/a:p&gt;</code></pre> </a:body>
 &lt;b:body&gt;<pre><code> &lt;b:arm&gt;70&lt;/b:arm&gt;
 &lt;b:leg&gt;110&lt;/b:leg&gt;</code></pre> </b:body></root>
여러개의 네임스페이스 사용함 안에 있는 요소들은 서로 다른 네임스페이스 사용가능</li>
<li>현재 많이 사용되고 있는 XML 파서의 종류는 다음과 같습니다.<ul>
<li>MSXML(Microsoft Core XML Services)</li>
<li>System.Xml.XmlDocument</li>
<li>Java built-in parser</li>
<li>Saxon</li>
<li>Xerces</li>
</ul>
</li>
<li>문서 객체 모델(DOM)이란?
<img src="https://images.velog.io/images/-_-/post/8b42a941-609b-4256-8b89-e614d3b572f9/image.png" alt="">
DOM은 문서 내의 모든 요소를 정의하고, 해당 요소에 접근하는 방법까지 정의합니다.</li>
</ol>
]]></description>
        </item>
        <item>
            <title><![CDATA[조합 / 순열 알고리즘]]></title>
            <link>https://velog.io/@-_-/%EC%A1%B0%ED%95%A9-%EC%A4%91%EB%B3%B5%EC%A1%B0%ED%95%A9-%EC%A4%91%EB%B3%B5%EC%88%9C%EC%97%B4-%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98</link>
            <guid>https://velog.io/@-_-/%EC%A1%B0%ED%95%A9-%EC%A4%91%EB%B3%B5%EC%A1%B0%ED%95%A9-%EC%A4%91%EB%B3%B5%EC%88%9C%EC%97%B4-%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98</guid>
            <pubDate>Wed, 16 Dec 2020 07:24:00 GMT</pubDate>
            <description><![CDATA[<p><a href="https://m.blog.naver.com/PostView.nhn?blogId=kmh03214&amp;logNo=221685090465&amp;targetKeyword=&amp;targetRecommendationCode=1">https://m.blog.naver.com/PostView.nhn?blogId=kmh03214&amp;logNo=221685090465&amp;targetKeyword=&amp;targetRecommendationCode=1</a></p>
<p><a href="https://m.blog.naver.com/PostView.nhn?blogId=kmh03214&amp;logNo=221687218968&amp;navType=tl">https://m.blog.naver.com/PostView.nhn?blogId=kmh03214&amp;logNo=221687218968&amp;navType=tl</a></p>
<p>이분이 설명을 잘해 주셨다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[managed memory &unmanaged memory]]></title>
            <link>https://velog.io/@-_-/managed-memory-unmanaged-memory</link>
            <guid>https://velog.io/@-_-/managed-memory-unmanaged-memory</guid>
            <pubDate>Wed, 02 Dec 2020 01:25:51 GMT</pubDate>
            <description><![CDATA[<p>managed memory 는 GC에 의해 관리되는 메모리이다. GC가 있은 뒤부터 그렇게 부르기도 한다. 
<a href="https://docs.microsoft.com/en-us/dotnet/framework/interop/blittable-and-non-blittable-types">https://docs.microsoft.com/en-us/dotnet/framework/interop/blittable-and-non-blittable-types</a>  블리터블 타입이랑 관계가 있기도 함</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[유니티2]]></title>
            <link>https://velog.io/@-_-/%EC%9C%A0%EB%8B%88%ED%8B%B02</link>
            <guid>https://velog.io/@-_-/%EC%9C%A0%EB%8B%88%ED%8B%B02</guid>
            <pubDate>Wed, 02 Dec 2020 01:21:52 GMT</pubDate>
            <description><![CDATA[<p>셰이더그래프에서 master그래프노드를 선택하고 active조절해서 다른 마스터그래프로 교체가 가능하다. </p>
<p>c#에서 int나누기는 int를 반환하는데 1이 되기에 부족하면 다 짜른다.
        int a = 29;
        int b = 41;
        if (a/b&gt;=0.28){
            Console.WriteLine(&quot;Hello World&quot;);
        }
        Console.WriteLine(a/b);
0이 나온다.</p>
<p>int가 포함된 나누기를 할때에는 앞에 (float)전환을 하는게 편하다.</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[벡터외적으로 삼각형 면적 구하기]]></title>
            <link>https://velog.io/@-_-/%EB%B2%A1%ED%84%B0%EC%99%B8%EC%A0%81%EC%9C%BC%EB%A1%9C-%EC%82%BC%EA%B0%81%ED%98%95-%EB%A9%B4%EC%A0%81-%EA%B5%AC%ED%95%98%EA%B8%B0</link>
            <guid>https://velog.io/@-_-/%EB%B2%A1%ED%84%B0%EC%99%B8%EC%A0%81%EC%9C%BC%EB%A1%9C-%EC%82%BC%EA%B0%81%ED%98%95-%EB%A9%B4%EC%A0%81-%EA%B5%AC%ED%95%98%EA%B8%B0</guid>
            <pubDate>Fri, 27 Nov 2020 06:20:47 GMT</pubDate>
            <description><![CDATA[<p>두 벡터의 외적은 길이가 두 벡터로 구성된 평행 사변형의 면적과 동일한 벡터를 제공합니다. 절반 만 취하면 삼각형의 면적을 얻을 수 있습니다.</p>
<p> //C#
 // I guess Points are Vector3 values? Well it doesn&#39;t really matter
 // but the cross product is only defined for R3</p>
<p> for(int ii = 0 ; ii &lt; indices.Length; ii+=3)
 {
     Vector3 A = Points[indices[ii]];
     Vector3 B = Points[indices[ii+1]];
     Vector3 C = Points[indices[ii+2]];
     Vector3 V = Vector3.Cross(A-B, A-C);
     Area += V.magnitude * 0.5f;
 }</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[유니티2]]></title>
            <link>https://velog.io/@-_-/%EC%9C%A0%EB%8B%88%ED%8B%B02-3so3c1hb</link>
            <guid>https://velog.io/@-_-/%EC%9C%A0%EB%8B%88%ED%8B%B02-3so3c1hb</guid>
            <pubDate>Fri, 27 Nov 2020 02:56:45 GMT</pubDate>
            <description><![CDATA[<p>정적 생성자: 정적 생성자는 정적 데이터를 초기화하거나 한 번만 수행해야 하는 특정 작업을 수행하는 데 사용됩니다. 첫 번째 인스턴스가 만들어지거나 정적 멤버가 참조되기 전에 자동으로 호출됩니다.
<a href="https://docs.microsoft.com/ko-kr/dotnet/csharp/programming-guide/classes-and-structs/static-constructors">https://docs.microsoft.com/ko-kr/dotnet/csharp/programming-guide/classes-and-structs/static-constructors</a></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[그래픽스]]></title>
            <link>https://velog.io/@-_-/%EA%B7%B8%EB%9E%98%ED%94%BD%EC%8A%A4</link>
            <guid>https://velog.io/@-_-/%EA%B7%B8%EB%9E%98%ED%94%BD%EC%8A%A4</guid>
            <pubDate>Tue, 10 Nov 2020 02:47:38 GMT</pubDate>
            <description><![CDATA[<p><img src="https://images.velog.io/images/-_-/post/9280bb3d-c5e3-47e2-bfa8-81f24793b4c9/image.png" alt=""></p>
<p>출처: unity soul 2019 이득우 발표자료중 캡쳐, 문제시 삭제</p>
<p>4X4행열(3+w)은 계산의 편의를 위해 사용한다.</p>
<p>카메라 스페이스 변환은 그냥 카메라 world중심으로 했던 matrix연산에 대해 카메라 중심으로 바라보는 연산을 할 뿐이다.  </p>
]]></description>
        </item>
        <item>
            <title><![CDATA[코딩]]></title>
            <link>https://velog.io/@-_-/%EC%BD%94%EB%94%A9</link>
            <guid>https://velog.io/@-_-/%EC%BD%94%EB%94%A9</guid>
            <pubDate>Fri, 06 Nov 2020 01:15:41 GMT</pubDate>
            <description><![CDATA[<p>void* 는 어떤 자료형이든지 받을수 있는 포인터이고 타입캐스팅을 통해 변환시켜 사용 다른 자료가 가지고있는 메모리 침해시는 어떨지 모르겠음 테스트 필요</p>
]]></description>
        </item>
        <item>
            <title><![CDATA[유니티]]></title>
            <link>https://velog.io/@-_-/%EC%9C%A0%EB%8B%88%ED%8B%B0-cpmwnbux</link>
            <guid>https://velog.io/@-_-/%EC%9C%A0%EB%8B%88%ED%8B%B0-cpmwnbux</guid>
            <pubDate>Thu, 29 Oct 2020 02:46:33 GMT</pubDate>
            <description><![CDATA[<p>Ray ray = camera.ScreenPointToRay(Input.mousePosition);
이는 마우스가 가리키는 곳으로의 레이를 표시하고 
ray.origin은 반직선과 근평면의 교점이다. (p2)</p>
<p>Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
        Vector3 p2 = ray.origin;
        Vector3 p1 = Camera.main.transform.position;
        //0 0 0 for test  need change to 0,y,0 (y plane)
        Vector3 p3 = Vector3.zero;
        // normal vector of meet plane
        Vector3 N = new Vector3(0, 1, 0);
        Vector3 p = p1 + (Vector3.Dot(N, p3 - p1) / Vector3.Dot(N, p2 - p1)) * (p2 - p1);</p>
<p>마우스가 가리키는 방향으로의 반직선과 N(평면노말)사이의 교점을 구할수 있다.
p3은 평면상의 점 하나  p1은 카메라위치 </p>
]]></description>
        </item>
        <item>
            <title><![CDATA[ 유니티]]></title>
            <link>https://velog.io/@-_-/%EC%9C%A0%EB%8B%88%ED%8B%B0</link>
            <guid>https://velog.io/@-_-/%EC%9C%A0%EB%8B%88%ED%8B%B0</guid>
            <pubDate>Tue, 20 Oct 2020 09:35:46 GMT</pubDate>
            <description><![CDATA[<p>raycast 알고리즘: 반직선이 공간에서 삼각형과의 충돌여부를 모든 collider면에 수행함 collider면에 맞으면 해당 객체의 메쉬면에 수행함 (내부 sorting있음)  참고: <a href="http://blog.daum.net/gamza-net/8">http://blog.daum.net/gamza-net/8</a></p>
<p>렌더링 파이프라인중 카메라변환 주의 요망
렌더링 파이프라인중 투영변환 주의 요망
투영변환: <a href="http://blog.naver.com/destiny9720/221425095052">http://blog.naver.com/destiny9720/221425095052</a>
그외 해당 블로그에 대량 정리된 게임수학 있음</p>
<p><a href="https://jhnyang.tistory.com/299">https://jhnyang.tistory.com/299</a>
#ifdef  정리 </p>
<p>깊이 버퍼: <a href="http://chulin28ho.egloos.com/5284164">http://chulin28ho.egloos.com/5284164</a>    1~7부까지의 깊이버퍼 정리
fog를 깊이 버퍼로 가능</p>
]]></description>
        </item>
    </channel>
</rss>