<?xml version="1.0"?>
<rss version="2.0"><channel><title>&#x41F;&#x43E;&#x441;&#x43B;&#x435;&#x434;&#x43D;&#x438;&#x435; &#x442;&#x435;&#x43C;&#x44B;: ContentSDK</title><link>https://forum.korabli.su/forum/580-contentsdk/</link><description>&#x41F;&#x43E;&#x441;&#x43B;&#x435;&#x434;&#x43D;&#x438;&#x435; &#x442;&#x435;&#x43C;&#x44B;: ContentSDK</description><language>ru</language><item><title>[Content SDK] &#x421;&#x43E;&#x437;&#x434;&#x430;&#x43D;&#x438;&#x435; &#x43C;&#x43E;&#x434;&#x438;&#x444;&#x438;&#x43A;&#x430;&#x446;&#x438;&#x438; &#x43C;&#x43E;&#x434;&#x435;&#x43B;&#x438; &#x43A;&#x43E;&#x440;&#x430;&#x431;&#x43B;&#x44F;</title><link>https://forum.korabli.su/topic/165349-content-sdk-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BC%D0%BE%D0%B4%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D0%B8-%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B8-%D0%BA%D0%BE%D1%80%D0%B0%D0%B1%D0%BB%D1%8F/</link><description><![CDATA[
<p style="text-align:center;">
	<span style="font-size:26px;"><strong>[Content SDK] Создание модификации модели корабля</strong></span>
</p>

<p style="text-align:center;">
	В этой теме мы рассмотрим, как правильно изменить модель корабля.
</p>

<p>
	 
</p>

<hr /><p>
	<span style="font-size:24px;"><strong>1 Извлечение исходной модели</strong></span>
</p>

<p>
	<strong style="color:#2980b9;font-size:16px;">Необходимый софт:</strong>
</p>

<ul><li>
		<a href="https://drive.google.com/drive/u/0/folders/1E4sTd3rAx4vyQnXfrDmhBSr1JVTcMkdO" rel="external nofollow">ModsSDK</a>
	</li>
	<li>
		<a href="https://gamemodels3d.com/forum/?topic=1348" rel="external nofollow">gmConverter3D</a>
	</li>
</ul><p>
	 
</p>

<p>
	<span>Для того чтобы модифицировать какой-то корабль, нам необходимо достать из игры файлы от этого корабля.</span>
</p>

<p>
	<br /><strong style="color:#2980b9;font-size:16px;">Выполняем следующие действия:</strong>
</p>

<ol><li>
		Мы будем использовать ModsSDK для получения контента, и его рабочий процесс можно отсылать к «<a href="https://forum.korabli.su/topic/164184-content-sdk-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D1%81%D0%BA%D0%B8%D0%BD%D0%BE%D0%B2-%D0%B8-%D0%BC%D0%BE%D0%B4%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D0%B9-%D0%B2%D0%BD%D0%B5%D1%88%D0%BD%D0%B5%D0%B3%D0%BE-%D0%B2%D0%B8%D0%B4%D0%B0-%D0%BA%D0%BE%D1%80%D0%B0%D0%B1%D0%BB%D0%B5%D0%B9/" rel="">[Content SDK] Создание скинов и модификаций внешнего вида кораблей</a>». При правильной работе вы получите папку, содержащую все содержимое судна.
	</li>
	<li>
		<p>
			Переходим в папку с распакованным нами пакетом файлов модификации корабля (в моём случае это "RSB026_Admiral_Ushakov") и смотрим на её содержимое:
		</p>

		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					<strong>Состав папок и их содержимое может меняться в зависимости от класса нашего корабля:</strong>
				</p>

				<ul><li>
						<strong>compile.info</strong> - технический файл, его мы не трогаем ни при каких условиях
					</li>
					<li>
						<strong>aircraft </strong>- папка с авиацией, присутствует у авианосцев, гибридов, либо если корабль имеет катапультный самолёт
					</li>
					<li>
						<strong>catapult </strong>- папка с текстурами и моделями катапульт для запуска самолётов
					</li>
					<li>
						<strong>detector </strong>- папка с текстурами и моделями системы управления огнём
					</li>
					<li>
						<strong>finder </strong>- папка с текстурами и моделями дальномеров корабля
					</li>
					<li>
						<strong>gun </strong>- папка с текстурами и моделями орудий ГК и ПМК, ПВО и торпедных аппаратов
					</li>
					<li>
						<strong>projectile </strong>- папка с текстурами и моделями снарядов, используемых кораблём
					</li>
					<li>
						<strong>radar </strong>- папка с текстурами и моделями радаров и антен РЛС
					</li>
					<li>
						<strong>ship </strong>- папка с текстурами и моделями корпуса корабля<br />
						 
					</li>
				</ul><p>
					<strong>Типы файлов, встречаемые в распакованном пакете:</strong>
				</p>

				<ul><li>
						<strong>*.info и *.splash</strong> - технические файлы, необходимые для работы модификации. их редактирование может привести к отказу мода
					</li>
					<li>
						<strong>*.geometry; *.model; *.visual</strong> - файлы моделей и их параметров
					</li>
					<li>
						<strong>*.mfm</strong> - файл материала. отвечает за присвоение текстур и их свойства
					</li>
					<li>
						<strong>*.dds</strong> - файлы текстур
					</li>
				</ul></div>
		</div>

		<p>
			 
		</p>
	</li>
	<li>
		<span>Скачать <strong>gmConverter3D</strong>, запустите <em>gmConverter3D.exe</em>, выберите <strong>File &gt;&gt; Open</strong> и подождите некоторое время, выберите <strong>File &gt;&gt; Save</strong>, чтобы преобразовать все вышеупомянутые файлы из <strong>*.geometry</strong> в <strong>*.obj</strong>. В этой папке должны быть следующие файлы:</span>
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					RSB026_Admiral_Ushakov_1955.geometry
				</p>

				<p>
					RSB026_Admiral_Ushakov_1955_Bow.geometry
				</p>

				<p>
					RSB026_Admiral_Ushakov_1955_MidBack.geometry
				</p>

				<p>
					RSB026_Admiral_Ushakov_1955_MidFront.geometry
				</p>

				<p>
					RSB026_Admiral_Ushakov_1955_Stern.geometry
				</p>
			</div>
		</div>
	</li>
</ol><p>
	 
</p>

<p>
	<span style="color:#2ecc71;"><strong>Извлечение части исходной модели завершено.</strong></span>
</p>

<p>
	 
</p>

<hr /><p>
	<span style="font-size:24px;"><strong>2 Изменить модель с помощью Blender</strong></span>
</p>

<p>
	<strong style="color:#2980b9;font-size:16px;">Необходимый софт:</strong>
</p>

<ul><li>
		Blender 3.6 (или ниже)
	</li>
	<li>
		<a href="https://github.com/DDFantasyV/.primitives-converter/" rel="external nofollow">.primitives-converter</a>
	</li>
	<li>
		<span>Visual Studio/VS Code/Notepad++</span>
	</li>
</ul><p>
	 
</p>

<p>
	Нам нужно импортировать модель <strong>*.obj</strong>, полученную из предыдущей части, в <strong>Blender</strong> и внести соответствующие изменения в ее структуру, чтобы она соответствовала игре.
</p>

<p>
	 
</p>

<p>
	<strong style="color:#2980b9;font-size:16px;">Выполняем подготовку:</strong>
</p>

<ol><li>
		<span>Установите и откройте <strong>Blender</strong> <span style="color:#e74c3c;"><strong>(если вы правильно установили .primitives-converter)</strong></span>, закройте подвеску, выберите <strong>File &gt;&gt; New &gt;&gt; General</strong>, создайте новый <strong>*.blend </strong>файл.</span>
	</li>
	<li>
		<span>Удалить Collection справа и все, что в ней содержится. Ваш программный интерфейс должен быть похож на:</span>
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					<a class="ipsAttachLink ipsAttachLink_image" data-fileid="691483" href="//forum-cdn.korabli.su/monthly_2025_02/sample-1.png.078dd51a4b707589328f088b5378eddc.png" rel=""><img alt="sample-1.thumb.png.dae6d3fa33fe6cce2e868c5c55c5b6e3.png" class="ipsImage ipsImage_thumbnailed" data-fileid="691483" src="//forum-cdn.korabli.su/monthly_2025_02/sample-1.thumb.png.dae6d3fa33fe6cce2e868c5c55c5b6e3.png" /></a>
				</p>
			</div>
		</div>
	</li>
	<li>
		<span><span><span>Выберите <strong>File &gt;&gt; Import &gt;&gt; Wavefront (.obj)</strong>, чтобы открыть файл модели в предыдущей части <span style="color:#e74c3c;"><strong>(если вы просто хотите добавить новую модель, вам нужно только отредактировать файл Bow)</strong></span>. </span></span></span><span><span><span>При открытии файла используется конфигурация по умолчанию. </span></span></span><span><span><span>Если вы изменили конфигурацию по умолчанию, вы можете настроить ее в соответствии со следующими изображениями:</span></span></span>
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					<a class="ipsAttachLink ipsAttachLink_image" data-fileid="691486" href="//forum-cdn.korabli.su/monthly_2025_02/sample-2.png.5b8c1c1d596038076ffe0f4430ae8680.png" rel=""><img alt="sample-2.thumb.png.97a7fe1cbea80d437d593f70442a81d5.png" class="ipsImage ipsImage_thumbnailed" data-fileid="691486" src="//forum-cdn.korabli.su/monthly_2025_02/sample-2.thumb.png.97a7fe1cbea80d437d593f70442a81d5.png" /></a>
				</p>
			</div>
		</div>
	</li>
	<li>
		<span>После импорта ваш интерфейс будет показан на рисунке:</span>
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					<a class="ipsAttachLink ipsAttachLink_image" data-fileid="691489" href="//forum-cdn.korabli.su/monthly_2025_02/sample-3.png.21e6aa463e27463838bb07a2337c2caf.png" rel=""><img alt="sample-3.thumb.png.679bedd810f99b23a69cade1076f2f8d.png" class="ipsImage ipsImage_thumbnailed" data-fileid="691489" src="//forum-cdn.korabli.su/monthly_2025_02/sample-3.thumb.png.679bedd810f99b23a69cade1076f2f8d.png" /></a>
				</p>
			</div>
		</div>
	</li>
	<li>
		<span style="color:#2ecc71;"><strong><span>Импорт модели завершен!</span></strong></span>
	</li>
