inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

vertex shader, rasterize 질문입니다

미해결

[게임 프로그래머 도약반] DirectX11 입문

vertex shader를 처리할때 _vertexBuffer에 들어있는 꼭짓점을 받아서 좌표를 변환하는 과정으로 이해했습니다. ia과정에서 나오는 결과물이 mesh라고 하셨는데 이부분에서 약간 혼동이 있는 것 같습니다. 제가 생각한 바로는, IA과정 에서는 아직 mesh가 그려지진 않았고, 각 점들과 layout, 그 점들로 무엇을 그릴지에 대한 정보가 있는 상태입니다(삼각형). vertexshader에서 좌표계 처리를 하고 rasterize과정에서야 점들끼리 잇고 보간을 합니다. (렌더링 범위 지정) 이후 PS과정에서 shaderResource와 uv값을 이용해서 실제 색을 칠하는 과정 (수치적으로)을 거친 후에 output merge과정에서 indexBuffer를 참조하여 backBuffer에 실제 렌더하는 과정을 거친후에 고속 복사를 하여 렌더링을 완료하게됩니다. 해당 렌더링 프로세스를 제가 잘못이해한 것인지 궁금합니다. (결과적으로 IA작업에서, 꼭짓점 뿐만 아니라 꼭짓점 사이의 EDGE에 대한 정보도 이미 전부 가공된 채로 VS에 넘어가는것이었나에 대해 궁금합니다.. mesh는 꼭짓점 사이의 edge도 그려져 있지 않나요?)

  • c++
  • directx
mobill123 댓글 1 좋아요 0 조회수 412

react, redux, node.js 추천서

미해결

안녕하세요 react, redux, node.js를 활용하여 웹 앱 개발을 하려고 하는데 react의 경우 class형과 함수형 두 가지의 타입으로 개발이 되고 있더군요 그래서 함수형 react의 참고서를 찾아봤는데 참고할만한 교재를 선택하기에 어려움이 있어서 질문 드립니다. 혹시 추천해주실만한 참고서가 있을까요?

  • react
  • redux
  • node.js
ymca1036 댓글 1 좋아요 0 조회수 344

apply axis 관련 질문

해결됨

[리뉴얼] 처음하는 파이썬 데이터 분석 (쉽게! 전처리, pandas, 시각화 전과정 익히기) [데이터분석/과학 Part1]

섹션7-2 5분 2초 apply부분에 apply(func, axis = 0)으로 하면 왜 '영어' 행이 하나 더 생기나요?

  • python
  • pandas
tjswn0125 댓글 1 좋아요 0 조회수 315

skybox 강의 중 에러

미해결

[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12

안녕하세요, skybox 강의 듣는 도중에 다음과 같은 에러가 발생합니다. SceneManager 에서 물체를 하나씩만 scene->AddGameObject() 해보면 각각 잘 나오는데 둘다 add하면 에러가 발생합니다. 샘플코드는 잘 작동하고, 이전 챕터까지도 이상이 없어서 코드가 잘못됐나 싶어서 여러차례 훑어보고 복사붙여넣기 해봐도 안됩니다. 짐작가시는 부분이 있으시다면 말씀 주시면 감사하겠습니다.

  • directx
  • 게임수학
Jiwon Jeong 댓글 1 좋아요 0 조회수 386

[input 속성 및 state 관리] 사용자 입력 처리하기

해결됨

한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지

안녕하세요. 사용자 입력 처리하기 강의 관련 질문입니다. input 태그를 통해 사용자 입력을 받고, 상태 관리하면, 상태에 사용자의 입력이 반영되는 게 한 단계씩 늦는 것 같습니다. (그 이유가 useState가 비동기적으로 처리된다고 들은적이 있는 것 같은데, 정확히 이해가 가지 않아서 질문드립니다.) 아래 코드의 handleOnChange함수에서, Q1) e.target.name, e.target.value은 제깍제깍 실시간으로 반영이 되는데, input state는 한 단계 늦게 반영이 됩니다. 이런 현상이 발생하는 이유는 무엇이고, 이건 개발하는데 문제가 되지 않는 이유는 뭔지? 가 궁금합니다! import { useState } from 'react'; const DiaryEditor = () => { const [input, setInput] = useState({ author: '', content: '', emotion: 1, }); const handleOnChange = (e) => { console.log(e.target.name); console.log(e.target.value); setInput({ ...input, [e.target.name]: e.target.value }); console.log(input); }; const handleSubmit = () => { console.log(input); alert('오늘의 일기가 저장되었습니다!'); }; return ( <div className='DiaryEditor'> <h2>오늘의 일기</h2> <div> <input name='author' value={input.author} onChange={handleOnChange} /> <p>{input.author}</p> </div> <div> <textarea value={input.content} name='content' onChange={handleOnChange} /> <p>{input.content}</p> </div> <div> <span>감정 지수 : </span> <select onChange={handleOnChange} name='emotion' value={input.emotion} > <option value={1}>1</option> <option>2</option> <option>3</option> <option>4</option> <option value={5}>5</option> </select> </div> <div> <button onClick={handleSubmit}>저장하기</button> </div> </div> ); }; export default DiaryEditor; Q2) 위처럼 input이란 state는 한단계씩 늦게 반영이 되는데, select태그의 value 속성을 주는 목적은 무엇인가요?? 인풋의 value 속성은 실시간으로 인풋의 값과 상태를 동기화해주는 목적으로 사용한다고 생각했는데, state가 곧바로 변하지 않는거면, 이 인풋의 value 속성은 무용지물인 것 아닌가라는 생각이 들어 질문드립니다. <select onChange={handleOnChange} name='emotion' value={input.emotion} > Q3) useState의 초기값은 반드시 빈문자열등으로 인자를 전달하는 게 나은가요? 아무 인자도 전달하지 않으면 어떤 잠재적인 에러 발생 가능성이 있는건가요?

  • javascript
  • react
