HoHo_src

所属分类:图形图像处理
开发工具:Visual C++
文件大小:3118KB
下载次数:7
上传日期:2010-11-18 23:23:52
上 传 者abc55654
说明:  3D高速发展的今天,3D加速卡的性能不断提高,3D的使用也越来越广泛,但同时,2D也一样在发展(虽然以后将是3D的天下),如果把3D的性能思想带入2D中来,那也将为2D带来更好的性能与画面效果。本引擎就是利用3D硬体来为2D图形所用,并且同时支援了无硬体的2D绘制。除了图形图像处理外,本引擎还包含了游戏项目中所需的各项技术,包括网络互连、应用层支持等等
(Today, the rapid development of 3D, 3D accelerator card improve the performance, 3D more and more widely used, but, 2D in the development of the same (although the future is 3D, the world), thinking if the performance of 3D into 2D in the past, it will also lead to better performance with 2D visuals. The engine is the use of 3D graphics hardware to be used for the 2D, and also supports hardware-free 2D drawing. In addition to graphics, image processing, this engine also includes a game project in the required technology, including network interconnection, application-layer support, etc.)

文件列表:
Example\Example-DirectDraw\Example.cpp (6591, 2003-03-06)
Example\Example-DirectDraw\Example.dsp (4435, 2002-07-04)
Example\Example-DirectDraw\Example.dsw (811, 2002-07-04)
Example\Example-DirectDraw\Example.h (249, 2002-07-04)
Example\Example-DirectDraw\Example.ico (23558, 2001-06-05)
Example\Example-DirectDraw\Example.ncb (232448, 2003-03-06)
Example\Example-DirectDraw\Example.opt (61952, 2002-12-30)
Example\Example-DirectDraw\Example.plg (2243, 2002-12-30)
Example\Example-DirectDraw\Example.rc (2911, 2002-05-29)
Example\Example-DirectDraw\Example.sln (1431, 2002-12-30)
Example\Example-DirectDraw\Example.suo (13312, 2003-03-06)
Example\Example-DirectDraw\Example.vcproj (3815, 2002-05-29)
Example\Example-DirectDraw\Resource.h (708, 2002-05-29)
Example\Example-DirectDraw\Run\Debug.htm (1991, 2010-11-12)
Example\Example-DirectDraw\Run\Example_release.exe (483328, 2003-03-06)
Example\Example-DirectDraw\Run\ijl15.dll (352256, 2001-05-30)
Example\Example-DirectDraw\small.ico (23558, 2001-06-05)
Example\Example-DirectDraw\stdafx.cpp (294, 2002-05-29)
Example\Example-DirectDraw\stdafx.h (728, 2002-12-30)
Example\Example-Graphics\Example.cpp (8582, 2003-03-06)
Example\Example-Graphics\Example.dsp (4435, 2002-07-04)
Example\Example-Graphics\Example.dsw (811, 2002-07-04)
Example\Example-Graphics\Example.h (249, 2002-07-04)
Example\Example-Graphics\Example.ico (23558, 2001-06-05)
Example\Example-Graphics\Example.ncb (240640, 2003-03-06)
Example\Example-Graphics\Example.opt (58880, 2002-08-23)
Example\Example-Graphics\Example.rc (2911, 2002-05-29)
Example\Example-Graphics\Example.sln (1431, 2002-12-30)
Example\Example-Graphics\Example.suo (10240, 2003-03-06)
Example\Example-Graphics\Example.vcproj (3917, 2002-11-18)
Example\Example-Graphics\Resource.h (708, 2002-05-29)
Example\Example-Graphics\Run\Back.MID (19636, 1999-12-09)
Example\Example-Graphics\Run\cursor.bmp (2324, 2002-05-22)
Example\Example-Graphics\Run\Debug.htm (2835, 2010-11-12)
Example\Example-Graphics\Run\Effect.zip (45587, 2002-07-04)
Example\Example-Graphics\Run\egg.jpg (16222, 2002-05-29)
Example\Example-Graphics\Run\Example_Release.exe (507904, 2003-03-06)
Example\Example-Graphics\Run\ijl15.dll (352256, 2001-05-30)
... ...