</ol><p>
	 
</p>

<p>
	Поскольку импортируемая модель включает в себя множество моделей высокого, среднего и низкого качества, и нам нужны только модели высокого качества для позиционирования, необходимо удалить избыточную часть модели.
</p>

<p>
	 
</p>

<p>
	<strong style="color:#2980b9;font-size:16px;">Выполняем следующие действия:</strong>
</p>

<ol><li>
		<span>Выберите компонент той же части и отделите его от коллекции моделей с помощью <strong>“Move”(Комбинации клавиш: G)</strong> на панели инструментов. </span><span><strong>Обычно я предпочитаю двигаться по оси X.</strong> </span>

		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					<a class="ipsAttachLink ipsAttachLink_image" data-fileid="691504" href="//forum-cdn.korabli.su/monthly_2025_02/sample-4.png.1b7d0dcdc4f2df34f3bd9541d8c97c37.png" rel=""><img alt="sample-4.thumb.png.5ae25d8b34b2586586766639f877844b.png" class="ipsImage ipsImage_thumbnailed" data-fileid="691504" src="//forum-cdn.korabli.su/monthly_2025_02/sample-4.thumb.png.5ae25d8b34b2586586766639f877844b.png" /></a>
				</p>
			</div>
		</div>
	</li>
	<li>
		Чтобы отличить точность модели, нам нужно включить статистическую функцию.
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					<a class="ipsAttachLink ipsAttachLink_image" data-fileid="691505" href="//forum-cdn.korabli.su/monthly_2025_02/sample-5.png.23e88e7e78421f1ad49ea4a2ec03fe6e.png" rel=""><img alt="sample-5.thumb.png.5fad0bfb8feb6e0b74604471a6df08ce.png" class="ipsImage ipsImage_thumbnailed" data-fileid="691505" src="//forum-cdn.korabli.su/monthly_2025_02/sample-5.thumb.png.5fad0bfb8feb6e0b74604471a6df08ce.png" /></a>
				</p>
			</div>
		</div>

		<p>
			 
		</p>
	</li>
	<li>
		Теперь, когда мы выбираем модель и нажимаем клавишу Tab, параметры модели можно увидеть в левом верхнем углу. Обычно мы сохраняем только самые точный модели, то есть максимум параметры. В некоторых случаях модель может иметь несколько одинаковых параметров, и в это время достаточно сохранить любую из самых точный моделей. <strong>После завершения модификации переместите модель обратно на место.</strong>
	</li>
	<li>
		<span><span><span>Найдите файл <strong>RSB026_Admiral_Ushakov_1955_Bow.visual</strong> из папки <strong>Ship</strong> в предыдущей части, откройте его с помощью текстового редактора. </span></span></span><span><span><span>Как правило, нам нужны слова, которые находятся между <strong>&lt;identifier&gt;</strong> и <strong>&lt;/identifier&gt;</strong>. </span></span></span><span>Соответствие обычно выглядит следующим образом:</span>
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					Bow
				</p>

				<ul><li>
						Bow_Bulge
					</li>
					<li>
						Bow_crack_MidFront
						<ul><li>
								Bow_crack_MidFront_Bulge
							</li>
							<li>
								Bow_crack_MidFront_DeckHouse
							</li>
							<li>
								Bow_crack_MidFront_in
							</li>
						</ul></li>
					<li>
						Bow_DeckHouse
					</li>
					<li>
						Bow_Net
					</li>
					<li>
						Bow_patch_MidFront
						<ul><li>
								Bow_patch_MidFront_Bulge
							</li>
							<li>
								Bow_patch_MidFront_DeckHouse
							</li>
							<li>
								Bow_patch_MidFront_wire
							</li>
						</ul></li>
					<li>
						Bow_wire
					</li>
				</ul></div>
		</div>
	</li>
	<li>
		<span>Модель переименовывается в соответствии с соответствующим именем предыдущего шага, а в конце имени добавляется "Shape".</span>
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					<a class="ipsAttachLink ipsAttachLink_image" data-fileid="691518" href="//forum-cdn.korabli.su/monthly_2025_02/sample-6.png.b2ef1e89364b54497d7ddf0c4c040d38.png" rel=""><img alt="sample-6.thumb.png.bde84a1dcf1d05a9b83a8e105fdc9849.png" class="ipsImage ipsImage_thumbnailed" data-fileid="691518" src="//forum-cdn.korabli.su/monthly_2025_02/sample-6.thumb.png.bde84a1dcf1d05a9b83a8e105fdc9849.png" /></a>
				</p>
			</div>
		</div>
	</li>
	<li>
		<span>Выберите Add &gt;&gt; Empty &gt;&gt; Plain Axes и создайте коллекцию под названием “Bow” в соответствии со структурой шага 4.</span>
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					<a class="ipsAttachLink ipsAttachLink_image" data-fileid="691519" href="//forum-cdn.korabli.su/monthly_2025_02/sample-7.png.0130eabe5bd480906299722c360a6534.png" rel=""><img alt="sample-7.thumb.png.5be70a19eac21d618e683f7eaec06d7e.png" class="ipsImage ipsImage_thumbnailed" data-fileid="691519" src="//forum-cdn.korabli.su/monthly_2025_02/sample-7.thumb.png.5be70a19eac21d618e683f7eaec06d7e.png" /></a>
				</p>
			</div>
		</div>
	</li>
	<li>
		<span>Поскольку ось координат отличается, нам нужно повернуть всю модель на 180° вдоль оси Z. Выберите “Rotate” на панели инструментов в левом верхнем углу и выберите всю модель, щелкнув синим вращающимся кольцом для вращения. <span style="color:#e74c3c;"><strong>После завершения всех операций преобразования вы должны нажать Ctrl + A &gt;&gt; All Transforms, чтобы применить!!</strong></span></span>
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					<img alt="sample-8.png.37590ea54aa18fa90748c2f1501a7613.png" class="ipsImage ipsImage_thumbnailed" data-fileid="691525" src="//forum-cdn.korabli.su/monthly_2025_02/sample-8.png.37590ea54aa18fa90748c2f1501a7613.png" /></p>
			</div>
		</div>
	</li>
	<li>
		<strong><span style="color:#2ecc71;">Предварительная обработка модели завершена!</span></strong>
	</li>
</ol><p>
	 
</p>

<p>
	Добавление собственной модели аналогично вышеуказанным операциям. Предположим, что модель используется в формате *.obj, просто следуйте шагу 5 - 6 повторения вашей модели. Местоположение модели можно настроить. Окончательная структура коллекции будет показана на диаграмме ниже (Я использовал <strong>Bow_Koishi</strong> и <strong>Bow_Satori</strong> в качестве новых моделей):
</p>

<div class="ipsSpoiler" data-ipsspoiler="">
	<div class="ipsSpoiler_header">
		<span>Скрытый текст</span>
	</div>

	<div class="ipsSpoiler_contents">
		<p>
			<a class="ipsAttachLink ipsAttachLink_image" data-fileid="691530" href="//forum-cdn.korabli.su/monthly_2025_02/sample-9.png.457d1364cf6a0e3be3560988f040cd3b.png" rel=""><img alt="sample-9.thumb.png.ac4fe2abf152b560d3c16b8fd84dd9ed.png" class="ipsImage ipsImage_thumbnailed" data-fileid="691530" src="//forum-cdn.korabli.su/monthly_2025_02/sample-9.thumb.png.ac4fe2abf152b560d3c16b8fd84dd9ed.png" /></a>
		</p>
	</div>
</div>

<p>
	 
</p>

<p>
	<span style="color:#2ecc71;"><strong><span>Изменить модель завершен.</span></strong></span>
</p>

<p>
	 
</p>

<hr /><p>
	<span style="font-size:24px;"><strong>3 Рисование и выпечка текстуры моделей</strong></span>
</p>

<p>
	<strong style="color:#2980b9;font-size:16px;">Необходимый софт:</strong>
</p>

<ul><li>
		Photoshop
	</li>
	<li>
		<a href="https://developer.nvidia.com/texture-tools-exporter" rel="external nofollow">NVIDIA Texture Tools Exporter</a>
	</li>
</ul><p>
	 
</p>