moon 댓글 1 좋아요 0 조회수 619

알림이 1초마다 두 개씩 뜹니다.

해결됨

처음 만난 리액트(React)

분명히 코드를 그대로 따라 쳤는데 1초에 두 번씩 알림이 나오는 경우도 존재하나요? Warning: Each child in a list should have a unique "key" prop. 오류도 떴습니다. 각각 notification.jsx, notificationList.jsx 코드입니다 import React from "react" const styles = { wrapper: { margin: 8, padding: 8, display: 'flex', flexDirection: 'row', border: '1px solid grey', borderRadius: 16 }, messageText: { color: 'black', fontSize: 16 } } class Notification extends React.Component { constructor(props) { super(props) this.state = {} } render() { return ( <div style={styles.wrapper}> <span style={styles.messageText}>{this.props.message}</span> </div> ) } } export default Notification import React from 'react' import Notification from './notification' const reservedNotifications = [ { message: '안녕하세요, 오늘 일정을 알려드립니다.' }, { message: '점심식사 시간입니다.' }, { message: '이제 곧 미팅이 시작됩니다.' }, { message: '안녕하세요, 오늘 일정을 알려드립니다.' }, { message: '점심식사 시간입니다.' }, { message: '이제 곧 미팅이 시작됩니다.' }, { message: '안녕하세요, 오늘 일정을 알려드립니다.' }, { message: '점심식사 시간입니다.' }, { message: '이제 곧 미팅이 시작됩니다.' }, { message: '안녕하세요, 오늘 일정을 알려드립니다.' }, { message: '점심식사 시간입니다.' }, { message: '이제 곧 미팅이 시작됩니다.' }, ] var timer class NotificationList extends React.Component { constructor(props) { super(props) this.state = { notifications: [] } } componentDidMount() { const { notifications } = this.state timer = setInterval(() => { if(notifications.length < reservedNotifications.length) { const index = notifications.length notifications.push(reservedNotifications[index]) this.setState({ notifications: notifications }) } else { clearInterval(timer) } }, 1000) } render() { return ( <div> {this.state.notifications.map(v => { return <Notification message={v.message}/> })} </div> ) } } export default NotificationList

  • HTML/CSS
  • javascript
  • react
이서현 댓글 1 좋아요 4 조회수 1154

useTransition 질문입니다!

미해결

부트캠프에서 알려주지 않는 것들 (리액트 렌더링 최적화 편) 2편

강의의 useTransition을 사용한 부분에서 input 태그의 value를 deferedFilter로 설정하고 handleChange 내의 setFilter를 제거해도 문제가 없나요? 아니면 input에서 다루는 value와 Words를 렌더링하기 위한 filter value를 따로 관리해야 하나요? 이렇게 해도 문제가 없는지 궁금합니다!

  • react
김도현 댓글 2 좋아요 1 조회수 425

다렉 수업 전에 들어야 할 수업들이 있나요?

미해결

[게임 프로그래머 도약반] DirectX11 입문

