[另类]在LINUX下玩自制关卡

作者 maxchen, 2011 八月 31, 09:51:37

« 上一篇主题 - 下一篇主题 »

maxchen

在LINUX系统下无法玩自制关卡,这个问题一直困扰着我。以前也折腾过,但还是没有结果。
最近要玩自制关卡,都是又重启回到WINDOWS上,比较麻烦,所以我又到Wine的网站去寻找答案

在发现几个无法游戏的报告后,我发现最近有人已经做了个补丁使自制关卡能在LINUX下运行
虽然没有WINDOWS上那么完美,但总比玩不了强多了

补丁如下:

diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index 16327e4..89531c4 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -3312,7 +3312,7 @@ static HRESULT process_vertices_strided(struct wined3d_device *device, DWORD dwD
              *
              */
 
-            if( !doClip ||
+            if( !doClip &&
                 ( (-rhw -eps < x) && (-rhw -eps < y) && ( -eps < z) &&
                   (x <= rhw + eps) && (y <= rhw + eps ) && (z <= rhw + eps) &&
                   ( rhw > eps ) ) ) {
@@ -3353,11 +3353,7 @@ static HRESULT process_vertices_strided(struct wined3d_device *device, DWORD dwD
                  * undergoes a different calculation.
                  */
                 TRACE("Vertex got clipped\n");
-                x += rhw;
-                y += rhw;
-
-                x  /= 2;
-                y  /= 2;
+                y  /= -1;
 
                 /* Msdn mentions that Direct3D9 keeps a list of clipped vertices
                  * outside of the main vertex buffer memory. That needs some more


使用方法:
1.下载Wine-1.3.25的源代码,解压,路径例如是/home/max/down/wine-1.3.25
2.把上面的补丁保存到/home/max/down/wine.diff
3.cd /home/max/down/wine-1.3.25
4.patch -p1 < ../wine.diff
5../configure
6.make
7.sudo make install

这样,自制关卡所有的工具与游戏都能通过Wine在LINUX上运行了

[ 本帖最后由 maxchen 于 2011-8-31 09:52 编辑 ]

温柔一键

好麻烦,why要钟情于LINUX:Q

maxchen

第一个是喜欢
第二个嘛,就是想着以后在工作上能在LINUX上发展

费茨

这个不错,有时间抄进分站里去:victory:
邓攸无子寻知命,潘岳悼亡犹费词
                          ——唐·元稹《遣悲怀》

sddcdx

天书啊!
LINUX胆寒:L