<p>
	<span><span><span>Если вам нужно изменить окраску оригинальной модели корабля, см. </span></span><span><span>статью </span></span></span>«<a href="https://forum.korabli.su/topic/164184-content-sdk-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D1%81%D0%BA%D0%B8%D0%BD%D0%BE%D0%B2-%D0%B8-%D0%BC%D0%BE%D0%B4%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D0%B9-%D0%B2%D0%BD%D0%B5%D1%88%D0%BD%D0%B5%D0%B3%D0%BE-%D0%B2%D0%B8%D0%B4%D0%B0-%D0%BA%D0%BE%D1%80%D0%B0%D0%B1%D0%BB%D0%B5%D0%B9/?do=findComment&amp;comment=7052991" rel="">[Content SDK] Создание скинов и модификаций внешнего вида кораблей</a>»<span><span><span>. </span></span></span><span><span><span>Здесь представлена только информация о том, как изменить новую модель.</span></span></span>
</p>

<p>
	 
</p>

<p>
	<strong style="color:#2980b9;font-size:16px;">Выполняем следующие действия:</strong>
</p>

<ol><li>
		<span><span><span>Разверните коллекцию моделей в правом верхнем углу, выберите модель в ней (обычно строку чисел по умолчанию) и выберите опцию “Material” на вкладке ниже. </span></span></span><span><span><span>Следуйте порядку действий, чтобы удалить все параметры материала в поле.</span></span></span>

		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					<a class="ipsAttachLink ipsAttachLink_image" data-fileid="691537" href="//forum-cdn.korabli.su/monthly_2025_02/sample-10.png.732d8fa6dfcd780fd4483ec5f1bce9d5.png" rel=""><img alt="sample-10.thumb.png.8c1cdbf3fcf81cee94f082decad7f3cd.png" class="ipsImage ipsImage_thumbnailed" data-fileid="691537" src="//forum-cdn.korabli.su/monthly_2025_02/sample-10.thumb.png.8c1cdbf3fcf81cee94f082decad7f3cd.png" /></a>
				</p>
			</div>
		</div>
	</li>
	<li>
		<span>Откройте файл RSB026_Admiral_Ushakov_1955_Bow.visual и найдите слова, соответствующие этой части модели, обычно в следующем формате:</span>
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					&lt;renderSet&gt;<br />
					        &lt;treatAsWorldSpaceObject&gt;false&lt;/treatAsWorldSpaceObject&gt;<br />
					        &lt;node&gt;Bow_Bulge&lt;/node&gt;<br />
					        &lt;geometry&gt;<br />
					            &lt;vertices&gt;Bow_BulgeShape.vertices&lt;/vertices&gt;<br />
					            &lt;primitive&gt;Bow_BulgeShape.indices&lt;/primitive&gt;<br />
					            &lt;primitiveGroup&gt;<br />
					                0<br />
					                &lt;material&gt;<br />
					                    &lt;identifier&gt;<span style="color:#e74c3c;"><strong>TL2_SHIPMAT_PBS_Bulge</strong></span>&lt;/identifier&gt;<br />
					                    &lt;mfm&gt;<strong><span style="color:#e74c3c;">PnFMods/Koishi_Ushakov/RSB111_Admiral_Ushakov/ship/RSB026_Admiral_Ushakov_1955_bulge.mfm</span></strong>&lt;/mfm&gt;<br />
					                &lt;/material&gt;<br />
					            &lt;/primitiveGroup&gt;<br />
					        &lt;/geometry&gt;<br />
					    &lt;/renderSet&gt;
				</p>
			</div>
		</div>
	</li>
	<li>
		<span><span><span>Заполните фразу между <strong>&lt;identifier&gt; и &lt;/identifier&gt;</strong> в <strong>материал</strong>; </span></span></span><span><span><span>Заполните фразу между <strong>&lt;mfm&gt; и &lt;/mfm&gt;</strong> в <strong>BigWorld Material &gt;&gt; mfm</strong>. </span></span></span><span style="color:#e74c3c;"><strong><span>Если это ваша новая модель, вам нужно заполнить ее в соответствии с вашей собственной конфигурацией.</span></strong></span>
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					<a class="ipsAttachLink ipsAttachLink_image" data-fileid="691539" href="//forum-cdn.korabli.su/monthly_2025_02/sample-11.png.a180f576b26c904f90344b3173a22c30.png" rel=""><img alt="sample-11.thumb.png.2d8ba781126ace6b7ec33c1254d37337.png" class="ipsImage ipsImage_thumbnailed" data-fileid="691539" src="//forum-cdn.korabli.su/monthly_2025_02/sample-11.thumb.png.2d8ba781126ace6b7ec33c1254d37337.png" /></a>
				</p>
			</div>
		</div>
	</li>
	<li>
		<span><span><span>Заполните <strong>BigWorld Material &gt;&gt; Format</strong>. </span></span></span><span><span><span>Как правило, только модель, содержащая <strong>"wire"</strong> в названии, заполняет <strong>"xyznuvr"</strong>, а все остальные <strong>"xyznuvtb"</strong>.</span></span></span>
	</li>
	<li>
		<span>Выберите вкладку "Data", щелкните "UV Maps", создайте новую "uv1" и выберите.</span>
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					<a class="ipsAttachLink ipsAttachLink_image" data-fileid="691546" href="//forum-cdn.korabli.su/monthly_2025_02/sample-12.png.1b22c717d7d951da9bd90d01c4065080.png" rel=""><img alt="sample-12.thumb.png.ba4a1d3763df5b173de4daaf1a714f48.png" class="ipsImage ipsImage_thumbnailed" data-fileid="691546" src="//forum-cdn.korabli.su/monthly_2025_02/sample-12.thumb.png.ba4a1d3763df5b173de4daaf1a714f48.png" /></a>
				</p>
			</div>
		</div>
	</li>
</ol><p>
	 
</p>

<p>
	<span style="color:#2ecc71;"><strong><span>Настройка текстуры завершена.</span></strong></span>
</p>

<p>
	 
</p>

<hr /><p>
	<span style="font-size:24px;"><strong>4 Экспорт файлов моделей из Blender</strong></span>
</p>

<p>
	<strong style="color:#2980b9;font-size:16px;">Необходимый софт:</strong>
</p>

<ul><li>
		GeometryPack
	</li>
	<li>
		<span>или </span><a href="https://github.com/DDFantasyV/mk_model_export" rel="external nofollow">MK Model Export Tool</a>
	</li>
</ul><p>
	 
</p>

<p>
	<span><strong>Вы можете выбрать один из двух инструментов.</strong></span> Если вы планируете использовать инструмент <strong>MK Model Export Tool</strong>, пожалуйста, <span style="color:#e74c3c;"><strong>пропустите шаги 1~5 этого раздела</strong></span>.
</p>

<p>
	 
</p>

<p>
	<strong style="color:#2980b9;font-size:16px;">Выполняем следующие действия:</strong>
</p>

