inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

RenderTarget Group 적용

미해결

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

DX12에서 썼던 방법으로 RenderTargetGroup을 적용하는데 SwapChain 옵션 중 SwapEffect = DXGI_SWAP_EFFECT_FLIP_DISCARD; 로 주니까 SwapChain의 버퍼 카운트를 2로 했는데도 SwapChain->GetBuffer(index, IID_PPV_ARGS(&resource)); 이 부분에서 index가 0이 아니면 resource를 반환해주지를 않는데, DX11에서는 DX12때 처럼 SwapChain의 BackBufferIndex를 이용해서 수동으로 관리하는게 불가능한가요

  • c++
  • directx
정윤성 댓글 1 좋아요 0 조회수 256

ComputeShader로 ParticleSystem 구현 관련해서 질문이 있습니다

미해결

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

DX12 강의에 있던 방법과 같이 ParticleSystem을 컴포넌트로 만들고, FinalTick에서 Compute Shader로 StructuredBuffer를 전해줘서 계산하고, Render 단계에서, FinalTick에서 전해줬던 StructedBuffer를 다시 던져 그리는 방식으로 만들었는데, m_pShader->GetSRV .... 부분에서 Effects11: ID3DX11EffectVariable::AsShaderResource: Invalid typecast 이런 오류가 뜹니다. RWStructuredBuffer라서 그런가 싶은데, 그럼 Input용으로 던져줄 StructuredBuffer<> 와 Output용으로 던져줄 RWStructuredBuffer를 따로 선언해서 채워줘야 하는건가요?

  • c++
  • directx
정윤성 댓글 1 좋아요 1 조회수 437

Pipeline 강의 질문있습니다.

미해결

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

이번 강의에서 Pipeline클래스를 따로 만든다음에 공통적이고 필수적인 부분들은 _pipeline클래스의 Update가 담당하여 렌더링 파이프 라인을 진행하고 일단은 그 밑에 다시 IA - VS - RS - PS - OM단계를 진행하던데 rendering pipeline도식화 해놓은것을 보면(구글링하여 나온 이미지들) IA - VS - RS -PS -OM 단계인데 RenderBegin()이 호출되면 무조건 바로다음에 IA단계들이 다 붙어서 와야하고 그다음에 VS단계에 오는 것들이 다 순서대로 오는식이 아니라 그냥 RenderBegin()이 시작하여 화면을 초기화하고나서 SwapChain을 통해 Present하기 전에만 그냥 순서상관없이 IA 단계부터 OM단계까지의 함수호출들이 오면 되는 것인가요? 렌더링 파이프라인 도식화 한 이미지들은 렌더링 할 버퍼 이미지를 초기화하고 이것을 Swap하여 Present하기 전까지의 렌더링 과정을 이해하기 쉽게 그냥 도식화 해놓은 개념에 불과한가요?

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

사용자 정의 함수 방언 등록

해결됨

자바 ORM 표준 JPA 프로그래밍 - 기본편

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 사용자 정의함수를 db에 등록시켜놓은 다음에 jpql로 사용을 해보니 따로 방언을 등록하지 않아도 사용이 가능합니다. List<String> str = em.createQuery("select create_prefix(m.username) from Member m", String.class).getResultList(); create_prefix는 직접 등록한 함수입니다. 수업에서는 방언으로 사용자 정의 함수를 등록해야지 적용이 된다고 하는데 이 경우 왜 작동되는지 알고싶습니다.

  • java
  • jpa
준영 댓글 2 좋아요 1 조회수 874

@Autowired와 @Transactional으로 EntityManager주입 받기

미해결

실전! 스프링 데이터 JPA

@Autowired로 EntityManager를 주입받을때 여러 쓰레드가 동시에 접근하면 동시성 문제가 발생합니다. 하지만 @Transactional 을 추가해준다면 //1 @Repository @RequiredArgsConstructor @Transactional public class AutowiredRepository { private final EntityManager em; } //2 @Repository public class PersistenceContextRepository { @PersistenceContext private EntityManager em; } @PersistenceContext 처럼 Transaction에 의해 쓰레드간 동시성 문제를 해결해준다 고 생각하는데 맞게 생각한건지 궁금합니다. 두가지 방법 다 EntityManager를 호출 할때마다 Proxy를 통해 EntityManager를 생성하여 Thread-Safe를 보장해준다라고 볼수 있는 건가요?? 답변주시면 정말 감사하겠습니다.

  • java
  • spring
  • spring-boot
  • jpa
코딩먹는하마 댓글 1 좋아요 1 조회수 622

