tag:blogger.com,1999:blog-5281384917275132568.post2180149757661627517..comments2022-12-12T20:50:45.605+09:00Comments on 블라인드 렌더러: [포프의 쉐이더 입문강좌] 02. 진짜 쉬운 빨강쉐이더 Part 1Pope Kimhttp://www.blogger.com/profile/03943401839650233842noreply@blogger.comBlogger30125tag:blogger.com,1999:blog-5281384917275132568.post-50704906894613559862020-03-11T10:32:52.035+09:002020-03-11T10:32:52.035+09:00감사합니다!! 큰 도움 됐어요 ㅎㅎ감사합니다!! 큰 도움 됐어요 ㅎㅎAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-78669447991452568322017-09-25T20:14:48.325+09:002017-09-25T20:14:48.325+09:00죄송합니다. 댓글작성자인데요, 단순 오타네요. ㅎㅎ 아주 잘 됩니다.죄송합니다. 댓글작성자인데요, 단순 오타네요. ㅎㅎ 아주 잘 됩니다.Anonymoushttps://www.blogger.com/profile/15299170854638159435noreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-83019746379110374212017-09-25T20:05:08.434+09:002017-09-25T20:05:08.434+09:00안녕하세요 포프님. 그대로 따라했는데 잘 안되네요.
시맨틱 설정에서, 월드는 월드, 뷰는...안녕하세요 포프님. 그대로 따라했는데 잘 안되네요.<br /><br />시맨틱 설정에서, 월드는 월드, 뷰는 뷰 프로젝션은 프로젝션이라고<br /><br />설정을 하라고 말씀하셨는데<br /><br />그렇게 하면 안나옵니다.<br /><br />프로젝션은 '뷰프로젝션' 시맨틱을 선택해야 빨간 공이 출력되더군요<br /><br />저만 이런건지, 어떤 이유가 있는건지 궁금합니다.Anonymoushttps://www.blogger.com/profile/15299170854638159435noreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-37667298579557507752017-09-08T12:02:48.145+09:002017-09-08T12:02:48.145+09:00float4가 x.y.z.w라고 하셨는데 w는 뭔가요?
완전 초보라서질문 드려봤습니다.float4가 x.y.z.w라고 하셨는데 w는 뭔가요?<br />완전 초보라서질문 드려봤습니다.Anonymoushttps://www.blogger.com/profile/03111938174097667475noreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-31939678646503609172017-09-04T17:47:27.818+09:002017-09-04T17:47:27.818+09:00안녕하세요! 강좌 보다가 월드공간에 대해 의문이 생겨 질문드립니다.
우선 월드공간의 개념이...안녕하세요! 강좌 보다가 월드공간에 대해 의문이 생겨 질문드립니다.<br />우선 월드공간의 개념이 안잡힙니다.<br />뷰공간은 카메라가 보는 화면이고 그 화면을 투영하여 투영공간에 표현하는 것에 대한 개념은 알겠습니다. 그런데 어차피 우리가 눈에 보일때는 카메라에 잡힌 뷰공간만 보게 되는것인데 카메라에 안잡히는 월드공간은 왜 필요한 것 인가요?<br />제가 생각 할 때에는 위의 예시에서 볼때 월드공간도 어떤 물체를 기준으로 잡고 거기에서 해당물체에 떨어진 거리를 표현하는 것 으로 똑같은것 같은데 제가 한참 착각하고 있는건가요?? ㅠㅠ Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-62106465788329404662017-06-04T17:17:23.203+09:002017-06-04T17:17:23.203+09:00와.. 진짜 대박이다 ㅠㅠㅠㅠㅠㅠㅠ
정말 감사합니다 ㅠㅠ와.. 진짜 대박이다 ㅠㅠㅠㅠㅠㅠㅠ<br />정말 감사합니다 ㅠㅠAnonymoushttps://www.blogger.com/profile/11516145491573211757noreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-49221502210556104262014-08-31T22:00:49.347+09:002014-08-31T22:00:49.347+09:00이것때문에 정말 몇일 새 고민이었는데 속시원하게 대답해주셔서 감사합니다!!이것때문에 정말 몇일 새 고민이었는데 속시원하게 대답해주셔서 감사합니다!!Anonymoushttps://www.blogger.com/profile/15563930768992100986noreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-72530701308133307642014-08-31T16:22:49.295+09:002014-08-31T16:22:49.295+09:00아 w로 나누는건 하드웨어 에서 해줍니다.. rasterizer가 중간에서 해줘요. 그러는...아 w로 나누는건 하드웨어 에서 해줍니다.. rasterizer가 중간에서 해줘요. 그러는 이유는... 이렇게 생각하면 편해요.... <br /><br />정점쉐이더에서 z를 미리 나누면 부동소수점 오차가 너무 나기에 z와 w로 넣어서 하드웨어에 전해주면 하드웨어가 픽셀별로 보간을 한뒤에 나중에 나눠주는 겁니다.Anonymoushttps://www.blogger.com/profile/08519021710618445233noreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-30567682742909183582014-08-31T13:16:44.674+09:002014-08-31T13:16:44.674+09:00답변 감사합니다!!
한가지 더 질문 드려도 될까요?
MSDN 에 나와있는 투영행렬 요소...답변 감사합니다!! <br />한가지 더 질문 드려도 될까요?<br /><br />MSDN 에 나와있는 투영행렬 요소를 곱하게 되면 벡터에 각각 뷰스페이스 z 값이 <br />곱해진 상태지 않나요?<br /><br />깊이버퍼 그림자 등등 투영행렬 좌표를 알아내야 할때 보면, mul 함수로 최종 투영행렬까지 <br />곱한 후에 직접 w 로 나누어서 0~1 사이 투영좌표계 변환을 하는 거 같던데,<br /><br />막상 정점쉐이더에서는 굳이 이 작업을 해주지 않고 mul 로 투영행렬만 곱하는걸로 봐서<br />도대체 이 작업이 어디서 이루어지는지 헷갈리네요...Anonymoushttps://www.blogger.com/profile/15563930768992100986noreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-52108956861623424922014-08-31T13:13:57.352+09:002014-08-31T13:13:57.352+09:00작성자가 댓글을 삭제했습니다.Anonymoushttps://www.blogger.com/profile/15563930768992100986noreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-1399989033202291252014-08-31T02:23:55.249+09:002014-08-31T02:23:55.249+09:00네. 투영행렬을 곱할 때 그렇게 되요. MSDN가보시면 투영행렬 각요소의 값이 나와있는데 ...네. 투영행렬을 곱할 때 그렇게 되요. MSDN가보시면 투영행렬 각요소의 값이 나와있는데 그거와 벡터를 곱해보시면 알거에요.Anonymoushttps://www.blogger.com/profile/08519021710618445233noreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-43947810783853089672014-08-30T21:40:38.557+09:002014-08-30T21:40:38.557+09:00안녕하세요~ 궁금한 사항이 있으서 질문 드립니다.
투영좌표를 구하는 과정에서 뷰스페이스의 ...안녕하세요~ 궁금한 사항이 있으서 질문 드립니다.<br />투영좌표를 구하는 과정에서 뷰스페이스의 z 값으로 최종적으로 나누어 주어야 하잖아요?<br />그럼 투영행렬을 곱하고 나서, 뷰스페이스의 z 로 나누어 주는 과정은 어느부분에서 이루어 지는 건가요?<br />mul 함수 내부에서 진행되는 건가요?Anonymoushttps://www.blogger.com/profile/15563930768992100986noreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-12252784293242084262014-08-21T13:46:04.567+09:002014-08-21T13:46:04.567+09:00신택스 하이라이팅 말인가요? 전 IDE에서 안하고 그냥 notepad++따위에서 세이더 코...신택스 하이라이팅 말인가요? 전 IDE에서 안하고 그냥 notepad++따위에서 세이더 코드 짜서 별로 신경을 안써봤어요..<br /><br />VS2013부터는 신택스 하이라이팅이 잘된단 이야기도 들은거 같고요.. 버전 몇쓰세요?Anonymoushttps://www.blogger.com/profile/08519021710618445233noreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-85601957790629792262014-08-12T10:05:07.936+09:002014-08-12T10:05:07.936+09:00왜 제가 구축한 DX에는 float4 랑 float4x4가 언더라인이 생길까요..
식별자가...왜 제가 구축한 DX에는 float4 랑 float4x4가 언더라인이 생길까요..<br />식별자가 정의되지않았다는데 뭐 따로 정의해야하는 부분이있을까요?Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-52134066733893512302014-06-29T02:39:04.670+09:002014-06-29T02:39:04.670+09:00좌표계 문제죠... 맥스는 +z가 위를 가르키는 반면 마야는 +y가 위를 가르키니까요.....좌표계 문제죠... 맥스는 +z가 위를 가르키는 반면 마야는 +y가 위를 가르키니까요.. 그리고 맥스는 왼손좌표계고 마야는 오른손좌표계인가? (이건 기억이) 그럴거에요.. 즉 화면의 안이나 밖을 가리키는 좌표축(맥스의 y하고 마야의 z가 가리키는 방향)이 반대. <br /><br />중간에 행렬한 번 곱해주는걸로 물론 다 고칠수 있긴 합니다 -_-; export할떄 exporter에도 그런 옵션이 있는 경우도 있구요...<br /><br />최종렌더링 공간하고 상관없고 모델링 하는 공간부터가 문제에요 .사실 뭐가 맞다 틀리다 할 수 없는거지만.. 맥스 혼자 유독 튀고 있다는 게 문제긴 하죠 -_-Anonymoushttps://www.blogger.com/profile/08519021710618445233noreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-22762563559750779612014-06-28T18:08:03.883+09:002014-06-28T18:08:03.883+09:00오래 지났는데, 글을 읽으실 수 있으려나 모르겠네요. 3D에 대해서는 잘 모릅니다. 궁금해...오래 지났는데, 글을 읽으실 수 있으려나 모르겠네요. 3D에 대해서는 잘 모릅니다. 궁금해서 여쭤봐요. 맥스, 마야, 시포디 등 다양한 3D 프로그램들이 있잖아요? 그런데, 한 프로그램에서 제작한 어떤 걸 export해서 다른 프로그램에서 import하면 좌표가 많이 틀어지는 경우가 있다고 하더라고요, 혹시, 그게 각 프로그램별로 최종 랜더링(?)을 하기 위해 사용하는 공간이 달라서 그런 건가요? 아니면, 단순히 export나 import할 때 프로그램 상에서 설정을 잘못했기 때문일까요? 특정 솔루션에 대한 질문이라기 보다는, 그냥 이유가 궁금해서 여쭤봅니다^^;;Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-43906844963487592322013-08-12T12:28:39.077+09:002013-08-12T12:28:39.077+09:00안녕하세요. 사실 셰이더 쪽에서 쓰는 semantic이란 용어는 프로그래밍에서 쓰는 sem...안녕하세요. 사실 셰이더 쪽에서 쓰는 semantic이란 용어는 프로그래밍에서 쓰는 semantic이란 용어의 뜻과는 많이 다릅니다. 괄호안에도 설명해두었듯이 그냥 "tag"정도로 이해해주시는게 좋습니다. 저희가 정점버퍼에 넣는 데이터를 GPU 하드웨어에(또는 셰이더 안에서 쓰는 구조체에) 매핑하기 위해 쓰는 태그입니다. "이 데이터는 정점 위치니 POSITION태그를 쓰겠다!" 정도로요.<br /><br />셰이더에서 말하는 시맨틱은 말그대로 프로그래밍쪽에서는 별 의미가 없다고 보이네요~Pope Kimhttps://www.blogger.com/profile/03943401839650233842noreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-7631205247911687252013-08-09T16:19:47.288+09:002013-08-09T16:19:47.288+09:00안녕하세요. 포프님. 쉐이더 관련해서 좋은 강좌 써주셔서 감사드립니다.
프로그래밍에 대한...안녕하세요. 포프님. 쉐이더 관련해서 좋은 강좌 써주셔서 감사드립니다.<br /><br />프로그래밍에 대한 이해가 없는 상태에서 RenderMonkey 설치해서 따라해 보고 있습니다.<br />우선 첫번째 막히는 부분이 있는데요.<br />semantic 이란 용어가 나오는데 정확하게 프로그래밍에서 바라보는 시맨틱이란 용어가 무엇을 의미하는지 모르겠습니다. 사전적인 의미와 잘 연결되지 않네요.<br /><br />알려주시면 감사드리겠습니다.JungJaeHwahttps://www.blogger.com/profile/11259248742471382836noreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-3402543394911133452012-02-13T14:58:33.404+09:002012-02-13T14:58:33.404+09:00뭘요.. 사람은 누구나 다 놓치고 봐요.. 놓치고 보는 분야가 다 다를 뿐이지. 당연한 거...뭘요.. 사람은 누구나 다 놓치고 봐요.. 놓치고 보는 분야가 다 다를 뿐이지. 당연한 거니 너무 자책하시지 마시길.. 차라리 동환님이 이렇게 답글을 남겨주셔서 나중에 글 보실 분들이 똑같은 실수 저지르면 어떻게 고칠지 바로 아실수 있으니 좋죠.<br /><br />제가 오늘 하루 좀 아파서 답글 빨리 못단게 오히려 죄송스러울뿐 ^^Pope Kimhttps://www.blogger.com/profile/03943401839650233842noreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-21171399683767319452012-02-13T09:00:44.413+09:002012-02-13T09:00:44.413+09:00아~ 완전 뻘짓을 했네요. 시맨틱부분이 중요하다고 그렇게 써놓으셧는데 그걸 그냥 넘겨서 이...아~ 완전 뻘짓을 했네요. 시맨틱부분이 중요하다고 그렇게 써놓으셧는데 그걸 그냥 넘겨서 이런사태가... 죄송~ㅠㅠ<br />저같은 실수 하시는 분이 있을까봐 부끄럽지만 댓글을 지우진 않겠습니다 엉엉DonghwanVFXhttps://www.blogger.com/profile/05394952322783526090noreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-58324665491730885412012-02-13T08:42:52.592+09:002012-02-13T08:42:52.592+09:00자문자답이 되었네요. 오늘 다시 해보니 Add Variable > Matrix >...자문자답이 되었네요. 오늘 다시 해보니 Add Variable > Matrix > Predefined 가 있고 거기안에 있는 월드, 뷰, 프로젝션을 만드니 잘 실행되네요. 렌더몽키 버전업되면서 생긴 문제인듯도하구요. 예전버전을 써봣으면 확실히 알텐데 ㅎㅎ 암튼 빨간구를 보니 반갑네요 ㅎDonghwanVFXhttps://www.blogger.com/profile/05394952322783526090noreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-19172019723506426442012-02-12T22:56:55.245+09:002012-02-12T22:56:55.245+09:00개념정리하고있습니다. 감사해요. ^^
따라하고있는데
저는 계속 검은 화면만 나오네요 Out...개념정리하고있습니다. 감사해요. ^^<br />따라하고있는데<br />저는 계속 검은 화면만 나오네요 Output창에는<br />Compiling vertex shader API(D3D) /../Default_DirectX_Effect/Pass 0/Vertex Shader/ ...success<br />라고만 뜨구요.<br />렌더몽키 문제일까요?DonghwanVFXhttps://www.blogger.com/profile/05394952322783526090noreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-5868509158481121482012-01-03T14:51:05.587+09:002012-01-03T14:51:05.587+09:00아...빠른 답변 감사합니다 (_ _)꾸벅~아...빠른 답변 감사합니다 (_ _)꾸벅~Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-70441028647671212702012-01-03T14:41:33.651+09:002012-01-03T14:41:33.651+09:00input.mPosition을 gWorldMatrix와 곱해서 그 결과를 "Out...input.mPosition을 gWorldMatrix와 곱해서 그 결과를 "Output.mPosition"에 저장해 놔서 그래요. 그 결과를 가져다 다시 View와 Projection하고 곱해줘야하니까요.. 위의 코드를 한줄로 쓰면 이것과 같죠.<br /><br />Output.mPosition = mul( mul( mul (Input.mPosition, gWorldMatrix), gViewMatrix), gProjectionMatrix);Pope Kimhttps://www.blogger.com/profile/03943401839650233842noreply@blogger.comtag:blogger.com,1999:blog-5281384917275132568.post-59114828512078880762012-01-03T14:39:22.217+09:002012-01-03T14:39:22.217+09:00안녕하세요 강좌보고 열심히 공부중인 그래픽리소스 개발자입니다.
열심히 따라하며 공부하고있...안녕하세요 강좌보고 열심히 공부중인 그래픽리소스 개발자입니다.<br /><br />열심히 따라하며 공부하고있습니다... 일단 이런강좌 올려주셔서 넘넘 감사합니다.<br /><br />질문이 있는데요<br />Output.mPosition = mul (Input.mPosition, gWorldMatrix);<br /> Output.mPosition = mul (Output.mPosition, gViewMatrix);<br /> Output.mPosition = mul (Output.mPosition, gProjectionMatrix);<br /><br />world부분은 input을 받는건 알겠는다..<br />나머지view와 projection은 왜 아웃풋을 에 연산을 하는지 잘이해가 안되서 그러는데 설명좀 해주실수 있으까요?^^;;<br />제가 플그래밍은 기초공부하고있는 수준이라..ㅎㅎㅎ;; OTLAnonymousnoreply@blogger.com