最近の記事

2022年05月17日

2022年5月時点でのLinux版Steam上で構築したDOA5 LRのMOD環境

2022年5月時点でのLinux版Steam上で構築したDOA5 LRのMOD環境は、次のような感じです。

OS : Ubuntu 22.04 LTS
ゲームプラットフォーム : Steam
Proton : Proton Experimental
MODツール : AutoLink 3.30・lnk_reshuffle( https://www.deviantart.com/segadordelinks/journal/Installing-DoA5-mods-using-lnk-reshuffle-586630326 )
ポストプロセッシングインジェクター : vkBasalt( https://github.com/DadSchoorse/vkBasalt )
シェーダー : ReShade FX Shaders( https://github.com/crosire/reshade-shaders )
MOD :
- 3Dモデル
Beach Paradaise 8.02(https://mega.nz/folder/NFhG2bpJ#yZyIiHvuiHcgn1knT9p6lw )
https://www.deviantart.com/sindorsf4/art/Naotora-Beyeon-Qipao-846650940
https://www.deviantart.com/sindorsf4/art/Kasumi-COS-002-HD-846859545
https://www.deviantart.com/streetmodders/gallery/58269964/dead-or-alive-5-last-round-mods
https://www.nexusmods.com/deadoralive5
https://www.deviantart.com/tubaking2017/art/DOA5-Marie-Rose-edit-face-MOD-731931564

- ステージ
https://www.deviantart.com/cesarfc01/art/DOA5LR-DUBAI-DESERT-ON-NIGHT-705850213
https://www.deviantart.com/sheikproject/art/New-Tokyo-Stage-V-2-0-733251698
https://www.deviantart.com/sheikproject/art/DOA5LR-Advance-BioLab-873191812

スクリーンショット_2022-05-07_08-56-47.png
スクリーンショット_2022-05-07_08-54-55.png
posted by takatan at 12:58| 大阪 ☀| linux | このブログの読者になる | 更新情報をチェックする

2022年05月15日

Linuxで、Dead Or Alive 5 Last Aroud用の大型MOD「Beach Paradise 8.02」に収録されている3Dモデルを使う方法

◎Beach Paradise 8.02同梱MODモデルの特徴
・モデリングがし直されており、DOA6のような肉感的なプロポーションを持つようになっている。テクスチャーも高品質な物に変更されている
・胸の揺れの物理処理が改良されて、大きく揺れるようになっている
・アーマーブレイク機能を持っており、一定のダメージを受けると水着が取れる
・徐々に日焼けするようになっている
・ヌードモデルやポロリモデルも同梱されている
shot0004.png


DOAHDM氏が制作したPC版Dead Or Alive 5 Last Around向けの大型MOD「Beach Paradise」は、全裸ポールダンスが出来る事で有名です。2022年4月に、新しいバージョンである「Beach Paradise 8.02」が公開されています。

◇Beach Paradiseのダウンロード先
https://mega.nz/folder/NFhG2bpJ#yZyIiHvuiHcgn1knT9p6lw

BP8.02には、MODツールであるAutolinkとWindows向けのポストポジショニングインジェクターのReshadeが同梱されており、DOAHDM氏が女性キャラ全ての3Dモデルをリファインしていて、肉感的な感じがよく出ています。Windowsの場合は、DOA5の公式のDLC「Tropical Paradise Costume & Movie Set」を導入しているのであれば、そのまま、BP8.02を上書きすれば、動作します。

◇DLC「Tropical Paradise Costume & Movie Set」購入ページ
https://store.steampowered.com/app/358142/Tropical_Paradise_Costume__Movie_Set/?l=japanese

DLCが必要である理由は、このDLCにしか入っていないグラビアムービーやステージがあり、それを差し替えて全裸ポールダンスを実現しているからです。3Dモデルに関しては、BPの制作者のDOAHDM氏が新規にMODモデルを用意した事で、このDLCが無くても通常のゲームでMODモデルがAutolink経由で使えるようになりました。

Linuxの場合、ReShade・Autolinkを動かすには、同梱されているdllをwinecfgを使ってSteam Play(Proton)で読み込む作業が必要です。これについては、他の記事で方法を示しました。

◇Linux版Steamで、DEAD OR ALIVE 5 Last RoundのMODツール「Auto Link」と画質向上ツールのReShadeを使えるようにする方法
https://www.vsrx.work/article/478642152.html?1652611870

また、ReShadeをProton経由で動作させると、Linux上でWindowsアプリを動かすのに定番となっているDXVKが使えない為に、かなりのパフォーマンスダウンを引き起こしてしまいます。対策としては、ReShadeの代わりになるLinuxネイティブで動作するvkBasaltとReShade FX Shadersを使う事で、ReShadeを使わなくても高画質化を果たす事が出来ます。これについては、MODを作って別記事で公開しています。

◇Linux上で動作するゲームを超美麗化するMOD「Linux Photorealistic Game MOD」を公開
https://www.vsrx.work/article/487851526.html?1652612173

Linuxで、全裸ポールダンスが動作するかどうかは確認していませんが、BP8.02に同梱されている3Dモデルは使えます。それには、Linux環境でAutolinkを導入する方法の他に、MODツールであるlnk_reshuffleが動作する環境を作ります。

◇lnk_reshuffleダウンロードページ(DeviantArtを利用するには無料会員登録が必要です)
https://www.deviantart.com/segadordelinks/journal/Installing-DoA5-mods-using-lnk-reshuffle-586630326

Autolinkの本体は、同梱されているDInput8.dllです。これの設定ファイルは、DInput8.iniであり、Wineでnotepadを使う事で開く事が出来ます。Linux向けのテキストエディタで読み書き出来るように、文字エンコードをUTF-8に変更して保存しておくと良いでしょう。
Autolinkの本体は、かつてd3d9.dllに組み込まれていましたが、ReShadeがd3d9.dllを使っている為に被ってしまって使えなくなったので、現在ではDInput8.dllがAutolinkその物となっています。
lnk_reshuffleを使う環境を整える事で、BP8.02で同梱3Dモデルが動作する環境が整います。devenum.dllは、BP8.02の本体となっており、これもwinecfg経由でProtonで読み込めるようにします。
つまり、Linux版Steam上で動作しているDOA5で、BP8.02同梱3Dモデルを動かすには、以下のファイルをProtonに読み込ませる必要があります。

・DInput8.dll(Autolink本体)
・DInput8.ini(Autolink設定)
・devenum.dll(Beach Paradaise8.02本体。link_shuffleが使えるようになる)
・modsフォルダ(BP8.02の3Dモデルが入っている)
・mod.config(link_shuffleなどでswapしたBP8.02同梱3Dモデルを読み込む為の設定ファイル)

同梱されているd3d9.dllはReShade本体になっており、Linuxで使うと著しいパフォーマンスダウンに繋がるので、これは無視して構いません。

Beach Paradaise 8.02同梱の3Dモデルの導入方法は次の通りです。
1.Beach Paradaiseをダウンロードする
2.ダウンロードしたBeach Paradise 8.02.7zを解凍する
3.出来たファイル群の中で、「Dead or Alive 5 Last Round」フォルダの中にある次のフォルダ・ファイルをアプリケーション直下に配置する
Dead or Alive 5 Last Round
|--- Autolinkフォルダ
|--- modsフォルダ
|--- mod.config
|--- DInput8.dll
|--- DInput8.ini
|--- devenum.dll
4.Steam Playのwincfgを端末から立ち上げて、winecfgのLibrariesタブからDInput8.dllとdevnum.dllを読み込む。両方共にnativeとbuiltinに設定しておく。
$ WINEPREFIX=~/.steam/steam/steamapps/compatdata/311730/pfx winecfg

UbuntuのリポジトリにあるSteamをインストールすると、Steam関連のファイル群は./steam直下に置かれます。Valve公式サイトで公開されている物を使うと、./local/share/Steam以下に置かれてしまうので、個人的にはUbuntuリポジトリにあるSteamをインストールする事をオススメします。

スクリーンショット_2022-05-15_20-29-34.png

これで、Autolink経由でBp8.02同梱の3Dモデルが使えるようになります。Autolinkの導入に成功している場合、タイトル画面右下にAutolinkのバージョンが表示されます。
スクリーンショット_2022-05-15_20-37-19.png

BP8.02同梱モデルは、女性キャラのインナー選択時に下方向へスクロールすると選べます。他のMODモデルとの共有も可能です。
スクリーンショット_2022-05-15_20-36-18.png

ちなみに、MODステージの導入は、Linuxの場合、Autolinkだけでは出来ません。そこで、lnk_reshuffleが必要になってきますが、BP 8.02を導入した事で、使えるようになっています。MODステージを導入する時は、lnk_reshuffleを使ってswapさせると良いでしょう。

Linux版Steam上においても、DOA5 LRは、かなりの改造を行えます。DOA5 LRが発売されて、7年ぐらい経ちましたが、未だにMOD制作は行われています。
posted by takatan at 21:00| 大阪 ☁| linux | このブログの読者になる | 更新情報をチェックする

Linux上で動作するゲームを超美麗化するMOD「Linux Photorealistic Game MOD」を公開

vkBasalt+ReShade FX Shaders+qUINTを使って、Linux版Steam上で動作するゲームやゲームエミュレーター上で動くゲームにフォトリアルな質感を与えるMODを公開しました。

◇Linux Photorealistic Game MOD(LPGM)
https://github.com/takabrk/LPGM

gitを使うか、zipファイルをダウンロードしてください。
ダウンロード.png

◇超美麗化の効果が高いおすすめゲームタイトルとツール
- Linux版Steam
Dead Or Alive 5 Last Round
Biohazard HD remaster
アスタブリード
NiGHTS
巫剣神威控
- PPSSPP

◇使用しているシェーダ
vkBasalt
- smaa
- dls
- lut
ReShade FX Shaders
- AmbientLight.fx
- MagicBloom.fx
- FineSharp.fx
- ReflectiveBumpMapping.fx
- MXAO.fx
- DPX.fx
- FakeHDR.fx

※vkBasaltは、デプスキャッシュを未搭載の為、DOF系シェーダー(DOF.fx・CinematicDOF.fxなど)を使えません。



適用すると、このような感じになります。
shot0002.png
shot0003.png
shot0001.png
shot0002.png
shot0004.png
shot0005.png
shot0006.png
shot0003.png
posted by takatan at 07:00| 大阪 | その他作品公開 | このブログの読者になる | 更新情報をチェックする

2022年05月14日

Noir Linux Kernel 5.17.7 released [64bit Custom Linux kernel for Ubuntu]

The Noir Linux Kernel is 64bit Custom Linux kernel for Ubuntu,and also this kernel has some useful patches applied.
It has improved response and performance compared to the regular Ubuntu official kernel.It is especially effective for games and desktop applications.
The default CPU scheduler for the Noir linux kernel is "CFS",and the default I/O scheduler is "Kyber".

Noir linux kernelはUbuntuに対応したカスタムカーネルです。
複数のパッチを適用しています。通常のUbuntu公式カーネルよりレスポンス性能とパフォーマンスを高めています。特にゲームやデスクトップ用途で高い効果を発揮します。
マルチキューI/Oスケジューラーは、MQ-deadline・Kyber・BFQ-MQをカーネルパラメーターで選択可能になっています。
Noir linux kernelのデフォルトのCPUスケジューラーはCFS、デフォルトのI/OスケジューラーはKyberです。

[Download Noir Linux Kernel(binary,source code,patch)]
Download from GitHub

[Change point]
- Updated to linux 5.17.7

[based kernel source]
- linux kernel 5.17( https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.17.tar.xz )

[Optimized kernel configuration]

- Built on the GCC 11.1.0
- CPU scheduler -> CFS
- Default I/O scheduler -> Kyber
- Processor family -> Generic X86_64
- Kernel Compression mode -> zstd
- Preemption Model -> Preemptible Kernel(lowlatency desktop)
- CPU Timer frequency -> 750Hz
- RCU boost delay -> 339
- Compiler optimization level -> Optimize for more performance(-O3)
- Timer tick handling -> Full dynticks system
- Default CPUFreq Governor -> schedutil
- CPU idle governor -> TEO
- nr_migrate = 256
- rq_affinity = 2
- vm_swappiness = 33
- UKSM support
- clear linux on
- futex support
- PCIe ACS support
- OpenRGB support
- Zen Interactive Tune support


[Applied patches]

- linux update patch( https://www.kernel.org/ )
- sirlucjan's patches( https://github.com/sirlucjan/kernel-patches )
- CK's hrtimer patchset( http://ck.kolivas.org/patches/5.0/5.12/5.12-ck1/patches/ )
- Zen( https://github.com/zen-kernel/zen-kernel/tree/5.15/master )


◇インストール方法
Gitのリリースページで公開しているバイナリをダウンロードしてインストールする場合は以下のコマンドを使います。


$ sudo dpkg -i *.deb


◇システムのパフォーマンスアップ

$ ./performanceup.sh


◇カスタムカーネルのビルド

バニラカーネルのダウンロードとパッチ当て
$ ./build.sh -e base

前述を行った後にカスタムカーネルのビルドとインストール
$ ./build.sh -e core


◇ダウンロード方法
GitHubのリリースページにある「Source Code」と書かれている部分をクリックすると、バニラカーネルソースコード用のパッチ・各種スクリプト一式をまとめた圧縮ファイルをダウンロード出来ます。また、バイナリも公開しています。

89ee7739-24c8-4414-ad16-e128ee54bbe8.png

◇I/Oスケジューラー確認方法
現在使っているI/Oスケジューラーの確認方法は、端末で以下のコマンドを実行する事で出来ます。

$ cat /sys/block/sd*/queue/scheduler

I/Oスケジューラーを変更するには、以下のコマンドを実行します。

# echo 変更したいスケジューラー > /sys/block/sda/queue/scheduler

設定を永続化するには、起動時に「elevator=変更したいスケジューラー」を付けます。

◇マルチキュー設定方法
マルチキューを使えるようにするには、カーネルパラメータに「scsi_mod.use_blk_mq=1」を追加してシステムを起動します。また、設定を永続化したい場合には、/etc/sysctl.d/90-override.confに「scsi_mod.use_blk_mq=1」を追加して再起動する必要があります。

また、SSDやHDDの種類によって自動的にI/Oスケジューラーを変更する設定の永続化を行うには、以下のようなファイルを作成します。
https://wiki.archlinux.jp/index.php/%E3%83%91%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%B3%E3%82%B9%E3%81%AE%E6%9C%80%E5%A4%A7%E5%8C%96#.E3.82.AB.E3.83.BC.E3.83.8D.E3.83.AB.E3.83.91.E3.83.A9.E3.83.A1.E3.83.BC.E3.82.BF.E3.81.AE.E8.AA.BF.E6.95.B4

◇/etc/udev/rules.d/60-ioschedulers.rules
# set scheduler for non-rotating disks
ACTION=="add|change", KERNEL=="sd[a-z]|mmcblk[0-9]*", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="mq-deadline"
# set scheduler for rotating disks
ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="1", ATTR{queue/scheduler}="bfq"



[Full tickless]
1.Edited /etc/default/grub

GRUB_CMDLINE_LINUX_DEFAULT="nohz_full=1"

2.Make grub config

$ sudo grub-mkconfig -o /boot/grub/grub.cfg

3.reboot system

[セキュアブートについて]
以下の記事を参照すると良いでしょう。
Signing a custom kernel for Secure Boot
https://github.com/jakeday/linux-surface/blob/3267e4ea1f318bb9716d6742d79162de8277dea2/SIGNING.md
posted by takatan at 16:11| 大阪 ☀ | TrackBack(0) | アプリケーション公開 | このブログの読者になる | 更新情報をチェックする

2022年05月08日

ReShadeの代わりにLinux版Steamで使えるポストプロセッシングインジェクター「vkBasalt」

Linux版SteamでReShadeを使うには、ReShadeのd3d9.dllなどをアプリケーション毎のwinecfgで割り当てる必要があります。しかし、この方法では、DKVXを使っていないDLLを読み込む事になるので、描画速度がDKVXを使っている時よりもかなり遅くなってしまいます。
そこで、ReShadeを使わずに、ポストプロセッシングによって画質を向上させるツールがLinuxディストリビューションにはあります。それが、vkBasaltです。vkBasaltのグラフィックスAPIは、Vulkanが使われています。





Ubuntuの場合は、公式リポジトリで公開されているので、apt installコマンドでインストール出来ます。


$ sudo apt install vkbasalt


◇vkBasaltの公式リポジトリ
https://github.com/DadSchoorse/vkBasalt

vkBasaltを有効にするには、オプションを付けてアプリケーションを動かすようにコマンドを追加します。vkBasaltの公式リポジトリで、その方法は記載されています。Steamの場合は、vkBasaltを使いたいアプリケーションにオプションを追加します。

ENABLE_VKBASALT=1 %command%


スクリーンショット_2022-05-07_08-40-13.png

vkBasaltは、ReShadeのようにゲーム内に専用のGUIツールは用意されていません。vkBasalt.confという設定ファイルをテキストエディタで新規に作ります。場所はゲームフォルダでも構いませんが、汎用的に使うつもりであるなら、homeディレクトリの.configディレクトリ直下に作ると便利です。このツールは、ReShade FX Shadersを使う事が出来ます。ReShade FX Shadersのフォルダも.configディレクトリに置いておくと分かり易いです。

◇ReShade FX Shadersの公式リポジトリ
https://github.com/crosire/reshade-shaders

vkBasalt.confのファイルは以下の物をベースにすると良いでしょう。
https://github.com/DadSchoorse/vkBasalt/blob/master/config/vkBasalt.conf

ReShader FX Shadersを使う場合は、明示的にシェーダのパスを示し、エイリアスを設定しておきます。vkBasaltにはHDRが無いので、ReShader FX ShadersのFakeHDR.fxを使うと良いでしょう。


reshadeTexturePath = "/home/valkyrie/.config/vkBasalt/reshade-shaders-master/Textures"
reshadeIncludePath = "/home/valkyrie/.config/vkBasalt/reshade-shaders-master/Shaders"
hdr = /home/valkyrie/.config/vkBasalt/reshade-shaders-master/Shaders/FakeHDR.fx
effects = fxaa:cas:hdr



以下は、vkBasaltのContrast Adaptive Sharpening(CAS)とFXAA、ReShade FX ShadersのFakeHDRだけを使ったものです。結構クッキリとした画質になりました。CASのcasSharpnessは0.9に設定しています。

スクリーンショット_2022-05-07_12-07-38.png
スクリーンショット_2022-05-07_12-05-39.png
スクリーンショット_2022-05-07_12-04-57.png



スクリーンショット_2022-05-07_09-38-42.png
スクリーンショット_2022-05-07_09-51-37.png
スクリーンショット_2022-05-07_09-49-03.png

◇List of Reshade shaders working with vkBasalt
https://github.com/gripped/vkBasalt-working-reshade-shaders

◇vkBasalt.confの設定例

#effects is a colon seperated list of effect to use
#e.g.: effects = fxaa:cas
#effects will be run in order from left to right
#one effect can be run multiple times e.g. smaa:smaa:cas
#cas - Contrast Adaptive Sharpening
#dls - Denoised Luma Sharpening
#fxaa - Fast Approximate Anti-Aliasing
#smaa - Enhanced Subpixel Morphological Antialiasing
#lut - Color LookUp Table

reshadeTexturePath = "./reshade-shaders-master/Textures"
reshadeIncludePath = "./reshade-shaders-master/Shaders"

ambient = ./reshade-shaders-master/Shaders/AmbientLight.fx
colorfulness = ./reshade-shaders-master/Shaders/Colourfulness.fx
denoise = ./reshade-shaders-master/Shaders/Denoise.fx
hdr = ./reshade-shaders-master/Shaders/FakeHDR.fx
finesharp = ./reshade-shaders-master/Shaders/FineSharp.fx
curves = ./reshade-shaders-master/Shaders/Curves.fx
clarity = ./reshade-shaders-master/Shaders/Clarity.fx
dpx = ./reshade-shaders-master/Shaders/DPX.fx
mxao = ./reshade-shaders-master/Shaders/MXAO.fx
filmicpass = ./reshade-shaders-master/Shaders/FilmicPass.fx
broom = ./reshade-shaders-master/Shaders/Bloom.fx
eyeadaption = ./reshade-shaders-master/Shaders/EyeAdaption.fx
rbm = ./reshade-shaders-master/Shaders/ReflectiveBumpMapping.fx
magicbroom = ./reshade-shaders-master/Shaders/MagicBloom.fx

effects = fxaa:cas:hdr:mxao:curves:clarity:colorfulness:dpx:magicbroom:rbm
depthCapture = off

#toggleKey toggles the effects on/off
toggleKey = Home

#enableOnLaunch sets if the effects are emabled when started
enableOnLaunch = True

#casSharpness specifies the amount of sharpning in the CAS shader.
#0.0 less sharp, less artefacts, but not off
#1.0 maximum sharp more artefacts
#Everything in between is possible
#negative values sharpen even less, up to -1.0 make a visible difference
casSharpness = 0.9

#dlsSharpness specifies the amount of sharpening in the Denoised Luma Sharpening shader.
#Increase to sharpen details within the image.
#0.0 less sharp, less artefacts, but not off
#1.0 maximum sharp more artefacts
dlsSharpness = 0.5

#dlsDenoise specifies the amount of denoising in the Denoised Luma Sharpening shader.
#Increase to limit how intensely film grain within the image gets sharpened.
#0.0 min
#1.0 max
dlsDenoise = 0.17

#fxaaQualitySubpix can effect sharpness.
#1.00 - upper limit (softer)
#0.75 - default amount of filtering
#0.50 - lower limit (sharper, less sub-pixel aliasing removal)
#0.25 - almost off
#0.00 - completely off
fxaaQualitySubpix = 0.75

#fxaaQualityEdgeThreshold is the minimum amount of local contrast required to apply algorithm.
#0.333 - too little (faster)
#0.250 - low quality
#0.166 - default
#0.125 - high quality
#0.063 - overkill (slower)
fxaaQualityEdgeThreshold = 0.125

#fxaaQualityEdgeThresholdMin trims the algorithm from processing darks.
#0.0833 - upper limit (default, the start of visible unfiltered edges)
#0.0625 - high quality (faster)
#0.0312 - visible limit (slower)
#Special notes: due to the current implementation you
#Likely want to set this to zero.
#As colors that are mostly not-green
#will appear very dark in the green channel!
#Tune by looking at mostly non-green content,
#then start at zero and increase until aliasing is a problem.
fxaaQualityEdgeThresholdMin = 0.0312

#smaaEdgeDetection changes the edge detection shader
#luma - default
#color - might catch more edges, but is more expensive
smaaEdgeDetection = luma

#smaaThreshold specifies the threshold or sensitivity to edges
#Lowering this value you will be able to detect more edges at the expense of performance.
#Range: [0, 0.5]
#0.1 is a reasonable value, and allows to catch most visible edges.
#0.05 is a rather overkill value, that allows to catch 'em all.
smaaThreshold = 0.05

#smaaMaxSearchSteps specifies the maximum steps performed in the horizontal/vertical pattern searches
#Range: [0, 112]
#4 - low
#8 - medium
#16 - high
#32 - ultra
smaaMaxSearchSteps = 32

#smaaMaxSearchStepsDiag specifies the maximum steps performed in the diagonal pattern searches
#Range: [0, 20]
#0 - low, medium
#8 - high
#16 - ultra
smaaMaxSearchStepsDiag = 16

#smaaCornerRounding specifies how much sharp corners will be rounded
#Range: [0, 100]
#25 is a reasonable value
smaaCornerRounding = 25

#lutFile is the path to the LUT file that will be used
#supported are .CUBE files and .png with width == height * height
lutFile = "/path/to/lut"


posted by takatan at 18:27| 大阪 ☀| linux | このブログの読者になる | 更新情報をチェックする