| 赞 | 23 |
| VIP | 207 |
| 好人卡 | 31 |
| 积分 | 31 |
| 经验 | 48797 |
| 最后登录 | 2026-7-25 |
| 在线时间 | 1535 小时 |
Lv3.寻梦者 孤独守望
- 梦石
- 0
- 星屑
- 3144
- 在线时间
- 1535 小时
- 注册时间
- 2006-10-16
- 帖子
- 4321
 
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
刚刚随手翻了翻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了……
然后,再来看看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个小时,那么一个脚本系统就出来了。
|
|