캐리어 커맨드 2: 스크린 셰이더 모딩 가이드

이 가이드는 화면을 사용자 정의하기 위해 셰이더 의미론을 배우는 시행착오를 덜어주기 위한 것입니다. Tl;Dr no cracking open my mod files to check now, there is easy check reference guide for how i 달성 x effect.

 

개요

스크린 셰이더란?

다소 기본적인 질문처럼 들리지만 이것은 찾는 데 약간의 사냥이 필요했습니다.
화면 셰이더는 파일 이름과 함께 rom_0/shaders 내에 있는 셰이더 파일입니다. screen_crt.glslscreen_crt_hud.glsl및 holomap_post.glsl.
첫 번째는 정적 노이즈, 스캔라인, 심지어 조잡한 주석 조각처럼 구부러진 것처럼 보이게 하는 무서운 정점 가장자리 뒤틀림과 같은 브리지 컨트롤 전체의 화면에 대한 CRT 효과를 담당합니다! 두 번째 것은 차량 카메라와 선박의 잠망경 카메라에서 HUD crt 효과를 담당하지만 실제로는 이를 알아차리지 못합니다. 마지막은 홀로터블과 그것이 어떻게 보이는지를 다룬다. holotable의 개체 파일에 자체 조명이 있지만 화면보다 주변 영역을 더 밝게 비추는 것처럼 보이게 하기 위해 값싼 영역 조명을 만드는 장식적인 목적을 위한 것입니다. 어쨌든 색상을 변경할 필요가 없습니다.

다음 세 섹션에서는 처음부터 마지막 ​​순서로 개별 편집 가능한 필드를 다룹니다. 그에 따라 참조하십시오.

Screen_CRT.glsl, 일반 화면

이것은 수정하기에 가장 광범위하므로 간단히 살펴보겠습니다.

화면 해상도 x/y

어떤 이유로 든 모니터 또는 게임 설정 해상도를 기반으로 상대적 효과 해상도를 제어합니다. 또한 추가된 효과의 일반 평면을 제어하지만 이를 건드리지 않았습니다.

pi

RNG 효과에 사용되는 이것을 만지지 마십시오.

화면 가장자리에서 꼭짓점 좌표를 뒤틀기

첫 번째 큰 블록이지만 두 개의 필드만 편집할 수 있습니다. 첫 번째 값(기본값 1.0)은 실제 강도 값입니다. 이것을 0으로 설정하면 효과가 제거됩니다. 다른 값(기본값 0.5)은 워프 효과의 중심입니다. 따라서 1로 변경하면 효과가 오른쪽으로, 0으로 변경되면 워프 효과가 왼쪽으로 이동합니다. 이것을 원하는 이유는 알 수 없지만 둥근 모서리를 비활성화하면 화면이 게임 내에서 정사각형이 아닌 화면 모델 가장자리와 겹치게 됩니다.

스캔 라인

여기에 있는 숫자에 겁먹지 말고 분해해 봅시다.
거리 계수는 선 사이의 거리이며 기본값은 4입니다. 다음 줄은 이 스캔라인 왜곡에 의해 영향을 받는 픽셀의 양입니다. 스캔라인 밝기는 스캔라인이 마지막 두 숫자의 비율로 얼마나 밝은가입니다. 이 경우 효과는 항상 왼쪽이고 원래 화면 출력은 오른쪽입니다. 따라서 0.2, 0.8의 값은 80%의 스캔라인 가시성과 20%의 일반 화면이 됩니다. 1보다 큰 숫자는 단색을 일으키고 멀리서 거대한 단일체를 보고 싶지 않다면 추천하지 않습니다(셰이더 오류). 애니메이션 시간은 스캔 라인이 스크롤되는 속도입니다. 예상대로이지만 시간 척도 자체는 알 수 없습니다(선형? 승수? 초???). 1.0, 4.0 및 0.0의 트리플 세트에서 1.0의 값은 스캔라인 너비이거나, 아마도 내가 그것들을 거꾸로 가지고 있을 수도 있습니다

색수차

이것은 간단합니다. 화면의 빨간색과 파란색 색상을 그에 따라 왼쪽과 오른쪽으로 오프셋합니다. 첫 번째 값은 수차 가시성 인터가이고 두 번째 값은 수차 강도입니다. 화면을 저렴한 빨간색 n 파란색 안경과 호환되도록 만들고 싶다면 좋습니다.

뒤틀린 정점 좌표 2

이것은 내가 abberation을 엉망으로 만들지 않는 한 어떤 이유로 abberation에 대한 뒤틀린 효과입니다. 나는 그것을 엉망으로 만든 적이 없지만 홀로그램이나 무언가에 좋을 수 있습니다

소음 효과

다음 두 섹션은 소음을 다룹니다.
노이즈 해상도는 노이즈 픽셀의 크기이며 숫자가 높을수록 픽셀이 작아지지만 2의 배수가 필요합니다. 애니메이션 랜드가 무엇을 하는지는 모르지만 믹스(기본값 0.1 0.9)가 90% 화면 10% 노이즈라는 것을 알고 있습니다. 노이즈 팩터를 크게 높이면 어떤 이유로 화면이 어두워질 수 있다는 경고를 받습니다. 마지막으로 색상 노이즈 양 값은 노이즈가 얼마나 많은지입니다. 원하는 대로 생각하고 몇 개의 XNUMX을 추가하지만 노이즈는 화면과의 거리에 따라 이상하게 확장되는 것 같습니다.

