小编xfx*_*rld的帖子

自定义内存alloc和dealloc多个继承类

我想在我的项目中进行内存管理.我不希望operator global new/delete所以我实现了一个简单的内存alloctor.这是我的代码:

class IAllocator
{
public:
    void* Alloc( unsigned int size )
    {
        1. alloc memory.
        2. trace alloc.
    }
    void Dealloc( void* ptr )
    {
        1. free memory.
        2. erase trace info.
    }
    template< typename T >
    void Destructor( T* ptr )
    {
        if ( ptr )
            ptr->~T();
    }
};
// macro for use easy.
# define MYNEW( T ) new ( g_Allocator->Alloc( sizeof( T ) ) ) T
# define MYDEL( ptr ) if (ptr) { g_Allocator->Destructor(ptr); …
Run Code Online (Sandbox Code Playgroud)

c++ memory-management game-engine

11
推荐指数
1
解决办法
1758
查看次数

使用深度缓冲使水边柔软

我想制作软边水.所以我制作一个渲染目标来保持场景的深度,然后我渲染水几何.

然后喝水 alpha = ( SceneDepth - WaterDepth ) * Scale

看下图的结果,水的边缘被软化了,但它看起来很奇怪,就像一个梯子.

那怎么处理?

非常感谢!

水阿尔法

directx 3d game-engine

7
推荐指数
1
解决办法
713
查看次数

标签 统计

game-engine ×2

3d ×1

c++ ×1

directx ×1

memory-management ×1