답변:
여러분이 말하는 게임은 .NET Framework를 기반으로하며 Microsoft의 .NET Framework의 무료 오픈 소스 구현 인 Mono로 실행됩니다.
이러한 응용 프로그램은 .NET 기반이므로 어셈블리의 확장명은 .dll입니다. 폴더에서 DLL 파일을 볼 수 있습니다.
크로스 플랫폼 사용을 위해 설계된 하나의 .NET 프로그램은 MSIL로 컴파일되고 .NET / Mono 런타임이 필요한 동일한 "이진"(조립품 인 DLL 포함)으로 Windows, Linux 또는 Mac에서 실행될 수 있습니다. .
Ubuntu 리포지토리에서 사용 가능한 Mono Framework 기반의 일부 무료 응용 프로그램 (게임뿐만 아니라)도 있습니다. 예를 들면 다음과 같습니다. Tomboy.
.dll하고 .so, 리눅스에서 의미가있다. 그들은 우리의 편의를 위해서만 사용됩니다.
gcc예처럼 제공되는 라이브러리를 찾을 수 없습니다 -lm파일 이름이로 끝나지 않는 경우 .so나 .a또는 버전 화 변형을 포함한다.
.dll에있는 파일에 GameDataFolder/Managed속하는 내부적으로 모노를 사용하는 네이티브 코드 프로그램.
.NET 공용 언어 런타임 또는 Mono로 실행할 수있는 크로스 플랫폼 실행 파일 및 공유 라이브러리는 Windows에 고유하지 않은 경우에도 각각 이름 .exe과 .dll접미사가 붙습니다. .dllUbuntu와 같은 GNU / Linux 시스템 또는 Windows 이외의 OS 용 프로그램에서 파일 을 찾을 때 이것이 일반적 입니다. .dll우분투 시스템에서 대부분을 찾을 때 Golboth의 답변에 설명되어 있습니다. 그러나 그것은 여기서 일어나고있는 것이 아닙니다.
유니티 게임 엔진 - 와 혼동해서는 안 대부분의 우분투 버전의 기본 그래픽 인터페이스는 인기있는 독점적 인 크로스 플랫폼 게임 엔진을 --is. 이 엔진은 .NET Framework 또는 Mono 위에서 실행 되지 않습니다 . 대신 Mono 가 포함되어 있습니다. 즉 Mono가 그 위에서 실행됩니다. 이것이 개발자가 게임에 필요한 코드를 작성하여 Unity 엔진의 일부가 아닌 방법입니다.
일반적으로 Mono는 완전한 .NET / Mono 프로그램을 실행하기 위해 Microsoft의 .NET CLR이 일반적으로 사용되는 것과 같은 방식으로 사용될 수 있습니다. 그러나 Mono는 또한 이러한 응용 프로그램을 사용자 정의 할 수있는 기능을 포함 하여 기본 코드 응용 프로그램에 쉽게 포함 할 수 있도록 설계되었습니다 . 그것은 당신이 묘사하고있는 상황에서 일어나고있는 일입니다. 보고있는 파일은 Mono 또는 .NET CLR에서 직접 실행되는 프로그램에 속하지 않습니다. 대신 모노를 포함하는 기본 코드 프로그램에 속합니다.
주로 C ++로 작성된 Unity 게임 엔진은 시스템 패키지 관리자를 통해 설치된 버전 (있는 경우)을 사용하지 않으며 다른 버전 일 수도 있습니다. 이 내장 모노 런타임은 그 목적이 아니기 때문에 독립형 .NET / Mono 프로그램을 실행하는 데 사용할 수 없습니다. 대신 엔진의 원시 코드 부분이이를 사용하여 CIL 코드를 실행합니다. CIL은 공식 이름 인 Common Intermediate Language 입니다. Microsoft가 원래 개발 한 이후로 이전에 MSIL 또는 Microsoft Intermediate Language라고 불렀습니다. Unity 엔진을 사용하는 게임을 만드는 프로그래머는 일반적으로 C #으로 자체 코드를 작성하지만 일부 다른 언어는 지원됩니다.
Unity 엔진은 Windows에서도 Mono를 포함합니다. 들어 유니버설 윈도우 플랫폼 과 다른 플랫폼 - - 게임 대신 모노의 마이크로 소프트 .NET 프레임 워크를 사용합니다. 그러나 대부분의 모바일 장치 및 게임 콘솔을 비롯하여 대부분의 플랫폼에서 Ubuntu 및 Windows를 포함한 Unity 게임의 대부분은 Mono를 사용합니다. 일부 플랫폼에서는 IL2CPP 를 Mono 대신 사용할 수 있으며 일부 IL2CPP 만 지원됩니다. 자세한 내용은 스크립팅 제한 사항 을 참조하십시오.
.dll우분투에서 파일을 볼 수있는 다른 상황.dll우분투 에서 파일 을 볼 수있는 두 가지 상황 이 설명되었습니다.
.dll우분투 시스템에서 가장 많이 보는 것입니다. 폴더 의 .dll파일 이 무엇인지는 아닙니다 GameDataFolder/Managed..dll우분투 에서 파일을 볼 수있는 합리적 인 두 가지 다른 경우가 있습니다 .
.dll파일이 아닌 .exe파일을 생성 합니다 . 일반 .NET Framework 또는 Mono가 아닌 .NET Core 런타임 (CoreCLR이라고 함) 이 이러한 파일을 실행합니다. .NET Core는 Microsoft 제품이지만 표준 .NET Framework와 달리 .NET Core는 Ubuntu와 같은 GNU / Linux 시스템 을 공식적으로 지원 하는 크로스 플랫폼 이며 무료 오픈 소스 소프트웨어 입니다..dll우분투에서 볼 수 있는 파일은 Windows 라이브러리 일뿐입니다. 프로그램이 Ubuntu 시스템에 저장되어 있지만 Windows에서 실행 중이거나 Ubuntu에 Windows 드라이브를 마운트 한 경우이 오류가 나타날 수 있습니다. Wine 과 함께 제공되거나 winetricks다른 Windows 소프트웨어를 지원하기 위해 자동으로 설치되는 소프트웨어를 포함 하여 Wine을 사용하여 Ubuntu에서 실행할 수있는 프로그램과 관련하여 볼 수도 있습니다 .이것은 .dll우분투에서 발생할 수있는 모든 상황을 철저히 나열하려는 시도는 아닙니다 . (예를 들어, OS / 2 라이브러리 일 수도 있습니다 .) 그러나이 4 가지 경우가 가장 일반적이라고 생각합니다.