안녕하세요 제가 미리보기 강의들을 보다가 수업 방식도 마음에 들었고 미리보기 예제 코드를 다운 받기 위해서 그냥 바로 수업 신청을 했습니다. 근데 초반에서 지속적으로 전에 수업에서 다 배웠다고 많은 부분들을 그냥 넘어가셔서 제가 이해가 잘 가지가 않습니다. 혹시 배우지 못했던 부분만을 따로 빼서 저렴하게 강의를 올리실 의향이나 아니면 제가 따로 공부하고 와야 할 부분을 알려주실 수 있을까요? 좀 많이 당황스럽습니다.

  • c++
  • directx
Joe yuna 댓글 1 좋아요 0 조회수 546

mac 환경에서 실습할 경우

해결됨

Airflow 마스터 클래스

안녕하세요 mac 환경에서 강의를 수강하려고 합니다. 이러한 경우 wsl 설치 없이 다음 강의로 넘어가면 될까요??

  • python
  • 데이터-엔지니어링
  • airflow
lucli 댓글 1 좋아요 0 조회수 533

1주차 복습 질문

미해결

[게임 프로그래머 도약반] DirectX11 입문

1분 50초 쯤에 SwapChain으로 고속 복사가 발생한다고 말씀 해주셨는데 검색을 해서 자료를 찾아보면 DXGI_SWAP_EFFECT_FLIP_DISCARD대신에 DXGI_SWAP_EFFECT_FLIP_DISCARD를 통해서 스왑체인을 만드신 이유가 궁금합니다. 찾아보니까 전자의 경우 말 그대로 플리핑이 일어나서 복사가 필요없고 후자의 경우 복사가 발생하는 정도까지 얕게 파악을 했는데 루키스님의 DX를 공부할 때 숲을 보는 느낌으로 '그냥' 후자를 사용하신건지 궁금합니다

  • c++
  • directx
starkshn 댓글 1 좋아요 0 조회수 535

Texture 샘플링 관련해서 질문이 있습니다

해결됨

[게임 프로그래머 도약반] DirectX11 입문

PixelShader 구간에서 Texture를 Sampling 해주는 과정에서 질문이 있습니다. 예를들어 Quad(사각형)을 렌더링하는 경우 Quad의 각 정점4개에 Texture의 양 끝 UV좌표들 (0, 0), (1, 0), (0, 1), (1, 1)을 대응시켜 Shader에 넣어준다고 치면, 저는 이 Quad를 이루고 있는 Vertex의 수만큼 VetexShader, PixelShader들을 통해서 렌더링이 된다고 알고 있었습니다. 하지만 처음에 넣어준 정점 4개의 부분 말고도 그 4개의 정점 사이사이들(ex)(0, 0.3) or (0.4, 0.8))에 있는 VertexBuffer에 넣어주지 않은 정점도 다 Texture의 UV와 일치하게 렌더링 되더군요. 파이프라인에서 VertexBuffer에 넣어주지 않은 정점까지 Shader 작업을 하진 않을거 같아서 원래 알고 있던대로 정점의 개수만큼 파이프라인이 돌아간다면 이걸 제가 알고있던 개념에 적용시켜 생각해봤을때 Vertex의 개수에 맞게 Shader렌더링이 4회 되지만 그 내부의 PixelShader 부분에서 정점의 UV좌표들 사이사이를 매꿔주는 부분이 존재하고 이로인해 각 정점들뿐만 아니라 그 사이사이의 빈 곳들도 알맞게 렌더링이 됬다 라고 생각이 되는데 이게 맞을까요? 만 약 제 생각이 잘못됬다면 어떻게 넣어준 4개의 UV좌표만을 가지고 Texture를 전부 Sampling하나요?

  • c++
  • directx
김도형 댓글 1 좋아요 0 조회수 372

theme 적용이 되지 않습니다.

해결됨

실전 프로젝트로 배우는 데이터 앱 만들기 with Python & Streamlit

theme 적용시, 강사님께서 말씀해주신 것처럼 작업 폴더에 .streamlit 폴더를 만들고, 그 안에 config.toml 파일을 만들어 테마 적용을 했지만, 아래의 문구가 발생하며, 태마가 적용이 되지 않습니다. The page that you have requested does not seem to exist. Running the app's main page. 어떤 이유 인지 알려주세요.

  • python
  • streamlit
동현고 댓글 1 좋아요 0 조회수 495

DepthStencilView에 대해서

