Fast Sin and Cos on built-in ASM for Delphi

 
3r3-31. Hello!
 
 
There was a need to write a quick calculation of Sin and Cos. The basis for the calculations took the decomposition of the Taylor series. I use it in 3D systems (OpenGL and a graphical library of my own development). Unfortunately, it’s not possible to reduce the series “perfectly” for Double, but this is offset by good acceleration. The code is written in the assembler built into Delphi XE6. Used by SSE2.
 
 
Not suitable for scientific computing, but quite suitable for use in games.
 
There is enough accuracy to cover the digit capacity of the Single number, which is used
 
for m...
+ 0 -

How to make an automatic update of the online game client

In this article, I'll talk about how I made the auto-update system of the client-based online game. Reference to the source code (Delphi) at the end of the article. In fact, I implemented this feature in two of my games, and if the first pancake came out a little lumpy (in the game Spectromancer), then the second implementation turned out to be very convenient and effective. This is my first article on Habr, so do not hit hard, but rather point out the shortcomings in the comments :)
 
 

The game update algorithm is


 
 
Verify the version to be updated.
 
Downloading the list of files of the ...[/h]
+ 0 -

Using the FPC library "InternetTools" in Delphi

Using the FPC library "InternetTools" in DelphiIn fact, the article is somewhat broader - it describes a method that allows transparent use and many other libraries (not only from the world Free Pascal ), and InternetTools is chosen because of its remarkable properties - this is the case when (surprisingly enough) there is no Delphi version with the same broad capabilities and usability.
 
 
This library is designed to extract information (parsing) from web documents (XML and HTML), allowing you to use the data as to specify the required data. high-level ...
+ 0 -

Regular expressions + logical programming. What's the result?

Hello, dear readers.
 
 
Regular expressions are a well-known thing that is used in a variety of projects, most often for not very complex cases of structured text parsing. At first glance, at first glance, it is such a slightly different task as the reverse synthesis of program models (when there is a code of the program generated automatically by some system in some block model of the problem being solved, and it is necessary to recreate the original model by this code), as well as synthesis of program models by text description of the problem, I ran into the problem of text analysis, or rather ...
+ 0 -

What's wrong with 3D PDF and eDrawings. As we have replaced the 3D model viewer in your application

This is a story about how we built a new C3D Viewer into the LOTSMAN product lifecycle management system: PLM, why we did it, and what we did.
 
 
What's wrong with 3D PDF and eDrawings. As we have replaced the 3D model viewer in your application
 
here ). It does not include APIs and some other functions. The version for embedding can be requested for testing from C3D Labs developers.
 
 
Sergey Ershov, head of the applied ARM group, ASCON.This is a story about how we built a new C3D Viewer into the LOTSMAN product lifecycle management system: PLM, why we did it, and what we did.    here ). It does not include APIs and some other functions. The version for embedding can be requested for testing from C3D Labs developers.   Sergey Ershov, head of the applied ARM group, ASCON...
+ 0 -

Creating a site on Delphi, or How to use uniGUI at a minimum of

Creating a site on Delphi, or How to use uniGUI at a minimum of uniGUI Is a library that allows you to create web applications in a classic Delphi manner, through visual components, and, what is important, in most cases it completely hides the entire client (browser) "kitchen" from the developer: you do not need to know either HTML or CSS , not jаvascript, and all the development is conducted in only one language - Delphi.
 
 
If you look at the picture from a distance, then there are 3 scenarios for using the library:
 
 
 
The most favorable, for which it was created in general, when the described strong, iridescent side of uniGUI manifests itself to ...
+ 0 -

Smooth scaling of the text

Scaling text - the task is not so trivial as it might seem at first sight. With a simple change in the font size, we can not get a smooth and proportional change in the width of the text. Changes occur "jump", which greatly hampers the development of various kinds of editors, graphs, diagrams, wherever scaling is used.
 
Smooth scaling of the text
 
Source code Delphi XE 7 (70 Kb) Scaling text - the task is not so trivial as it might seem at first sight. With a simple change in the font size, we can not get a smooth and proportional change in the width of the text. Changes occur "jump", which greatly hampers the development of various kinds of editors, graphs, diagrams, wherever scaling is used.   Source code Delphi XE 7 (70 Kb) ...
+ 0 -