<ol><li>
		<span>Обратите внимание, что следующее выполняется с помощью <strong>Geometrypack</strong><span>.</span></span> <span><span><span>Нажмите "<strong>Scene Root</strong>" в правом верхнем углу, выберите <strong>File &gt;&gt; Export &gt;&gt; BigWorld Model (.primitives +.visual +.temp_model) </strong>и нажмите "<strong>Export Model</strong>". Через некоторое время в выбранном каталоге появятся три файла. </span></span>Удалите файл <strong>RSB026_Admiral_Ushakov_1955_Bow.temp_model</strong>, так как нам не нужно его использовать.</span>

		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<ul><li>
						RSB026_Admiral_Ushakov_1955_Bow.primitives
					</li>
					<li>
						<s>RSB026_Admiral_Ushakov_1955_Bow.temp_model</s>
					</li>
					<li>
						RSB026_Admiral_Ushakov_1955_Bow.visual
					</li>
				</ul></div>
		</div>
	</li>
	<li>
		<span>Откройте файл </span><strong>RSB026_Admiral_Ushakov_1955_Bow.visual</strong><span>, замените все <strong>"Shape&lt;/node&gt;"</strong> на <strong>"&lt;/node&gt;"</strong> и сохраните файл.</span>
	</li>
	<li>
		<span>В этом каталоге создана новая папка "lods", в которой скопированы три копии </span><strong>RSB026_Admiral_Ushakov_1955_Bow.visual</strong><span>, переименованные в <strong>RSB026_Admiral_Ushakov_1955_Bow_lod1.visual</strong>, <strong>RSB026_Admiral_Ushakov_1955_Bow_lod2.visual</strong>、<strong>RSB026_Admiral_Ushakov_1955_Bow_lod3.visual. </strong></span><span>Теперь структура файла в каталоге аналогична:</span>
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<ul><li>
						lods
						<ul><li>
								RSB026_Admiral_Ushakov_1955_Bow_lod1.visual
							</li>
							<li>
								RSB026_Admiral_Ushakov_1955_Bow_lod2.visual
							</li>
							<li>
								RSB026_Admiral_Ushakov_1955_Bow_lod3.visual
							</li>
						</ul></li>
					<li>
						RSB026_Admiral_Ushakov_1955_Bow.primitives
					</li>
					<li>
						RSB026_Admiral_Ushakov_1955_Bow.visual
					</li>
				</ul></div>
		</div>
	</li>
	<li>
		<span><strong>Из - за технических проблем преобразование формата модели требует двух этапов.</strong> Сначала используйте старую версию <a href="https://drive.google.com/drive/folders/1OgRdH7cOy729hSBskaRvsTnuWoTet6Du?usp=drive_link" rel="external nofollow">GeometryPack</a> для преобразования <strong>*.primitives в *.geometry</strong>. Затем новая версия <a href="https://drive.google.com/drive/u/0/folders/1E4sTd3rAx4vyQnXfrDmhBSr1JVTcMkdO" rel="external nofollow">GeometryPack</a> будет исправлена только что полученным <strong>*.geometry</strong>. Теперь структура файла в каталоге аналогична:</span>
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<ul><li>
						lods
						<ul><li>
								RSB026_Admiral_Ushakov_1955_Bow_lod1.visual
							</li>
							<li>
								RSB026_Admiral_Ushakov_1955_Bow_lod2.visual
							</li>
							<li>
								RSB026_Admiral_Ushakov_1955_Bow_lod3.visual
							</li>
						</ul></li>
					<li>
						RSB026_Admiral_Ushakov_1955_Bow.<span>geometry</span>
					</li>
					<li>
						RSB026_Admiral_Ushakov_1955_Bow.visual
					</li>
				</ul></div>
		</div>
	</li>
	<li>
		<span>Обратите внимание, что следующее выполняется с помощью </span><strong>MK Model Export Tool</strong><span><span>. Скачайте его через <a href="https://github.com/DDFantasyV/mk_model_export/releases/latest" rel="external nofollow">Release на Github</a>, а затем распакуйте в любой каталог.</span></span>
	</li>
	<li>
		<span><span><span>Нажмите "<strong>Scene Root</strong>" в правом верхнем углу, выберите <strong>File &gt;&gt; Export &gt;&gt; BigWorld Model (.primitives +.visual +.temp_model) </strong>и нажмите "<strong>Export Model</strong>". Создайте новую папку с именем "<strong>input</strong>" в каталоге программного обеспечения и экспортируйте в нее файл модели. </span></span>Теперь структура файла в каталоге аналогична:</span>
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<ul><li>
						geometrypack
						<ul><li>
								···
							</li>
						</ul></li>
					<li>
						geometrypack_old
						<ul><li>
								···
							</li>
						</ul></li>
					<li>
						input
						<ul><li>
								RSB026_Admiral_Ushakov_1955_Bow.primitives
							</li>
							<li>
								RSB026_Admiral_Ushakov_1955_Bow.temp_model
							</li>
							<li>
								RSB026_Admiral_Ushakov_1955_Bow.visual
							</li>
						</ul></li>
					<li>
						export.bat
					</li>
				</ul><p>
					 
				</p>
			</div>
		</div>
	</li>
	<li>
		Запустите <span style="color:#2ecc71;"><strong>export.bat</strong></span>, введите название измененной детали модели в консоль, а затем дождитесь ее завершения. Результат будет выведен в папку результатов. Все они <strong>*.visual</strong> файлы были автоматически изменены без дополнительных операций. На данный момент файл должен быть похожим:
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<ul><li>
						geometrypack
						<ul><li>
								···
							</li>
						</ul></li>
					<li>
						geometrypack_old
						<ul><li>
								···
							</li>
						</ul></li>
					<li>
						input
					</li>
					<li>
						result
						<ul><li>
								lods
								<ul><li>
										RSB026_Admiral_Ushakov_1955_Bow_lod1.visual
									</li>
									<li>
										RSB026_Admiral_Ushakov_1955_Bow_lod2.visual
									</li>
									<li>
										RSB026_Admiral_Ushakov_1955_Bow_lod3.visual
									</li>
								</ul></li>
							<li>
								RSB026_Admiral_Ushakov_1955_Bow.geometry
							</li>
							<li>
								RSB026_Admiral_Ushakov_1955_Bow.visual
							</li>
						</ul></li>
					<li>
						export.bat
					</li>
				</ul></div>
		</div>

		<p>
			 
		</p>
	</li>
</ol><p>
	<span style="color:#2ecc71;"><strong><span>Экспорт модели завершен.</span></strong></span>
</p>

<p>
	 
</p>

<hr /><p>
	<span style="font-size:24px;"><strong>5 Изменить профиль модели</strong></span>
</p>

<p>
	<strong>Если вы добавили новую модель, вы должны сделать этот шаг.</strong>
</p>

<p>
	 
</p>

<p>
	<strong style="color:#2980b9;font-size:16px;">Выполняем следующие действия:</strong>
</p>

<ol><li>
		<span><span><span>Создание нового *.mfm файла. </span></span></span><span><span><span>Имя файла должно быть таким же, как и в шаге 2.3. Вот пример Bow_Koishi.mfm:</span></span></span>

		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					&lt;Bow_Koishi.mfm&gt;<br />
					    &lt;fx&gt;    shaders/materials/pbs/ship_emissive_material.fx    &lt;/fx&gt;<br />
					    &lt;property&gt;    emissivePower<br />
					    &lt;Float&gt;    0    &lt;/Float&gt;<br />
					    &lt;/property&gt;<br />
					    &lt;materialKind&gt;    0    &lt;/materialKind&gt;<br />
					    &lt;collisionFlags&gt;    0    &lt;/collisionFlags&gt;<br />
					    &lt;property&gt;    ambientOcclusionMap<br />
					        &lt;Texture&gt;    PnFMods/Koishi_Ushakov/RSB111_Admiral_Ushakov/ship/Bow_Koishi_ao.dds    &lt;/Texture&gt;<br />
					    &lt;/property&gt;<br />
					    &lt;property&gt;    diffuseMap<br />
					        &lt;Texture&gt;    PnFMods/Koishi_Ushakov/RSB111_Admiral_Ushakov/ship/Bow_Koishi_a.dds    &lt;/Texture&gt;<br />
					    &lt;/property&gt;<br />
					    &lt;property&gt;    metallicGlossMap<br />
					        &lt;Texture&gt;    PnFMods/Koishi_Ushakov/RSB111_Admiral_Ushakov/ship/Bow_Koishi_mg.dds    &lt;/Texture&gt;<br />
					    &lt;/property&gt;<br />
					    &lt;property&gt;    normalMap<br />
					        &lt;Texture&gt;    PnFMods/Koishi_Ushakov/RSB111_Admiral_Ushakov/ship/Bow_Koishi_n.dds    &lt;/Texture&gt;<br />
					    &lt;/property&gt;<br />
					&lt;/Bow_Koishi.mfm&gt;
				</p>
			</div>
		</div>
	</li>
	<li>
		<span>Добавьте файл текстуры. </span><span>Имя файла должно совпадать с соответствующей записью в файле <strong>mfm</strong>. </span><span>Если вы хотите, чтобы новая модель отображалась корректно, вы должны включить файлы <strong>_a.dds и _mg.dds</strong>, а остальные могут использоваться по умолчанию.</span>
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<ul><li>
						<strong>_a.dds</strong> - это основная текстура корабля, то как он выглядит без камуфляжей. Обычно именно эту текстуру красят мододелы при создании скинов
					</li>
					<li>
						<strong>_ao.dds</strong> - карта затенения. Чёрно-белая текстура при изменении которой можно настроить тени от рассеянного света на корабле.
					</li>
					<li>
						<strong>_n.dds</strong> - карта нормалей. Используется для имитации неровностей поверхности на объекте. Например, на крейсере "Москва" табличка с названием корабля сделана именно при помощи этой текстуры, но на первый взгляд может показаться что она является 3D элементом.
					</li>
					<li>
						<strong>_mg.dds</strong> - текстура, отвечающая за блеск, свечение и наложение камуфляжей. О том как правильно с ней работать мы поговорим дальше.
					</li>
				</ul></div>
		</div>
	</li>
</ol><p>
	 
</p>

<hr /><p>
	<strong><span style="font-size:24px;">6 Подождите - окончательное подтверждение</span></strong>
</p>

<p>
	<strong><span>Теперь структура файла в каталоге аналогична:</span></strong>
</p>

<div class="ipsSpoiler" data-ipsspoiler="">
	<div class="ipsSpoiler_header">
		<span>Скрытый текст</span>
	</div>

	<div class="ipsSpoiler_contents">
		<ul><li>
				lods
				<ul><li>
						RSB026_Admiral_Ushakov_1955_Bow_lod1.visual
					</li>
					<li>
						RSB026_Admiral_Ushakov_1955_Bow_lod2.visual
					</li>
					<li>
						RSB026_Admiral_Ushakov_1955_Bow_lod3.visual
					</li>
				</ul></li>
			<li>
				RSB026_Admiral_Ushakov_1955_Bow.<span>geometry</span>
			</li>
			<li>
				RSB026_Admiral_Ushakov_1955_Bow.visual
			</li>
			<li>
				Bow_Koishi.mfm
			</li>
			<li>
				Bow_Koishi_a.dds
			</li>
			<li>
				Bow_Koishi_mg.dds
			</li>
			<li>
				Bow_Satori.mfm
			</li>
			<li>
				Bow_Satori_a.dds
			</li>
			<li>
				Bow_Satori_mg.dds
			</li>
		</ul></div>
</div>

<p>
	 
</p>