World 행렬 생성중 회전행렬 값에 대하여 의문이 있습니다.

미해결

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

유니티에서 회전행렬을 확인 해보고자 출력을 했을 때. 이렇게 출력을 하였습니다. Transform을 해당 값으로 맞춰놓고 작업을 하였는데 Log 값은 이렇게 출력되었습니다. 여기서 의문점인경우가 Z축 회전 행렬을 적용하면 C -S 0 0 S C 0 0 0 0 0 1 0 0 0 1 이 적용이 되어야 하는데 Log 값으로 출력되는것을 보면 Sin값 적용부분에서 C -S S C 가 아닌 C S -S C 로 적용되는걸 알 수 있는데 왜 이렇게 값이 나오는 것인지 궁금합니다. (부호가 왜 바뀌어서 나오는지 궁급합니다.) X축 , Y축 , Z축 동일하게 출력을 해 보았으나 모두 다 같습니다...

  • c++
  • directx
이규식 댓글 3 좋아요 0 조회수 419

penJDK 64-Bit Server VM warning: Options -Xverify:none and -noverify were deprecated in JDK 13 and will likely be removed in a future release. 오류

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. OpenJDK 64-Bit Server VM warning: Options -Xverify:none and -noverify were deprecated in JDK 13 and will likely be removed in a future release. 이러한 오류가 뜨는데, 실행하는데는 문제가 없습니다. 이 오류를 고쳐야 할 것 같은데, 어떻게 고쳐야할까요?

  • java
  • spring
  • mvc
  • spring-boot
댓글 1 좋아요 0 조회수 380

실무에서 사용자 정의 함수를 많이 사용하나요?

해결됨

자바 ORM 표준 JPA 프로그래밍 - 기본편

실무에서 DB방언을 상속받아 사용자 정의 함수를 등록해서 사용하는 경우가 많은지 궁금합니다!

  • java
  • jpa
spacebar 댓글 1 좋아요 0 조회수 365

안녕하세요 강사님 이전 재고 관리 강의와 차이에 대해 궁금합니다.

미해결

실습으로 배우는 선착순 이벤트 시스템

쿠폰 생성 발급 로직도 컬럼에 쿠폰의 개수를 지정해놓으면 이전 강의랑 똑같은 거 같은데 왜 이번 강의는 쿠폰 엔티티를 새로 생성해서 그 개수를 체크하는 건지 궁금합니다. 이전 컬럼에 개수를 두어 관리하는 거랑 지금처럼 엔티티를 생성하는 방식의 차이점이 너무 궁금해요 항상 감사합니다.

  • java
  • docker
  • spring-boot
  • kafka
  • redis
진짜 잘하고싶다 댓글 2 좋아요 0 조회수 583

쿠폰 카운트를 Redis에 의존하고 있는데요

미해결

실습으로 배우는 선착순 이벤트 시스템

만약 Redis에 장애가 발생한다면 2차 장치로 DB Count에 의존할 수 밖에 없는걸까요? 실무에선 어떻게 대응하시는지 궁금합니다!

  • java
  • docker
  • spring-boot
  • kafka
  • redis
목동 개발자 댓글 2 좋아요 4 조회수 1075

MySQL 사용에 대한 조언 질문있습니다.

해결됨

Java/Spring 주니어 개발자를 위한 오답노트

안녕하세요 주니어 개발자 길라잡이가 되주셔서 감사합니다. fulltext index에 대해서 질문이 있습니다. 임계점이 올경우 튜닝으로도 해결할 수 없는 문제라고 말씀해주셨는데요 경험담이라고 해주셨는데 그 경험담을 듣고 싶어서 질문을 남겨봅니다. 공식 문서에서 찾아보니까 https://dev.mysql.com/doc/refman/8.0/en/innodb-fulltext-index.html#innodb-fulltext-index-deletion 동시 경합이 발생할 수 있다고 작성이 되어있는데 이 문제로 발생한건가요 ? 아니면 다른 인덱스와 다르게 인덱스 용량 때문에 발생한 문제이신건가요 ? FULLTEXT INDEX의 한계 검색을 해도 다 좋은점만 나오더라구요..

  • java
  • spring
  • 객체지향
  • 소프트웨어-테스트
티벳로보 댓글 2 좋아요 0 조회수 886

이번 강의를 듣고

미해결

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

이번에 신규 오픈하신 DX11 강의를 또 들어야 할까요 아니면 이것만으로도 충분할까요?

  • directx
  • 게임수학
Aiden 댓글 1 좋아요 0 조회수 486

