Project1

标题: 看看RM制作者有多懒 [打印本页]

作者: IamI    时间: 2008-1-2 00:34
标题: 看看RM制作者有多懒
刚刚随手翻了翻DirectX9运行库,看到一个Font类:
Public Sub New(ByVal device As Microsoft.DirectX.Direct3D.Device, ByVal font As System.Drawing.Font)
Public Function DrawText(ByVal sprite As Microsoft.DirectX.Direct3D.Sprite, ByVal text As String, ByRef rect As System.Drawing.Rectangle, ByVal format As Microsoft.DirectX.Direct3D.DrawTextFormat, ByVal color As System.Drawing.Color) As Integer
Public Function DrawText(ByVal sprite As Microsoft.DirectX.Direct3D.Sprite, ByVal text As String, ByVal x As Integer, ByVal y As Integer, ByVal color As Integer) As Integer
Public Function DrawText(ByVal sprite As Microsoft.DirectX.Direct3D.Sprite, ByVal text As String, ByVal x As Integer, ByVal y As Integer, ByVal color As System.Drawing.Color) As Integer
Public Function DrawText(ByVal sprite As Microsoft.DirectX.Direct3D.Sprite, ByVal text As String, ByVal pos As System.Drawing.Point, ByVal color As Integer) As Integer
Public Function DrawText(ByVal sprite As Microsoft.DirectX.Direct3D.Sprite, ByVal text As String, ByVal pos As System.Drawing.Point, ByVal color As System.Drawing.Color) As Integer
Public Function DrawText(ByVal sprite As Microsoft.DirectX.Direct3D.Sprite, ByVal text As String, ByVal rect As System.Drawing.Rectangle, ByVal format As Microsoft.DirectX.Direct3D.DrawTextFormat, ByVal color As Integer) As Integer
Public Function DrawText(ByVal sprite As Microsoft.DirectX.Direct3D.Sprite, ByVal text As String, ByVal rect As System.Drawing.Rectangle, ByVal format As Microsoft.DirectX.Direct3D.DrawTextFormat, ByVal color As System.Drawing.Color) As Integer

同样的,来对照一下BitMap的Drawtext:
draw_text(x, y, width, height, str[, align])
draw_text(rect, str[, align])

这下子,就让我彻底的无语……8个重载被个RM制作者们缩减到2个,另外,一个有效的
Public Sub PreloadText(ByVal text As String)(预载字符,加快速度)
也完全被Pass了……
[LINE]1,#dddddd[/LINE]
然后,再来看看Sprite类:
(DirectX9)
Public Sub Draw(ByVal srcTexture As Microsoft.DirectX.Direct3D.Texture, ByVal center As Microsoft.DirectX.Vector3, ByVal position As Microsoft.DirectX.Vector3, ByVal color As Integer)
Public Sub Draw(ByVal srcTexture As Microsoft.DirectX.Direct3D.Texture, ByVal srcRectangle As System.Drawing.Rectangle, ByVal center As Microsoft.DirectX.Vector3, ByVal position As Microsoft.DirectX.Vector3, ByVal color As Integer)
Public Sub Draw(ByVal srcTexture As Microsoft.DirectX.Direct3D.Texture, ByVal srcRectangle As System.Drawing.Rectangle, ByVal center As Microsoft.DirectX.Vector3, ByVal position As Microsoft.DirectX.Vector3, ByVal color As System.Drawing.Color)

以上等同于
blt(x, y, src_bitmap, src_rect[, opacity])
另外,还有5个Draw2D重载,等同于
stretch_blt(dest_rect, src_bitmap, src_rect[, opacity])
还有呢……
Public Property Transform() As Microsoft.DirectX.Matrix
用一行代码就可以转换成Angel属性。

在此,我看到了原来RM制作者是多么的懒……

我想说,如果我们也用200个小时,那么一个脚本系统就出来了。

作者: IamI    时间: 2008-1-2 00:34
标题: 看看RM制作者有多懒
刚刚随手翻了翻DirectX9运行库,看到一个Font类:
Public Sub New(ByVal device As Microsoft.DirectX.Direct3D.Device, ByVal font As System.Drawing.Font)
Public Function DrawText(ByVal sprite As Microsoft.DirectX.Direct3D.Sprite, ByVal text As String, ByRef rect As System.Drawing.Rectangle, ByVal format As Microsoft.DirectX.Direct3D.DrawTextFormat, ByVal color As System.Drawing.Color) As Integer
Public Function DrawText(ByVal sprite As Microsoft.DirectX.Direct3D.Sprite, ByVal text As String, ByVal x As Integer, ByVal y As Integer, ByVal color As Integer) As Integer
Public Function DrawText(ByVal sprite As Microsoft.DirectX.Direct3D.Sprite, ByVal text As String, ByVal x As Integer, ByVal y As Integer, ByVal color As System.Drawing.Color) As Integer
Public Function DrawText(ByVal sprite As Microsoft.DirectX.Direct3D.Sprite, ByVal text As String, ByVal pos As System.Drawing.Point, ByVal color As Integer) As Integer
Public Function DrawText(ByVal sprite As Microsoft.DirectX.Direct3D.Sprite, ByVal text As String, ByVal pos As System.Drawing.Point, ByVal color As System.Drawing.Color) As Integer
Public Function DrawText(ByVal sprite As Microsoft.DirectX.Direct3D.Sprite, ByVal text As String, ByVal rect As System.Drawing.Rectangle, ByVal format As Microsoft.DirectX.Direct3D.DrawTextFormat, ByVal color As Integer) As Integer
Public Function DrawText(ByVal sprite As Microsoft.DirectX.Direct3D.Sprite, ByVal text As String, ByVal rect As System.Drawing.Rectangle, ByVal format As Microsoft.DirectX.Direct3D.DrawTextFormat, ByVal color As System.Drawing.Color) As Integer