<p>
	<strong><span style="font-size:20px;"><span style="color:#2ecc71;">Поздравляю! Вы закончили модификацию модели корабля.</span></span></strong>
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">165349</guid><pubDate>Thu, 27 Feb 2025 07:14:39 +0000</pubDate></item><item><title>[Content SDK] &#x421;&#x43E;&#x437;&#x434;&#x430;&#x43D;&#x438;&#x435; &#x441;&#x43A;&#x438;&#x43D;&#x43E;&#x432; &#x438; &#x43C;&#x43E;&#x434;&#x438;&#x444;&#x438;&#x43A;&#x430;&#x446;&#x438;&#x439; &#x432;&#x43D;&#x435;&#x448;&#x43D;&#x435;&#x433;&#x43E; &#x432;&#x438;&#x434;&#x430; &#x43A;&#x43E;&#x440;&#x430;&#x431;&#x43B;&#x435;&#x439;</title><link>https://forum.korabli.su/topic/164184-content-sdk-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D1%81%D0%BA%D0%B8%D0%BD%D0%BE%D0%B2-%D0%B8-%D0%BC%D0%BE%D0%B4%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D0%B9-%D0%B2%D0%BD%D0%B5%D1%88%D0%BD%D0%B5%D0%B3%D0%BE-%D0%B2%D0%B8%D0%B4%D0%B0-%D0%BA%D0%BE%D1%80%D0%B0%D0%B1%D0%BB%D0%B5%D0%B9/</link><description><![CDATA[
<p>
	<span style="font-size:20px;"><strong>[FAQ] Создание скинов для кораблей при помощи Content SDK</strong></span><br type="_moz">
	В данной теме мы рассмотрим как правильно ретекстурить корабли.
</p>

<hr>
<p>
	Для начала нам понадобится архив <strong>ModsSDK</strong>, который можно взять <strong><a href="https://drive.google.com/drive/u/0/folders/1E4sTd3rAx4vyQnXfrDmhBSr1JVTcMkdO" rel="external nofollow">на Google диске</a></strong> в папке с текущей версией клиента игры.
</p>

<p>
	На момент написания статьи актуальной является версия <strong>13.10.0</strong>, поэтому я перехожу в папку <strong>MK 13.10.0</strong> на диске и скачиваю архив <strong>ModsSDK_13.10.0.zip</strong>
</p>

<p>
	 
</p>

<p>
	<span style="color:#2980b9;"><span style="font-size:16px;"><strong>Выполняем подготовку:</strong></span></span>
</p>

<ol>
<li>
		Переходим в папку с игрой, далее <strong>"\bin\<span style="color: rgb(153,153,153);">&lt;номер_билда&gt;</span>\<span style="color: rgb(231,76,60);">res_mods</span>\"</strong> и создаём там папку <strong>"PnFMods".</strong>
	</li>
	<li>
		Там же создаём <u><strong>пустой </strong></u>файлик <strong>"PnFModsLoader.py"</strong>
	</li>
	<li>
		В папке <strong>"PnFMods"</strong> создаём папку <strong>"ModsSDK.zip"</strong> (это именно папка с таким названием, <u><strong><span style="color:#e74c3c;">не архив</span>!</strong></u>)
	</li>
	<li>
		Распаковываем в папку <strong>"ModsSDK.zip" </strong>всё содержимое скачанного нами архива.
	</li>
	<li>
		Подготовка завершена
	</li>
</ol>
<p>
	 
</p>

<p>
	<span style="color:#2980b9;"><span style="font-size:16px;"><strong>Дамп модели необходимого нам корабля:</strong></span></span>
</p>

<p>
	Для того чтобы модифицировать какой-то корабль, нам необходимо достать из игры файлы от этого корабля.<br>
	Выполняем следующие действия:
</p>

<ol>
<li>
		В папке <strong>"PnFMods"</strong> создаём папку с названием нашего мода. Например <strong>"MySuperMod"</strong>.<br><span style="font-size:14px;"><span style="color:#e74c3c;"><strong>Будьте внимательны!</strong></span> По завершению дампа изменять имя этой папки не следует! Иначе мод работать не будет! </span>
	</li>
	<li>
		Теперь в папке <strong>"MySuperMod"</strong> необходимо создать файлик <strong>"Main.py"</strong> со следующим содержимым:
		<pre class="ipsCode prettyprint lang-py prettyprinted" id="ips_uid_7190_13" style="">
<span class="pln">API_VERSION </span><span class="pun">=</span><span class="pln"> </span><span class="str">'API_v1.0'</span><span class="pln">
MOD_NAME </span><span class="pun">=</span><span class="pln"> </span><span class="str">"MySuperMod"</span><span class="pln">
SHIP_NAME </span><span class="pun">=</span><span class="pln"> </span><span class="str">'ASA110_Midway'</span><span class="pln">
contentSdk</span><span class="pun">.</span><span class="pln">extractSources</span><span class="pun">(</span><span class="pln">MOD_NAME</span><span class="pun">,</span><span class="pln"> SHIP_NAME</span><span class="pun">)</span><span class="pln"> 
</span><span class="str">"""
Где ASA110_Midway это ID папки нашего корабля, найти которое можно в папке "ModsSDK.zip"
а MySuperMod это имя нашего мода
"""</span></pre>
	</li>
	<li>
		Сохраняем, запускаем клиент игры. Ждём пару минут и закрываем его (клиент может не прогрузиться в порт, это нормально)
	</li>
	<li>
		Убеждаемся что в нашей папке <strong>"MySuperMod"</strong> появилась папка <strong>"ASA110_Midway"</strong>
	</li>
	<li>
		Дамп модели завершен
	</li>
</ol>
<p>
	 
</p>

<p>
	<span style="color:#2980b9;"><span style="font-size:16px;"><strong>Запуск мода:</strong></span></span><br>
	Теперь у нас есть готовый пакет файлов для редактирования.<br>
	По сути это уже готовый мод, работоспособность которого мы можем проверить. Показателем работоспособности мода будет прогрузка корабля в порту.
</p>

<ol>
<li>
		Открываем наш файлик <strong>"Main.py" </strong>из предыдущего пункта и изменяем его содержимое на следующее:

		<pre class="ipsCode prettyprint lang-py prettyprinted" id="ips_uid_7190_15" style="">
<span class="pln">API_VERSION </span><span class="pun">=</span><span class="pln"> </span><span class="str">'API_v1.0'</span><span class="pln">
SHIP_NAME </span><span class="pun">=</span><span class="pln"> </span><span class="str">'ASA110_Midway'</span><span class="pln">
contentSdk</span><span class="pun">.</span><span class="pln">registerShipMod</span><span class="pun">(</span><span class="pln">SHIP_NAME</span><span class="pun">)</span><span class="pln"> </span></pre>
	</li>
	<li>
		Запускаем игру, прогружаемся в порт и выбираем наш корабль (в моём случае это Midway)
	</li>
	<li>
		Если корабль прогрузился и мы видим его в порту, значит всё сделано правильно
	</li>
</ol>
<p>
	 
</p>

<p>
	<span style="color:#27ae60;"><span style="font-size:16px;"><strong>Готово! Подготовка файлов для создания модификации завершена!</strong></span></span>
</p>
]]></description><guid isPermaLink="false">164184</guid><pubDate>Sat, 02 Nov 2024 08:37:47 +0000</pubDate></item><item><title>[FAQ] &#x41C;&#x43E;&#x434;&#x438;&#x444;&#x438;&#x446;&#x438;&#x440;&#x43E;&#x432;&#x430;&#x43D;&#x438;&#x435; UV-&#x43A;&#x430;&#x440;&#x442;&#x44B; &#x43C;&#x43E;&#x434;&#x435;&#x43B;&#x435;&#x439;</title><link>https://forum.korabli.su/topic/168062-faq-%D0%BC%D0%BE%D0%B4%D0%B8%D1%84%D0%B8%D1%86%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-uv-%D0%BA%D0%B0%D1%80%D1%82%D1%8B-%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B5%D0%B9/</link><description><![CDATA[
<p style="text-align:center;">
	<strong><span style="font-size:26px;">[FAQ] Модифицирование UV-карты</span></strong>
</p>

<p style="text-align:center;">
	<span style="font-size:16px;">В этой теме мы рассмотрим, как правильно изменить </span>UV<span style="font-size:16px;">-карту.</span>
</p>

<hr>
<p>
	<span style="font-size:14px;">UV-текстурирование позволяет раскрашивать полигоны, составляющие 3D-объект, цветом (и другими атрибутами поверхности) обычного изображения. Изображение называется <strong>UV-текстурной картой</strong>. Однако мы не будем обсуждать здесь дальнейший механизм.</span>
</p>

