Comments (15)
抱歉
from tprpix.
抱歉
您好,才看到不好意思。
目前版本中,游戏的窗口是固定值设置,暂不支持全屏模式,也不支持运行时动态调整画面大小。但是窗口尺寸是可修改的:
在编译完成后,你可以在 "publish" 目录下,寻找 "...jsons/windowConfig.json" 文件。然后直接修改里面的一组变量:"windowPixW", "windowPixH",改成适合屏幕尺寸的整数就行。改完且保存文件后,再次启动程序,就能适配到新的尺寸。
额外信息:
(1)在程序内,对窗口长宽比其实是做了层限制的。也就是说,不是任意修改值都会被原样支持。比如,如果你设置为 (1000, 50) 这种扁得夸张的比例,最后是会被程序强制适配的(按照一定规则,具体写在了 "src/Engine/camera/ViewingBox.cpp" 文件内)
(2)我在电脑上测了下,switch 的 (1280,720) 尺寸是可以被支持的,你可以直接改。
(3)最初把窗口做得这么死,是因为当时的水域还是用 着色器(shader)来实现的,为了简化 显卡层和主程序之间的交互,我把窗口尺寸写死了。目前的水域已经修改了实现方式,着色器层被彻底抛弃了,也许未来我应该把它写成动态的...
非常感谢您的提议和反馈!!!
from tprpix.
抱歉
另外,大哥您这在 switch 上玩 ubuntu 也太疯狂了!!!
如果您有空,请问可以传几张 tprpix 运行后的截图我嘛~ 作为steam党,我已经很久不碰掌机了(不!你只是想掩饰你没switch!)
from tprpix.
抱歉
然后我想请问下,switch 的按键是否会被程序读取?
我这边猜测大概率是不会被识别的...
而且我并没有为程序编写支持鼠标点击的功能。是不是暂时只能停留在那个简陋的存档界面了
from tprpix.
from tprpix.
from tprpix.
实际上我最开始是以为窗口大小是不能调的,后来我看到了文档,就把issue关了😂。 其实我是想把joycon映射成按键,但是不知道为什么我编译的按键映射器没办法支持joycon。 理论上应该是可以通过udev标准来支持(因为红海豚实际上是可以检测到joycon(而且还能玩的挺流畅的)) 如果你知道什么别的支持udev映射按键的映射器可以告诉我嘛 dock也是能用的,所以其实可以接显示器和鼠标键盘玩,但后来我不小心把分区搞坏了,就没继续研究下去 我现在在SD安装的是Lakka系统,如果我换回Ubuntu,可能会再想办法试一下别的按键映射器
非常感谢!看来想要彻底能跑还有段距离。过阵子我也去搞台机子来试试水!
from tprpix.
from tprpix.
from tprpix.
说起来,它是原生支持xbox手柄么 如果这样的话其实把joycon映射到xbox好像也可以 在这方面可能会有更成熟的解决方案
…
非常感谢 mark07x 的深夜研究!
tprpix 对游戏手柄的支持,依赖于 glfw3 中的 Gamepad input 模块,参见此处描述。
简单地说,它依赖一个名为 SDL_GameControllerDB 的协议,以此来规范硬件生厂商的按键映射规则。所以,但凡是支持这个 协议的手柄,都支持。
而这个协议,是基于 xbox360-style 的。
我的手头有三个国产的仿xbox360手柄,都能直接支持这个协议。(某种角度讲,这个协议被支持的范围,比我预想得要广)
from tprpix.
说起来,它是原生支持xbox手柄么 如果这样的话其实把joycon映射到xbox好像也可以 在这方面可能会有更成熟的解决方案
…
最初,我想直接绑定手柄按键。但是不同厂商的手柄,按键映射值是不一样的。比方说,A厂的手柄,按键0123 对应的是 ABXY 键,到了 B厂手柄上,0123就变成了十字方向键。当时我差点写个界面来要求玩家手动绑定映射。
后来发现 glfw3 中的 Gamepad input 模块就是用来搞定这个事的。进一步说,是那个 SDL_GameControllerDB协议:每个厂都把自己的映射表登记到这个组织中,然后软件在运行时,当识别到一个手柄设备时,就会从一张特定的表中查找,是否有这个型号的手柄。查找到了就录入它的映射规则,最后实现软件层的统一。
from tprpix.
from tprpix.
说起来如果有手动绑定反倒是好了,那样Joycon就可以绑定了。 不知道为什么,我更新了deps/glfw_unix/下的mapping之后重新编译,似乎还是不能正常识别joycon。 值得注意的是,通过fuser可以看到tprpix的进程读取了/dev/input/eventx(joycon)。
看来确实可以读取原始键值,但仅仅到这里了。
这意味着,可能要专门为 switch 写一个按键映射层。
from tprpix.
from tprpix.
但我已经把适合joycon的mapping配置写进去了,这个时候也应该是可以识别了吧?可能是mapping的配置有误或者别的什么原因吧。不过现在我拿switch玩起了动森😂,而且我最近暂时在研究在树莓派上接4g模块拨号,准备暂时开始研究一下跟硬件有一定相关的东西。最近快ap考试了,倒是还没怎么准备好
最好也是最简单的办法,就是单独为 switch 做个迷你程序来测试按键识别。我最近在继续学习C++,顺利的话会在夏天回来继续推进tprpix。到时我来做个测试程序看。
最后,祝考试顺利~
from tprpix.
Related Issues (3)
- archlinux上构建 HOT 1
- 支持MSVC和GCC? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tprpix.