해결됨

[게임 프로그래머 도약반] DirectX11 입문

오늘 DepthStencil을 통해 오브젝트의 깊이를 판정해서 앞에 있는게 뒤에있는것을 가리면서 그리는 방법을 배웠습니다 그런데 궁금한점이 OutputMerge 단계에서 이 정해준 DepthStencilView의 옵션을 통해 랜더링이 된다고 지정만해주고 앞에 있는 물체가 뒤에 있는 물체를 가려준다는 알고리즘은 넣지 않은거 같은데 자동으로 잘 가려 주더군요 이런건 DX 내부 파이프라인에서 알아서 해결해주는 부분인건가요? 만약 그렇다면 오브젝트마다 주어진 Transform 데이터와 카메라의 Transform, View, Projection 데이터를 통해 파이프라인에서 0~1 사이의 깊이값을 각 픽셀마다 매핑해놨다가 그려주는 방식을 취하는 건가요?

  • c++
  • directx
김도형 댓글 1 좋아요 0 조회수 254

완전탐색 1090번 시간초과

미해결

2주만에 통과하는 알고리즘 코딩테스트 (2024년)

예제 문제는 잘 풀리는데 백준에 제출하니까 시간초과가 뜹니다 강의 자료랑 큰 차이는 없어 보이는데 어느 부분을 고쳐야 시간 안에 계산 가능할까요? #include <iostream> #include <cstdlib> using namespace std; int main(int argc, char **argv) { int n; int minX, minY, maxX, maxY; cin >> n; int arr[n][2]; for(int i=0; i<n; i++){ cin >> arr[i][0] >> arr[i][1]; } minX = arr[0][0]; maxX = arr[0][0]; minY = arr[0][1]; maxY = arr[0][1]; for(int i=1; i<n; i++){ if(arr[i][0]>maxX){ maxX = arr[i][0]; } else if(arr[i][0]<minX){ minX = arr[i][0]; } if(arr[i][1]>maxY){ maxY = arr[i][1]; } else if(arr[i][1]<minY){ minY = arr[i][1]; } } int arr_answer[n]; int arr_dis[n]; for(int i=minY; i<=maxY; i++){ for(int j=minX; j<= maxX; j++){ for(int l=0; l<n; l++){ int subY= 0, subX=0; subY = i-arr[l][1]; subX = j-arr[l][0]; arr_dis[l] = abs(subX) + abs(subY); } int sum = 0; for(int k=0; k<n; k++){ sum+=arr_dis[k]; if(i==minY && j ==minX){ arr_answer[k] =sum; } else if(sum < arr_answer[k]){ arr_answer[k] = sum; } } } } for(int i=0; i<n; i++){ cout << arr_answer[i] << " "; } return 0; }

  • python
  • 코딩-테스트
  • 알고리즘
yongyong213 댓글 2 좋아요 1 조회수 616

동시성 부분 추가 공부하면서 헷갈리는 부분 질문 드립니다.

해결됨

넓고 얕게 외워서 컴공 전공자 되기

안녕하세요 선생님! 동시성과 병렬성 관련해 기초가 약해 해당 강의를 들으면서 OS 부족한 부분을 많이 알게되어 도움이 많이되고 있습니다. 다름이 아니라 해당 강좌 범위는 벗어나지만.. 구글링해도 명확하게 해결되지 않아 질문 드립니다. 동시성을 구현하는 방법으로 멀티쓰레드 나 코루틴 방법으로 구현을 할 수있고 멀티쓰레드 방법에서 쓰레드 전환 간 context switch가 많기 때문에 오버헤드도 많아 Coroutine 방법을 많이 쓰고 또한 유저가 이벤트루프(스케쥴링)을 app에서 관리한다는 측면에서 디버그가 유용하다 정도로 이해하고 있습니다. 많은 블로그에서 멀티쓰레드보다 코루틴을 소개하면서 동시성 구현시 코루틴을 더 상위(혹은 좋은) 방법으로 서술이 많이 되어 있더라구요. I/O작업이 빈번할 경우 코루틴이 더 유리하다는 이해가 됩니다. 싱글스레드 + async 싱글스레드 멀티스레드 + async 멀티스레드 2개의 구현방법이 레이어가 다르다(thread와 task)보니 4가지 경우의 수를 적용할 수 있는데 실제 동시성을 적용해야되는 상황이면 어떻게 판단하고 최적의 구현방법(4가지 중 선택)을 적용할 수 있을까요? (파이썬 스택을 쓰고 있으며 GIL도 이해하고 있는 상태입니다.) 다시한번 해당 강의와 조금 벗어난 질문드려 죄송합니다. ( _ _ )

  • python
  • 동시성
  • 병렬성