同样的,来对照一下BitMap的Drawtext:
draw_text(x, y, width, height, str[, align])
draw_text(rect, str[, align])

这下子,就让我彻底的无语……8个重载被个RM制作者们缩减到2个,另外,一个有效的
Public Sub PreloadText(ByVal text As String)(预载字符,加快速度)
也完全被Pass了……
[LINE]1,#dddddd[/LINE]
然后,再来看看Sprite类:
(DirectX9)
Public Sub Draw(ByVal srcTexture As Microsoft.DirectX.Direct3D.Texture, ByVal center As Microsoft.DirectX.Vector3, ByVal position As Microsoft.DirectX.Vector3, ByVal color As Integer)
Public Sub Draw(ByVal srcTexture As Microsoft.DirectX.Direct3D.Texture, ByVal srcRectangle As System.Drawing.Rectangle, ByVal center As Microsoft.DirectX.Vector3, ByVal position As Microsoft.DirectX.Vector3, ByVal color As Integer)
Public Sub Draw(ByVal srcTexture As Microsoft.DirectX.Direct3D.Texture, ByVal srcRectangle As System.Drawing.Rectangle, ByVal center As Microsoft.DirectX.Vector3, ByVal position As Microsoft.DirectX.Vector3, ByVal color As System.Drawing.Color)

以上等同于
blt(x, y, src_bitmap, src_rect[, opacity])
另外,还有5个Draw2D重载,等同于
stretch_blt(dest_rect, src_bitmap, src_rect[, opacity])
还有呢……
Public Property Transform() As Microsoft.DirectX.Matrix
用一行代码就可以转换成Angel属性。

在此,我看到了原来RM制作者是多么的懒……

我想说,如果我们也用200个小时,那么一个脚本系统就出来了。

作者: 雪雾明日晴    时间: 2008-1-2 00:37
咳、没啥好说的。
RM这东西我本来也感觉EB就是在弄东西糊弄我们玩。
作者: superufo    时间: 2008-1-2 00:38
提示: 作者被禁止或删除 内容自动屏蔽
作者: IamI    时间: 2008-1-2 00:42
以下引用superufo于2008-1-1 16:38:18的发言:

看不懂

这个……稍微有点语言基础就能看懂了……{/gg}

其实这个还是Basic运行库,要是C++运行库可能更加强大……
作者: link006007    时间: 2008-1-2 00:44
以下引用IamI于2008-1-1 16:34:15的发言:

在此,我看到了原来RM制作者是多么的懒……

我想说,如果我们也用200个小时,那么一个脚本系统就出来了。

[本贴由作者于 2008-1-1 16:35:28 最后编辑]


不觉得呢...
RM面向的不是程序员  而是 RPG 爱好者
留下一大堆的重载函数,只会使用户困惑
你要知道  RM使用者有的都不会RGSS脚本

而且如果RM是用C写的话,你很难保证弱类型的ruby传入的是什么值
作者: IamI    时间: 2008-1-2 00:50
那你也得承认,默认的系统是很差的,如果要修改,那么,就不可避免的会遇到RGSS了。
同时,Map类居然刷新整张地图的事件……这不是懒是什么?
作者: link006007    时间: 2008-1-2 00:55
那是那是....所以我抱怨RM不公布源代码  至少是RGSS部分
虽然我技术不好,但是这样做至少可以给人跟大空间
而且作为商品.RM比同价位的差多了!人家torque虽然不是很华丽,至少公布源代码(你买的话)
作者: Edmiss    时间: 2008-1-2 00:55
啊.
看不懂啊
作者: 洛克人SZ    时间: 2008-1-2 00:55
以下引用IamI于2008-1-1 16:50:41的发言:

那你也得承认,默认的系统是很差的,如果要修改,那么,就不可避免的会遇到RGSS了。
同时,Map类居然刷新整张地图的事件……这不是懒是什么?


同意,尤其是Map类的刷新,纯粹是偷懒,害的大家要自己想办法解决。




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1