<div class="ipsSpoiler" data-ipsspoiler="">
	<div class="ipsSpoiler_header">
		<span>Скрытый текст</span>
	</div>

	<div class="ipsSpoiler_contents">
		<p>
			<a href="https://upload.wikimedia.org/wikipedia/commons/thumb/5/5a/UV-%D0%BF%D1%80%D0%B5%D0%BE%D0%B1%D1%80%D0%B0%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5.png/500px-UV-%D0%BF%D1%80%D0%B5%D0%BE%D0%B1%D1%80%D0%B0%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5.png" rel="external nofollow"><img alt="500px-UV-%D0%BF%D1%80%D0%B5%D0%BE%D0%B1%D1%80%D0%B0%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5.png" data-imageproxy-source="https://upload.wikimedia.org/wikipedia/commons/thumb/5/5a/UV-%D0%BF%D1%80%D0%B5%D0%BE%D0%B1%D1%80%D0%B0%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5.png/500px-UV-%D0%BF%D1%80%D0%B5%D0%BE%D0%B1%D1%80%D0%B0%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5.png" src="https://forum.korabli.su/applications/core/interface/imageproxy/imageproxy.php?img=https://upload.wikimedia.org/wikipedia/commons/thumb/5/5a/UV-%25D0%25BF%25D1%2580%25D0%25B5%25D0%25BE%25D0%25B1%25D1%2580%25D0%25B0%25D0%25B7%25D0%25BE%25D0%25B2%25D0%25B0%25D0%25BD%25D0%25B8%25D0%25B5.png/500px-UV-%25D0%25BF%25D1%2580%25D0%25B5%25D0%25BE%25D0%25B1%25D1%2580%25D0%25B0%25D0%25B7%25D0%25BE%25D0%25B2%25D0%25B0%25D0%25BD%25D0%25B8%25D0%25B5.png&amp;key=d4119102278527a7d870e069c0c841f8d9dbd844342b0dae053b32cbdcae7a46"></a>
		</p>
	</div>
</div>

<p>
	<span style="font-size:14px;">UV-текстурирование является альтернативой проекционному отображению (например, с использованием любой пары координат модели X, Y, Z или любого преобразования положения); оно отображает только текстурное пространство, а не геометрическое пространство объекта. При расчете рендеринга используются координаты УФ-текстуры, чтобы определить, как рисовать трехмерную поверхность. <strong>Используя UV-текстуру, мы можем изменять текстуру модели с большой точностью, даже в мельчайших деталях. Кроме того, это значительно упростит процесс определения деталей, требующих модификации, и обеспечит приемлемое решение для создания новых текстур.</strong></span>
</p>

<hr>
<p>
	 
</p>

<p>
	<span style="font-size:24px;"><strong>Экспорт UV-текстуры</strong></span>
</p>

<p>
	<span style="color:#3498db;"><span style="font-size:18px;"><strong>Необходимый софт:</strong></span></span>
</p>

<ul>
<li>
		<a href="https://drive.google.com/drive/u/0/folders/1E4sTd3rAx4vyQnXfrDmhBSr1JVTcMkdO" rel="external nofollow">ModsSDK</a>
	</li>
	<li>
		<a href="https://gamemodels3d.com/forum/?topic=1348" rel="external nofollow">gmConverter3D</a>
	</li>
	<li>
		Blender 3.6 (или ниже)
	</li>
	<li>
		<a href="https://github.com/DDFantasyV/.primitives-converter/" rel="external nofollow">.primitives-converter</a>
	</li>
</ul>
<p>
	 
</p>

<p>
	UV-текстуру обычно привязаны к файлам моделей. Поэтому сначала нам нужно подготовить файл модели.
</p>

<p>
	 
</p>

<p>
	<span style="color:#3498db;"><strong><span style="font-size:18px;">Выполняем подготовку:</span></strong></span>
</p>

<ol>
<li>
		Для того чтобы модифицировать какой-то корабль, нам необходимо достать из игры файлы от этого корабля. Как конкретно управлять этим процессом, можно узнать из первой части <a href="https://forum.korabli.su/topic/165349-content-sdk-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BC%D0%BE%D0%B4%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D0%B8-%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B8-%D0%BA%D0%BE%D1%80%D0%B0%D0%B1%D0%BB%D1%8F/" rel="">[Content SDK] Создание модификации модели корабля</a>. В этом примере я буду использовать “<strong>ASC106_Pensacola_1944”</strong> для демонстрации. Для того чтобы получить текстуру середины корпуса, нам нужно выбрать следующие файлы:

		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<ul>
<li>
						ASC012_Pensacola_1944_MidBack.geometry
					</li>
					<li>
						ASC012_Pensacola_1944_MidFront.geometry
					</li>
				</ul>
</div>
		</div>

		<p>
			Используйте <strong>gmConverter3D</strong>, чтобы преобразовать его в <strong>*.obj</strong>, который использовать для редактирования в <strong>Blender</strong>.
		</p>
	</li>
	<li>
		Предварительная обработка модели. Этот шаг может быть обработан со ссылкой на вторую часть <a href="https://forum.korabli.su/topic/165349-content-sdk-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BC%D0%BE%D0%B4%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D0%B8-%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B8-%D0%BA%D0%BE%D1%80%D0%B0%D0%B1%D0%BB%D1%8F/" rel="">[Content SDK] Создание модификации модели корабля</a>.
	</li>
	<li>
		<p>
			Переключитесь в <strong>UV Editor</strong> (сочетание клавиш: <strong>Shift+F10</strong>), выберите модель в 3D-представлении, для которой необходимо извлечь UV-карту, и переключитесь в <strong>Edit Mode</strong> (сочетание клавиш: <strong>Tab</strong>).
		</p>

		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					<a class="ipsAttachLink ipsAttachLink_image" data-fileid="732859" href="//forum-cdn.korabli.su/monthly_2025_11/image.png.1f4cc4ce096720d19699e39c236bbe03.png" rel=""><img alt="image.thumb.png.99d50d878a2e9a455705e90f3bd1eaba.png" class="ipsImage ipsImage_thumbnailed" data-fileid="732859" src="//forum-cdn.korabli.su/monthly_2025_11/image.thumb.png.99d50d878a2e9a455705e90f3bd1eaba.png"></a>
				</p>
			</div>
		</div>

		<p>
			 
		</p>
	</li>
	<li>
		Выберите <strong>UV &gt;&gt; Export UV Layout</strong>, чтобы сохранить выбранное УФ-текстуры в формате <strong>png</strong>.
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					<a class="ipsAttachLink ipsAttachLink_image" data-fileid="732861" href="//forum-cdn.korabli.su/monthly_2025_11/image.png.0fa59bda2628c5795ead6141604dfc79.png" rel=""><img alt="image.thumb.png.e58232dd6053f04581326af2017d50e2.png" class="ipsImage ipsImage_thumbnailed" data-fileid="732861" src="//forum-cdn.korabli.su/monthly_2025_11/image.thumb.png.e58232dd6053f04581326af2017d50e2.png"></a>
				</p>
			</div>
		</div>

		<p>
			 
		</p>
	</li>
</ol>
<p>
	<span style="color:#2ecc71;"><span style="font-size:18px;"><strong>Экспорт UV-текстуры завершен!</strong></span></span>
</p>

<p>
	 
</p>

<hr>
<p>
	 
</p>

<p>
	<strong><span style="font-size:24px;">Использование UV-</span></strong><span style="font-size:24px;"><strong>текстуры</strong></span>
</p>

<p>
	<span style="color:#3498db;"><strong><span style="font-size:18px;">Необходимый софт:</span></strong></span>
</p>

<ul>
<li>
		Photoshop
	</li>
	<li>
		<a href="https://developer.nvidia.com/texture-tools-exporter" rel="external nofollow">NVIDIA Texture Tools Exporter</a>
	</li>
</ul>
<p>
	 
</p>

<p>
	Каждый использует программное обеспечение по-разному, поэтому вам не нужно в точности следовать инструкциям, описанным в этой статье.
</p>

<p>
	 
</p>

<p>
	<strong><span style="font-size:18px;"><span style="color:#3498db;">Выполняем следующие действия:</span></span></strong>
</p>