SwapChain에 대해서 질문이 있습니다

해결됨

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

SwapChain에 대해서 제대로 알고있는게 맞는지 개념 확인좀 부탁드립니다. SwapChain 사용 이유 SwapChaine을 생성할시 프론트버퍼와 백버퍼가 생성이되고 프론트버퍼에 있는 데이터가 모니터로 복사가되고 백버퍼에 다음 장면을 렌더링 하는식으로 돌아가게 된다. 이렇게 하는 이유는 버퍼에서 모니터로의 비트 데이터 복사 속도가 매우 느리기 때문에 버퍼를 하나만 쓰다간 모니터에 모든 버퍼의 데이터가 복사되기 전에 먼저 다음 프레임의 비트 데이터가 버퍼에 갱신되어서 모니터에 이전 프레임의 비트 데이터가 복사되던 도중 갑자기 갱신된 현재 프레임의 비트 데이터 복사될수도 있기 때문이다. SwapChain Present 동작 원리 비트 데이터를 전부 화면에 복사한 프론트버퍼를 가리키는 포인터와 현재 프레임의 비트 데이터로 갱신된 백버퍼의 포인터가 서로 가리키고 있는 버퍼를 교체하면서 화면 복사와 다음 프레임 데이터 갱신을 이어나가게 한다. SwapChain을 만들때 BufferCount를 1개로 설정해주던데 이거는 백버퍼의 개수이고 프론트 버퍼는 개수를 지정해줄 수 없고 자동으로 한개만 생성된다

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

ConstantBuffer에 대해서 질문이 있습니다.

해결됨

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

안녕하세요 ConstantBuffer에 관련되어 강의를 듣는도중 질문이 3가지 정도 생겼습니다. VertexBuffer에 있는 내용을 직접 변경해서 다시 랜더링하기 위해선 처음 설정할때 GPU에서 초기화하고 읽기 전용으로만 생성했기때문에 VertexBuffer를 다시 생성하고 GPU로 다시 복사해줘야 한다고 말하셨는데 GPU에서 읽기, 쓰기 둘다 가능한 D3D11_USAGE_DEFAULT 타입으로 생성해준 뒤 GPU내부에 VertexBuffer를 다시 생성할 필요가 없이 쓰기 작업만 해주면 안되는 건가요? 1번 경우가 어떤 이유때문에 안될것이지만 왜 저렇게 하면 안될까 이유가 궁금해서 쓴 것이고 VertexBuffer를 ReadOnly로 설정하고 Offset을 더해주어 모델링이 움직일때 이러한 개념으로 생각해도 되나요? 우선 현재 렌더링 되고있는 Enemy 100마리가 존재하고 100마리 전부의 위치를 각기 다르게 수정해준다고 가정. 2-1. VertexBuffer를 통해 위치 정보를 직접 수정하는 경우 첫 번재, 현재 VRAM에 100마리 만큼의 모델링 정보가 있는 상태에서 100마리 만큼의 위치변환 정보만 전송해주는 방법. 두 번째, CPU가 GPU로 정보를 보내줄때 아예 그냥 100마리만큼의 모델링 정보 + 100마리 만큼의 위치변환 정보를 전부 전달해주는 방법. 이 있는데 첫 번째 경우로 한다하면 VRAM에 100마리 만큼의 모델링 정보를 감당할 메모리가 존재하지 않아 불가능하고 두 번째 경우로 한다면 보내주는 용량이 너무 많아 전송 시간이 너무 오래 걸리기 때문에 힘들다라고 이해했습니다. 그래서 제가 이해해본 강사님께서 말한 방식이 2-2 방법인데 2-2. ConstantBuffer를 통해 위치 정보를 간접 수정하는 경우 CPU에서 GPU로 정보를 보내줄때 100마리의 위치 정보만 보내주고 VRAM에 존재하는 하나의 모델링에 100개의 각기 다른 위치 정보를 더해주어 렌더링함으로써 C++에서 l-value 하나에 여러 상수를 더하면서 여러 r-value를 쓰듯이 사용하는 방법. 이 경우를 통해 1개의 모델링과 100개의 위치변화 정봅만 있으면 100개의 Enemy를 렌더링 할 수 있다 라고 이해했습니다 혹시 이게 맞나요? 마지막 질문입니다 Update 함수에서 memcpy를 사용해서 subResource.pData에 들어온 데이터를 통해 constantBuffer의 상수 데이터를 변경시킨다고 알고 있는데 이 함수 내용에선 직접적으로 constantBuffer에 subResource.pData의 데이터를 할당하는 부분이 없는데 어디서 할당이 되는 건가요? 혹시 몰라서 subResource.pData와 constantBuffer.Get()의 포인터 정보도 찍어봤는데 서로 다른 곳이였어서 deviceContext에서 자동으로 알아서 전달해주는 건가요? 제가 궁금한게 생기면 못 넘어가는 성격이라 질문이 길어서 죄송합니다.

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