======================================================================== HoHo 游戏引擎(Hoho Game Engine) Author: Sea_Bug CopyRight ?2001-2003 GameRes.com All Rights reserved. ======================================================================== /-\ /-\ / / / / / /__/ / / / / /--/ / / / / / oHo Game Engine v3.0 / / / / Http://www.gameres.com \_/ \_/ Email:lindehui@263.net 简介: 3D告诉发展的今天,3D加速卡的性能不断提高,3D的使用也越来 越广泛,但同时,2D也一样在发展(虽然以后将是3D的天下),如果 把3D的性能思想带入2D中来,那也将为2D带来更好的性能与画面效果。 本引擎就是利用3D硬体来为2D图形所用,并且同时支援了无硬体的2D 绘制。 架构体系: 通过CDisplay基类实现的Direct3D与DirectDraw并用的多态机制, 提供自动选择恰当的使用方式;引擎支持三种图形格式(BMP、TGA、 JPG),支持alpha通道自动混合等,另外提供高级秀图主题,驱驾硬 体来加快位图操作,提供额外的图形操作(反转等),数据管理方面 支持直接Zip包的读取,并有接口函式,还提供对常用声音类型的支持, 如:Midi、Wave、MP3。 支持: 1、通过CDisplay基类实现的Direct3D与DirectDraw并用的多态机制,提供自动选择恰当的进行方式; 2、引擎支持三种常用的图形格式(BMP、TGA、JPG),支持alpha通道自动混合等; 3、另外提供高级秀图主题,驱驾硬体来加快位图操作,提供额外的图形操作(反转等); 4、引擎还提供对图象进行RLE压缩、解压绘制等; 5、数据管理方面支持直接Zip包的读取,并有接口函式; 6、提供对常用声音类型的支持,如:Midi、Wave、MP3; 7、提供AVI视频文件的播放; 8、支持网络连接通讯,使用多线程并行处理,完全可以满足网络游戏的需要。 ★使用协议★ (如果您要使用本引擎,您必须同意以下内容)   本引擎是由Game Resource开发,属于***软体并提供全部原码,本引擎的标题、所有权与知识财产权依然为Game Resource所有, 未得到Game Resource同意,请勿用于商业用途或进行许可范围之外的修改。若版权或开发上有任何问题、疑问,均可与我联系。   引擎所使用的Zip解压是通过第三方开发包“IO for uncompress .zip files using zlib”实现,此部分所有权利属Gilles Vollant所有;   引擎所使用的JPEG解码是通过第三方开发包“Intel(R) JPEG Library (IJL)”实现,此部分所有权利属Intel(R)所有。 联系方式: E-Mail: lindehui@263.net OR sea_bug@gameres.com MSN: sea_bug@gameres.com QQ : 1444563 如何获得本引擎:   您可以通过访问 http://www.gameres.com 来获得本引擎的最新版本资讯。 感谢:   sixisix(风戒)提供对MP3支援的原码。   SoftBoy(汪疆)的图象保存到文件的代码和帮助。   Sn_Yugo 的3D音效封装代码。 HoHo[蛞擎代aL度: > 25,000 (行) 软体: Windows2000/XP, DirectX 8.0以上, Visual C++.Net(VC7) 硬体: Pentium MMX CPU以上(SSE可选), 显卡支援3D加速(可选) 创建日期:2001.05.25 最后更新:2003.03.07 ///////////////////////////////////////////////////////////////////////////// UpData history: 2003/3/7 发现图档转换中的一个重大Bug,此Bug只在转换动画帧中出现。 起因:原来用于保存偏移量的数据长度越界,导致动画帧只能保存7张, 此问题已经修正。 2003/3/6 修改了CDirectDraw::Present()函式,将原来里面的MAPEDIT处理分离出来创建了 CDirectDraw::PresentCustom()函式,通过传入的参数来动态改变窗口大小(此函式仅限窗口)。 网络模块添加了本地IP地址获取的处理,并且可以处理一机多IP的情况,GetLocalIP()和GetLocalIPNumber()。 2003/3/5 修改了工程结构,不过对代码使用方面没有任何影响。 此次修改的目的是为了将帮助文档整合到一起,以便于用户的查阅。 修正了两个调试信息输出的小Bug。 修正了系统鼠标操作的一个消息获取的Bug。 2003/3/4 添加了CDisplay::ResetGamme()函式,并且修正了Gamma处理上逻辑的不足。 为网络模块添加了网络数据包封装,以便于数据处理。 2003/3/3 经过一个多月的使用测试,HoHo3.0基本上可以进入正常的运作状态,同时也查证了不少Bug, 现在从原有的Beta版本转换为正式版本。 2003/2/27 修正了DrawBitmap()函式中带RECT的潜在Bug。 问题起因:RECT结构中数据的排列是"右下坐标->左上坐标"。 2003/2/25-27 重新整修了HoHo导图工具,并且图形存储(磁碟)规范化。 2003/2/24 修正了网络模块CNetServer服务线程的一个Bug。 2003/2/21 加入了Gamma的处理,可以通过修改显示器的Gamma值来进行图像色彩修改。 (仅用于全屏下) 2003/2/20 修正一个在Windows2000下可能产生的错误; 问题起因:在win2k或XP版本中,用户触发Ctrl+Alt+Delete会破坏DirectDraw表面。 2003/2/19 修正了一个绘图裁减错误的Bug。 2003/2/12 添加了一个文字转换工具,用于配合以前改进的文字现实处理方式。 工具路径: HoHo\Tools\FontMake 2003/1/15 增加了新的文字处理方式 由引擎自己生成的字库来支持字体显示,此方法在性能上有质的提高。 2003/1/13 对CDisplay绘制部分重新做了修正,由于改动较大,版本也进行了更新。 2003/1/11 开始全新版本HoHo3.0的开发,这次版本变更是对整体系统构架进行进一步调整, 同时也做了不少的优化工作。 2003/1/5 对CBitmapX的内部数据结构进行更变。 2003/1/3 增加了对显卡是否支持硬件Blt的检测信息输出。 2003/1/1 对一些沉余代码进行整理,改善提高DirectDraw表面管理操作的接口。 调试信息的整理。 2002/12/12 增添了把位图保存为JPG格式文件的方法。 2002/11/13 修正Index Rle处理的一个严重Bug,主要出现在CBitmapX::ConvertToRleMMX()函数的压缩计算错误。 2002/11/08 修改、增强了CDisplay::CreateBitmapFromIndexBMP()等一系列Index Color处理函数。 2002/11/06 清理了一些无用代码。 2002/10/31 修正了CDisplay::DrawText()在32bit桌面显示不正确的bug。 2002/10/29 加入了对SSE指令的优化支持(未完成)。 增加了一套用于计算CBitmapX内图像数据实际宽高以及进行裁减的函数。 2002/10/28 为CDisplay::DrawBitmap(....RECT)函数重新休整,提高了性能与易用性。 2002/10/22 修改了声音部分的异常监测。 2002/10/21 CDisplay添加了一个重载DrawText,可以更为方便用户进行数据文字输出。 2002/10/18 CBitmapX添加了了一个将图像转换成灰度的函数。 ConvertGrey() 添加了网络连接模块。 2002/10/17 添加了一些用于调试的消息表现形式。 2002/10/16 修正了一个RLE解压缩/显示时的BUG。 2002/10/9 修正了键盘缓冲处理的BUG。 2002/10/4 修正了DrawBitmapAdditive()函数中的一个bug。 2002/9/25 修正了文字显示在窗口状态(桌面为32bit)下无法正常显示的问题。 2002/9/20 添加了一套与MMX相关的RLE图象处理。 2002/8/28 修正了一个DrawBitmap()函数中的一个bug,并添加了一个DrawBitmapTile()函数, 此函数用于填充图象。 2002/8/22 增加了一CD Audio的播放部分,可CDM行播放支持(目前尚未完善)。 2002/8/16 添加了光影特效的基A支持,添加了(Sn_Yugo)3D音效的支持。 (另外,c祝一下hoho代a突破扇f行) 2002/8/6 修正了CDisplay::ClearBitmap中的一bug。 2002/7/31 添加了CDisplay::DrawString()函式,支援多行文本Lu。 2002/7/29 建了一用模K,提供一些高操作。 2002/7/24 修正了一鼠司n的bug。 2002/7/23 修正了一鼠司n的bug。 2002/7/16 添加了一cc],K且增加了一N鼠说捻C制; 修正了原硎它c艟n的一Bug,修正了DrawText裁p的Bug。 2002/7/15 稍微优化了DrawLine函式。 2002/7/9 {整了工程文件Y,使代a更容易。 最近更新^大,因故更新了版本。 v2.2 -> v2.3 2002/7/4 重新添加了Visual C++ 6.0的支援。本引擎自УExample工程可在VC6和VC.NET下g绦小 HoHo文件目里有工程文件 HoHo.dsp 和 HoHo.vcproj,分e是VC6和VC.NET的工程文件, 自行分e使用。(建h使用VC.NET,VC6下未M行y) 2002/7/2 改M了窗口功能,使得窗口能在32bit模式下的桌面正常@示。 2002/6/26 添加了D像的自和自衰p。 CDisplay::BitmapColorAdditive(), CDisplay::BitmapColorAttenustion() 2002/6/25 增加了衰pLu函狄约MMX化,具w看 CDisplay::DrawBitmapAttenuation() 增加了IP/鼠溯入n支援。 2002/6/13 添加了Lu矩形K填充的涵式。 CDisplay::DrawFillRect() 2002/6/12 添加了Lu矩形涵式。 CDisplay::DrawRect() 2002/5/28 修正了DrawText的一BUG。 2002/5/27 增加了B位D的支援,看CAnimationBitmapX。 2002/5/16 重新{整了色彩和的理方式。 2002/5/14 Alpha Channel、Additive的MMX化。 2002/5/13 增加Alpha混合的MMX化。 2002/5/8 增加了256色Rle嚎s的支援。 2002/5/7 增加了RLE的Alpha混合支援,具w函式CDisplay::DrawRleAlpha()。 增加了256色位D的支援,用以提高存ζ鞯氖褂眯率。 2002/5/6 限制了窗w下桌面色。 恢土RLE嚎s的使用。 2002/5/5 提供了一套全局的支援接口,具w在interface.cpp里有描述。 可⒖蠢程,感X回到DOS的年代了。 :) 2002/5/4 改了窗口的形B,K增加了CDisplay::GetRectPoint()函式,用於@取鼠嗽诖翱谥械H位置。 增加了一些{信息的出理。 2002/4/29 增加了CDisplay::GetVideoMemory()函式,用於@得@示卡中w的大小以及剩N盗俊 2002/4/28 3D硬w支援做了化y,但效果不佳。 :( 2002/4/27 增加了{信息出等一系列支援。 情Stdafx.h文n。 2002/4/26 _始增加3D硬w的支援,目前凫冻醪皆OA段。 2002/4/24 改M了Zip解a包的理,可以不再需要zlib.dll支援,操作方式不。 2002/04/20 增加了AVI播放的支援。 2002/04/15 修改了UpdateScreen的绦C制,Kυ本文字理部分速度慢的}M行修正。 2002/04/14 增加了载入位图到Surface的函数,CDirectDraw::CreateAdvancedBitmapFromJPG()函数。 修改了一个UpdateScreen中存在的大BUG,原先的代码在某些机器上可能无法正常的显示 图像,问题的原因在于数据对齐计算错误,现已修正。 2002/04/11 增加了保存位D的函式CDisplay::SaveToBitmapFile()。 2002/04/09 修改了CDisplay::DrawAdvancedBitmap()函式中的一bug。 2002/04/07 修改了JPGD形n案d入的bug,F已可正常使用。 增加了一能CBitmapX中n保存BMPD形格式文件。 2002/04/06 m{整了一些函档暮艚薪涌冢 Σ糠R函颠M行化。 2002/04/05 增加了一个从TGA文件中单独载入AlphaChannel的函数, 优化了Additive操作。 2002/04/04 D像M行了ζ洌以及增加了一些MMX相P支援。 2002/04/02 增加了CDisplay::CreateAdvancedBitmapFromBMP()函担@是DirectDraw的SurfaceM行支持, 增加了CDisplay::DrawAdvancedText()函担@是DirectDraw的SurfaceM行Lu文字支持, 增加了CDisplay::DrawBitmap()的重d函担@是ξD的矩形^域M行裁p支持。 2002/03/31 利用MMX优化了CDisplay::ClearScreen()函数。 2002/03/27 修改了CDisplay::DrawBitmapAlpha()中存在的一裁pbug。 2002/03/25 解决了CDisplay::DrawRle()函数的裁减功能, 并增加了CDisplay::DirectDrawRle()函数,提供无裁减的Rle绘制函数, 修改整体数据操作结构,HoHo引擎从 2.0版本 变为 2.1版本。 2002/03/24 优化了CDisplay::DrawRle()函数,左右裁减尚未完成。 2002/03/23 修正了DirectDraw::DrawAdvancedBitmapReduce()裁减的一个bug, 增加了DirectDraw::CreateAdvancedBitmap()的实体支持。 2002/03/06 增加了对RLE压缩的支持,提供一套操作函数。 CBitmapX::ConvertToRle() CBitmapX::SaveRleToFile() CDisplay::CreateBitmapFromRLE() CDisplay::DrawRle() 2002/03/05 输入模块增加了多线程鼠标的处理接口, 详细参看Mouse.h文件。 2002/03/03 测试了多线程处理鼠标响应。 2002/02/28 修改了全屏模式时候的Bug, 增加JPG图形文件打包的支持。 / ---------------------------------------------------------- 对Inter JPEG Library的一点补充说明本工程中包含了ijl15l.lib, 只要包含这个library后,编译出来的应用程式无须ijl15.dll动态库 的支持,如果应用程式要使用动态库,则包含ijl15.lib这个library。 -----------------------------------------------------------/ 2002/02/26 增加对位图的饱和处理(Additive), 具体函数CDisplay::DrawBitmapAdditive(...)。 (注释:还为经过优化) 2002/02/25 加入对JPG图形文件的支持,不过目前还未支持从压缩包中直接的JPG读取。 2002/02/21 增加一个检测CPU是否支持MMX指令的函数。 2002/02/20 修改ScreenBuffer => BackSurface的数据拷贝方法。 (将原来的memcpy改为使用MMX的数据拷贝) 2002/02/19 为CDisplay增加DrawLine函数,支持直接线条绘制到背缓冲中。 为CDisplay增加DrawCircle函数,支持直接圆绘制到背缓冲中。 /////////////////////////////////////////////////////////////////////////////

近期下载者

相关文件


收藏者