묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨게임 개발자를 위한 3D 그래픽스, 쉐이더, OpenGL (6) - 쉐이딩 기초, 퐁 리플렉션 모델, 블린-퐁 쉐이딩
RGB 값 관련 질문드립니다.
light.position = {-3.0f, 3.0f, 3.0f, 1.0f}; light.ambient = {0.2f, 0.2f, 0.2f, 1.0f}; light.diffuse = {5.0f, 5.0f, 5.0f, 1.0f}; light.specular = {7.0f,7.0f, 7.0f, 1.0f}; light.att = {1.0f, 0.2f, 0.2f, 1.0f}; material.ambient = { 1.0f, 1.0f, 1.0f, 1.0f }; material.diffuse = { 1.0f, 1.0f, 1.0f, 1.0f }; material.specular = { 1.0f, 1.0f, 1.0f, 1.0f }; material.shineness = 32.0f;강의에서 렌더링에 사용된 광원, 매터리얼 파라미터 값들입니다. RGB를 나타내는 값은 일반적으로 0.0~1.0 사이의 float 값을 써서, 이를 0~255 정수범위로 매핑해서 사용한다고 알고 있습니다.하지만 강의에서는 1.0 이 넘는 float 값을 그대로 사용하는 상황이여서, 이게 무슨 차이인지 궁금하여 문의 남깁니다.
-
미해결게임 개발자를 위한 3D 그래픽스, 쉐이더, OpenGL (6) - 쉐이딩 기초, 퐁 리플렉션 모델, 블린-퐁 쉐이딩
vert_phong.vert negate 질문
학습 관련 질문 ❓ 을 남겨주세요. 상세히 작성하면 더 좋아요!출장이 잦아서, ✍ 답변에 시간이 좀 걸릴 수는 있습니다. 양해 바랍니다. 🏃 안녕하세요, 강의를 듣고 직접 구현해보며 연습중인데 한 가지 궁금한게 생겨 질문 드립니다. 앞서 진행했던 강의의 vertex shader와 마찬가지로, z-negate 를 해주어야한다고 생각해서 버텍스 쉐이더에서 vPos를 구하고 vPos.z *= -1 을 해주고 있었습니다. 하지만 강의 소스코드에는 이 negate해주는 부분이 없는게 왜인지 잘 모르겠습니다.강의 소스코드에는 C++ 코드 상에서 negate되어지는 부분이 있는걸까요? 저는 negate하지 않으면 아래와 같은 결과로 렌더링됩니다. vertex shader에서 z-negate하면 잘 나옵니다. #version 410 core struct Light { vec4 position; vec4 ambient; vec4 diffuse; vec4 specular; vec4 att; }; struct Material { vec4 ambient; vec4 diffuse; vec4 specular; float shineness; }; in vec4 aPos; in vec4 aNorm; uniform mat4 uMat; uniform Light light; uniform Material material; out vec4 vColor; void main() { vec4 vPos = uMat * aPos; vec4 vNorm = transpose(inverse(uMat)) * aNorm; vec3 N = normalize(vNorm.xyz); vec3 L = normalize(light.position.xyz - vPos.xyz); vec3 V = vec3(0.0f, 0.0f, 1.0f); vec3 R = reflect(-L,N); vec4 ambient = light.ambient * material.ambient; float d = length(light.position.xyz - vPos.xyz); float denom = light.att.x + light.att.y * d + light.att.z * d * d; vec4 diffuse = max(dot(L,N), 0.0) * light.diffuse * material.diffuse / denom; vec4 specular = pow(max(dot(R, V), 0.0), material.shineness) * light.specular * material.specular / denom; vColor = ambient + diffuse + specular; vPos.z *= -1; gl_Position = vPos; }
-
미해결3분만에 만드는 깃헙 블로그
저자/프로필 사진 변경이 너무 느리게 되네요
5분 넘게 걸리는 것 같아요 ㅠ
-
미해결Vue 3 & Firebase 10 커뮤니티 만들기 풀스택 - "활용편" (with Pinia, Quasar, Tiptap, VueUse)
functions.region is not a function
onCreateUser와 onDeleteUser 함수 작성 후 에뮬레이터를 실행하면functions.region is not a function이라고 로그에 나오고 있는데혹시 firebase-functions 버전 문제일까요??ㅠㅠ어떻게 해결 해야할 지 모르겠어요ㅠㅠ 도움 부탁드립니다~
-
해결됨친절한 블렌더 - [LV.0] 입문 필수
포인트 빛
0:40 포인트 빛을 사용했을 때 뒤에 계속 포인트 그림자가 생겨요ㅠpower: 1500wradius 0.1 m영상처럼 앞에 두 개, 배경 앞에 1개 위치하고 있어요.
-
미해결관찰가능성 엔지니어링
질문이 있습니다.
삭제된 글입니다
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
[파일 입출력] 28:50
28:20 영상을 보면 'Tilemap' 빈 파일을 만들지 않고 저장이 되는 모습입니다. 그런데 제가 진행을 하면 위 이미지와 같이 assert(file != nullptr);에 걸립니다. 혹시 28:50 같이 'Tilemap' 빈 파일을 만들고 타일맵 저장을 진행해야 하는 게 맞는 방법인지 알고 싶어 글 올립니다.
-
미해결관찰가능성 엔지니어링
강의 수강 중 질문
삭제된 글입니다
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
배열에서도 for in 사용이 가능한 것 같습니다!
11:42아래와 같이 for in을 배열에서도 사용이 가능한 것 같습니다!다만 권장되지는 않는 방법이라고 하네요.let arr = [1, 2, 3]; for (let i in arr) { console.log(arr[i]); }권장되는 방법: for...of, 일반 for 루프, forEach() 메서드 등
-
해결됨C개발자를 위한 최소한의 C++
순수 가상 클래스 선언과 일반 인트 변수의 선언과 다른가요?
순수 가상 클래스 강의에서 " virtual int getData() const = 0; " 이 코드는 선언만 있다고 말씀하셨습니다.int a = 0; 이라고 코드를 작성하면 선언 및 정의(초기화)가 된것인데 반해, 함수는 단순히 0을 단순대입했다고 해서 정의가 된것은 아니라는 말씀이신가요? 그렇다면 혹시 " virtual int getData() const; " 만으로 선언이 충분한데 " = 0 " 을하는 이유가 있나요? 단순 초기화 인가요?또 한가지, 엄밀히 말하면 int a = 0;은 인트 클래스의 인스턴스 a가 선언 및 정의 된거고, 클래스내 함수(메서드)는 인스턴스를 생성하는 건 아니기에 다른건지 궁금합니다. 항상 좋은 강의 감사드립니다!
-
미해결관찰가능성 엔지니어링
관찰은 중요합니다.
삭제된 글입니다
-
해결됨초보자를 위한 BigQuery(SQL) 입문
총 정리 문제 풀이 2번 질문 있습니다
안녕하세요. 선생님2번 풀이에서 저는 pokemon을 FROM 절에 쓰고, LEFT 함수로 trainer_pokemon을 썼는데요. 선생님과 결과가 다르게 나오더라구요.이 경우에는 "가장 많이 포획된" 기준으로 물었기 때문에 status가 있는 trainer_pokemon을 FROM 절에 써야하는 건가요??SELECT type1, kor_name, COUNT(tp.id) AS pokemon_cnt FROM basic.pokemon AS p LEFT JOIN basic.trainer_pokemon AS tp ON p.id = tp.pokemon_id GROUP BY type1, kor_name ORDER BY pokemon_cnt DESC
-
미해결수학으로부터 인류를 자유롭게 하라(기초대수학편)
집합의 정의에 대한 설명에서 질문이 있습니다.
강의에서 집합의 정의를 a collection of distinct and well-defined things(or elements)라고 하셨습니다. 이 때 , thing은 서로 같은 종류의 object들이라고 하셨는데Python에서의 집합은a_set = {1, 2.5, 'apple', 'banana', (1, 2)} 과 같이서로 다른 Data Type끼리 함께 존재할 수 있는 것으로 알고 있습니다. 그래서 강의에서 정의해주신 집합의 정의가 조금 헷갈리네요.
-
미해결
What is the most important thing for take a class?
I need your help
-
해결됨Next + React Query로 SNS 서비스 만들기
MSW 오류
먼저 next와 react의 버전은 각각 15버전과 19버전입니다 next 15 부터는 http.ts 의 코드가 간결하게 바뀌어서 적용해보던 중 세팅 단계에서 해당 오류가 발생하였습니다 TypeError: Cannot read properties of undefined (reading 'url' 구글에 검색해보니 최신버전에서도 발생하는 것 같습니다 ㅠㅠ
-
해결됨[임베디드 입문용] 임베디드 개발은 실제로 이렇게 해요.
멀티미터기 측정시 ST-LINK USB 연결이 끊어집니다
섹션 13의 멀티미터기 사용방법2 강의에서 GND와 PA3를 측정하는데, 측정할 때마다 usb연결이 끊어져서 한번 측정하고 꺼지면 다시 연결해야되는 상황입니다.GND와 3V측정할 때 값도 잘 나왔고 쇼트테스트도 잘되는데 디버깅 상황에서 직류 측정할 때만 usb가 끊어졌다가 적색 흑색 테스트리드를 떼면 다시 usb가 연결됩니다.혹시 원래 그런건지 아니면 무슨 문제가 있는건지 궁금합니다.
-
미해결대세는 쿠버네티스 (초급~중급편)
윈도우 환경의 클러스터 설치 관련
안녕하세요~k8s v1.27 버전 설치 를 참고해서 윈도우 11 환경에서 클러스터를 설치했는데요.vagrant up 설정 완료 후, xshell로 master에서 cat ~/join.sh 을 사용해 토큰 및 join 명령어를 복사해 node에 실행하면 [ERROR FileAvailable--etc-kubernetes-kubelet.conf]: /etc/kubernetes/kubelet.conf already exists 에러가 발생해, 해결방법을 찾아보다가 master와 node에 kubeadm reset 을 실행했습니다. 여기서 질문드리고 싶은 것은 두가지가 있는데요.kubeadm reset 을 실행했는데 vagrant destroy 로 다 없앤 뒤 vagrant up 으로 다시 세팅할 필요가 없을까요?join 명령어로 발생한 첫 에러는 공유기 IP 고정할당이 안되서 생긴 문제 가능성도 있을까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
<빌드하고 실행하기>0:20
<빌드하고 실행하기>0:20 에서 뜨는 화면이 어떤 화면일까요..??ㅠㅠ 그냥 폴더창켜서 폴더 만들고 하는 것과 같을까요??
-
미해결게임 수학의 이해
책과 관련하여 궁금한 내용이 있습니다.
현재 강의에 대한 질문이 아니라서 죄송합니다.저는 언리얼엔진과 C++에 관심이 있는 사람입니다.우연히 원티드의 게임개발자 양성과정에서 이득우 지식공유자님께서 참여하시는 것을 봤는데, 이득우님에 대한 소개에서 '이득우의 언리얼 C++ 프로그래밍' 이라는 책을 작성하신 것으로 소개되어 있어서 찾아봤는데, 해당 제목의 책은 없고, '이득우의 언리얼 C++ 게임 개발의 정석'의 책을 작성하신 것을 알게되었습니다.혹시 원티드에 적혀있던 그 책이 '이득우의 언리얼 C++ 게임 개발의 정석' 책을 말하는걸까요? 그리고 한 가지 더 궁금한 것이 있는데, 이득우님의 '이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해' 강의의 내용과 '이득우의 언리얼 C++ 게임 개발의 정석' 책의 내용이 거의 비슷할까요?저는 자바에 대해서는 알고 있어서 객체지향에 대해서는 알지만, C++에 대해서는 잘 모르는 상태입니다.그래서 만약 책과 강의의 내용이 다르다면 책 보다는 '이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해' 강의로 공부를 시작하는게 나을까요?
-
미해결Next + React Query로 SNS 서비스 만들기
[ERROR] MSW Server-Side 적용 실패 에러 / (Module not found Error '_http_common')
[문제점]MSW의 nodejs Server를 Server-Side 에서 실행하려고 할 때Module not found Error '_http_common'와 같은 에러 발생으로 빌드가 실패하는 상황을 겪고 있습니다. 저만 겪고 있는 상황인지 싶지만 질문 드립니다.[현상황]아래와 같이 SSR Component안에서 API를 사용하여 데이터를 받아온 후 화면을 그리고나면,export const Home = async () => { const res = await fetch("https://api.github.com/users/zerocho"); const data = await res.json(); return ( <div className="flex flex-1 items-center justify-center"> <h1>{data.name}</h1> <img src={data.avatar_url} alt={data.name} className="rouneded" /> </div> ); };아래와 같은 화면을 확인 할 수 있습니다.이를 MSW의 Server-side를 사용하기 위해서 Layout단에서 server를 listen하도록 실행하면if ( process.env.NEXT_RUNTIME === "nodejs" && process.env.NODE_ENV !== "production" ) { const { server } = require("@/mocks/http"); server.listen(); } export default function RootLayout({ children }: { children: React.ReactNode; }): JSX.Element { return ( <html lang="en"> <body className={inter.className}> <MSWProvider> <Suspense>{children}</Suspense> </MSWProvider> </body> </html> ); }아래와 같은 Build Error로 Module not found: Can't resolve '_http_common' 나게 됩니다.[찾아본 원인?]_http_common이 Node.js built-in module인데, Next.js Webpack의 config에서 해당 module을 자동 import 하지 않아서 발생하는 에러라고 합니다. (출처:https://github.com/mswjs/msw/issues/2291)[시도한 해결 방안 1]- src/instrumentation.ts 파일을 아래와 같이 추가.export async function register() { if (process.env.NEXT_RUNTIME === "nodejs") { const { server } = await import("./mocks/http"); server.listen(); } }- next.config.js를 아래와 같이 수정/** @type {import('next').NextConfig} */ module.exports = { reactStrictMode: true, transpilePackages: ["@repo/ui"], experimental: { instrumentationHook: true }, };결과 동일[시도한 해결방안 2]- next.config.js에 webpack 내용 추가/** @type {import('next').NextConfig} */ module.exports = { reactStrictMode: true, transpilePackages: ["@repo/ui"], experimental: { instrumentationHook: true }, webpack: (config, { isServer }) => { if (isServer) { if (Array.isArray(config.resolve.alias)) // server일시 browser를 제외 시킨다 config.resolve.alias.push({ name: "msw/browser", alias: false }); else config.resolve.alias["msw/browser"] = false; } else { if (Array.isArray(config.resolve.alias)) config.resolve.alias.push({ name: "msw/node", alias: false }); else config.resolve.alias["msw/node"] = false; } return config; } }; 결과 동일[추가 조사한 내용들]- 현재 github issue에 아래와 같이 등록되어 있습니다.https://github.com/mswjs/msw/issues/2291Server-Side를 사용하지 않고도 MSW를 사용할 수는 있지만, 해결 방안이 있을지 해서 질문드립니다!