권설민 댓글 1 좋아요 0 조회수 431

DirectX 3D에 대해 질문이 있습니다

해결됨

[게임 프로그래머 도약반] DirectX11 입문

DX 3D를 배우면서 원초적으로 궁금한점이 생겼는데 저희는 지금 Vertex를 표현할때 x, y, z좌표를 사용해 도형을 표현해주는데 x, y 좌표는 모니터의 x, y 픽셀과 대응되기 때문에 자연스럽게 렌더링 시킬수 있다고하지만 z좌표는 도대체 어떻게 렌더링이 되는 건가요? 이건 DX 파이프라인에서 알아서 설정해주는 건가요? 입력되는 데이터에 z좌표 하나를 추가로 넣어주는것 외에는 아무것도 하지 않았는데 어떻게 도형이 3D처럼 렝더링시킬 수 있는건가요?

  • c++
  • directx
김도형 댓글 1 좋아요 0 조회수 424

c++ 변수와 Shader 변수와의 상호작용

해결됨

[게임 프로그래머 도약반] DirectX11 입문

강사님 강의 정말 잘 듣고있는 도중 질문이 생겼습니다. 보시는바와같이 Shader스크립트에서 전역변수를 선언하고 C++에서 만들어준 변수를 알맞게 매핑하여 잘 사용하는 모습을 보았는데요 여기서 질문이 있습니다. 바로 저 Shader스크립트에 선언된 변수와 C++스크립트에 선언된 변수가 매핑되는 과정 입니다. C++에서 선언해주는 ShaderResourceView(Texture) 같은건 처음 선언할시 VRAM 내부에 Texture의 비트값이 복사가되고 ShaderResourceView라는 아이가 그 VRAM내부에 선언된 Texture의 주소를 Shader스크립트의 Texture2D라는 아이에게 전달해준다고 생각하고있었는데 그렇다면 그 위에 선언해준 Matrix같은 경우 c++에서 처음 선언할때도 VRAM이 아닌 RAM에 생성되는데 그렇다면 Shader의 Matrix와 C++의 Matrix는 Texture처럼 주소값만 전달해주는게 아니라 완전히 복사해주는건가 두 가지 과정이 다른건가 아니면 제가 어느 한쪽을 잘못 알고 있는건가 해서 질문드립니다.

  • c++
  • directx
김도형 댓글 1 좋아요 0 조회수 303

V -> VInv 에서 CameraPosition 을 뽑아쓰는 이유가 이게 맞을까요?

미해결

[게임 프로그래머 도약반] DirectX11 입문

듣다가 뇌가꼬여서.. 질문드립니다. V 월드에 배치된 오브젝트들을 카메라를 원점으로 한 좌표로 바꿔주고 VInv 카메라 로컬기준 오브젝트들을 다시 월드기준으로 변경시켜준다 카메라 움직임 자체에는 이상이 없음. 문제점 : 조명효과(보이기엔 Emissive) 그래서 V -> VInv 로 한 이유는 Emissive 효과에선 물체에서 카메라까(눈) 벡터가 필요한데 (월드에 배치된 물체에서 월드에 배치된 카메라의 벡터가 필요) 기존 CameraPosition 은 V 면 항상 카메라가 원점이니깐 회전을 시켰을때 제대로 적용이 안됐다. 그래서 CameraPosition 을 VInv 에서 뽑아내서 월드 좌표로 바꿔줬다.. 란 제 결론이 나왔습니다.. 이게 맞을까요?

  • c++
  • directx
Bori 댓글 1 좋아요 0 조회수 357

크롤링 기사 기간 설정

해결됨

[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)

안녕하세요 뉴스크롤링에서 크롤링 하고자 하는 뉴스의 기간을 정해주려면 response = requests.get(" https://search.naver.com/search.naver?where=news&sm=tab_jum&query=검색어 ") 위 코드의 " " 안에 뉴스기간을 옵션으로 설정하여 검색한 페이지의 URL을 긁어서 넣어주면 되는걸지요? 감사합니다.

  • python
  • 웹-크롤링
cherrykim90 댓글 2 좋아요 0 조회수 1205

인기 태그

인프런 TOP Writers

주간 인기글