[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
안녕하세요 선생님! 뷰 변환 행렬 시 RT 역행렬을 사용하였을 때 궁금한 것이 있어 질문 드립니다. 선생님께서 월드 스페이스에서 뷰 스페이스로 넘어갈 때 카메라가 움직이는 것이 아닌 오브젝트가 움직이는 것으로 관점을 달리 하여 카메라의 RT 역행렬을 오브젝트들에 곱하여 오브젝트의 위치를 변경시키는 것이 뷰 변환 행렬이라고 말씀해주셨는데 여기서 궁금한 것이 만약 이렇게 되면 카메라 뺀 나머지 모든 오브젝트의 월드 좌표가 바뀌는 것이 아닌가요?? 이렇게 되면 따로 문제가 생기는 것이 없는지 궁금합니다. 또한 역행렬을 곱해줄 때 3D 공간 상의 모~~~든 오브젝트, 배경까지도 모두 역행렬을 곱해주는 것이 맞는지 궁금하여 질문 드립니다. 감사합니다!
chakra ui 사용하는 과정에서 에러가 생깁니다. npm i @chakra-ui/react @emotion/react@^11 @emotion/styled@^11 framer-motion@^6 해서 설치하고 npm 버전도 6으로 낮췄고 여기까지는 정상적으로 실행되고, config-overrides.js 파일 생성, npm i react-app-rewired 사용후 package.json 파일에서 app-rewired로 수정 완료 했습니다. 그리고 npm run start 돌려보니 Failed to compile. ./node_modules/@chakra-ui/modal/dist/index.esm.js SyntaxError: /Users/jk/Documents/GitHub/polygon-nft/frontend/node_modules/@chakra-ui/modal/dist/index.esm.js: Missing class properties transform. 71 | import { useEffect } from "react"; 72 | var ModalManager = class { > 73 | modals; | ^ 74 | constructor() { 75 | this.modals = []; 76 | } 라는 에러가 계속 뜨는데 아직 해결 방안을 못찾고 있습니다. 이럴 경우 어떻게 해야하나요?
지금 게임 서버 프로그래밍 교과서라는 책을 구매해서 같이 보려고 합니다 그 이후에 윤성우의 열혈 TCP/IP를 보려고하는데 이 교재에서는 C/C++로 진행이되는데 C#(유니티)과 동작원리는 같아서 병행해서 공부해도 되는지 아니면 동작원리가 달라서 추후에 C#이 익숙해지고 공부하는 것을 추천하는지 선생님의 의견을 듣고 싶습니다 감사합니다! (아! 마지막으로 위 책들을 추천하는지, 루키스님이 추천하는 책은 어떤 것인지 알고 싶습니다)
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 입력이 숫자인 경우 map이 아니라 배열에 저장후 인덱스로 접근하여 가져와도 될까요?
10:55초 에서 MyLogger가 요청마다 각각 따로 생성 된다고 하셨는데 프록시 객체가 HTTP요청 마다 각각 따로 생성된다는 말씀이신가요? 그리고 실제 MyLogger는 실제 메서드가 사용 될 때 호출된다고 하셨는데 이게 MyLogger의 실제 기능(메서드)를 사용할 때 프록시객체와의 상속관계를 끊어버리는건가요? ( 가짜를 쓸 때도 진짜 MyLogger를 가리키고 있으나 그 땐 상속관계에 있는 프록시 객체로 오버라이딩 )
질문을 찾아봤는데 없는것 같아서 질문 드립니다! 혹시 특정 Service만 OSIV를 끄고 커넥션을 유지하는 방법은 없을까요? 이전 강의에서 hibernate.default_batch_fetch_size는 전체 사이즈를 정하고 @BatchSize처럼 개별적으로 사이즈를 정하듯이 OSIV는 개별적으로 on/off는 불가능한지 궁금합니다.
환경 1. h2 version 1.4.199 2. JPA 하이버네이트 5.3.10.Final 3. <property name="hibernate.hbm2ddl.auto" value="create"/> Member.class package hellojpa; import javax.persistence.*; @Entity public class Member { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private String id; @Column(name = "name", nullable = false) private String username; public Member() { } public Member(String id, String username) { this.id = id; this.username = username; } /** * getter setter */ public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } } JpaMain.java package hellojpa; import javax.persistence.*; @Entity public class Member { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private String id; @Column(name = "name", nullable = false) private String username; public Member() { } public Member(String id, String username) { this.id = id; this.username = username; } /** * getter setter */ public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } } 에러코드 WARN: GenerationTarget encountered exception accepting command : Error executing DDL " create table Member ( id varchar(255) generated by default as identity, name varchar(255) not null, primary key (id) )" via JDBC Statement org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL " create table Member ( id varchar(255) generated by default as identity, name varchar(255) not null, primary key (id) )" via JDBC Statement at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:67) at org.hibernate.tool.schema.internal.SchemaCreatorImpl.applySqlString(SchemaCreatorImpl.java:440) at org.hibernate.tool.schema.internal.SchemaCreatorImpl.applySqlStrings(SchemaCreatorImpl.java:424) at org.hibernate.tool.schema.internal.SchemaCreatorImpl.createFromMetadata(SchemaCreatorImpl.java:315) at org.hibernate.tool.schema.internal.SchemaCreatorImpl.performCreation(SchemaCreatorImpl.java:166) at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:135) at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:121) at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:155) at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.process(SchemaManagementToolCoordinator.java:72) at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:310) at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:467) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:939) at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:56) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:79) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54) at hellojpa.JpaMain.main(JpaMain.java:10) Caused by: org.h2.jdbc.JdbcSQLFeatureNotSupportedException: Feature not supported: "CHARACTER VARYING(255)"; SQL statement: create table Member ( id varchar(255) generated by default as identity, name varchar(255) not null, [50100-210] at org.h2.message.DbException.getJdbcSQLException(DbException.java:575) at org.h2.message.DbException.getJdbcSQLException(DbException.java:496) at org.h2.message.DbException.get(DbException.java:227) at org.h2.message.DbException.get(DbException.java:203) at org.h2.message.DbException.getUnsupportedException(DbException.java:291) at org.h2.command.ddl.SequenceOptions.getBounds(SequenceOptions.java:316) at org.h2.command.ddl.SequenceOptions.getBounds(SequenceOptions.java:244) at org.h2.schema.Sequence.<init>(Sequence.java:101) at org.h2.table.Column.initializeSequence(Column.java:459) at org.h2.command.ddl.CommandWithColumns.generateSequences(CommandWithColumns.java:103) at org.h2.command.ddl.CreateTable.update(CreateTable.java:110) at org.h2.command.CommandContainer.update(CommandContainer.java:174) at org.h2.command.Command.executeUpdate(Command.java:252) at org.h2.server.TcpServerThread.process(TcpServerThread.java:408) at org.h2.server.TcpServerThread.run(TcpServerThread.java:191) at java.base/java.lang.Thread.run(Thread.java:834) at org.h2.message.DbException.getJdbcSQLException(DbException.java:507) at org.h2.engine.SessionRemote.done(SessionRemote.java:611) at org.h2.command.CommandRemote.executeUpdate(CommandRemote.java:237) at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:228) at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:201) at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:54) ... 15 more
안녕하세요! REST API 공부를 하다가 요즘은 @Pathvariable로 엔티티의 식별자를 주는게 추세라는 말을 주워들었습니다. GET, DELETE 요청과 같이 requestbody를 사용하지 않는 요청에서는 식별자를 URI에 주는게 이해가 가는데 POST, PUT 요청은 requestbody에 데이터를 담아 보내는데 이 경우에도 식별자는 Pathvariable로 주는게 권장되는 방식인가요?? ex) 1번 방식은 userId를 경로에 포함 @PostMapping("/lists/{userId}") public void createCart(@PathVariable Long userId, @RequestBody CartDto cartDto) {} 2번 방식은 userId를 RequestBody에 포함 @PostMapping("/lists") public void createCart(@RequestBody CartDto cartDto) {}
안녕하세요. 영상 보며 따라하는 수강생입니다. 앱 관련해서 질문 드립니다! 이 인스타그램 클론2.0 영상 따라하고 배포하면 여러사람이 로그인해서 실제 인스타그램처럼 활용할 수 있나요? 약 30명이상 정도가 이 앱을통해 SNS기능을 사용하고 싶습니다! 서버가 있는 것으로 알고 있어서.. 답변 부탁드립니다...!
안녕하세요 교수님 다른 분이 하신 해당강의 질문에서 while(getchar() != 'n') continue; 에서 getchar() 부분을 c로 바꾸면 오류가 생기는 이유를 알았습니다. 근데 while (getchar() != '\n') continue; 에서 getchar() 부분을 (c = getchar()) 로 바꿔주게 되면 정상적으로 작동하는데 입력을 예를 들어 yes 로 입력해주게 된다면 c 도 영원히 y의 아스키코드코드 값인 121이 저장되서 (c = getchar()) != '\n' 이 항상 참이되서 영원히 while 문을 돌아야 하는게 아닌가해서 질문 올려봅니다..