렌더링 파이프라인 front buffer, backbuffer 질문

미해결

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

RenderBegin()과 RenderEnd() 사이의 렌더링 파이프라인 단계를 거쳐서 다 그리고 나면은 _swapChain→Present함수 호출을 통해 ‘고속복사’가 발생한다고 강의에서 말씀하셨는데 조금 이해가 안되었던 부분이 매 틱마다 RenderBegin() → RenderingPipeLine → RenderEnd()를 거치게 되는 버퍼가 _swapChain의 front buffer ↔ back buffer로 순서가 왔다 갔다 바통터치 하듯이 바뀌면서 렌더링 파이프라인이 진행되는 것인가요? 아니면 전면버퍼는 모니터 화면에 계속보여주고 backbuffer가 매틱마다 RenderBegin() → RenderingPipeLine → RenderEnd()거쳐서 다 그려진 완성물(보여줄 데이터)을 front Buffer에 ‘고속 복사’를 하는 방식인가요? 문서를 보면 포인터로 빠르게 front buffer, back buffer를 왓다 갔다 한다는데 햇갈리네요…

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

Constant buffer 질문있습니다

미해결

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

질문 1. Constant 상수 변하지 않는 이라고 생각하는대 offset을 변경한다는게 이해가 잘안갑니다.. 질문 2. (CPU 메모리) 버퍼를 생성하고 GPU Video Memory에 복사한다 가 맞는건가여?

  • c++
  • directx
슝슝이 댓글 1 좋아요 0 조회수 515

JPA 최적화 강의 수강 후, 개인 프로젝트 수행하면서 생긴 질문입니다.

해결됨

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

