<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet href="http://rss.egloos.com/style/blog.xsl" type="text/xsl" media="screen"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
	<title>CrazyXIII</title>
	<link>http://cagetu.egloos.com</link>
	<description>미치도록 잘하고 싶다. -_-</description>
	<language>ko</language>
	<pubDate>Fri, 06 Nov 2009 16:45:21 GMT</pubDate>
	<generator>Egloos</generator>
	<image>
		<title>CrazyXIII</title>
		<url>http://pds.egloos.com/logo/1/200502/25/32/c0001532.jpg</url>
		<link>http://cagetu.egloos.com</link>
		<width>80</width>
		<height>43</height>
		<description>미치도록 잘하고 싶다. -_-</description>
	</image>
  	<item>
		<title><![CDATA[ Live팀? ]]> </title>
		<link>http://cagetu.egloos.com/5115991</link>
		<guid>http://cagetu.egloos.com/5115991</guid>
		<description>
			<![CDATA[ 
  이번 학기 마케팅 수업을 듣는데, "시장 점유율과 시장 성장률"에 대한 BCG 매트릭스로 시장분류와 전략을 만들어 낼 수 있다고 배우는데... 거기에는 CashCow라는 것이 나온다.<br><br><div style="text-align:center"><img class="image_mid" border="0" onmouseover="this.style.cursor='pointer'" alt="" src="http://pds17.egloos.com/pds/200911/07/32/c0001532_4af44f6326f30.png" width="500" height="201.478743068" onclick="Control.Modal.openDialog(this, event, 'http://pds17.egloos.com/pds/200911/07/32/c0001532_4af44f6326f30.png');" /></div><br>게임 회사에서 특히 프로그래머로 국한해서 이야기를 하자면, Live팀에서 근무하는 것을 별로 선호하지 않거나, 회사 내부에서도 신규 프로젝트팀에 비해 라이브팀을 은근히 낮게(?) 보는 경향이 있다.<br><br>(여담이지만, 왜 신규 프로젝트라고 라이브는 일반적으로 프로젝트라고 하지 않을까요?!&nbsp;궁금하지 않으신가요?!&nbsp;^^)<br><br>하지만, 라이브팀은 수익을 창출하는 회사의 젖줄이고, 그들은 벌어들이는 돈으로 결국 신규프로젝트도 돌아가고 있는 것이다.<br>결국 신규프로젝트팀은 라이브팀에게 고마워해야 하지 않나?<br><br>위의 마케팅 이론으로 보자면, 문제아 혹은 별인 신규프로젝트가 성공하기 위해서는 결국 캐쉬 카우인 라이브가 계속 잘 되면서 돈을 벌어서 지원해주어야 하는 것이다.<br><br>그런 의미로<br><br><strong><span style="FONT-SIZE: 100%">라이브 팀에서 근무하고 계신 분들은 좀 더 당당해지셨으면 좋겠네요... 여러분이 정말 대단하신 겁니다. ^^<br>신규 프로젝트팀은 라이브 팀 한테 고마운 마음으로 열심히 일하셔야 겠지요?! ^^<br></span></strong><br>하지만 풀어야 할 숙제는 라이브를 오래하다보면, 일상적인 업무에 자기계발에 소홀해 질 수가 있다. 개인적인 생각은 이 문제는 회사 차원에서 교육에 조금 더 힘을 써주어야 한다는 것이다.<br>돈을 벌어다 주는 사람들에게 당연히 약간의 신경을 써주어서, 그들이 뒤쳐지지 않도록 해줬으면 좋겠다.<br><br>이런 라이브팀의 중요함을 더 부각되었으면, 좋겠다. 			 ]]> 
		</description>
		<category>개발 노트</category>

		<comments>http://cagetu.egloos.com/5115991#comments</comments>
		<pubDate>Fri, 06 Nov 2009 16:42:36 GMT</pubDate>
		<dc:creator>cagetu</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 어느 팀장이야기... ]]> </title>
		<link>http://cagetu.egloos.com/5115968</link>
		<guid>http://cagetu.egloos.com/5115968</guid>
		<description>
			<![CDATA[ 
  <p><span style="FONT-FAMILY: Verdana">어느 날 눈을 갑자기 "너는 이제 팀장이 할 때가 된 것 같은데?" 라는 둥 "자리가 사람을 만든다"는 이야기를 하면서, 팀장이 되어 버렸다. "나는 무엇을 해야 하나?"<br><br>문득, 그는 집에 오다가 생각을 한다. <br>"아!! 내가 손에 쥐고 있는 것은 이런 초보 팀장과 함께 해주는 사람들의 시간(청춘)이구나!!!"<br><br>나는 무엇을 해야 하나? <br>정치? 돈을 많이 줘?<br><br>그가 해줄 수 있는 것은 결국 그들의 더 나은 미래를 위해, 경력에 도움이 될 수 있도록 일을 열심히 하게 해주는 것 뿐!!!<br>그들의 시간을 보상해주기 위해서, 회사에 있는 동안 치열하게 일을 하게 해주고, 교육을 시켜주고, 일하는 방법을 알려준다.<br><br>이것 말고는 그들에게 해줄 수 있는 것이 아무것도 없다.<br><br>이러다 보니 그 팀장은 그들의 일정을 체크하고, 교육자료를 만들어주고, 회의를 참관하느라 자신의 업무를 하는 시간이 줄어들게되었다고 한다. 결국은?! 집에서 보충을 한다.<br><br>부디 일이 많다고?! 혹은 어느 팀장에게 구박 받았다고 잔소리를 좀 듣는다고 해서, 스트레스 받지 마세요!!<br>아직 워밍업도 안 끝났자나요?! <br><br>이게 제가 열심히 해야 하는 이유입니다. 부족하지만, 같이 한번 잘해보자구요!!!<br><br>어느 팀장이~</span></p>			 ]]> 
		</description>
		<category>개발 노트</category>

		<comments>http://cagetu.egloos.com/5115968#comments</comments>
		<pubDate>Fri, 06 Nov 2009 16:12:38 GMT</pubDate>
		<dc:creator>cagetu</dc:creator>
	</item>
	<item>
		<title><![CDATA[ Shader와 C++에서 RenderState를 혼용할 때 주의사항 ]]> </title>
		<link>http://cagetu.egloos.com/5114857</link>
		<guid>http://cagetu.egloos.com/5114857</guid>
		<description>
			<![CDATA[ 
  <span style="FONT-FAMILY: Verdana"><span style="FONT-SIZE: 100%">Shader의 Pass 안에 설정해 놓은 RenderState는&nbsp;Effect의 Pass에 의해 적용된다.<br>C++에서도 RenderState를 설정할 수 있으므로, 두 곳에서 RenderState를 작성할 때에는 주의해야 할 것이 있을 수 있다.<br><br>그런데, 주의 할 것은&nbsp;셰이더 이펙트를&nbsp;사용한다고 선언할 때, Flag를 주는데,<br>&nbsp;&nbsp;&nbsp;&nbsp;Effect-&gt;Begin( &amp;m_nNumPass, flags );<br>&nbsp;&nbsp;&nbsp;&nbsp;/// 패스 그리기<br>&nbsp;&nbsp;&nbsp;&nbsp;Effect-&gt;End();<br>일반적으로는 Begin()하기 전에 랜더스테이트를 기억해 두었다가, End()가 호출되면 랜더스테이트를 복구한다. <br>(Flag 설정에 따라 다르지만...)<br><br>예를 들어,<br></span></span><p><span style="FONT-FAMILY: Verdana"><span style="FONT-SIZE: 100%">&nbsp;&nbsp;&nbsp;&nbsp;| SolidEntities<br></span></span><span style="FONT-FAMILY: Verdana"><span style="FONT-SIZE: 100%">&nbsp;&nbsp;&nbsp;&nbsp;{<br></span></span><span style="FONT-FAMILY: Verdana"><span style="FONT-SIZE: 100%">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///C++에서는 랜더스테이트를 설정 하지 않음<br></span></span><span style="FONT-FAMILY: Verdana"><span style="FONT-SIZE: 100%">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;effect-&gt;Begin();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;셰이더 안에서 AlphaTestEnable = true;<br></span></span><span style="FONT-FAMILY: Verdana"><span style="FONT-SIZE: 100%">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/// 삼각형 그리기!!!<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;effect-&gt;End();<br></span></span><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: Verdana">&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;| TransparentEntities</span><br></span><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: Verdana">&nbsp;&nbsp;&nbsp;&nbsp;{<br></span><span style="FONT-FAMILY: Verdana">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SetRenderState( ALHPABLENDENABLE, TRUE );</span><br></span><span style="FONT-FAMILY: Verdana"><span style="FONT-SIZE: 100%">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;effect-&gt;Begin();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// 셰이더 안에는 AlphaBlendEnable = false;로 설정<br></span></span><span style="FONT-FAMILY: Verdana"><span style="FONT-SIZE: 100%">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/// 사각형 그리기!!!<br></span></span><span style="FONT-FAMILY: Verdana"><span style="FONT-SIZE: 100%">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;effect-&gt;End();<br></span></span><span style="FONT-FAMILY: Verdana"><span style="FONT-SIZE: 100%">&nbsp;&nbsp;&nbsp;&nbsp;}<br>이렇게 되면, 결과는 어떻게 될까?<br>1번째 프렘임의 마지막 랜더링 할 때, effect-&gt;End()가 호출된 후에, AlphaBlendEnable = true 로 복구가 되면서, 2번째 프레임의 SolidEntity들을 그릴 때에도 AlphaBlendEnable = true가 계속 적용되어서, 결국 원하지 않게, 전체 화면에 AlphaBlend가 적용된다.<br><br>결론으로는, 왠만하면, 섞어서 쓰지 말고, 한 쪽을 선택해서 사용하시라!!!<br><br>당연한 이야기이지만, 가끔은 이런 사소한 것 때문에 고생한다.. ㅎㅎ</span></span></p>			 ]]> 
		</description>
		<category>개발 노트</category>

		<comments>http://cagetu.egloos.com/5114857#comments</comments>
		<pubDate>Thu, 05 Nov 2009 13:38:04 GMT</pubDate>
		<dc:creator>cagetu</dc:creator>
	</item>
	<item>
		<title><![CDATA[ Early Z ]]> </title>
		<link>http://cagetu.egloos.com/5112955</link>
		<guid>http://cagetu.egloos.com/5112955</guid>
		<description>
			<![CDATA[ 
  <div style="TEXT-ALIGN: left; WIDTH: 425px" id="__ss_1923660"><a style="MARGIN: 12px 0px 3px; DISPLAY: block; FONT: 14px Helvetica,Arial,Sans-serif; TEXT-DECORATION: underline" title="Z Buffer Optimizations" href="http://www.slideshare.net/pjcozzi/z-buffer-optimizations"><span style="FONT-FAMILY: Verdana">Z Buffer Optimizations</span></a><span style="FONT-FAMILY: Verdana"><embed height="355" type="application/x-shockwave-flash" width="425" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=zbufferoptimizations-090829081736-phpapp01&amp;stripped_title=z-buffer-optimizations" allowscriptaccess="always" allowfullscreen="true"></embed></span> <div style="FONT-FAMILY: tahoma,arial; HEIGHT: 26px; FONT-SIZE: 11px; PADDING-TOP: 2px"><span style="FONT-FAMILY: Verdana">View more </span><a style="TEXT-DECORATION: underline" href="http://www.slideshare.net/"><span style="FONT-FAMILY: Verdana">presentations</span></a><span style="FONT-FAMILY: Verdana">from </span><a style="TEXT-DECORATION: underline" href="http://www.slideshare.net/pjcozzi"><span style="FONT-FAMILY: Verdana">pjcozzi</span></a><span style="FONT-FAMILY: Verdana">.</span></div></div><span style="FONT-FAMILY: Verdana">KASA에서도 같이 본 문서인데, 밑에는 제가 한번 적용 본 사례입니다.<br><object id="Q12681" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,115,0" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="500" height="420"><param name="_cx" value="5080"><param name="_cy" value="5080"><param name="FlashVars" value=""><param name="Movie" value="http://filefarm.storyq.net/SlideView.swf?boxKey=001257245623026605"><param name="Src" value="http://filefarm.storyq.net/SlideView.swf?boxKey=001257245623026605"><param name="WMode" value="Opaque"><param name="Play" value="-1"><param name="Loop" value="-1"><param name="Quality" value="High"><param name="SAlign" value=""><param name="Menu" value="-1"><param name="Base" value=""><param name="AllowScriptAccess" value=""><param name="Scale" value="ShowAll"><param name="DeviceFont" value="0"><param name="EmbedMovie" value="0"><param name="BGColor" value=""><param name="SWRemote" value=""><param name="MovieData" value=""><param name="SeamlessTabbing" value="1"><param name="Profile" value="0"><param name="ProfileAddress" value=""><param name="ProfilePort" value="0"><param name="AllowNetworking" value="all"><param name="AllowFullScreen" value="false">                    <embed src="http://filefarm.storyq.net/SlideView.swf?boxKey=001257245623026605" type="application/x-shockwave-flash" allowfullscreen="'true'" allowscriptaccess="'always'" wmode="opaque" width="500" height="420"  />  </object><br>프레임이 올라가는지는 아직 셰이더가 복잡하지 않아서, 잘 모르겠고, 나중에 비교해보도록 하지요!!<br>이것을 시작으로 PostProcessing 전반과 Deferred Shading 까지 다시 한번 완벽히 학습하고, 적용해봐야 겠습니다.<br></span><br /><br /><span style="FONT-FAMILY: Verdana"><div style="text-align:center"><img class="image_mid" border="0" onmouseover="this.style.cursor='pointer'" alt="" src="http://pds15.egloos.com/pds/200911/06/32/c0001532_4af3fd157dedf.png" width="500" height="375" onclick="Control.Modal.openDialog(this, event, 'http://pds15.egloos.com/pds/200911/06/32/c0001532_4af3fd157dedf.png');" /></div>기본 모델의 스케일에 변화를 가했더니, 이런 문제가 발생!!!<br>Z-Fighting이 생기는 문제인거 같은데, 너무 작게?! 줄이면 문제가 되는지 모르겠다...<br><br>혹은 일정 사이즈 이하이면, 문제가 되던지.... 테스트가 필요하다...<br><br><div style="text-align:center"><img class="image_mid" border="0" onmouseover="this.style.cursor='pointer'" alt="" src="http://pds16.egloos.com/pds/200911/06/32/c0001532_4af4054bdf19c.png" width="500" height="375" onclick="Control.Modal.openDialog(this, event, 'http://pds16.egloos.com/pds/200911/06/32/c0001532_4af4054bdf19c.png');" /></div>알파 블랜딩이나 알파 테스트를 처리하고 싶었는데(수염), 안되는 문제...<br>Only Z를 기록하는 DepthBuffer에서는 AlphaBlending이 되는 메쉬는 랜더링 하지 않아야 한다.</span>			 ]]> 
		</description>
		<category>개발 노트</category>

		<comments>http://cagetu.egloos.com/5112955#comments</comments>
		<pubDate>Tue, 03 Nov 2009 10:29:42 GMT</pubDate>
		<dc:creator>cagetu</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 음냥.. ]]> </title>
		<link>http://cagetu.egloos.com/5111790</link>
		<guid>http://cagetu.egloos.com/5111790</guid>
		<description>
			<![CDATA[ 
  <img class="image_left" border="0" onmouseover="this.style.cursor='pointer'" alt="" src="http://pds17.egloos.com/pds/200911/02/32/c0001532_4aee5ca4d4400.jpg" width="400" height="254.690618762" onclick="Control.Modal.openDialog(this, event, 'http://pds17.egloos.com/pds/200911/02/32/c0001532_4aee5ca4d4400.jpg');" align="left" />긍정적이고 열정적인 사람은 주변 사람들에게 열정적이고 하고자 마음을 전파하고, 부정적이고, 열정이 없는 사람은 부정적인 기운을 전파하는 것 같습니다.<br><br>제발 부탁인데, 하기 싫으면 남들에게 피해주지 말고, 남들을 위해서 연기라도 해주세요.			 ]]> 
		</description>
		<category>하루 하루</category>

		<comments>http://cagetu.egloos.com/5111790#comments</comments>
		<pubDate>Mon, 02 Nov 2009 04:18:36 GMT</pubDate>
		<dc:creator>cagetu</dc:creator>
	</item>
	<item>
		<title><![CDATA[ In-House 개발... ]]> </title>
		<link>http://cagetu.egloos.com/5105132</link>
		<guid>http://cagetu.egloos.com/5105132</guid>
		<description>
			<![CDATA[ 
  <p><span style="FONT-FAMILY: Verdana">"사진을 찍는다"라는 행위는 이전의 아날로그 시대에는 "사진을 찍어서-&gt;필름 현상"이었다. 따라서, 사진 찍는 사람의 기술이 거의 모든 것이었다. 하지만, 디지털 시대로 넘어오면서 사진은 "사진을 찍는다-&gt; 후보정 -&gt; 현상" 이라는 과정이 되었다. 즉, 사진을 찍는 사람의 기술도 중요하지만, 디지털 이미지를 수정하는 아트의 영역이 더 중요하게 되었다.<br><br>게임 엔진에서의 그래픽스 랜더러의 변화도 이와 마찬가지이다.<br><br>회사라는 곳에서 In-House 엔진이라는 것을 만든다고 한다면,<br><br>1. 기존에 개발 환경과 지금과는 너무나 많은 차이가 있다는 것을 알리고, 그 차이에 대해서 인식을 공유하는 것을 가장 먼저 하겠다.<br>&nbsp;&nbsp;&nbsp;&nbsp;- 이야기를 해보면, 3~4년 전에 개발을 한 스타일로 지금도 할 수 있다고 생각하는 경우가 더러 있는 것 같은데, 너무나 많은 변화가 있었음을 우리는 알아야 한다.<br>2. 팀원들간의 기술적인 능력을 상향 평준화 시킨다.<br>&nbsp;&nbsp;&nbsp;&nbsp;- 이전에는 한 명이 미친듯이 달려서, 일정 수준 이상의 그래픽 기능들을 구현했다면, 이제는 그럴 수 있는 수준이 아니라고 생각한다. 많은 사람들이 많은 고민을 해야 겨우 따라잡을 수 있고, 더 많은 생각을 해야지 그나마 괜찮은 결과를 얻을 수 있을 것이다.<br>3. 아티스트와 친해지기<br>&nbsp;&nbsp;&nbsp;&nbsp;- 요즘 엔진의 그래픽은 아티스트의 몫이지, 엔지니어의 몫은 아닌 듯.<br><br>이 이야기를 하는 이유는 많은 사람들은 알겠지만, 의외로 환경은 변했는데, 변화된 환경에서 멀리 떨어져 있었던 사람들이 많은 것 같다는 생각을 했습니다. 만약 그 사람들이 변화된 환경 속에 가까워진다면, 환경에 대해서 먼저 이야기를 해주어야 하는 것이 맞다고 생각합니다. <br><br>만약 상용엔진을 구매한다면, 싫어도 저 변화의 소용돌이에 적응기간도 없이 휘말리게 되겠죠. ^^;;;<br><br>그냥 적고 싶은 말들이 마구 생각나서, 두서 없이 적어봄.... 결론은 열심히 해야 한다는 뜻...!!!!<br><br>-언차티드2를 보고서...</span></p><br /><br /><object id="18092718051046K" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab" height="800" width="1280" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"><param name="_cx" value="5080"><param name="_cy" value="5080"><param name="FlashVars" value=""><param name="Movie" value="http://free.migame.tv/UploadComponent/FLVPlayer/playerLink.asp?playerType=3&amp;videoID=18092718051046K&amp;skinID=2&amp;adID=33"><param name="Src" value="http://free.migame.tv/UploadComponent/FLVPlayer/playerLink.asp?playerType=3&amp;videoID=18092718051046K&amp;skinID=2&amp;adID=33"><param name="WMode" value="Window"><param name="Play" value="-1"><param name="Loop" value="-1"><param name="Quality" value="High"><param name="SAlign" value=""><param name="Menu" value="-1"><param name="Base" value=""><param name="AllowScriptAccess" value=""><param name="Scale" value="ShowAll"><param name="DeviceFont" value="0"><param name="EmbedMovie" value="0"><param name="BGColor" value=""><param name="SWRemote" value=""><param name="MovieData" value=""><param name="SeamlessTabbing" value="1"><param name="Profile" value="0"><param name="ProfileAddress" value=""><param name="ProfilePort" value="0"><param name="AllowNetworking" value="all"><param name="AllowFullScreen" value="false"><embed src="http://free.migame.tv/UploadComponent/FLVPlayer/playerLink.asp?videoID=18092718051046K&playerType=3&skinID=2&adID=33" width="1280" height="800" id="18092718051046K" allowscriptaccess="always" allowfullscreen="true"  type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed></object><br>기차 스테이지<br><object id="13091423001067K" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab" height="800" width="1280" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"><param name="_cx" value="5080"><param name="_cy" value="5080"><param name="FlashVars" value=""><param name="Movie" value="http://free.migame.tv/UploadComponent/FLVPlayer/playerLink.asp?playerType=3&amp;videoID=13091423001067K&amp;skinID=2&amp;adID=33"><param name="Src" value="http://free.migame.tv/UploadComponent/FLVPlayer/playerLink.asp?playerType=3&amp;videoID=13091423001067K&amp;skinID=2&amp;adID=33"><param name="WMode" value="Window"><param name="Play" value="-1"><param name="Loop" value="-1"><param name="Quality" value="High"><param name="SAlign" value=""><param name="Menu" value="-1"><param name="Base" value=""><param name="AllowScriptAccess" value=""><param name="Scale" value="ShowAll"><param name="DeviceFont" value="0"><param name="EmbedMovie" value="0"><param name="BGColor" value=""><param name="SWRemote" value=""><param name="MovieData" value=""><param name="SeamlessTabbing" value="1"><param name="Profile" value="0"><param name="ProfileAddress" value=""><param name="ProfilePort" value="0"><param name="AllowNetworking" value="all"><param name="AllowFullScreen" value="false"><embed src="http://free.migame.tv/UploadComponent/FLVPlayer/playerLink.asp?videoID=13091423001067K&playerType=3&skinID=2&adID=33" width="1280" height="800" id="13091423001067K" allowscriptaccess="always" allowfullscreen="true"  type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed></object>			 ]]> 
		</description>
		<category>개발 노트</category>

		<comments>http://cagetu.egloos.com/5105132#comments</comments>
		<pubDate>Sun, 25 Oct 2009 10:11:59 GMT</pubDate>
		<dc:creator>cagetu</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 2009 기아의 우승 ]]> </title>
		<link>http://cagetu.egloos.com/5105078</link>
		<guid>http://cagetu.egloos.com/5105078</guid>
		<description>
			<![CDATA[ 
  <span style="FONT-FAMILY: Verdana"><img class="image_left" border="0" onmouseover="this.style.cursor='pointer'" alt="" src="http://pds16.egloos.com/pds/200910/25/32/c0001532_4ae40ed198627.jpg" width="400" height="280" onclick="Control.Modal.openDialog(this, event, 'http://pds16.egloos.com/pds/200910/25/32/c0001532_4ae40ed198627.jpg');" align="left" />이런 경기의 표를 구하지 못한 것이 너무 너무 아쉽다.<br><br>한국시리즈 7차전 9회말 5:5에서 끝내기 홈런이라니... 드라마가 이런 드라마가 없구나.<br><br>"곰들의 복수"가 실현되었어.. ㅎㅎ<br><br>개인적으로는 2경기를 잡아준 로페즈가 MVP가 되었어야 된다고 생각되는데...<br><br>아무튼 야구를 좋아하는 입장에서 이런 경기 두번 다시 보기 힘든 정말 재미있는 경기였음...<br><br>SK는 역시 강하더군...<br>&nbsp;<br>내년에 다들 두고 보자고.. ^^</span><br /><br /><div style="text-align:center"><img class="image_mid" border="0" onmouseover="this.style.cursor='pointer'" alt="" src="http://pds16.egloos.com/pds/200910/26/32/c0001532_4ae4eb826db50.jpg" width="500" height="1590" onclick="Control.Modal.openDialog(this, event, 'http://pds16.egloos.com/pds/200910/26/32/c0001532_4ae4eb826db50.jpg');" /></div><div style="text-align:center"><img class="image_mid" border="0" onmouseover="this.style.cursor='pointer'" alt="" src="http://pds17.egloos.com/pds/200910/26/32/c0001532_4ae4ebb3b0ff6.jpg" width="500" height="1115.45454545" onclick="Control.Modal.openDialog(this, event, 'http://pds17.egloos.com/pds/200910/26/32/c0001532_4ae4ebb3b0ff6.jpg');" /></div><div style="text-align:center"><img class="image_mid" border="0" onmouseover="this.style.cursor='pointer'" alt="" src="http://pds16.egloos.com/pds/200910/26/32/c0001532_4ae4ec12cd9bf.jpg" width="500" height="1115.45454545" onclick="Control.Modal.openDialog(this, event, 'http://pds16.egloos.com/pds/200910/26/32/c0001532_4ae4ec12cd9bf.jpg');" /></div><div style="text-align:center"><img class="image_mid" border="0" onmouseover="this.style.cursor='pointer'" alt="" src="http://pds15.egloos.com/pds/200910/26/32/c0001532_4ae4ec503a28e.jpg" width="500" height="3383.63636364" onclick="Control.Modal.openDialog(this, event, 'http://pds15.egloos.com/pds/200910/26/32/c0001532_4ae4ec503a28e.jpg');" /></div>			 ]]> 
		</description>
		<category>하루 하루</category>

		<comments>http://cagetu.egloos.com/5105078#comments</comments>
		<pubDate>Sun, 25 Oct 2009 08:42:11 GMT</pubDate>
		<dc:creator>cagetu</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 중간고사 기간 ]]> </title>
		<link>http://cagetu.egloos.com/5101208</link>
		<guid>http://cagetu.egloos.com/5101208</guid>
		<description>
			<![CDATA[ 
  <span style="FONT-FAMILY: Verdana"><img class="image_left" border="0" onmouseover="this.style.cursor='pointer'" alt="" src="http://pds17.egloos.com/pds/200910/20/32/c0001532_4addb60e0311d.jpg" width="400" height="533.333333333" onclick="Control.Modal.openDialog(this, event, 'http://pds17.egloos.com/pds/200910/20/32/c0001532_4addb60e0311d.jpg');" align="left" />4학년 2학기 중간고사....<br><br>회사 일까지 곂쳐서, 공부도 잘 안되고, 몸은 무겁고, 잠도 부족해...<br>피곤해... 힘들어.. ㅡㅡ;;<br><br>내일까지만 힘내자!!!!!</span>			 ]]> 
		</description>
		<category>하루 하루</category>

		<comments>http://cagetu.egloos.com/5101208#comments</comments>
		<pubDate>Tue, 20 Oct 2009 12:43:53 GMT</pubDate>
		<dc:creator>cagetu</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 팀장과 개발자의 경계.... ]]> </title>
		<link>http://cagetu.egloos.com/5098876</link>
		<guid>http://cagetu.egloos.com/5098876</guid>
		<description>
			<![CDATA[ 
  <p><span style="FONT-FAMILY: Verdana">저는 이제 막 팀장이 된지 6개월이된 초보 팀장입니다. <br>아직은 프로그래머의 껍질을 깨어나오지 못하고 있습니다.<br><br>얼마 전 팀장이란 무엇을 해야하는지에 대해서 간단히 맛(?)을 봤습니다.<br>이 문제를 해결하기 위해서, 너무 많은 고민을 했습니다. 혼자서는 답을 내릴 수가 없더군요.<br><br>또한 이전과 같이 저를 진짜로 도와줄 사람이 없다는 것을 조금씩 알게 되는 것 같습니다. 책임감이란 무엇인지를 점점 그 무게가 느껴집니다. 결국 "내가 결정하고, 선택하고, 내가 만들어 가야 하는구나...."<br><br>결국 솔직해지기로 합니다. 아직은 프로그래머라고... 팀장으로 성장을 하지 못했노라고...<br>그냥 제가 할 줄 아는 "일"을 해야겠습니다. <br><br>자신도 없었습니다. 하지만, 부인님은 여기서 앞으로 나갈 수 없으면, 결국 도망만 치게 된다고 이야기 합니다.<br>그렇습니다. 저는 도망자가 되고 싶지는 않습니다. 앞으로 달려볼 생각입니다.<br><br>앞에 무엇이 있는지를 예측할 수 있는 능력은 아직 없습니다만, 한발을 내딛는 건 저도 할 수 있습니다.<br><br>저는 역시 말보단 행동입니다. 긴장들 좀 합시다!!!<br><img border="0" onmouseover="this.style.cursor='pointer'" alt="" src="http://pds15.egloos.com/pds/200910/18/32/c0001532_4ada0663e7edc.jpg" width="500" height="346" onclick="Control.Modal.openDialog(this, event, 'http://pds15.egloos.com/pds/200910/18/32/c0001532_4ada0663e7edc.jpg');" /><br>(개인적으로는 저는 아직 팀장직을 맡을 타이밍이 아니라고 생각합니다. 저는 프로그램질을 한 5년 정도는 더 해봐야 알 것 같거든요. 개인적으로 너무 이른 타이밍에 기회가 왔네요. 두 마리 토끼를 잡으려면, 더 많은 노력을 해야 겠죠?! ^^)</span></p>			 ]]> 
		</description>
		<category>개발 노트</category>

		<comments>http://cagetu.egloos.com/5098876#comments</comments>
		<pubDate>Sat, 17 Oct 2009 17:47:28 GMT</pubDate>
		<dc:creator>cagetu</dc:creator>
	</item>
	<item>
		<title><![CDATA[ Tangent 공간 변환 행렬이 뭐가 문제가 있었다.(해결편) ]]> </title>
		<link>http://cagetu.egloos.com/5096995</link>
		<guid>http://cagetu.egloos.com/5096995</guid>
		<description>
			<![CDATA[ 
  <a title="" href="http://cagetu.egloos.com/5078166"><span style="FONT-FAMILY: Verdana">Tangent 공간 변환 행렬이 뭐가 문제인 것이냐?!?! ㅡㅡ;;</span></a><span style="FONT-FAMILY: Verdana">에서 CubeMap을 이용한 Reflection을 구현 중에, 내가 뭔가 탄젠트 계산을 잘못하고 있다는 것을 알게되었다. <br>굉장히 기초적인 부분이라고 생각하고, 별거 없을 것이다라고 해서, 가볍게 생각했는데, 하나 하나 뜯어보니까, 쉽지 않더라.. ㅡㅡ;<br>(맥스 익스포터에서 익스포트해서 사용하기 때문에, 덕분에 익스포터도 간만에 뜯어 고쳤다.. ㅡㅡ;; 더러운 맥스 작업 질.. 췟!!)<br><br>수정 결과는 다음과 같이 제대로 된 결과가 나오는데, 뭐가 잘못 되었을까?를 집어보자!!!<br><br>첫째, 익스포트할 때, 오타....<br>역시 인간이 문제였다.. 된장...<br><br>둘째, Tangent를 계산한 공식은 </span><a href="http://www.terathon.com/code/tangent.html"><span style="FONT-FAMILY: Verdana">http://www.terathon.com/code/tangent.html</span></a><span style="FONT-FAMILY: Verdana">를 사용했는데, ("3D 게임 프로그래밍 &amp; 컴퓨터 그래픽을 위한 수학-제 2판"의 230page에 나와있다.)<br><br>분명히 최종 행렬은 "물체공간에서 접선 공간으로 변환"하는 행렬이라고 나와 있다. 그래서,<br><br>&nbsp;&nbsp;&nbsp;&nbsp;float3x3 objToTangentSpace = float3x3(input.tangent, input.binormal, input.normal);<br>&nbsp;&nbsp;&nbsp; tangentSpaceLightVec = mul(objToTangentSpace, lightVec);<br>과 normalMap에서 뽑은 normal과 계산. 즉, tangent 공간 상에서 계산을 했는데, 아래와 같이 위, 아래가 뒤집혀진 것과 같이 나왔다.<br><br><div style="text-align:center"><img class="image_mid" border="0" onmouseover="this.style.cursor='pointer'" alt="" src="http://pds16.egloos.com/pds/200910/15/32/c0001532_4ad72703842b5.jpg" width="500" height="375" onclick="Control.Modal.openDialog(this, event, 'http://pds16.egloos.com/pds/200910/15/32/c0001532_4ad72703842b5.jpg');" /></div>혼자서 별 짓을 다해보다가, 하도 이상해서, 정만님에게 도움을 요청했더니,<br><br>&nbsp;&nbsp;&nbsp; float3x3 tangentFrame = float3x3(vTangent, vBinormal, vNormal);<br>&nbsp;&nbsp;&nbsp; float3 tangentNormal = SampleNormal(bumpMapSampler, uv);<br>&nbsp;&nbsp;&nbsp; return mul(tangentNormal, tangentFrame);<br><br>이런 식으로 normalMap에서 뽑은 normal을 객체의 공간으로 변환해서, 객체 공간에서 lightVec등과 계산을 하도록 적용했다고 한다.<br>결과는.....<br><div style="text-align:center"><img class="image_mid" border="0" onmouseover="this.style.cursor='pointer'" alt="" src="http://pds16.egloos.com/pds/200910/15/32/c0001532_4ad724e393d63.jpg" width="500" height="375" onclick="Control.Modal.openDialog(this, event, 'http://pds16.egloos.com/pds/200910/15/32/c0001532_4ad724e393d63.jpg');" /></div>잘 나온다.. 오홋.... -_-;;<br><br>아직도 솔직히 잘 이해를 못하겠다.<br>분명히 접선 공간으로 변환하는 행렬을 이용하여, 접선 공간의 normal과 접선 공간으로 변환된 벡터와의 계산이 의미적으로 맞을거라 생각했는데, 어째서 반대란 말인가?!?!<br><br>암튼 잘나오긴 한다. <br><br>참놔.... 나만 이것 때문에 고민한건가?! ㅡㅡ;;;<br><br>결과샷<br><div style="text-align:center"><img class="image_mid" border="0" onmouseover="this.style.cursor='pointer'" alt="" src="http://pds16.egloos.com/pds/200910/16/32/c0001532_4ad7c6f375d14.jpg" width="500" height="375" onclick="Control.Modal.openDialog(this, event, 'http://pds16.egloos.com/pds/200910/16/32/c0001532_4ad7c6f375d14.jpg');" /></div></span>			 ]]> 
		</description>
		<category>개발 노트</category>

		<comments>http://cagetu.egloos.com/5096995#comments</comments>
		<pubDate>Thu, 15 Oct 2009 13:53:40 GMT</pubDate>
		<dc:creator>cagetu</dc:creator>
	</item>
</channel>
</rss>
