Lingengine-lab lightweight game engine (updated to 0.71)

Source: Internet
Author: User

[Why is this game engine used]

To make money? Apart from several well-known engines, other engines are hard to sell. Even if it can be sold out, it is generally not enough because the sales volume of successful commercial engines is large and the prices are low, and you cannot sell them more expensive. Moreover, a game that has not been successfully verified is not a good engine.

To make it a better one? Sorry, I don't have that skill. Domestic commercial engines are two or three generations behind foreign companies. The level of participation in mainstream open-source projects may be higher, but the world's mainstream open-source projects are also one or two generations behind top-level commercial engines.

To do just yet another? I'm not that bored. There are already many open-source, non-open-source, domestic, and foreign companies.

So why? In order to experiment and explore ways to solve the game engine's ever-expanding complexity, and to explore a lightweight engine design that allows programmers to create games on their own.

[Why is there such a reason]

Just as movie production is getting bigger and bigger, the cost of game production is also doubling, and the era of making a game for a few people or even a few months or even a few days is no longer there. With the increasing complexity, each module of game program development gradually forms an independent component, graphics engine, sound engine, script engine, physical engine, pathfinding engine, GUI Interactive Interface System, etc., even in the MOD circle, there are also powerful reusable ai systems and MMORPG servers. Even if these underlying components are complete, learning to use them and combining them into a game is still a complex and time-consuming system engineering, for example, if you have the best engine, the best bearings, and the best tires, you may not be able to make the best car. From coming up with an idea, program implementation, and debugging experiments, it is a very time-consuming process, whether the results are not good or you need to continue to improve. This high time and labor costs have provided a high threshold for the gaming industry and hindered a lot of grassroots creativity.

Of course, a savvy merchant will undoubtedly pay attention to this point. Rather than competing for the high-end game market, it is better to seize the game market at a low cost. Once the game gets angry, the profit is no less than that of a large game. Of course, a low threshold means that the competition will be fierce, and the companies that ultimately grasp user resources will control the market and strive to get acquired by them will have a bright future.

What I want to do is a high-end and low-end thing. To say high-end, it should at least look relatively high and have better results. To say low-end, it is designed for small and medium games to avoid being too complicated. It is necessary to quickly modify game resources and rules, experiment with various new ideas, and finally make various games.

 

[Try]

Update to 0.71:

System Requirements: graphics cards of direct9c and direct9c (that is, cards supporting Shader Model 3.0), and. net
3.5

 

Lingengine
0.71

V0.71
* Ssao screen space environmental Shielding Effect
* Multi-point dynamic light source support
* Adds a light source object. The model mount point can be mounted to the light source, and the property of the light source can be animated.
* The engine-defined entity attribute is prefixed with eV to avoid conflicts caused by new attributes.
* Set Unit. attrs ["evteamcolor"] to change the team color.
* Set Unit. attrs ["evattackspeed"] to change the attack speed.
* Solved the problem of the keyboard command before the role continues to execute after switching the window.
* Wpf4 is used to add visualstate for guielement, which greatly simplifies the difficulty of using GUI components to create multi-display status controls (such as buttons.
* Improved the button control for Script Creation
* Fixed the 3D sound effect location bug.

 

Model export tool

 

The compressed package is in 7z format, and can be used in 7zip or later WinRAR versions.

 

[How to implement this idea]

It is unrealistic to want to run a horse or not to graze the horse. The complexity will not be erased without reason, so you must make a trade-off. The most effective solution is to narrow down the scope of the game type. Given that the MOD of arpg is active, the basic engine framework is the arpg mode, which can be customized to action, RPG, or other similar scenarios. A little extension can also be applied to RTS.

Second, although it is a game engine, it is a basic available game after decompression. That is to say, you do not need to re-develop the engine, it is already a game that can run, as long as you modify the above, change to the desired look. The modification of game rules is mainly based on scripts. Now everyone knows a little bit. Of course, you can also use C #, C ++, VB. NET and other extensions.

Third, make full use of available resources, especially free and open-source resources. But it is not blindly used, because my goal is to control the complexity, and the complexity of projects such as ogre is already very high. In addition, different open-source modules have their own styles and resource file formats. integration may lead to inconsistent resource styles and different rules, which increases the complexity of users. Therefore, third-party modules are primarily basic and fully encapsulated.

 

Currently, there are less than 20 thousand source code lines.

 

 

[Related blog posts]

3D graphics

Lingengine graphic part structural diagram http://blog.csdn.net/Nightmare/archive/2010/04/17/5496292.aspx

Design log 1: Reserved Mode 3D graphics engine http://blog.csdn.net/Nightmare/archive/2009/03/07/3967008.aspx

Design log 4: gradually improving the retention mode http://blog.csdn.net/Nightmare/archive/2009/07/17/4358092.aspx

Immortal scenegraph http://blog.csdn.net/Nightmare/archive/2006/09/03/1165113.aspx

Gui
Design log 3: GUI system http://blog.csdn.net/Nightmare/archive/2009/03/14/3990229.aspx in 3D games

Freely design game UI style http://blog.csdn.net/Nightmare/archive/2010/02/24/5323852.aspx with Script

Game Logic
Game entity design not fully organized http://blog.csdn.net/Nightmare/archive/2006/11/26/1415188.aspx

Design log 2: http://blog.csdn.net/Nightmare/archive/2009/03/08/3968609.aspx of script System

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.