안녕하세요. JPA 최적화 강의를 수강하고, 개인적으로 DDD를 책으로 공부해본 후에 개인 토이 프로젝트를 진행하던 중, 뜻밖에 의문이 생겼는데 여쭐 곳이 없어서 이렇게 질문 올리게 되었습니다. 맨 땅에 헤딩으로 이런저런 강의, 책, 다른 분들의 소스를 참고 하려다보니 여러 개념이 뒤섞여서 혼동이 옵니다.. ㅠㅠ 현재 프로젝트에서는 크게 에그리거트를 CUSTOMER, EXTERNAL, SECURITYMEDIA 3개로 나누어 설계했는데요. 강의에서도, 책에서도 DOMAIN 계층에 있는 서비스는 해당 도메인에 대한 순수한 CRUD를 수행하는 것으로 보았습니다. DDD 책에서는 여러 에그리거트가 필요로 하는 기능을 구현할 때는 도메인 서비스로 구현하라고 이야기 했구요. 처음에는 책에서 조언하는 대로 도메인 서비스로 구현해보고자 하다가, 좀처럼 구현이 안되어서 다른 분들이 구현한 소스를 참조하다 보니 application(응용)영역을 FACADE라는 상위 계층을 두는 것을 방식을 알게 되었습니다. 소스를 따라가보니 각 애그리거트의 DOMAIN 영역에 있는 서비스를 주입하여, 각 도메인 영역에 있는 서비스를 적절히 호출하기에 책에서 본 도메인 서비스와 같은 역할을 하겠구나 하여,, 해당 프로젝트 구성 방식을 따라 개발해보기로 했습니다. 그런데 개발을 하다보니,, 참조하는 소스에서 메소드 단위의 트랜잭션의 적용을 facade 영역이 아닌, 도메인 영역의 서비스 구현체에서 하는 것을 알게 되었습니다. 제가 개발하고자 기능은 여러 애그리거트를 생성, 변경하는 하나의 행위가 하나의 트랜잭션으로 묶여야 하는데 말이죠. 이러한 이유 때문에 현재 소스는 FACADE에서는 하나의 도메인 영역의 서비스를 주입하여 하나의 메소드를 호출하도록 되어있고, 도메인 영역에 있는 해당 서비스의 구현체에서 여러 애그리거트의 서비스, 레포지토리를 주입받아 하나의 메소드에서 트랜잭션 단위로 수행하도록 구현되어있습니다.. @Service @RequiredArgsConstructor public class SecurityMediaFacade { private final SecurityMediaService securityMediaService; public SecurityMediaInfo.Main registerOtp(SecurityMediaCommand.RegisterSecurityMediaRequest req) { //디지털otp 발급 // 디지털 otp 발행 return securityMediaService.issueSecurityMedia(req, SecurityMediaType.DIGITAL_OTP); } ... } public interface SecurityMediaService { public SecurityMediaInfo.Main issueSecurityMedia(SecurityMediaCommand.RegisterSecurityMediaRequest req, SecurityMediaType type); ... } @Slf4j @Service @RequiredArgsConstructor public class SecurityMediaServiceImpl implements SecurityMediaService { private final CustomerReader customerReader; private final SecurityMediaStore securityMediaStore; private final TokenStore tokenStore; private final ExternalClientService externalClientService; @Override @Transactional public SecurityMediaInfo.Main issueSecurityMedia(SecurityMediaCommand.RegisterSecurityMediaRequest req, SecurityMediaType type) { // 요청고객 찾기 Customer customer = customerReader.findCustomerByRnn(req.getRnn()); SecurityMedia newOtp = null; if(!customer.existActiveSecurityMedia()) { // otp 신규 SecurityMedia initOtp = req.toEntity(SecurityMediaType.DIGITAL_OTP, customer); newOtp = securityMediaStore.store(initOtp); // 토큰 발급 요청 Token newToken = externalClientService.getToken(customer, newOtp); newOtp.addToken(newToken); tokenStore.store(newToken); } return new SecurityMediaInfo.Main(newOtp); } 위에는 프로젝트의 구성인데.. 첫 단추부터 잘못 끼운 것도 같아서 시작 단계인 지금에서라도 좀 개선을 해보려고 하는데요. 사실 도메인 서비스가 제가 의도로 하는 여러 애그리거트의 서비스 기능을 묶어서 하는 건지 아무리 읽어봐도 혼선이 옵니다. 혹시 DDD 책에서 이벤트라는 개념이 나오는데 도메인 서비스가 아니라, 이 이벤트를 통해 다른 애그리거트의 응용 서비스를 호출하도록 핸들링 하는게 올바른 방법일까요? 지금과 같은 구조를 유지해도 된다면.. facade 영역의 메소드를 트랜잭션으로 묶고, 각 도메인 계층의 서비스들에서 선언된 해당 도메인에 대한 crud 메소드를 적절히 호출해가면서 facade 영역에서 비즈니스 로직을 처리해도 될까요? 너무 글이 장황하고 기네요.. ㅠㅠ 혹시 도움을 주신다면 너무나도 감사드리겠습니다.

  • java
  • spring
  • spring-boot
  • jpa
인생은회전목마 댓글 1 좋아요 0 조회수 510

버텍스 버퍼를 잘이해못한거같습니다

미해결

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

현재 정점4개를 만든이유는 단순 2D 이미지 띄우기 위함인가여? 3D 모델의 정점은 모델 마다 다를테니 정점 데이터를 읽어 오는 방식으로 동작 하는 건 가여?

  • c++
  • directx
슝슝이 댓글 1 좋아요 0 조회수 523

Animation 보간 관련 질문드립니다

미해결

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

애니메이션 보간 결과물이 너무 어색해 생각해보니 각 키프레임 데이터에서 꺼내온 SRT를 보간 한 후에 애니메이션 트랜스폼을 결정해줘야 의도처럼 되더라구요. 근데 애니메이션의 Transform을 SRV로 만들어 셰이더로 던져줘서 보간 계산을 할 수 있는 적절한 위치를 모르겠습니다. 셰이더에서 하기에는, BONE INDEX를 처음부터 돌면서 현재 프레임의 Transform을 구하는 동일한 과정을 vertex마다 계속 하게되고, CPU에서 처리하기에는 텍스처를 사용하는 의미가 퇴색되는 것 같아 질문드립니다. Transform을 Texture화 하면서 정확한 보간을 할 수 있는 방법이 있나요

  • c++
  • directx
정윤성 댓글 1 좋아요 0 조회수 412

비쥬얼스튜디오에서 디버그할땐 실행되는대 exe파일로는 실행이안되요

미해결

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

1.실행파일로 시작했을때 오류 2.비쥬얼스튜디오에서 디버그 했을때 모습 제가 잘못한건지 보려고 선생님 프레임워크 실행해봐도 똑같은 문제가 납니다 장치 생성하는 라인인거같은대 왜다른걸까요..?

  • c++
  • directx
슝슝이 댓글 1 좋아요 0 조회수 1282

인기 태그

인프런 TOP Writers

주간 인기글