▲neo 7달전 | parent | favorite | on: GN⁺: Rust로 게임 개발을 한 3년 후에 떠나며(loglog.games)Hacker News 의견 메타버스 클라이언트 개발 경험을 공유하며 러스트의 문제점들을 제시함 러스트로 대규모 3D 게임을 개발하는 사례가 거의 없음 리팩토링과 프로그램 각 부분을 연결하는 작업이 고통스러움 렌더링은 거의 적절하지만 스택이 완성되지 않았고 신뢰할 수 없음 2D GUI 시스템은 약하고 다이얼로그 박스당 너무 많은 코드가 필요함 async 시스템이 불필요한 영역까지 확산되는 문제에 동의함 20년 경력의 게임 개발자로서 러스트가 게임 개발에 적합하지 않다고 봄 게임플레이 코드는 유연해야 하고 흥미로운 게임을 만들기 위해 엣지 케이스가 많아야 함 컴파일 시간이 중요하고 구조 변경이 자주 필요함 ECS는 일부 시스템에 유용하지만 게임플레이나 UI 코드에는 사용하기 힘듦 러스트 게임 개발 생태계는 과대광고에 의존하고 있음 러스트로 게임 개발을 시도했지만 즉시 끔찍한 경험을 함 느린 컴파일 시간, 거대한 패키지 다운로드, 러스트 자체의 어려움 등 다른 도구들이 러스트처럼 안전하지 않다고 주장하지만 게임에서 메모리 안전성이 큰 문제였던 적이 거의 없음 비비와 유니티, 고도로 게임 개발 경험을 비교함 현재 러스트로 게임 개발을 선택하는 것이 이해하기 어려움 ECS에 모든 것을 우겨넣으면 재미있는 게임플레이 개발에 방해가 됨 현대 PC의 성능을 고려하면 다중 스레딩 최적화를 과도하게 걱정할 필요가 없음 님(Nim) 언어가 러스트보다 게임 개발에 더 적합할 수 있음 개발자를 방해하지 않고 핫 리로딩을 지원함 러스트는 특정한 방식의 프로그래밍을 강요하는 독선적인 언어로 보임 메모리 안전성을 모든 것보다 우선시 하는데 게임 개발에서는 그다지 유용하지 않음 게임 개발에 이상적인 언어는 생산성이 높고 성능이 적절하며 위험을 감수할 줄 아는 숙련된 프로그래머를 위한 것이어야 함 Allen Blomquist의 툴링 데모는 개발 피드백 루프가 중요함을 보여줌 러스트가 원하는 작업 환경을 제공하지 못해 Unity로 다시 전환함 러스트의 근본적 문제는 객체지향을 버리고 함수형 프로그래밍을 선호하는 것 최하위 코어에서는 도움이 될 수 있지만 상위 레벨에서는 적합하지 않음 게임 개발에 있어 러스트는 최악의 선택 정확성과 안전성, 완벽한 코드를 추구하는 러스트의 가치는 게임 개발과 맞지 않음 게임은 수명이 짧고 개발 주기도 짧아 코드 품질이 그리 중요하지 않음 게임 엔진 개발에는 도움이 될 수 있지만 높은 유연성의 스크립팅 언어와 함께 사용해야 함 D언어로 코딩하면서 C에 비해 데이터 레이아웃 변경이 훨씬 쉬움을 깨달음 참조 타입과 값 타입 간 전환이 C에서는 어렵지만 D에서는 쉬움
Hacker News 의견
메타버스 클라이언트 개발 경험을 공유하며 러스트의 문제점들을 제시함
20년 경력의 게임 개발자로서 러스트가 게임 개발에 적합하지 않다고 봄
러스트 게임 개발 생태계는 과대광고에 의존하고 있음
비비와 유니티, 고도로 게임 개발 경험을 비교함
님(Nim) 언어가 러스트보다 게임 개발에 더 적합할 수 있음
러스트는 특정한 방식의 프로그래밍을 강요하는 독선적인 언어로 보임
Allen Blomquist의 툴링 데모는 개발 피드백 루프가 중요함을 보여줌
러스트의 근본적 문제는 객체지향을 버리고 함수형 프로그래밍을 선호하는 것
게임 개발에 있어 러스트는 최악의 선택
D언어로 코딩하면서 C에 비해 데이터 레이아웃 변경이 훨씬 쉬움을 깨달음