<ol>
<li>
		Откройте файл текстуры, который необходимо изменить(Например, <strong>ASC012_Pensacola_1944_a.dds</strong>). Импортируйте в него УФ-текстуры, чтобы убедиться, что их расположение совпадает. Как правило, размер вашей текстуры краски и УФ-текстуры должен быть одинаковым. Если это не так, вам необходимо проверить предыдущие шаги на наличие ошибок.

		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					<a class="ipsAttachLink ipsAttachLink_image" data-fileid="732866" href="//forum-cdn.korabli.su/monthly_2025_11/image.png.49eb55f05044609ff4df453ea6989942.png" rel=""><img alt="image.thumb.png.6d23eb0588f3c74506008a8591565af2.png" class="ipsImage ipsImage_thumbnailed" data-fileid="732866" src="//forum-cdn.korabli.su/monthly_2025_11/image.thumb.png.6d23eb0588f3c74506008a8591565af2.png"></a>
				</p>
			</div>
		</div>

		<p>
			Теперь это должно выглядеть примерно так. <strong>Я настоятельно рекомендую вам заблокировать исходное изображение и использовать его копию для редактирования, чтобы оно не было отменено при последующих операциях.</strong>
		</p>
	</li>
	<li>
		<p>
			Теперь мы возвращаемся к <strong>Blender</strong>. После одновременного включения функции <strong>Face select</strong> и <strong>UV sync selection</strong>, когда вы выбираете лицо в режиме 3D, в режиме UV будет отображаться соответствующая ему УФ-текстуры.
		</p>

		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					<a class="ipsAttachLink ipsAttachLink_image" data-fileid="732868" href="//forum-cdn.korabli.su/monthly_2025_11/image.png.a0c0946f8c5fefd8e7f84fb4b696a1a8.png" rel=""><img alt="image.thumb.png.78bca55e6e7440c2d87296f2c85a7160.png" class="ipsImage ipsImage_thumbnailed" data-fileid="732868" src="//forum-cdn.korabli.su/monthly_2025_11/image.thumb.png.78bca55e6e7440c2d87296f2c85a7160.png"></a>
				</p>
			</div>
		</div>

		<p>
			Если вам нужно понаблюдать за эффектом наложения текстуры, один из способов избежать перезагрузки в игре - <strong>это отрисовать эффект текстуры в Blender</strong>.Но основное внимание в этой статье уделяется не этому, поэтому я приведу только возможный метод настройки.
		</p>

		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					<a class="ipsAttachLink ipsAttachLink_image" data-fileid="732869" href="//forum-cdn.korabli.su/monthly_2025_11/image.png.6cb88a68bfad49e90f81e4965e6eab10.png" rel=""><img alt="image.thumb.png.f6ede1de5e0695bd4dac9ccf56b2ef4f.png" class="ipsImage ipsImage_thumbnailed" data-fileid="732869" src="//forum-cdn.korabli.su/monthly_2025_11/image.thumb.png.f6ede1de5e0695bd4dac9ccf56b2ef4f.png"></a>
				</p>
			</div>
		</div>

		<p>
			 
		</p>
	</li>
	<li>
		Вернитесь в <strong>Photoshop</strong>. Вы помните только что выделенную позицию? Добавьте в это место любой узор, который вы хотите, а затем закройте ненужные слои.
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					<a class="ipsAttachLink ipsAttachLink_image" data-fileid="732870" href="//forum-cdn.korabli.su/monthly_2025_11/image.png.916e992b1eb1f56a1e1c97b41c7a8c50.png" rel=""><img alt="image.thumb.png.1d58fab23b93e5b284b1f2f635caaa2c.png" class="ipsImage ipsImage_thumbnailed" data-fileid="732870" src="//forum-cdn.korabli.su/monthly_2025_11/image.thumb.png.1d58fab23b93e5b284b1f2f635caaa2c.png"></a>
				</p>
			</div>
		</div>

		<p>
			Загрузите изображение в <strong>Blender (Image &gt;&gt; Reload)</strong>, и вы сможете мгновенно увидеть изменения в текстуре без необходимости повторно открывать игру.
		</p>

		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<p>
					<a class="ipsAttachLink ipsAttachLink_image" data-fileid="732871" href="//forum-cdn.korabli.su/monthly_2025_11/image.png.5d0a9ea9b4baad97b2c48b9757938383.png" rel=""><img alt="image.thumb.png.4eddeb860110a2617f31a445355f0db9.png" class="ipsImage ipsImage_thumbnailed" data-fileid="732871" src="//forum-cdn.korabli.su/monthly_2025_11/image.thumb.png.4eddeb860110a2617f31a445355f0db9.png"></a>
				</p>
			</div>
		</div>

		<p>
			 
		</p>
	</li>
</ol>
<p>
	<span style="font-size:18px;"><strong><span style="color:#2ecc71;">Готово!</span></strong></span>
</p>

<p>
	 
</p>

<p>
	<span style="font-size:16px;">Применение UV-текстуры заключается не только в этом, вы также можете свободно использовать его для достижения большего количества функций. Ниже мы расскажем, как изменить УФ-текстуры модели.</span>
</p>

<p>
	 
</p>

<hr>
<p>
	 
</p>

<p>
	<strong><span style="font-size:24px;">Изменение UV-текстуры</span></strong>
</p>

<p>
	<span style="color:#3498db;"><strong><span style="font-size:18px;">Необходимый софт:</span></strong></span>
</p>

<ul>
<li>
		<a href="https://github.com/DDFantasyV/mk_model_export" rel="external nofollow">MK Model Export Tool</a>
	</li>
</ul>
<p>
	 
</p>

<p>
	Если вы внимательно прочитаете предыдущую часть, то легко заметите, что UV-текстура на самом деле является одним из параметров модели. Изменение УФ-текстуры должно основываться на изменении модели. <strong>Следовательно, все операции редактирования должны выполняться в Blender и выводиться в виде новой модели.</strong>
</p>

<p>
	 
</p>

<p>
	<strong><span style="font-size:18px;"><span style="color:#3498db;">Выполняем следующие действия:</span></span></strong>
</p>

<ol>
<li>
		Выполните предыдущие шаги для обработки модели. Выберите УФ-текстуры, которую необходимо отредактировать, и измените ее. <strong>Обратите внимание, что иногда UV-текстуры могут перекрываться, поэтому, пожалуйста, убедитесь, что перемещаемая карта содержит только ту часть, которую вы хотите изменить.</strong>
	</li>
	<li>
		Скачайте <a href="https://github.com/DDFantasyV/mk_model_export" rel="external nofollow"><strong>MK Model Export Too</strong>l</a> через <strong>Release на Github</strong>, а затем распакуйте в любой каталог. Нажмите <strong>"Scene Root"</strong> в правом верхнем углу, выберите <strong>File &gt;&gt; Export &gt;&gt; BigWorld Model (.primitives +.visual +.temp_model)</strong> и нажмите <strong>"Export Model"</strong>. Создайте новую папку с именем <strong>"input"</strong> в каталоге программного обеспечения и экспортируйте в нее файл модели.
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<ul>
<li>
						geometrypack
						<ul>
<li>
								···
							</li>
						</ul>
</li>
					<li>
						geometrypack_old
						<ul>
<li>
								···
							</li>
						</ul>
</li>
					<li>
						input
						<ul>
<li>
								ASC012_Pensacola_1944_MidFront.primitives
							</li>
							<li>
								ASC012_Pensacola_1944_MidFront.temp_model
							</li>
							<li>
								ASC012_Pensacola_1944_MidFront.visual
							</li>
						</ul>
</li>
					<li>
						export.bat
					</li>
				</ul>
</div>
		</div>

		<p>
			 
		</p>
	</li>
	<li>
		Запустите <strong>export.bat</strong>, введите название измененной детали модели в консоль, а затем дождитесь ее завершения. Результат будет выведен в папку результатов. Все они <strong>*.visual</strong> файлы были автоматически изменены без дополнительных операций.
		<div class="ipsSpoiler" data-ipsspoiler="">
			<div class="ipsSpoiler_header">
				<span>Скрытый текст</span>
			</div>

			<div class="ipsSpoiler_contents">
				<ul>
<li>
						geometrypack
						<ul>
<li>
								···
							</li>
						</ul>
</li>
					<li>
						geometrypack_old
						<ul>
<li>
								···
							</li>
						</ul>
</li>
					<li>
						input
					</li>
					<li>
						result
						<ul>
<li>
								lods
								<ul>
<li>
										ASC012_Pensacola_1944_MidFront_lod1.visual
									</li>
									<li>
										ASC012_Pensacola_1944_MidFront_lod2.visual
									</li>
									<li>
										ASC012_Pensacola_1944_MidFront_lod3.visual
									</li>
								</ul>
</li>
							<li>
								ASC012_Pensacola_1944_MidFront.geometry
							</li>
							<li>
								ASC012_Pensacola_1944_MidFront.visual
							</li>
						</ul>
</li>
					<li>
						export.bat
					</li>
				</ul>
</div>
		</div>

		<p>
			 
		</p>
	</li>
	<li>
		Последующие шаги можно выполнить, обратившись к пятой и последующим частям <a href="https://forum.korabli.su/topic/165349-content-sdk-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BC%D0%BE%D0%B4%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D0%B8-%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B8-%D0%BA%D0%BE%D1%80%D0%B0%D0%B1%D0%BB%D1%8F/" rel="">[Content SDK] Создание модификации модели корабля</a>.
	</li>
</ol>
<p>
	 
</p>

<p>
	<span style="font-size:18px;"><strong>Проверяем в игре:</strong></span>
</p>

<p>
	<strong>Раньше</strong>
</p>

<div class="ipsSpoiler" data-ipsspoiler="">
	<div class="ipsSpoiler_header">
		<span>Скрытый текст</span>
	</div>

	<div class="ipsSpoiler_contents">
		<p>
			<a class="ipsAttachLink ipsAttachLink_image" data-fileid="732882" href="//forum-cdn.korabli.su/monthly_2025_11/image.png.a6380e66166cda7846871d733f6222d0.png" rel=""><img alt="image.thumb.png.8d166231d29f55f035b7ec2b3dd7587e.png" class="ipsImage ipsImage_thumbnailed" data-fileid="732882" src="//forum-cdn.korabli.su/monthly_2025_11/image.thumb.png.8d166231d29f55f035b7ec2b3dd7587e.png"></a>
		</p>
	</div>
</div>

<p>
	<strong>После</strong>
</p>

<div class="ipsSpoiler" data-ipsspoiler="">
	<div class="ipsSpoiler_header">
		<span>Скрытый текст</span>
	</div>

	<div class="ipsSpoiler_contents">
		<p>
			<a class="ipsAttachLink ipsAttachLink_image" data-fileid="732940" href="//forum-cdn.korabli.su/monthly_2025_11/image.png.de5ba8f00c4f9c48d606a75851f01f2a.png" rel=""><img alt="image.thumb.png.cd5e5d80568759b15adb97644af41b2b.png" class="ipsImage ipsImage_thumbnailed" data-fileid="732940" src="//forum-cdn.korabli.su/monthly_2025_11/image.thumb.png.cd5e5d80568759b15adb97644af41b2b.png"></a>
		</p>
	</div>
