mirror of
https://github.com/ValveSoftware/Proton.git
synced 2025-07-31 17:41:48 +03:00
Compare commits
13 Commits
proton_8.0
...
proton-7.0
Author | SHA1 | Date | |
---|---|---|---|
|
8b5feadcf8 | ||
|
564c729f30 | ||
|
e0ea1ab827 | ||
|
f79c4e2f73 | ||
|
74405c3720 | ||
|
2db581f6df | ||
|
a7287d164a | ||
|
c9948777fa | ||
|
ab2d6ba7ee | ||
|
ab87d785b1 | ||
|
aa89dfd3a2 | ||
|
24479ea072 | ||
|
0c3dbf2c21 |
44
Makefile.in
44
Makefile.in
@ -189,7 +189,7 @@ GECKO_VER := 2.47.2
|
||||
GECKO32_TARBALL := wine-gecko-$(GECKO_VER)-x86.tar.xz
|
||||
GECKO64_TARBALL := wine-gecko-$(GECKO_VER)-x86_64.tar.xz
|
||||
|
||||
WINEMONO_VER := 6.4.1
|
||||
WINEMONO_VER := 7.0.0
|
||||
WINEMONO_TARBALL := wine-mono-$(WINEMONO_VER)-x86.tar.xz
|
||||
|
||||
FONTS := $(SRCDIR)/fonts
|
||||
@ -343,7 +343,7 @@ $(DIST_FONTS): fonts
|
||||
cp $(FONTS_OBJ)/*.ttf "$@"
|
||||
cp $(FONTS_OBJ)/source-han/msyh.ttf "$@"
|
||||
cp $(FONTS_OBJ)/source-han/simsun.ttc "$@"
|
||||
cp $(FONTS_OBJ)/source-han/msgothic.ttc "$@"
|
||||
cp $(FONTS_OBJ)/ume-gothic/msgothic.ttc "$@"
|
||||
cp $(FONTS_OBJ)/source-han/malgun.ttf "$@"
|
||||
|
||||
.PHONY: dist
|
||||
@ -616,7 +616,6 @@ WINE_SOURCE_ARGS = \
|
||||
|
||||
WINE_CONFIGURE_ARGS = \
|
||||
--with-mingw \
|
||||
--without-xpresent \
|
||||
--disable-tests
|
||||
|
||||
WINE_CONFIGURE_ARGS64 = --enable-win64
|
||||
@ -860,6 +859,7 @@ MERGEFONTSSCRIPT = $(FONTS)/scripts/mergefonts.pe
|
||||
|
||||
LIBERATION_SRCDIR = $(FONTS)/liberation-fonts/src
|
||||
SOURCE_HAN_SANS_SRCDIR = $(FONTS)/source-han-sans
|
||||
UME_DIR = $(FONTS)/ume
|
||||
|
||||
msyh.ttf_CIDFONTINFO = $(SOURCE_HAN_SANS_SRCDIR)/cidfontinfo.OTC.SC
|
||||
msyh.ttf_CIDFONT = $(SOURCE_HAN_SANS_SRCDIR)/cidfont.ps.OTC.SC
|
||||
@ -885,29 +885,17 @@ nsimsun.ttf_UNISOURCE = $(SOURCE_HAN_SANS_SRCDIR)/UniSourceHanSansCN-UTF32-H
|
||||
nsimsun.ttf_MENUNAMEDB = $(FONTS)/patches/NSimSun-FontMenuNameDB
|
||||
nsimsun.ttf = $(FONTS_OBJ)/source-han/nsimsun.ttf
|
||||
|
||||
msgothic.ttf_CIDFONTINFO = $(SOURCE_HAN_SANS_SRCDIR)/cidfontinfo.OTC.J
|
||||
msgothic.ttf_CIDFONT = $(SOURCE_HAN_SANS_SRCDIR)/cidfont.ps.OTC.J
|
||||
msgothic.ttf_FEATURES = $(SOURCE_HAN_SANS_SRCDIR)/features.OTC.J
|
||||
msgothic.ttf_SEQUENCES = $(SOURCE_HAN_SANS_SRCDIR)/SourceHanSans_JP_sequences.txt
|
||||
msgothic.ttf_UNISOURCE = $(SOURCE_HAN_SANS_SRCDIR)/UniSourceHanSansJP-UTF32-H
|
||||
msgothic.ttf_MENUNAMEDB = $(FONTS)/patches/MSGothic-FontMenuNameDB
|
||||
msgothic.ttf = $(FONTS_OBJ)/source-han/msgothic.ttf
|
||||
msgothic.ttf_FONT = $(UME_DIR)/ume-tgo4.ttf
|
||||
msgothic.ttf_NAMETABLE_PATCH = $(FONTS)/patches/UmeGothic-nametable.patch
|
||||
msgothic.ttf = $(FONTS_OBJ)/ume-gothic/msgothic.ttf
|
||||
|
||||
mspgothic.ttf_CIDFONTINFO = $(SOURCE_HAN_SANS_SRCDIR)/cidfontinfo.OTC.J
|
||||
mspgothic.ttf_CIDFONT = $(SOURCE_HAN_SANS_SRCDIR)/cidfont.ps.OTC.J
|
||||
mspgothic.ttf_FEATURES = $(SOURCE_HAN_SANS_SRCDIR)/features.OTC.J
|
||||
mspgothic.ttf_SEQUENCES = $(SOURCE_HAN_SANS_SRCDIR)/SourceHanSans_JP_sequences.txt
|
||||
mspgothic.ttf_UNISOURCE = $(SOURCE_HAN_SANS_SRCDIR)/UniSourceHanSansJP-UTF32-H
|
||||
mspgothic.ttf_MENUNAMEDB = $(FONTS)/patches/MSPGothic-FontMenuNameDB
|
||||
mspgothic.ttf = $(FONTS_OBJ)/source-han/mspgothic.ttf
|
||||
mspgothic.ttf_FONT = $(UME_DIR)/ume-pgo4.ttf
|
||||
mspgothic.ttf_NAMETABLE_PATCH = $(FONTS)/patches/UmePGothic-nametable.patch
|
||||
mspgothic.ttf = $(FONTS_OBJ)/ume-gothic/mspgothic.ttf
|
||||
|
||||
msuigothic.ttf_CIDFONTINFO = $(SOURCE_HAN_SANS_SRCDIR)/cidfontinfo.OTC.J
|
||||
msuigothic.ttf_CIDFONT = $(SOURCE_HAN_SANS_SRCDIR)/cidfont.ps.OTC.J
|
||||
msuigothic.ttf_FEATURES = $(SOURCE_HAN_SANS_SRCDIR)/features.OTC.J
|
||||
msuigothic.ttf_SEQUENCES = $(SOURCE_HAN_SANS_SRCDIR)/SourceHanSans_JP_sequences.txt
|
||||
msuigothic.ttf_UNISOURCE = $(SOURCE_HAN_SANS_SRCDIR)/UniSourceHanSansJP-UTF32-H
|
||||
msuigothic.ttf_MENUNAMEDB = $(FONTS)/patches/MSUIGothic-FontMenuNameDB
|
||||
msuigothic.ttf = $(FONTS_OBJ)/source-han/msuigothic.ttf
|
||||
msuigothic.ttf_FONT = $(UME_DIR)/ume-ugo4.ttf
|
||||
msuigothic.ttf_NAMETABLE_PATCH = $(FONTS)/patches/UmeUIGothic-nametable.patch
|
||||
msuigothic.ttf = $(FONTS_OBJ)/ume-gothic/msuigothic.ttf
|
||||
|
||||
malgun.ttf_CIDFONTINFO = $(SOURCE_HAN_SANS_SRCDIR)/cidfontinfo.OTC.K
|
||||
malgun.ttf_CIDFONT = $(SOURCE_HAN_SANS_SRCDIR)/cidfont.ps.OTC.K
|
||||
@ -918,7 +906,7 @@ malgun.ttf_MENUNAMEDB = $(FONTS)/patches/Malgun-FontMenuNameDB
|
||||
malgun.ttf = $(FONTS_OBJ)/source-han/malgun.ttf
|
||||
|
||||
simsun.ttc = $(FONTS_OBJ)/source-han/simsun.ttc
|
||||
msgothic.ttc = $(FONTS_OBJ)/source-han/msgothic.ttc
|
||||
msgothic.ttc = $(FONTS_OBJ)/ume-gothic/msgothic.ttc
|
||||
|
||||
noto_sans.ttf = $(FONTS)/noto/NotoSans-Regular.ttf
|
||||
noto_sans_arabic.ttf = $(FONTS)/noto/NotoSansArabic-Regular.ttf
|
||||
@ -986,6 +974,12 @@ $(FONTS_OBJ)/source-han/%.ttf: $$(%.ttf_CIDFONTINFO) $$(%.ttf_CIDFONTINFO) $$(%.
|
||||
(TEMP_DIR=`mktemp -d` && cd $$TEMP_DIR && $(AFDKO_VERB) sfntedit -a CFF=$(abspath $($(notdir $@)).cff) $(abspath $@.tmp) && rm -fr $$TEMP_DIR)
|
||||
mv $@.tmp $@
|
||||
|
||||
$(FONTS_OBJ)/ume-gothic/%.ttf: $$(%.ttf_FONT) $$(%.ttf_NAMETABLE_PATCH)
|
||||
mkdir -p $(FONTS_OBJ)/ume-gothic
|
||||
ttx -o $(FONTS_OBJ)/ume-gothic/$(notdir $(basename $($(notdir $@)_NAMETABLE_PATCH))).ttx -t name $($(notdir $@)_FONT)
|
||||
patch $(FONTS_OBJ)/ume-gothic/$(notdir $(basename $($(notdir $@)_NAMETABLE_PATCH))).ttx $($(notdir $@)_NAMETABLE_PATCH)
|
||||
ttx -o $@ -m $($(notdir $@)_FONT) $(FONTS_OBJ)/ume-gothic/$(notdir $(basename $($(notdir $@)_NAMETABLE_PATCH))).ttx
|
||||
|
||||
$(simsun.ttc): $(simsun.ttf) $(nsimsun.ttf)
|
||||
$(AFDKO_VERB) otf2otc -o $@ $^
|
||||
|
||||
|
@ -59,15 +59,13 @@ def setup_dll_symlinks(default_pfx_dir, dist_dir):
|
||||
if os.path.isfile(filename) and file_is_wine_builtin_dll(filename):
|
||||
bitness = dll_bitness(filename)
|
||||
if bitness == 32:
|
||||
libdir = os.path.join(dist_dir, 'lib/wine')
|
||||
libdir = os.path.join(dist_dir, 'lib/wine/i386-windows')
|
||||
elif bitness == 64:
|
||||
libdir = os.path.join(dist_dir, 'lib64/wine')
|
||||
libdir = os.path.join(dist_dir, 'lib64/wine/x86_64-windows')
|
||||
else:
|
||||
continue
|
||||
if os.path.exists(os.path.join(libdir, file_)):
|
||||
target = os.path.join(libdir, file_)
|
||||
elif os.path.exists(os.path.join(libdir, 'fakedlls', file_)):
|
||||
target = os.path.join(libdir, 'fakedlls', file_)
|
||||
else:
|
||||
continue
|
||||
os.unlink(filename)
|
||||
|
13
dist.LICENSE
13
dist.LICENSE
@ -110,6 +110,19 @@ Visit Source Han Sans at
|
||||
|
||||
---- ---- ---- ----
|
||||
|
||||
This software contains Ume fonts distributed under the following license:
|
||||
|
||||
These fonts are free software. Unlimited permission is granted to
|
||||
use, copy, and distribute it, with or without modification, either
|
||||
commercially and noncommercially. THESE FONTS ARE PROVIDED "AS
|
||||
IS" WITHOUT WARRANTY.
|
||||
|
||||
Visit Ume fonts home page at
|
||||
|
||||
https://osdn.net/projects/ume-font/
|
||||
|
||||
---- ---- ---- ----
|
||||
|
||||
This software contains some fonts from the Google Noto collection, licensed under the SIL Open Font License, available at LICENSE.OFL. They are
|
||||
|
||||
Copyright 2015 Google Inc.
|
||||
|
@ -15,53 +15,68 @@ the game's behalf. This turns the raw HID protocol data into usable things like
|
||||
buttons and joysticks.
|
||||
|
||||
dinput is a "legacy" API that allows applictions to talk to any type of
|
||||
joystick. On Windows, it is likely implemented on top of HID. Notably, dinput
|
||||
allows easy access to controllers that no other API does, so it is still used
|
||||
by modern games despite being "legacy."
|
||||
joystick. On Windows, it is implemented on top of HID. Notably, dinput allows
|
||||
easy access to controllers that no other API does, so it is still used by
|
||||
modern games despite being "legacy."
|
||||
|
||||
xinput is the new API that supports only Xbox controllers. On Windows, it is
|
||||
likely implemented on top of rawinput, as Xbox controllers do not behave like
|
||||
standard HID devices.
|
||||
|
||||
winmm is the very legacy API, for when joysticks were hooked up through the
|
||||
soundcard. On modern Windows, it is likely implemented on top of hid.
|
||||
soundcard. On modern Windows, it is implemented on top of dinput.
|
||||
|
||||
|
||||
Here is a diagram for how these APIs are mapped down to the system by Proton:
|
||||
|
||||
|
||||
--------
|
||||
|game.exe|
|
||||
--------
|
||||
/ | | | | application
|
||||
********|**|*|*|**|***********************
|
||||
------ / | | | | wine
|
||||
|xinput| | | | |
|
||||
------ / | | |
|
||||
| / | | |
|
||||
--- / / | \
|
||||
|hid|--- / | \
|
||||
--- / | \
|
||||
| / | \
|
||||
-------- ------ -----
|
||||
|rawinput| |dinput| |winmm|
|
||||
-------- ------ -----
|
||||
| | |
|
||||
----------- | ----------------
|
||||
|winebus.sys| | |winejoystick.drv|
|
||||
----------- | ----------------
|
||||
| \ / | wine
|
||||
***|*********|***********|****************
|
||||
\ | | linux
|
||||
\ ---- |
|
||||
\ |SDL2| |
|
||||
\ ---- |
|
||||
\ | \ |
|
||||
\ | ---- |
|
||||
\ | \ |
|
||||
------ -----------
|
||||
|hidraw| |input event|
|
||||
------ -----------
|
||||
----------
|
||||
| game.exe |
|
||||
----------
|
||||
/ | | | \
|
||||
/ | | | \ application
|
||||
*********/****|*|**|****\******************
|
||||
| | | \ \ wine
|
||||
| | | | \
|
||||
------ | | ----- \
|
||||
|xinput| | | |winmm| |
|
||||
------ | | ----- |
|
||||
| | \ | |
|
||||
| | | | |
|
||||
\ | ------ |
|
||||
\ | |dinput| |
|
||||
\ | ------ /
|
||||
| | / /
|
||||
| | | /
|
||||
--- /
|
||||
|hid| /
|
||||
--- /
|
||||
| /
|
||||
| |
|
||||
--------
|
||||
|rawinput|
|
||||
--------
|
||||
|
|
||||
-----------
|
||||
|winebus.sys|
|
||||
-----------
|
||||
| | wine
|
||||
************|******|***********************
|
||||
| | linux
|
||||
| ----
|
||||
| |SDL2|
|
||||
| ----
|
||||
| | \
|
||||
| | \
|
||||
| | |
|
||||
------ -----------
|
||||
|hidraw| |input event|
|
||||
------ -----------
|
||||
| |
|
||||
\ /
|
||||
========
|
||||
|hardware|
|
||||
========
|
||||
|
||||
Some things to note:
|
||||
|
||||
@ -74,7 +89,7 @@ other) protocol can talk directly to those devices.
|
||||
Xbox controllers do not speak real HID. Instead Windows provides a HID
|
||||
compatibility layer so dinput, which is implemented on top of HID, will present
|
||||
the Xbox controller to legacy games. Of course some games (Unity) have noticed
|
||||
that, and talk directly to this internal HID interface, so we had to duplicate
|
||||
that, and talk directly to this internal HID interface, so we need to duplicate
|
||||
it bit-for-bit in winebus.sys.
|
||||
|
||||
Some games support talking directly to certain controller types. For example,
|
||||
@ -98,16 +113,3 @@ device for your controller, especially if it is a less well-known controller.
|
||||
In those cases, we access it through SDL2 via its linux js backend and try to
|
||||
treat it as an Xbox controller, even if it is not mapped with the Steam client
|
||||
mapping feature.
|
||||
|
||||
|
||||
Future improvements:
|
||||
|
||||
winmm's joystick APIs should be implemented on top of HID so it can use the
|
||||
Steam controller mapping feature via winebus/SDL2.
|
||||
|
||||
xinput should be implemented on top of rawinput, as the Xbox HID compatibility
|
||||
layer does not provide all of the features xinput requires. We currently use a
|
||||
hack to work around this.
|
||||
|
||||
dinput should be implemented on top of HID, so we can avoid the code
|
||||
duplication we have now with both winebus and dinput using SDL2 directly.
|
||||
|
2
dxvk
2
dxvk
@ -1 +1 @@
|
||||
Subproject commit 78ef4cfd92cb7f448292aaca83091914ab271257
|
||||
Subproject commit a268de51e3f7cddce54dc2beea487936ddc3913e
|
@ -1 +1 @@
|
||||
Subproject commit acbcf35e327f2d189e1a9322bc1359a22d36cf6a
|
||||
Subproject commit e23d450316521d22cc37b0f66b2d5778e63596ee
|
@ -1 +1 @@
|
||||
Subproject commit 9510ebd130bcb4dfc76b053b438d8a97a3ed4600
|
||||
Subproject commit 4b0192046158094654e865245832c66d2104219e
|
@ -1,8 +1,6 @@
|
||||
diff --git a/LiberationMono-Regular.sfd b/LiberationMono-Regular.sfd
|
||||
index 0cedbd4..13b9a63 100644
|
||||
--- a/LiberationMono-Regular.sfd
|
||||
+++ b/LiberationMono-Regular.sfd
|
||||
@@ -3931,6 +3931,10 @@ ShortTable: maxp 16
|
||||
@@ -3935,6 +3935,10 @@
|
||||
3
|
||||
1
|
||||
EndShort
|
||||
@ -10,6 +8,6 @@ index 0cedbd4..13b9a63 100644
|
||||
+!!!!"!!**$!<E0/!"B2J!!iQ/s8E!)!"&](!"&]4s8;p*!"8i*!"8i9s8;p,!"Ao*!"Ju<s82j-
|
||||
+!"Ju+!"],?s82j/!"],,!"o8Bs8)d0!"f2-!#,DFs8)cr
|
||||
+EndTtf
|
||||
LangName: 1033 "" "" "Regular" "Ascender - Liberation Mono" "" "Version 2.00.3" "" "Liberation is a trademark of Red Hat, Inc. registered in U.S. Patent and Trademark Office and certain other jurisdictions." "Ascender Corporation" "Steve Matteson" "Based on Cousine, which was designed by Steve Matteson as an innovative, refreshing sans serif design that is metrically compatible with Courier New+ISIA. Cousine offers improved on-screen readability characteristics and the pan-European WGL character set and solves the needs of developers looking for width-compatible fonts to address document portability across platforms." "http://www.ascendercorp.com/" "http://www.ascendercorp.com/typedesigners.html" "Licensed under the SIL Open Font License, Version 1.1" "http://scripts.sil.org/OFL"
|
||||
LangName: 1033 "" "" "Regular" "Ascender - Liberation Mono" "" "Version 2.1.5" "" "Liberation is a trademark of Red Hat, Inc. registered in U.S. Patent and Trademark Office and certain other jurisdictions." "Ascender Corporation" "Steve Matteson" "Based on Cousine, which was designed by Steve Matteson as an innovative, refreshing sans serif design that is metrically compatible with Courier New+ISIA. Cousine offers improved on-screen readability characteristics and the pan-European WGL character set and solves the needs of developers looking for width-compatible fonts to address document portability across platforms." "http://www.ascendercorp.com/" "http://www.ascendercorp.com/typedesigners.html" "Licensed under the SIL Open Font License, Version 1.1" "http://scripts.sil.org/OFL"
|
||||
GaspTable: 3 8 2 17 1 65535 3 0
|
||||
Encoding: UnicodeBmp
|
||||
|
@ -1,5 +0,0 @@
|
||||
[SourceHanSans-Regular]
|
||||
f=3,1,0x411,\FF2D\FF33 \30B4\30B7\30C3\30AF
|
||||
s=3,1,0x411,\6A19\6E96
|
||||
f=MS Gothic
|
||||
s=Regular
|
@ -1,5 +0,0 @@
|
||||
[SourceHanSans-Regular]
|
||||
f=3,1,0x411,\FF2D\FF33 \FF30\30B4\30B7\30C3\30AF
|
||||
s=3,1,0x411,\6A19\6E96
|
||||
f=MS PGothic
|
||||
s=Regular
|
@ -1,5 +0,0 @@
|
||||
[SourceHanSans-Regular]
|
||||
f=3,1,0x411,MS UI Gothic
|
||||
s=3,1,0x411,\6A19\6E96
|
||||
f=MS UI Gothic
|
||||
s=Regular
|
86
fonts/patches/UmeGothic-nametable.patch
Normal file
86
fonts/patches/UmeGothic-nametable.patch
Normal file
@ -0,0 +1,86 @@
|
||||
--- a/UmeGothic-nametable.ttx 2021-11-14 02:41:52.823198735 +0900
|
||||
+++ b/UmeGothic-nametable.ttx 2021-11-14 02:44:50.269352384 +0900
|
||||
@@ -5,8 +5,12 @@
|
||||
<namerecord nameID="0" platformID="1" platEncID="0" langID="0x411" unicode="True">
|
||||
Author: HORAI Wataru. License: This font is a free software. Unlimited permission is granted to use, copy, and distribute it, with or without modification, either commercially and noncommercially. THIS FONT IS PROVIDED "AS IS" WITHOUT WARRANTY.
|
||||
</namerecord>
|
||||
+ <!--
|
||||
+ NameID=1 (Family)
|
||||
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
|
||||
+ -->
|
||||
<namerecord nameID="1" platformID="1" platEncID="0" langID="0x411" unicode="True">
|
||||
- Ume Gothic
|
||||
+ MS Gothic
|
||||
</namerecord>
|
||||
<namerecord nameID="2" platformID="1" platEncID="0" langID="0x411" unicode="True">
|
||||
Regular
|
||||
@@ -14,8 +18,12 @@
|
||||
<namerecord nameID="3" platformID="1" platEncID="0" langID="0x411" unicode="True">
|
||||
Ume Gothic
|
||||
</namerecord>
|
||||
+ <!--
|
||||
+ NameID=4 (Full)
|
||||
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
|
||||
+ -->
|
||||
<namerecord nameID="4" platformID="1" platEncID="0" langID="0x411" unicode="True">
|
||||
- Ume Gothic
|
||||
+ MS Gothic
|
||||
</namerecord>
|
||||
<namerecord nameID="5" platformID="1" platEncID="0" langID="0x411" unicode="True">
|
||||
Look update time of this file.
|
||||
@@ -29,8 +37,12 @@
|
||||
<namerecord nameID="0" platformID="3" platEncID="1" langID="0x409">
|
||||
Author: HORAI Wataru. License: This font is a free software. Unlimited permission is granted to use, copy, and distribute it, with or without modification, either commercially and noncommercially. THIS FONT IS PROVIDED "AS IS" WITHOUT WARRANTY.
|
||||
</namerecord>
|
||||
+ <!--
|
||||
+ NameID=1 (Family)
|
||||
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
|
||||
+ -->
|
||||
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
|
||||
- Ume Gothic
|
||||
+ MS Gothic
|
||||
</namerecord>
|
||||
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x409">
|
||||
Regular
|
||||
@@ -38,8 +50,12 @@
|
||||
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x409">
|
||||
Ume Gothic
|
||||
</namerecord>
|
||||
+ <!--
|
||||
+ NameID=4 (Full)
|
||||
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
|
||||
+ -->
|
||||
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x409">
|
||||
- Ume Gothic
|
||||
+ MS Gothic
|
||||
</namerecord>
|
||||
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x409">
|
||||
Look update time of this file.
|
||||
@@ -53,8 +69,12 @@
|
||||
<namerecord nameID="0" platformID="3" platEncID="1" langID="0x411">
|
||||
作者: 蓬莱和多流. ライセンス: このフォントはフリー(自由な)ソフトウエアです。あらゆる改変の有無に関わらず、また商業的な利用であっても、自由に利用、複製、再配布することができますが、全て無保証とさせていただきます。
|
||||
</namerecord>
|
||||
+ <!--
|
||||
+ NameID=1 (Family)
|
||||
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
|
||||
+ -->
|
||||
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x411">
|
||||
- 梅ゴシック
|
||||
+ MS ゴシック
|
||||
</namerecord>
|
||||
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x411">
|
||||
Regular
|
||||
@@ -62,8 +82,12 @@
|
||||
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x411">
|
||||
梅ゴシック
|
||||
</namerecord>
|
||||
+ <!--
|
||||
+ NameID=4 (Full)
|
||||
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
|
||||
+ -->
|
||||
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x411">
|
||||
- 梅ゴシック
|
||||
+ MS ゴシック
|
||||
</namerecord>
|
||||
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x411">
|
||||
Look update time of this file.
|
86
fonts/patches/UmePGothic-nametable.patch
Normal file
86
fonts/patches/UmePGothic-nametable.patch
Normal file
@ -0,0 +1,86 @@
|
||||
--- a/UmePGothic-nametable.ttx 2021-11-14 02:41:46.983127001 +0900
|
||||
+++ b/UmePGothic-nametable.ttx 2021-11-14 02:44:42.413257975 +0900
|
||||
@@ -5,8 +5,12 @@
|
||||
<namerecord nameID="0" platformID="1" platEncID="0" langID="0x411" unicode="True">
|
||||
Author: HORAI Wataru. License: This font is a free software. Unlimited permission is granted to use, copy, and distribute it, with or without modification, either commercially and noncommercially. THIS FONT IS PROVIDED "AS IS" WITHOUT WARRANTY.
|
||||
</namerecord>
|
||||
+ <!--
|
||||
+ NameID=1 (Family)
|
||||
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
|
||||
+ -->
|
||||
<namerecord nameID="1" platformID="1" platEncID="0" langID="0x411" unicode="True">
|
||||
- Ume P Gothic
|
||||
+ MS PGothic
|
||||
</namerecord>
|
||||
<namerecord nameID="2" platformID="1" platEncID="0" langID="0x411" unicode="True">
|
||||
Regular
|
||||
@@ -14,8 +18,12 @@
|
||||
<namerecord nameID="3" platformID="1" platEncID="0" langID="0x411" unicode="True">
|
||||
Ume P Gothic
|
||||
</namerecord>
|
||||
+ <!--
|
||||
+ NameID=4 (Full)
|
||||
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
|
||||
+ -->
|
||||
<namerecord nameID="4" platformID="1" platEncID="0" langID="0x411" unicode="True">
|
||||
- Ume P Gothic
|
||||
+ MS PGothic
|
||||
</namerecord>
|
||||
<namerecord nameID="5" platformID="1" platEncID="0" langID="0x411" unicode="True">
|
||||
Look update time of this file.
|
||||
@@ -29,8 +37,12 @@
|
||||
<namerecord nameID="0" platformID="3" platEncID="1" langID="0x409">
|
||||
Author: HORAI Wataru. License: This font is a free software. Unlimited permission is granted to use, copy, and distribute it, with or without modification, either commercially and noncommercially. THIS FONT IS PROVIDED "AS IS" WITHOUT WARRANTY.
|
||||
</namerecord>
|
||||
+ <!--
|
||||
+ NameID=1 (Family)
|
||||
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
|
||||
+ -->
|
||||
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
|
||||
- Ume P Gothic
|
||||
+ MS PGothic
|
||||
</namerecord>
|
||||
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x409">
|
||||
Regular
|
||||
@@ -38,8 +50,12 @@
|
||||
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x409">
|
||||
Ume P Gothic
|
||||
</namerecord>
|
||||
+ <!--
|
||||
+ NameID=4 (Full)
|
||||
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
|
||||
+ -->
|
||||
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x409">
|
||||
- Ume P Gothic
|
||||
+ MS PGothic
|
||||
</namerecord>
|
||||
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x409">
|
||||
Look update time of this file.
|
||||
@@ -53,8 +69,12 @@
|
||||
<namerecord nameID="0" platformID="3" platEncID="1" langID="0x411">
|
||||
作者: 蓬莱和多流. ライセンス: このフォントはフリー(自由な)ソフトウエアです。あらゆる改変の有無に関わらず、また商業的な利用であっても、自由に利用、複製、再配布することができますが、全て無保証とさせていただきます。
|
||||
</namerecord>
|
||||
+ <!--
|
||||
+ NameID=1 (Family)
|
||||
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
|
||||
+ -->
|
||||
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x411">
|
||||
- 梅Pゴシック
|
||||
+ MS Pゴシック
|
||||
</namerecord>
|
||||
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x411">
|
||||
Regular
|
||||
@@ -62,8 +82,12 @@
|
||||
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x411">
|
||||
梅Pゴシック
|
||||
</namerecord>
|
||||
+ <!--
|
||||
+ NameID=4 (Full)
|
||||
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
|
||||
+ -->
|
||||
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x411">
|
||||
- 梅Pゴシック
|
||||
+ MS Pゴシック
|
||||
</namerecord>
|
||||
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x411">
|
||||
Look update time of this file.
|
86
fonts/patches/UmeUIGothic-nametable.patch
Normal file
86
fonts/patches/UmeUIGothic-nametable.patch
Normal file
@ -0,0 +1,86 @@
|
||||
--- a/UmeUIGothic-nametable.ttx 2021-11-14 02:41:57.955261726 +0900
|
||||
+++ b/UmeUIGothic-nametable.ttx 2021-11-14 02:44:57.653441054 +0900
|
||||
@@ -5,8 +5,12 @@
|
||||
<namerecord nameID="0" platformID="1" platEncID="0" langID="0x411" unicode="True">
|
||||
Author: HORAI Wataru. License: This font is a free software. Unlimited permission is granted to use, copy, and distribute it, with or without modification, either commercially and noncommercially. THIS FONT IS PROVIDED "AS IS" WITHOUT WARRANTY.
|
||||
</namerecord>
|
||||
+ <!--
|
||||
+ NameID=1 (Family)
|
||||
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
|
||||
+ -->
|
||||
<namerecord nameID="1" platformID="1" platEncID="0" langID="0x411" unicode="True">
|
||||
- Ume UI Gothic
|
||||
+ MS UI Gothic
|
||||
</namerecord>
|
||||
<namerecord nameID="2" platformID="1" platEncID="0" langID="0x411" unicode="True">
|
||||
Regular
|
||||
@@ -14,8 +18,12 @@
|
||||
<namerecord nameID="3" platformID="1" platEncID="0" langID="0x411" unicode="True">
|
||||
Ume UI Gothic
|
||||
</namerecord>
|
||||
++ <!--
|
||||
++ NameID=4 (Full)
|
||||
++ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
|
||||
++ -->
|
||||
<namerecord nameID="4" platformID="1" platEncID="0" langID="0x411" unicode="True">
|
||||
- Ume UI Gothic
|
||||
+ MS UI Gothic
|
||||
</namerecord>
|
||||
<namerecord nameID="5" platformID="1" platEncID="0" langID="0x411" unicode="True">
|
||||
Look update time of this file.
|
||||
@@ -29,8 +37,12 @@
|
||||
<namerecord nameID="0" platformID="3" platEncID="1" langID="0x409">
|
||||
Author: HORAI Wataru. License: This font is a free software. Unlimited permission is granted to use, copy, and distribute it, with or without modification, either commercially and noncommercially. THIS FONT IS PROVIDED "AS IS" WITHOUT WARRANTY.
|
||||
</namerecord>
|
||||
+ <!--
|
||||
+ NameID=1 (Family)
|
||||
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
|
||||
+ -->
|
||||
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
|
||||
- Ume UI Gothic
|
||||
+ MS UI Gothic
|
||||
</namerecord>
|
||||
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x409">
|
||||
Regular
|
||||
@@ -38,8 +50,12 @@
|
||||
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x409">
|
||||
Ume UI Gothic
|
||||
</namerecord>
|
||||
+ <!--
|
||||
+ NameID=4 (Full)
|
||||
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
|
||||
+ -->
|
||||
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x409">
|
||||
- Ume UI Gothic
|
||||
+ MS UI Gothic
|
||||
</namerecord>
|
||||
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x409">
|
||||
Look update time of this file.
|
||||
@@ -53,8 +69,12 @@
|
||||
<namerecord nameID="0" platformID="3" platEncID="1" langID="0x411">
|
||||
作者: 蓬莱和多流. ライセンス: このフォントはフリー(自由な)ソフトウエアです。あらゆる改変の有無に関わらず、また商業的な利用であっても、自由に利用、複製、再配布することができますが、全て無保証とさせていただきます。
|
||||
</namerecord>
|
||||
+ <!--
|
||||
+ NameID=1 (Family)
|
||||
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
|
||||
+ -->
|
||||
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x411">
|
||||
- 梅UIゴシック
|
||||
+ MS UI Gothic
|
||||
</namerecord>
|
||||
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x411">
|
||||
Regular
|
||||
@@ -62,8 +82,12 @@
|
||||
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x411">
|
||||
梅UIゴシック
|
||||
</namerecord>
|
||||
+ <!--
|
||||
+ NameID=4 (Full)
|
||||
+ https://adobe-type-tools.github.io/font-tech-notes/pdfs/5149.OTFname_Tutorial.pdf
|
||||
+ -->
|
||||
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x411">
|
||||
- 梅UIゴシック
|
||||
+ MS UI Gothic
|
||||
</namerecord>
|
||||
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x411">
|
||||
Look update time of this file.
|
File diff suppressed because it is too large
Load Diff
@ -29,8 +29,8 @@
|
||||
8941 E0105; KRName; CID+62775
|
||||
8AA0 E0104; KRName; CID+37864
|
||||
8AA0 E0105; KRName; CID+62792
|
||||
8ACB E0104; KRName; CID+62792
|
||||
8ACB E0105; KRName; CID+37864
|
||||
8ACB E0104; KRName; CID+62795
|
||||
8ACB E0105; KRName; CID+37953
|
||||
927C E0103; KRName; CID+41543
|
||||
927C E0104; KRName; CID+41542
|
||||
9F9C E0107; KRName; CID+47476
|
||||
|
@ -3,9 +3,9 @@
|
||||
%%IncludeResource: ProcSet (CIDInit)
|
||||
%%BeginResource: CMap (UniSourceHanSansCN-UTF32-H)
|
||||
%%Title: (UniSourceHanSansCN-UTF32-H Adobe Identity 0)
|
||||
%%Version: 2.001
|
||||
%%Version: 2.004
|
||||
%%Copyright: -----------------------------------------------------------
|
||||
%%Copyright: Copyright 1990-2019 Adobe. All rights reserved.
|
||||
%%Copyright: Copyright 1990-2021 Adobe. All rights reserved.
|
||||
%%Copyright:
|
||||
%%Copyright: Redistribution and use in source and binary forms, with or
|
||||
%%Copyright: without modification, are permitted provided that the
|
||||
@ -53,7 +53,7 @@ begincmap
|
||||
end def
|
||||
|
||||
/CMapName /UniSourceHanSansCN-UTF32-H def
|
||||
/CMapVersion 2.001 def
|
||||
/CMapVersion 2.004 def
|
||||
/CMapType 1 def
|
||||
|
||||
/WMode 0 def
|
||||
@ -11804,7 +11804,7 @@ endcidchar
|
||||
<0002f91a> 61840
|
||||
endcidchar
|
||||
|
||||
8 begincidchar
|
||||
12 begincidchar
|
||||
<0002f945> 61843
|
||||
<0002f947> 61844
|
||||
<0002f96c> 61845
|
||||
@ -11813,6 +11813,10 @@ endcidchar
|
||||
<0002f9d0> 61849
|
||||
<0002f9d4> 61850
|
||||
<0002f9f4> 61853
|
||||
<00030729> 61858
|
||||
<00030edd> 61859
|
||||
<00030ede> 61856
|
||||
<0003106c> 61861
|
||||
endcidchar
|
||||
|
||||
100 begincidrange
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,22 +0,0 @@
|
||||
FontName (SourceHanSans-Regular)
|
||||
FullName (Source Han Sans Regular)
|
||||
FamilyName (Source Han Sans)
|
||||
Weight (Regular)
|
||||
version (2.001)
|
||||
Registry (Adobe)
|
||||
Ordering (Identity)
|
||||
Supplement 0
|
||||
Layout (AI0-SourceHanSans)
|
||||
FSType 0
|
||||
isFixedPitch false
|
||||
UnderlinePosition -150
|
||||
AdobeCopyright (Copyright 2014-2019 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'.)
|
||||
Trademark (Source is a trademark of Adobe in the United States and/or other countries.)
|
||||
Serif false
|
||||
IsBoldStyle false
|
||||
IsItalicStyle false
|
||||
PreferOS/2TypoMetrics false
|
||||
IsOS/2WidthWeigthSlopeOnly false
|
||||
IsOS/2OBLIQUE false
|
||||
UseOldNameID4 false
|
||||
LicenseCode ADOBE
|
@ -2,7 +2,7 @@ FontName (SourceHanSansK-Regular)
|
||||
FullName (Source Han Sans Korean Regular)
|
||||
FamilyName (Source Han Sans Korean)
|
||||
Weight (Regular)
|
||||
version (2.001)
|
||||
version (2.004)
|
||||
Registry (Adobe)
|
||||
Ordering (Identity)
|
||||
Supplement 0
|
||||
@ -10,7 +10,7 @@ Layout (AI0-SourceHanSans)
|
||||
FSType 0
|
||||
isFixedPitch false
|
||||
UnderlinePosition -150
|
||||
AdobeCopyright (Copyright 2014-2019 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'.)
|
||||
AdobeCopyright (Copyright 2014-2021 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'.)
|
||||
Trademark (Source is a trademark of Adobe in the United States and/or other countries.)
|
||||
Serif false
|
||||
IsBoldStyle false
|
||||
|
@ -2,7 +2,7 @@ FontName (SourceHanSansSC-Regular)
|
||||
FullName (Source Han Sans Simplified Chinese Regular)
|
||||
FamilyName (Source Han Sans Simplified Chinese)
|
||||
Weight (Regular)
|
||||
version (2.001)
|
||||
version (2.004)
|
||||
Registry (Adobe)
|
||||
Ordering (Identity)
|
||||
Supplement 0
|
||||
@ -10,7 +10,7 @@ Layout (AI0-SourceHanSans)
|
||||
FSType 0
|
||||
isFixedPitch false
|
||||
UnderlinePosition -150
|
||||
AdobeCopyright (Copyright 2014-2019 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'.)
|
||||
AdobeCopyright (Copyright 2014-2021 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'.)
|
||||
Trademark (Source is a trademark of Adobe in the United States and/or other countries.)
|
||||
Serif false
|
||||
IsBoldStyle false
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -37,7 +37,7 @@ languagesystem hani ZHT;
|
||||
languagesystem hani ZHH;
|
||||
|
||||
table head {
|
||||
FontRevision 2.001;
|
||||
FontRevision 2.004;
|
||||
} head;
|
||||
|
||||
table hhea {
|
||||
@ -47,7 +47,7 @@ table hhea {
|
||||
} hhea;
|
||||
|
||||
table name {
|
||||
nameid 0 "\00A9 2014-2019 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'.";
|
||||
nameid 0 "\00A9 2014-2021 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'.";
|
||||
nameid 7 "Source is a trademark of Adobe in the United States and/or other countries.";
|
||||
nameid 8 "Adobe";
|
||||
nameid 9 "Ryoko NISHIZUKA \897F\585A\6DBC\5B50 (kana, bopomofo & ideographs); Paul D. Hunt (Latin, Greek & Cyrillic); Sandoll Communications \C0B0\B3CC\CEE4\BBA4\B2C8\CF00\C774\C158, Soo-young JANG \C7A5\C218\C601 & Joo-yeon KANG \AC15\C8FC\C5F0 (hangul elements, letters & syllables)";
|
||||
@ -364,47 +364,6 @@ lookup std_ccmp {
|
||||
substitute \63128 \63128 by \63143;
|
||||
substitute \723 \723 \723 by \63144;
|
||||
substitute \723 \723 by \63143;
|
||||
# UTC-00791 (Extension G)
|
||||
# JP
|
||||
substitute \1394 \40029 \1387 \29388 \1384 \20694 \1384 \1386 \1385 \16866 \42830 \1385 \37543 \44746 \1385 \16866 \42830 \11137 \17487 by \61854;
|
||||
# KR
|
||||
substitute \1394 \40029 \1387 \62576 \1384 \20694 \1384 \1386 \1385 \16866 \42830 \1385 \37543 \44746 \1385 \16866 \42830 \11137 \17487 by \61855;
|
||||
# CN
|
||||
substitute \1394 \40030 \1387 \29389 \1384 \20694 \1384 \1386 \1385 \16867 \42831 \1385 \37544 \44746 \1385 \16867 \42831 \11137 \17488 by \61856;
|
||||
# TW
|
||||
substitute \1394 \40031 \1387 \29390 \1384 \20694 \1384 \1386 \1385 \16867 \42831 \1385 \37544 \44746 \1385 \16867 \42831 \11137 \17488 by \61857;
|
||||
# HK
|
||||
substitute \1394 \40031 \1387 \29389 \1384 \20694 \1384 \1386 \1385 \16867 \42831 \1385 \37544 \44746 \1385 \16867 \42831 \11137 \17488 by \61857;
|
||||
# UTC-01200 (Extension G)
|
||||
# JP/KR
|
||||
substitute \1384 \23011 \17745 by \61858;
|
||||
# CN/TW/HK
|
||||
substitute \1384 \23011 \17746 by \61858;
|
||||
# UTC-01312 (Extension G)
|
||||
# JP
|
||||
substitute \1394 \40029 \1387 \29388 \1384 \20694 \1384 \1386 \1385 \16866 \42842 \1385 \37543 \45072 \1385 \16866 \42842 \11137 \17487 by \61859;
|
||||
# KR
|
||||
substitute \1394 \40029 \1387 \62576 \1384 \20694 \1384 \1386 \1385 \16866 \42842 \1385 \37543 \45072 \1385 \16866 \42842 \11137 \17487 by \61859;
|
||||
# CN
|
||||
substitute \1394 \40030 \1387 \29389 \1384 \20694 \1384 \1386 \1385 \16867 \42842 \1385 \37544 \45072 \1385 \16867 \42842 \11137 \17488 by \61859;
|
||||
# TW
|
||||
substitute \1394 \40031 \1387 \29390 \1384 \20694 \1384 \1386 \1385 \16867 \42842 \1385 \37544 \45072 \1385 \16867 \42842 \11137 \17488 by \61859;
|
||||
# HK
|
||||
substitute \1394 \40031 \1387 \29389 \1384 \20694 \1384 \1386 \1385 \16867 \42842 \1385 \37544 \45072 \1385 \16867 \42842 \11137 \17488 by \61859;
|
||||
# UK-02960 (Extension G): Long IDS
|
||||
# JP/KR
|
||||
substitute \1387 \43442 \1386 \43442 \47443 \43442 \1384 \47443 \47443 by \61860;
|
||||
# CN
|
||||
substitute \1387 \43443 \1386 \43443 \47444 \43443 \1384 \47444 \47444 by \61861;
|
||||
# TW
|
||||
substitute \1387 \43444 \1386 \43444 \47445 \43444 \1384 \47445 \47445 by \61862;
|
||||
# HK
|
||||
substitute \1387 \43444 \1386 \43444 \47444 \43444 \1384 \47444 \47444 by \61863;
|
||||
# UK-02960 (Extension G): Short IDS
|
||||
# JP/KR/CN/HK
|
||||
# substitute \1389 \8547 \47471 by \61860;
|
||||
# TW
|
||||
# substitute \1389 \8547 \47472 by \61862;
|
||||
substitute \1447 \1449 by \1445;
|
||||
substitute \1448 \1449 by \1446;
|
||||
substitute \1461 \1546 by \61872;
|
||||
@ -3905,6 +3864,7 @@ lookup kr2jp useExtension {
|
||||
substitute \13215 by \13214;
|
||||
substitute \13690 by \13689;
|
||||
substitute \13787 by \13786;
|
||||
substitute \13900 by \13899;
|
||||
substitute \14020 by \14019;
|
||||
substitute \14036 by \14035;
|
||||
substitute \14065 by \14064;
|
||||
@ -4185,7 +4145,6 @@ lookup kr2jp useExtension {
|
||||
substitute \61852 by \39830;
|
||||
substitute \61855 by \61854;
|
||||
substitute \61899 by \10855;
|
||||
substitute \61900 by \10989;
|
||||
substitute \61905 by \11892;
|
||||
substitute \61909 by \12827;
|
||||
substitute \61920 by \17069;
|
||||
@ -5065,6 +5024,7 @@ lookup kr2cn useExtension {
|
||||
substitute \10973 by \10974;
|
||||
substitute \10983 by \10984;
|
||||
substitute \10985 by \10986;
|
||||
substitute \10989 by \61900;
|
||||
substitute \10990 by \10991;
|
||||
substitute \11005 by \11006;
|
||||
substitute \11010 by \11011;
|
||||
@ -5666,7 +5626,6 @@ lookup kr2cn useExtension {
|
||||
substitute \13890 by \13891;
|
||||
substitute \13894 by \13895;
|
||||
substitute \13896 by \13897;
|
||||
substitute \13899 by \13900;
|
||||
substitute \13901 by \13902;
|
||||
substitute \13904 by \13905;
|
||||
substitute \13906 by \13907;
|
||||
@ -14243,6 +14202,7 @@ lookup kr2tw useExtension {
|
||||
substitute \10979 by \10980;
|
||||
substitute \10983 by \10984;
|
||||
substitute \10985 by \10987;
|
||||
substitute \10989 by \61900;
|
||||
substitute \10990 by \10991;
|
||||
substitute \10996 by \10997;
|
||||
substitute \11005 by \11006;
|
||||
@ -14990,7 +14950,6 @@ lookup kr2tw useExtension {
|
||||
substitute \13890 by \13891;
|
||||
substitute \13894 by \13895;
|
||||
substitute \13896 by \13897;
|
||||
substitute \13899 by \13900;
|
||||
substitute \13901 by \13902;
|
||||
substitute \13904 by \13905;
|
||||
substitute \13906 by \13908;
|
||||
@ -26220,6 +26179,7 @@ lookup kr2hk useExtension {
|
||||
substitute \10973 by \10974;
|
||||
substitute \10983 by \10984;
|
||||
substitute \10985 by \10987;
|
||||
substitute \10989 by \61900;
|
||||
substitute \10990 by \10991;
|
||||
substitute \10996 by \10997;
|
||||
substitute \11005 by \11006;
|
||||
@ -26934,7 +26894,6 @@ lookup kr2hk useExtension {
|
||||
substitute \13890 by \13891;
|
||||
substitute \13894 by \13895;
|
||||
substitute \13896 by \13897;
|
||||
substitute \13899 by \13900;
|
||||
substitute \13901 by \13902;
|
||||
substitute \13904 by \13905;
|
||||
substitute \13906 by \13907;
|
||||
@ -27544,7 +27503,6 @@ lookup kr2hk useExtension {
|
||||
substitute \15731 by \15732;
|
||||
substitute \15737 by \15739;
|
||||
substitute \15742 by \15743;
|
||||
substitute \15744 by \15745;
|
||||
substitute \15755 by \15756;
|
||||
substitute \15761 by \15763;
|
||||
substitute \15769 by \15770;
|
||||
@ -27584,6 +27542,7 @@ lookup kr2hk useExtension {
|
||||
substitute \15912 by \15914;
|
||||
substitute \15915 by \15916;
|
||||
substitute \15917 by \15918;
|
||||
substitute \15923 by \65530;
|
||||
substitute \15925 by \15926;
|
||||
substitute \15927 by \15928;
|
||||
substitute \15929 by \15930;
|
||||
|
@ -37,7 +37,7 @@ languagesystem hani ZHT;
|
||||
languagesystem hani ZHH;
|
||||
|
||||
table head {
|
||||
FontRevision 2.001;
|
||||
FontRevision 2.004;
|
||||
} head;
|
||||
|
||||
table hhea {
|
||||
@ -47,7 +47,7 @@ table hhea {
|
||||
} hhea;
|
||||
|
||||
table name {
|
||||
nameid 0 "\00A9 2014-2019 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'.";
|
||||
nameid 0 "\00A9 2014-2021 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'.";
|
||||
nameid 7 "Source is a trademark of Adobe in the United States and/or other countries.";
|
||||
nameid 8 "Adobe";
|
||||
nameid 9 "Ryoko NISHIZUKA \897F\585A\6DBC\5B50 (kana, bopomofo & ideographs); Paul D. Hunt (Latin, Greek & Cyrillic); Sandoll Communications \C0B0\B3CC\CEE4\BBA4\B2C8\CF00\C774\C158, Soo-young JANG \C7A5\C218\C601 & Joo-yeon KANG \AC15\C8FC\C5F0 (hangul elements, letters & syllables)";
|
||||
@ -363,47 +363,6 @@ lookup std_ccmp {
|
||||
substitute \63128 \63128 by \63143;
|
||||
substitute \723 \723 \723 by \63144;
|
||||
substitute \723 \723 by \63143;
|
||||
# UTC-00791 (Extension G)
|
||||
# JP
|
||||
substitute \1394 \40029 \1387 \29388 \1384 \20694 \1384 \1386 \1385 \16866 \42830 \1385 \37543 \44746 \1385 \16866 \42830 \11137 \17487 by \61854;
|
||||
# KR
|
||||
substitute \1394 \40029 \1387 \62576 \1384 \20694 \1384 \1386 \1385 \16866 \42830 \1385 \37543 \44746 \1385 \16866 \42830 \11137 \17487 by \61855;
|
||||
# CN
|
||||
substitute \1394 \40030 \1387 \29389 \1384 \20694 \1384 \1386 \1385 \16867 \42831 \1385 \37544 \44746 \1385 \16867 \42831 \11137 \17488 by \61856;
|
||||
# TW
|
||||
substitute \1394 \40031 \1387 \29390 \1384 \20694 \1384 \1386 \1385 \16867 \42831 \1385 \37544 \44746 \1385 \16867 \42831 \11137 \17488 by \61857;
|
||||
# HK
|
||||
substitute \1394 \40031 \1387 \29389 \1384 \20694 \1384 \1386 \1385 \16867 \42831 \1385 \37544 \44746 \1385 \16867 \42831 \11137 \17488 by \61857;
|
||||
# UTC-01200 (Extension G)
|
||||
# JP/KR
|
||||
substitute \1384 \23011 \17745 by \61858;
|
||||
# CN/TW/HK
|
||||
substitute \1384 \23011 \17746 by \61858;
|
||||
# UTC-01312 (Extension G)
|
||||
# JP
|
||||
substitute \1394 \40029 \1387 \29388 \1384 \20694 \1384 \1386 \1385 \16866 \42842 \1385 \37543 \45072 \1385 \16866 \42842 \11137 \17487 by \61859;
|
||||
# KR
|
||||
substitute \1394 \40029 \1387 \62576 \1384 \20694 \1384 \1386 \1385 \16866 \42842 \1385 \37543 \45072 \1385 \16866 \42842 \11137 \17487 by \61859;
|
||||
# CN
|
||||
substitute \1394 \40030 \1387 \29389 \1384 \20694 \1384 \1386 \1385 \16867 \42842 \1385 \37544 \45072 \1385 \16867 \42842 \11137 \17488 by \61859;
|
||||
# TW
|
||||
substitute \1394 \40031 \1387 \29390 \1384 \20694 \1384 \1386 \1385 \16867 \42842 \1385 \37544 \45072 \1385 \16867 \42842 \11137 \17488 by \61859;
|
||||
# HK
|
||||
substitute \1394 \40031 \1387 \29389 \1384 \20694 \1384 \1386 \1385 \16867 \42842 \1385 \37544 \45072 \1385 \16867 \42842 \11137 \17488 by \61859;
|
||||
# UK-02960 (Extension G): Long IDS
|
||||
# JP/KR
|
||||
substitute \1387 \43442 \1386 \43442 \47443 \43442 \1384 \47443 \47443 by \61860;
|
||||
# CN
|
||||
substitute \1387 \43443 \1386 \43443 \47444 \43443 \1384 \47444 \47444 by \61861;
|
||||
# TW
|
||||
substitute \1387 \43444 \1386 \43444 \47445 \43444 \1384 \47445 \47445 by \61862;
|
||||
# HK
|
||||
substitute \1387 \43444 \1386 \43444 \47444 \43444 \1384 \47444 \47444 by \61863;
|
||||
# UK-02960 (Extension G): Short IDS
|
||||
# JP/KR/CN/HK
|
||||
# substitute \1389 \8547 \47471 by \61860;
|
||||
# TW
|
||||
# substitute \1389 \8547 \47472 by \61862;
|
||||
substitute \1447 \1449 by \1445;
|
||||
substitute \1448 \1449 by \1446;
|
||||
substitute \1461 \1546 by \61872;
|
||||
@ -13931,7 +13890,6 @@ lookup cn2kr useExtension {
|
||||
substitute \13891 by \13890;
|
||||
substitute \13895 by \13894;
|
||||
substitute \13897 by \13896;
|
||||
substitute \13900 by \13899;
|
||||
substitute \13902 by \13901;
|
||||
substitute \13905 by \13904;
|
||||
substitute \13907 by \13906;
|
||||
@ -21579,6 +21537,7 @@ lookup cn2kr useExtension {
|
||||
substitute \61830 by \18829;
|
||||
substitute \61856 by \61855;
|
||||
substitute \61861 by \61860;
|
||||
substitute \61900 by \10989;
|
||||
substitute \61907 by \12272;
|
||||
substitute \61910 by \12850;
|
||||
substitute \61913 by \13658;
|
||||
@ -31145,6 +31104,7 @@ lookup cn2hk useExtension {
|
||||
substitute \15734 by \15735;
|
||||
substitute \15737 by \15739;
|
||||
substitute \15741 by \15740;
|
||||
substitute \15745 by \15744;
|
||||
substitute \15749 by \15748;
|
||||
substitute \15755 by \15756;
|
||||
substitute \15760 by \15759;
|
||||
@ -31168,6 +31128,7 @@ lookup cn2hk useExtension {
|
||||
substitute \15910 by \15911;
|
||||
substitute \15913 by \15914;
|
||||
substitute \15917 by \15918;
|
||||
substitute \15923 by \65530;
|
||||
substitute \15925 by \15926;
|
||||
substitute \15927 by \15928;
|
||||
substitute \15933 by \15934;
|
||||
|
17
fonts/ume/PROTON_NOTE.md
Normal file
17
fonts/ume/PROTON_NOTE.md
Normal file
@ -0,0 +1,17 @@
|
||||
# UmeFont (version 670)
|
||||
|
||||
https://ja.osdn.net/projects/ume-font/
|
||||
|
||||
## Fonts
|
||||
|
||||
https://ja.osdn.net/projects/ume-font/downloads/22212/umefont_670.tar.xz/
|
||||
|
||||
- ume-tgo4.ttf: Ume Gothic
|
||||
- ume-pgo4.ttf: Ume P Gothic
|
||||
- ume-ugo4.ttf: Ume UI Gothic
|
||||
|
||||
## Why UmeFont?
|
||||
|
||||
UmeFont is metric-compatible fonts with MS Japanese fonts.
|
||||
|
||||
https://wiki.archlinux.org/title/Metric-compatible_fonts#Ume
|
79
fonts/ume/license.html
Normal file
79
fonts/ume/license.html
Normal file
@ -0,0 +1,79 @@
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html" charset="utf-8">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<pre>
|
||||
-------------------------------------------------------------------------------
|
||||
梅フォントのライセンス (日本語 UTF-8) (UmeFont license (In Japanese UTF-8))
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
本ライセンスは以下の梅フォントに共通のライセンスです。
|
||||
|
||||
* 梅ゴシック
|
||||
* 梅ゴシックC4
|
||||
* 梅ゴシックS4
|
||||
* 梅ゴシックO5
|
||||
* 梅ゴシックC5
|
||||
* 梅ゴシックS5
|
||||
* 梅Pゴシック
|
||||
* 梅PゴシックC4
|
||||
* 梅PゴシックS4
|
||||
* 梅PゴシックO5
|
||||
* 梅PゴシックC5
|
||||
* 梅PゴシックS5
|
||||
* 梅UIゴシック
|
||||
* 梅UIゴシックO5
|
||||
* 梅Hyゴシック
|
||||
* 梅HyゴシックO5
|
||||
* 梅明朝
|
||||
* 梅明朝S3
|
||||
* 梅P明朝
|
||||
* 梅P明朝S3
|
||||
|
||||
|
||||
これらのフォントはフリー(自由な)ソフトウエアです。
|
||||
あらゆる改変の有無に関わらず、また商業的な利用であっても、自由にご利用、複製、
|
||||
再配布することができますが、全て無保証とさせていただきます。
|
||||
|
||||
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
UmeFont license (In English)
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
This is common license of the UmeFont family. UmeFont family provides the
|
||||
following fonts:
|
||||
|
||||
* Ume Gothic
|
||||
* Ume Gothic C4
|
||||
* Ume Gothic S4
|
||||
* Ume Gothic O5
|
||||
* Ume Gothic C5
|
||||
* Ume Gothic S5
|
||||
* Ume P Gothic
|
||||
* Ume P Gothic C4
|
||||
* Ume P Gothic S4
|
||||
* Ume P Gothic O5
|
||||
* Ume P Gothic C5
|
||||
* Ume P Gothic S5
|
||||
* Ume UI Gothic
|
||||
* Ume UI Gothic O5
|
||||
* Ume Hy Gothic
|
||||
* Ume Hy Gothic O5
|
||||
* Ume Mincho
|
||||
* Ume Mincho S3
|
||||
* Ume P Mincho
|
||||
* Ume P Mincho S3
|
||||
|
||||
|
||||
These fonts are free software.
|
||||
Unlimited permission is granted to use, copy, and distribute it,
|
||||
with or without modification, either commercially and noncommercially.
|
||||
THESE FONTS ARE PROVIDED "AS IS" WITHOUT WARRANTY.
|
||||
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
BIN
fonts/ume/ume-pgo4.ttf
Normal file
BIN
fonts/ume/ume-pgo4.ttf
Normal file
Binary file not shown.
BIN
fonts/ume/ume-tgo4.ttf
Normal file
BIN
fonts/ume/ume-tgo4.ttf
Normal file
Binary file not shown.
BIN
fonts/ume/ume-ugo4.ttf
Normal file
BIN
fonts/ume/ume-ugo4.ttf
Normal file
Binary file not shown.
@ -708,7 +708,7 @@ impl ElementImpl for AudioConv {
|
||||
static ELEMENT_METADATA: Lazy<gst::subclass::ElementMetadata> = Lazy::new(|| {
|
||||
gst::subclass::ElementMetadata::new(
|
||||
"Proton audio converter",
|
||||
"Codec/Parser",
|
||||
"Codec/Decoder/Audio",
|
||||
"Converts audio for Proton",
|
||||
"Andrew Eikum <aeikum@codeweavers.com>")
|
||||
});
|
||||
|
@ -134,7 +134,7 @@ impl ElementImpl for AudioConvBin {
|
||||
static ELEMENT_METADATA: Lazy<gst::subclass::ElementMetadata> = Lazy::new(|| {
|
||||
gst::subclass::ElementMetadata::new(
|
||||
"Proton audio converter with rate fixup",
|
||||
"Codec/Parser",
|
||||
"Codec/Decoder/Audio",
|
||||
"Converts audio for Proton, fixing up samplerates",
|
||||
"Andrew Eikum <aeikum@codeweavers.com>")
|
||||
});
|
||||
@ -155,7 +155,9 @@ impl ElementImpl for AudioConvBin {
|
||||
gst::PadPresence::Always,
|
||||
&caps).unwrap();
|
||||
|
||||
let caps = gst::Caps::builder("audio/x-raw").build();
|
||||
let caps = gst::Caps::builder("audio/x-raw")
|
||||
.field("format", "S16LE") /* opusdec always output S16LE */
|
||||
.build();
|
||||
let src_pad_template = gst::PadTemplate::new(
|
||||
"src",
|
||||
gst::PadDirection::Src,
|
||||
|
17
proton
17
proton
@ -31,7 +31,7 @@ from random import randrange
|
||||
#To enable debug logging, copy "user_settings.sample.py" to "user_settings.py"
|
||||
#and edit it if needed.
|
||||
|
||||
CURRENT_PREFIX_VERSION="6.3-3"
|
||||
CURRENT_PREFIX_VERSION="7.0-100"
|
||||
|
||||
PFX="Proton: "
|
||||
ld_path_var = "LD_LIBRARY_PATH"
|
||||
@ -58,7 +58,16 @@ def log(msg):
|
||||
def file_is_wine_builtin_dll(path):
|
||||
if os.path.islink(path):
|
||||
contents = os.readlink(path)
|
||||
if os.path.dirname(contents).endswith(('/lib/wine/i386-unix', '/lib/wine/i386-windows', '/lib64/wine/x86_64-unix', '/lib64/wine/x86_64-windows')):
|
||||
if os.path.dirname(contents).endswith((
|
||||
'/lib/wine',
|
||||
'/lib64/wine',
|
||||
'/lib/wine/fakedlls',
|
||||
'/lib64/wine/fakedlls',
|
||||
'/lib/wine/i386-unix',
|
||||
'/lib/wine/i386-windows',
|
||||
'/lib64/wine/x86_64-unix',
|
||||
'/lib64/wine/x86_64-windows'
|
||||
)):
|
||||
# This may be a broken link to a dll in a removed Proton install
|
||||
return True
|
||||
if not os.path.exists(path):
|
||||
@ -808,10 +817,10 @@ class CompatData:
|
||||
prefix=self.prefix_dir, track_file=tracked_files, link_debug=True)
|
||||
|
||||
if use_wined3d:
|
||||
dxvkfiles = ["dxvk_config"]
|
||||
dxvkfiles = []
|
||||
wined3dfiles = ["d3d11", "d3d10", "d3d10core", "d3d10_1", "d3d9"]
|
||||
else:
|
||||
dxvkfiles = ["dxvk_config", "d3d11", "d3d10core", "d3d9"]
|
||||
dxvkfiles = ["d3d11", "d3d10core", "d3d9"]
|
||||
wined3dfiles = []
|
||||
|
||||
if use_dxvk_dxgi:
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit c0a3fa8adc589454a05ee2dd28430cae73b67890
|
||||
Subproject commit 0f46a8a7d5bf2e43877de84dbd35f01674c4d681
|
@ -18,11 +18,7 @@
|
||||
#define COBJMACROS
|
||||
#include "d3d11_4.h"
|
||||
|
||||
#ifdef VRCLIENT_HAVE_DXVK
|
||||
#include "dxvk-interop.h"
|
||||
#endif
|
||||
|
||||
#include "wined3d-interop.h"
|
||||
|
||||
#include "flatapi.h"
|
||||
|
||||
@ -53,10 +49,7 @@ static void *vrclient_lib;
|
||||
static struct
|
||||
{
|
||||
ID3D11Device *d3d11_device;
|
||||
IWineD3D11Device *wined3d_device;
|
||||
#ifdef VRCLIENT_HAVE_DXVK
|
||||
IDXGIVkInteropDevice *dxvk_device;
|
||||
#endif
|
||||
BOOL d3d11_explicit_handoff, handoff_called;
|
||||
void *client_core_linux_side;
|
||||
|
||||
@ -553,16 +546,7 @@ void *ivrclientcore_get_generic_interface(void *(*cpp_func)(void *, const char *
|
||||
|
||||
static void destroy_compositor_data(void)
|
||||
{
|
||||
IWineD3D11Device *wined3d_device;
|
||||
|
||||
TRACE("Destroying compositor data.\n");
|
||||
|
||||
if ((wined3d_device = compositor_data.wined3d_device))
|
||||
{
|
||||
TRACE("Waiting for device %p\n", wined3d_device);
|
||||
|
||||
wined3d_device->lpVtbl->wait_idle(wined3d_device);
|
||||
}
|
||||
memset(&compositor_data, 0, sizeof(compositor_data));
|
||||
}
|
||||
|
||||
@ -757,151 +741,6 @@ VRCompositorError ivrcompositor_008_submit(
|
||||
return cpp_func(linux_side, eye, api, texture, bounds, flags);
|
||||
}
|
||||
|
||||
static EVRCompositorError ivrcompositor_submit_wined3d(
|
||||
EVRCompositorError (*cpp_func)(void *, EVREye, Texture_t *, VRTextureBounds_t *, EVRSubmitFlags),
|
||||
void *linux_side, EVREye eye, Texture_t *texture, VRTextureBounds_t *bounds, EVRSubmitFlags flags,
|
||||
unsigned int version, IWineD3D11Texture2D *wine_texture)
|
||||
{
|
||||
IWineD3D11Texture2D *depth_texture = NULL;
|
||||
IUnknown *depth_texture_unk = NULL;
|
||||
IWineD3D11Device *wined3d_device;
|
||||
struct submit_data submit_data;
|
||||
EVRCompositorError error = 0;
|
||||
ID3D11Device *device;
|
||||
BOOL async = FALSE;
|
||||
HRESULT hr;
|
||||
|
||||
wine_texture->lpVtbl->GetDevice(wine_texture, &device);
|
||||
if (compositor_data.d3d11_device != device)
|
||||
{
|
||||
if (compositor_data.d3d11_device)
|
||||
FIXME("Previous submit was from different D3D11 device.\n");
|
||||
|
||||
compositor_data.d3d11_device = device;
|
||||
|
||||
if (SUCCEEDED(hr = device->lpVtbl->QueryInterface(device,
|
||||
&IID_IWineD3D11Device, (void **)&wined3d_device)))
|
||||
{
|
||||
compositor_data.wined3d_device = wined3d_device;
|
||||
wined3d_device->lpVtbl->Release(wined3d_device);
|
||||
}
|
||||
else
|
||||
{
|
||||
WARN("Failed to get device, hr %#x.\n", hr);
|
||||
compositor_data.wined3d_device = NULL;
|
||||
}
|
||||
|
||||
switch (version)
|
||||
{
|
||||
/* older versions */
|
||||
default:
|
||||
TRACE("Using synchronous mode.\n");
|
||||
break;
|
||||
case 21:
|
||||
TRACE("Enabling explicit timing mode.\n");
|
||||
async = TRUE;
|
||||
cppIVRCompositor_IVRCompositor_021_SetExplicitTimingMode(linux_side,
|
||||
VRCompositorTimingMode_Explicit_ApplicationPerformsPostPresentHandoff);
|
||||
break;
|
||||
case 22:
|
||||
TRACE("Enabling explicit timing mode.\n");
|
||||
async = TRUE;
|
||||
cppIVRCompositor_IVRCompositor_022_SetExplicitTimingMode(linux_side,
|
||||
VRCompositorTimingMode_Explicit_ApplicationPerformsPostPresentHandoff);
|
||||
break;
|
||||
}
|
||||
}
|
||||
device->lpVtbl->Release(device);
|
||||
|
||||
submit_data.linux_side = linux_side;
|
||||
submit_data.submit = cpp_func;
|
||||
submit_data.eye = eye;
|
||||
submit_data.flags = flags;
|
||||
/* Textures are upside-down in wined3d. */
|
||||
submit_data.bounds = *bounds;
|
||||
submit_data.bounds.vMin = bounds->vMax;
|
||||
submit_data.bounds.vMax = bounds->vMin;
|
||||
|
||||
switch (flags & (Submit_TextureWithPose | Submit_TextureWithDepth))
|
||||
{
|
||||
case 0:
|
||||
submit_data.texture = *texture;
|
||||
break;
|
||||
case Submit_TextureWithPose:
|
||||
submit_data.texture_pose = *(VRTextureWithPose_t *)texture;
|
||||
break;
|
||||
case Submit_TextureWithDepth:
|
||||
submit_data.texture_depth = *(VRTextureWithDepth_t *)texture;
|
||||
depth_texture_unk = submit_data.texture_depth.depth.handle;
|
||||
break;
|
||||
case Submit_TextureWithPose | Submit_TextureWithDepth:
|
||||
submit_data.texture_both = *(VRTextureWithPoseAndDepth_t *)texture;
|
||||
depth_texture_unk = submit_data.texture_both.depth.handle;
|
||||
break;
|
||||
}
|
||||
|
||||
if (depth_texture_unk)
|
||||
{
|
||||
if (FAILED(hr = depth_texture_unk->lpVtbl->QueryInterface(depth_texture_unk,
|
||||
&IID_IWineD3D11Texture2D, (void **)&depth_texture)))
|
||||
WARN("Failed to get IWineD3D11Texture2D from depth texture.\n");
|
||||
}
|
||||
|
||||
if (async)
|
||||
{
|
||||
wine_texture->lpVtbl->access_gl_texture(wine_texture,
|
||||
d3d11_texture_callback, depth_texture, &submit_data, sizeof(submit_data));
|
||||
}
|
||||
else
|
||||
{
|
||||
unsigned int gl_texture, gl_depth_texture = 0;
|
||||
void *linux_texture;
|
||||
|
||||
gl_texture = wine_texture->lpVtbl->get_gl_texture(wine_texture);
|
||||
if (depth_texture)
|
||||
{
|
||||
gl_depth_texture = depth_texture->lpVtbl->get_gl_texture(depth_texture);
|
||||
TRACE("Depth texture %u.\n", gl_depth_texture);
|
||||
}
|
||||
|
||||
switch (flags & (Submit_TextureWithPose | Submit_TextureWithDepth))
|
||||
{
|
||||
case 0:
|
||||
submit_data.texture.handle = (void *)(UINT_PTR)gl_texture;
|
||||
submit_data.texture.eType = TextureType_OpenGL;
|
||||
linux_texture = &submit_data.texture;
|
||||
break;
|
||||
case Submit_TextureWithPose:
|
||||
submit_data.texture_pose.texture.handle = (void *)(UINT_PTR)gl_texture;
|
||||
submit_data.texture_pose.texture.eType = TextureType_OpenGL;
|
||||
linux_texture = &submit_data.texture_pose;
|
||||
break;
|
||||
case Submit_TextureWithDepth:
|
||||
submit_data.texture_depth.texture.handle = (void *)(UINT_PTR)gl_texture;
|
||||
submit_data.texture_depth.texture.eType = TextureType_OpenGL;
|
||||
submit_data.texture_depth.depth.handle = (void *)(UINT_PTR)gl_depth_texture;
|
||||
linux_texture = &submit_data.texture_depth;
|
||||
break;
|
||||
case Submit_TextureWithPose | Submit_TextureWithDepth:
|
||||
submit_data.texture_both.texture.handle = (void *)(UINT_PTR)gl_texture;
|
||||
submit_data.texture_both.texture.eType = TextureType_OpenGL;
|
||||
submit_data.texture_both.depth.handle = (void *)(UINT_PTR)gl_depth_texture;
|
||||
linux_texture = &submit_data.texture_both;
|
||||
break;
|
||||
}
|
||||
|
||||
error = cpp_func(linux_side, eye, linux_texture, &submit_data.bounds, flags);
|
||||
}
|
||||
|
||||
if (depth_texture)
|
||||
depth_texture->lpVtbl->Release(depth_texture);
|
||||
|
||||
wine_texture->lpVtbl->Release(wine_texture);
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
#ifdef VRCLIENT_HAVE_DXVK
|
||||
static Texture_t vrclient_translate_texture_dxvk(Texture_t *texture, struct VRVulkanTextureData_t *vkdata,
|
||||
IDXGIVkInteropSurface *dxvk_surface, IDXGIVkInteropDevice **p_dxvk_device, VkImageLayout *image_layout,
|
||||
VkImageCreateInfo *image_info)
|
||||
@ -1030,7 +869,6 @@ static EVRCompositorError ivrcompositor_submit_dxvk(
|
||||
dxvk_surface->lpVtbl->Release(dxvk_surface);
|
||||
return err;
|
||||
}
|
||||
#endif
|
||||
|
||||
static EVROverlayError ivroverlay_set_overlay_texture_vulkan(
|
||||
EVROverlayError (*cpp_func)(void *, VROverlayHandle_t, Texture_t *),
|
||||
@ -1146,21 +984,9 @@ EVROverlayError ivroverlay_set_overlay_texture(
|
||||
|
||||
texture_iface = texture->handle;
|
||||
|
||||
#ifdef VRCLIENT_HAVE_DXVK
|
||||
{
|
||||
IDXGIVkInteropSurface *dxvk_surface;
|
||||
if (SUCCEEDED(hr = texture_iface->lpVtbl->QueryInterface(texture_iface, &IID_IDXGIVkInteropSurface, (void **)&dxvk_surface))) {
|
||||
return ivroverlay_set_overlay_texture_dxvk(cpp_func, linux_side, overlayHandle, texture, version, dxvk_surface);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
{
|
||||
IWineD3D11Texture2D *wine_texture;
|
||||
if (SUCCEEDED(hr = texture_iface->lpVtbl->QueryInterface(texture_iface,
|
||||
&IID_IWineD3D11Texture2D, (void **)&wine_texture)))
|
||||
{
|
||||
FIXME("WineD3D not yet supported by IVROverlay::SetOverlayTexture\n");
|
||||
}
|
||||
IDXGIVkInteropSurface *dxvk_surface;
|
||||
if (SUCCEEDED(hr = texture_iface->lpVtbl->QueryInterface(texture_iface, &IID_IDXGIVkInteropSurface, (void **)&dxvk_surface))) {
|
||||
return ivroverlay_set_overlay_texture_dxvk(cpp_func, linux_side, overlayHandle, texture, version, dxvk_surface);
|
||||
}
|
||||
|
||||
WARN("Invalid D3D11 texture %p.\n", texture);
|
||||
@ -1199,7 +1025,7 @@ EVRCompositorError ivrcompositor_submit(
|
||||
void *linux_side, EVREye eye, Texture_t *texture, VRTextureBounds_t *bounds, EVRSubmitFlags flags,
|
||||
unsigned int version)
|
||||
{
|
||||
IWineD3D11Texture2D *wine_texture;
|
||||
IDXGIVkInteropSurface *dxvk_surface;
|
||||
IUnknown *texture_iface;
|
||||
HRESULT hr;
|
||||
|
||||
@ -1221,25 +1047,12 @@ EVRCompositorError ivrcompositor_submit(
|
||||
texture_iface = texture->handle;
|
||||
|
||||
if (SUCCEEDED(hr = texture_iface->lpVtbl->QueryInterface(texture_iface,
|
||||
&IID_IWineD3D11Texture2D, (void **)&wine_texture)))
|
||||
&IID_IDXGIVkInteropSurface, (void **)&dxvk_surface)))
|
||||
{
|
||||
return ivrcompositor_submit_wined3d(cpp_func, linux_side,
|
||||
eye, texture, bounds, flags, version, wine_texture);
|
||||
return ivrcompositor_submit_dxvk(cpp_func, linux_side,
|
||||
eye, texture, bounds, flags, version, dxvk_surface);
|
||||
}
|
||||
|
||||
#ifdef VRCLIENT_HAVE_DXVK
|
||||
{
|
||||
IDXGIVkInteropSurface *dxvk_surface;
|
||||
|
||||
if (SUCCEEDED(hr = texture_iface->lpVtbl->QueryInterface(texture_iface,
|
||||
&IID_IDXGIVkInteropSurface, (void **)&dxvk_surface)))
|
||||
{
|
||||
return ivrcompositor_submit_dxvk(cpp_func, linux_side,
|
||||
eye, texture, bounds, flags, version, dxvk_surface);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
WARN("Invalid D3D11 texture %p.\n", texture);
|
||||
return cpp_func(linux_side, eye, texture, bounds, flags);
|
||||
}
|
||||
@ -1294,7 +1107,6 @@ static EVRCompositorError ivrcompositor_set_skybox_override_d3d11(
|
||||
|
||||
texture_iface = texture->handle;
|
||||
|
||||
#ifdef VRCLIENT_HAVE_DXVK
|
||||
if (SUCCEEDED(texture_iface->lpVtbl->QueryInterface(texture_iface,
|
||||
&IID_IDXGIVkInteropSurface, (void **)&dxvk_surface)))
|
||||
{
|
||||
@ -1329,7 +1141,6 @@ static EVRCompositorError ivrcompositor_set_skybox_override_d3d11(
|
||||
|
||||
continue;
|
||||
}
|
||||
#endif
|
||||
FIXME("Unsupported d3d11 texture %p, i %u.\n", texture, i);
|
||||
return 0;
|
||||
}
|
||||
@ -1384,22 +1195,9 @@ void ivrcompositor_post_present_handoff(void (*cpp_func)(void *),
|
||||
void *linux_side, unsigned int version)
|
||||
{
|
||||
struct post_present_handoff_data data;
|
||||
IWineD3D11Device *wined3d_device;
|
||||
|
||||
TRACE("%p\n", linux_side);
|
||||
|
||||
if ((wined3d_device = compositor_data.wined3d_device))
|
||||
{
|
||||
TRACE("wined3d device %p\n", wined3d_device);
|
||||
|
||||
data.linux_side = linux_side;
|
||||
data.post_present_handoff = cpp_func;
|
||||
wined3d_device->lpVtbl->run_on_command_stream(wined3d_device,
|
||||
d3d11_post_present_handoff_callback, &data, sizeof(data));
|
||||
return;
|
||||
}
|
||||
|
||||
#ifdef VRCLIENT_HAVE_DXVK
|
||||
if (compositor_data.dxvk_device)
|
||||
{
|
||||
compositor_data.dxvk_device->lpVtbl->LockSubmissionQueue(compositor_data.dxvk_device);
|
||||
@ -1414,15 +1212,12 @@ void ivrcompositor_post_present_handoff(void (*cpp_func)(void *),
|
||||
compositor_data.d3d11_explicit_handoff = TRUE;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
cpp_func(linux_side);
|
||||
|
||||
compositor_data.handoff_called = TRUE;
|
||||
#ifdef VRCLIENT_HAVE_DXVK
|
||||
if (compositor_data.dxvk_device)
|
||||
compositor_data.dxvk_device->lpVtbl->ReleaseSubmissionQueue(compositor_data.dxvk_device);
|
||||
#endif
|
||||
}
|
||||
|
||||
struct explicit_timing_data
|
||||
@ -1462,12 +1257,10 @@ EVRCompositorError ivrcompositor_wait_get_poses(
|
||||
unsigned int version)
|
||||
{
|
||||
struct explicit_timing_data data;
|
||||
IWineD3D11Device *wined3d_device;
|
||||
EVRCompositorError r;
|
||||
|
||||
TRACE("%p, %p, %u, %p, %u\n", linux_side, render_poses, render_pose_count, game_poses, game_pose_count);
|
||||
|
||||
#ifdef VRCLIENT_HAVE_DXVK
|
||||
if (compositor_data.dxvk_device)
|
||||
{
|
||||
compositor_data.dxvk_device->lpVtbl->LockSubmissionQueue(compositor_data.dxvk_device);
|
||||
@ -1478,11 +1271,9 @@ EVRCompositorError ivrcompositor_wait_get_poses(
|
||||
cppIVRCompositor_IVRCompositor_022_PostPresentHandoff(linux_side);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
r = cpp_func(linux_side, render_poses, render_pose_count, game_poses, game_pose_count);
|
||||
|
||||
#ifdef VRCLIENT_HAVE_DXVK
|
||||
if (compositor_data.dxvk_device)
|
||||
{
|
||||
if (compositor_data.d3d11_explicit_handoff)
|
||||
@ -1490,27 +1281,6 @@ EVRCompositorError ivrcompositor_wait_get_poses(
|
||||
|
||||
compositor_data.dxvk_device->lpVtbl->ReleaseSubmissionQueue(compositor_data.dxvk_device);
|
||||
}
|
||||
#endif
|
||||
|
||||
if ((wined3d_device = compositor_data.wined3d_device))
|
||||
{
|
||||
TRACE("wined3d device %p.\n", wined3d_device);
|
||||
|
||||
/* We need to call IVRCompositor::SubmitExplicitTimingData() before the
|
||||
* first flush of the frame.
|
||||
*
|
||||
* Sending IVRCompositor::SubmitExplicitTimingData() to the command
|
||||
* stream immediately after IVRCompositor::WaitGetPoses() seems
|
||||
* reasonable.
|
||||
*/
|
||||
if (version == 21 || version == 22)
|
||||
{
|
||||
data.linux_side = linux_side;
|
||||
data.version = version;
|
||||
wined3d_device->lpVtbl->run_on_command_stream(wined3d_device,
|
||||
d3d11_explicit_timing_callback, &data, sizeof(data));
|
||||
}
|
||||
}
|
||||
|
||||
return r;
|
||||
}
|
||||
|
@ -1,11 +1,6 @@
|
||||
#include <stdint.h>
|
||||
#include <linux/limits.h>
|
||||
|
||||
/* 32-bit Mac doesn't support Vulkan and thus DXVK */
|
||||
#if !defined(__APPLE__) || defined(__x86_64__)
|
||||
#define VRCLIENT_HAVE_DXVK
|
||||
#endif
|
||||
|
||||
#if __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
@ -55,7 +50,6 @@ void *create_LinuxMatchmakingServerListResponse(void *win);
|
||||
|
||||
#ifndef __cplusplus
|
||||
typedef struct ID3D11Device ID3D11Device;
|
||||
typedef struct IWineD3D11Device IWineD3D11Device;
|
||||
typedef struct IDXGIVkInteropDevice IDXGIVkInteropDevice;
|
||||
|
||||
struct generic_interface
|
||||
|
2
wine
2
wine
@ -1 +1 @@
|
||||
Subproject commit f0b3d09ad69ddfc27dbd850bd6b365da6683fa08
|
||||
Subproject commit 988fbfbe6855fa7c9eb2d932ecadb88a4b5e7497
|
Loading…
x
Reference in New Issue
Block a user