이것은 가장 쉬운 섹션인 rgb 형식의 값입니다.
백라이트는 사물 뒤에서 방출되는 배경광일 뿐입니다. 예를 들어, 내 dakrmode 화면 모드는 모든 백라이트 색상 값을 0으로 설정합니다. 다음 세 값은 실제로 색상 필터이며 값을 0으로 설정하여 빛을 차단할 수 있습니다. 이것이 내가 내 화면을 단일 색상으로 만든 방법입니다. 둘, 아니면 정말 ♥♥♥♥♥♥♥ 블루. 1보다 큰 값을 설정하지 마십시오. 이는 또 다른 불길한 흰색 단일체를 제공할 뿐입니다. 색상을 차단하면 해당 색상의 특정 요소가 숨겨집니다. 예를 들어 파란색은 육지 색상이고 녹색도 사용되지만 차량 로드아웃 화면의 탄약 부족 아이콘은 빨간색입니다. 이것이 내가 섬과 함께 배를 볼 수 없기 때문에 holomap을 거의 쓸모 없게 만들기 때문에 내 인기있는 mod lcd 화면이 다운 그레이드라고 말하는 이유입니다.

비네팅 요소

이것은…아무것도 하지 않습니다. 나는 그것을 잔뜩 바꿨지 만 그것은 아무것도하지 않는 것 같다

컬러 샘플

이번에도 손대지 않았지만 일반적인 출력 밝기로 보입니다. 그래서 화면을 어둡게 만들 수 있을까요?

Screen_CRT_HUD.glsl, 카메라

이것은 더 작지만 대부분의 효과를 포함합니다.
screen_crt와 거의 동일하므로 예외와 예외가 수행하는 작업에 대해서만 설명하겠습니다.

참고, 화면 해상도는 않습니다. 카메라 해상도를 변경합니다.

스캔 라인

여기에서 그들은 훨씬 더 요약되고 나중에 스캔 라인이 반복되지만 왜 그렇게했는지 모르겠습니다. 평소와 다름없이 날씬해 보이는

약어

이것은 슬프게도 카메라 출력이 아닌 HUD 자체에 영향을 미칩니다.

뒤틀린 효과

내가 아무리 그것을 엉망으로 만들더라도 비네팅은 남을 것이므로 이것을 제거하는 방법에 대한 힌트를 주시면 감사하겠습니다.
그렇지 않으면 이것은 기본적으로 아무것도 하지 않는다

백라이트

백라이트는 전체 오버레이에 백라이트를 비추고 실제로는 멋진 카메라에 적합하지만 주요 용도는 로드할 때 자신을 플래시뱅하는 것과 만족스럽게 보이는 멋진 hud 사이의 밝기 균형을 맞추는 경우 hud를 다시 칠하는 것입니다.

컬러 필터

슬프게도 허드만 필터링하지만 백라이트와 함께 사용하면 꽤 아픈 야간 투시경 카메라를 만들 수 있습니다.

비네트 요소

내가 아는 한 아무것도 하지 않는다

Holomap_Post.glsl, 홀로터블

이것은 작업하기 가장 어려운 무리이므로 넘어가도록 하겠습니다.

약어

abberation은 홀로그램 모양을 판매하는 데 사용할 수 있지만 그렇지 않으면 그대로 두거나 끌 수 있습니다.

소음

실제로 노이즈가 있지만 holomap 그리드 및 섬 기능 및 렌더링되는 기타 항목과 같은 holomap 개체 위에만 오버레이됩니다. 그냥 배경 장식 블루 글로우 또는 아무것도

맞춤 색상

사용자 정의 색상을 얻으려면 colors(color_sample)의 마지막 줄 바로 앞에 이것을 붙여넣습니다.
vec3 백라이트_색상 = vec3(0.0, 0.0, 0.0);

color_sample_r = 혼합(backlight_color.r, 1.0, color_sample_r);
color_sample_g = 혼합(backlight_color.g, 1.0, color_sample_g);
color_sample_b = 혼합(backlight_color.b, 1.0, color_sample_b);

이것은 간단하지만 넘어가자
-백라이트는 실제로 화면 배경색을 변경할 수 있지만 값이 1 이상이면 해당 색상으로 큰 큐브를 켜서 홀로그램 모양을 실제로 판매할 수 있습니다.
-색상 필터는 작동하지만 파란색을 숨기는 값은 지도에서 이름이 아닌 섬을 보이지 않게 만듭니다. 대신 해당 색상의 해당 좌표에 색상을 맞추기 위해 실제 속임수를 사용할 수 있지만 나는 이것을 엉망으로 만들지 않았습니다.
-screen_crt의 기본 복사 붙여넣기에는 "* screen_crt_effect_factor"가 있습니다. 이로 인해 멀리서 크고 뚱뚱한 흰색 모노리스가 나타나고 홀로맵이 작동을 멈춥니다. 그들에게 그것을 제거하십시오;

스캔 라인을 만드는 방법이 있지만 제대로 작동하지 않으므로 일반 화면에서 깨진 효과 대신 적절한 스캔 라인에 대한 코드 기능이 크게 감사합니다.

더 많은 가이드:

코멘트 남김

ArabicEnglishFrenchGermanItalianJapaneseKoreanPortugueseSpanish