</div>

<p>
	Исправлена неправильная текстура в середине корпуса линкора. <s>(хотя из-за этого текстура менялась местами влево и вправо)</s>
</p>

<p>
	 
</p>

<p>
	<span style="color:#2ecc71;"><span style="font-size:18px;"><strong>Экспорт модели завершен! На данный момент UV-текстура модели была изменена.</strong></span></span>
</p>

<p>
	 
</p>

<p>
	<span style="font-size:16px;"><strong>Конечно, с помощью этого принципа можно добиться большего количества функций, таких как размещение или замена новых моделей на военных кораблях.</strong></span>
</p>

<div class="ipsSpoiler" data-ipsspoiler="">
	<div class="ipsSpoiler_header">
		<span>Скрытый текст</span>
	</div>

	<div class="ipsSpoiler_contents">
		<p>
			<a class="ipsAttachLink ipsAttachLink_image" data-fileid="732905" href="//forum-cdn.korabli.su/monthly_2025_11/7c292472-e727-4fb9-85b4-8c61be0e735f.png.05613b08c9a755323cf47c8f258af277.png" rel=""><img alt="7c292472-e727-4fb9-85b4-8c61be0e735f.thumb.png.e0d6ce58534a1521e38698b884eda27f.png" class="ipsImage ipsImage_thumbnailed" data-fileid="732905" src="//forum-cdn.korabli.su/monthly_2025_11/7c292472-e727-4fb9-85b4-8c61be0e735f.thumb.png.e0d6ce58534a1521e38698b884eda27f.png"></a>
		</p>
	</div>
</div>

<p>
	 
</p>
]]></description><guid isPermaLink="false">168062</guid><pubDate>Thu, 13 Nov 2025 04:52:08 +0000</pubDate></item><item><title>[&#x421;&#x43E;&#x444;&#x442;] MK Geometry Patcher - &#x43F;&#x435;&#x440;&#x435;&#x43D;&#x43E;&#x441; &#x441;&#x445;&#x435;&#x43C;&#x44B; &#x431;&#x440;&#x43E;&#x43D;&#x438;&#x440;&#x43E;&#x432;&#x430;&#x43D;&#x438;&#x44F; &#x432; &#x43C;&#x43E;&#x434;</title><link>https://forum.korabli.su/topic/170160-%D1%81%D0%BE%D1%84%D1%82-mk-geometry-patcher-%D0%BF%D0%B5%D1%80%D0%B5%D0%BD%D0%BE%D1%81-%D1%81%D1%85%D0%B5%D0%BC%D1%8B-%D0%B1%D1%80%D0%BE%D0%BD%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F-%D0%B2-%D0%BC%D0%BE%D0%B4/</link><description><![CDATA[<div class="ipsBox ipsPad ipsSpacer_bottom">
	<div class="ipsSpacer_bottom">
		<h2 class="ipsType_pageTitle ipsType_reset" style="text-align: center;">
			<strong>MK Geometry Patcher</strong>
		</h2>

		<p>
			 
		</p>

		<p style="text-align: center;">
			<a class="ipsAttachLink ipsAttachLink_image" data-fileid="799208" href="//forum-cdn.korabli.su/monthly_2026_06/image.png.23d3694a611d6e85ec4852c04b0117f5.png" rel=""><img alt="Интерфейс MK Geometry Patcher" class="ipsImage ipsImage_thumbnailed" data-fileid="799208" data-unique="ixcnhrymy" src="//forum-cdn.korabli.su/monthly_2026_06/image.thumb.png.8560ed7c6e3239c45e63fb207849f1cc.png" style="max-width:100%;height:auto;"></a>
		</p>

		<p class="ipsType_light ipsType_reset ipsSpacer_top" style="text-align: center;">
			Утилита для переноса данных бронирования из оригинальных <strong>*.geometry</strong> файлов в изменённые файлы моделей кораблей.
		</p>
	</div>

	<hr class="ipsHr">
<div class="ipsBox ipsPad_half ipsSpacer_bottom">
		<h3 class="ipsType_sectionTitle ipsType_reset">
			Описание
		</h3>

		<div class="ipsGrid ipsGrid_collapsePhone ipsSpacer_top">
			<div class="ipsGrid_span7">
				<div class="ipsType_richText">
					<p style="margin-left: 40px;">
						Начиная с версии 26.6 файлы <strong>*.geometry</strong> имеют изменённую структуру. Теперь они содержат информацию о коллизии кораблей для отображения данных о пробитии в разделе <strong>Порт → Живучесть</strong>.
					</p>

					<p style="margin-left: 40px;">
						С точки зрения модификаций моделей кораблей это нововведение создаёт две основные проблемы:
					</p>

					<ol>
<li style="margin-left: 40px;">
							Ранее <strong>*.geometry</strong> орудий ГК не имели данных о броне, а теперь игра их требует. В результате модификация корабля с изменённой геометрией орудий не прогрузится в порту.
						</li>
						<li style="margin-left: 40px;">
							В изменённой <strong>*.geometry</strong> нет данных о бронировании. Как следствие, в разделе <strong>Порт → Живучесть</strong> не отображается информация о пробитии, а модель становится однотонно зелёной.
						</li>
					</ol>
</div>
			</div>
		</div>

		<p class="ipsType_light ipsType_reset ipsSpacer_top" style="margin-left: 40px;">
			Так выглядит модель без корректно перенесённых данных бронирования корпуса (бронирование орудий уже перенесено):
		</p>

		<div class="ipsType_center ipsSpacer_top" style="overflow: hidden; border-radius: 6px; text-align: left; margin-left: 40px;">
			<a class="ipsAttachLink ipsAttachLink_image" href="https://forum-cdn.korabli.su/monthly_2026_06/image.png.7d4d9d651f21d54250e3dea88a17d137.png" rel="external nofollow"><img alt="Пример отсутствующих данных бронирования" class="ipsImage ipsImage_thumbnailed" data-fileid="799206" data-unique="a5815xnc4" src="//forum-cdn.korabli.su/monthly_2026_06/image.thumb.png.69a02b302b4af5ae836f08918e69bd79.png" style="max-width:100%;height:auto;"></a>
		</div>

		<p class="ipsType_light ipsType_small ipsType_center ipsSpacer_top ipsType_reset" style="text-align: left; margin-left: 40px;">
			Без данных бронирования в разделе живучести модель бронирования отображается некорректно.
		</p>
	</div>

	<div class="ipsBox ipsPad_half ipsSpacer_bottom">
		<h3 class="ipsType_sectionTitle ipsType_reset">
			Использование
		</h3>

		<div class="ipsType_richText ipsSpacer_top">
			<ol>
<li>
					Скачать архив с утилитой и распаковать его в удобную папку.
				</li>
				<li>
					Выполнить полный <strong>contentSdk.extractSources</strong> корабля из последнего SDK.
				</li>
				<li>
					В поле <strong>Source</strong> указать папку корабля, созданную на предыдущем шаге. В ней должен лежать файл <strong>compile.info</strong>.
				</li>
				<li>
					В поле <strong>Target</strong> указать папку с вашим модом корабля. В ней также должен лежать <strong>compile.info</strong>.
				</li>
				<li>
					В поле <strong>Output</strong> указать папку, куда будут помещены пропатченные <strong>*.geometry</strong> файлы.
				</li>
				<li>
					Нажать <strong>Patch</strong>.
				</li>
				<li>
					Забрать пропатченные <strong>*.geometry</strong> из каталога <strong>Output</strong> и поместить их в мод.
				</li>
			</ol>
</div>
	</div>

	<div class="ipsBox ipsPad_half ipsSpacer_bottom">
		<h3 class="ipsType_sectionTitle ipsType_reset">
			Как работает
		</h3>

		<div class="ipsType_richText ipsSpacer_top">
			<p style="margin-left: 40px;">
				Утилита сравнивает два каталога и ищет в них совпадающие <strong>*.geometry</strong> файлы.
			</p>

			<p style="margin-left: 40px;">
				При нахождении совпадения файл из каталога <strong>Target</strong> копируется в каталог <strong>Output</strong> с сохранением полного пути. Например, если файл лежал в папке <strong>Yamato/gun</strong>, то утилита положит его в такую же папку внутри <strong>Output</strong>.
			</p>

			<p style="margin-left: 40px;">
				После этого из файла каталога <strong>Source</strong> берётся схема бронирования и патчится в только что скопированный файл в папке <strong>Output</strong>.
			</p>
		</div>
	</div>

	<div class="ipsMessage ipsMessage_info ipsSpacer_bottom">
		<strong>Важно:</strong> перед использованием рекомендуется сделать резервную копию файлов, с которыми работает инструмент.
	</div>

	<ul class="ipsList_inline ipsSpacer_top">
<li>
			<a class="ipsButton ipsButton_alternate ipsButton_veryLarge" href="https://drive.google.com/file/d/196CeulSqPStrtQZbSc1bJ4y7QT92jsWx/view?usp=sharing" rel="external nofollow" style="background:#c0392b;border-color:#a93226;color:#fff;">Скачать </a>
		</li>
		<li class="ipsType_light">
			Версия 0.1.0
		</li>
	</ul>
</div>]]></description><guid isPermaLink="false">170160</guid><pubDate>Mon, 08 Jun 2026 12:26:35 +0000</pubDate></item></channel></rss>
