小编Jac*_* Le的帖子

为什么我们需要纹理过滤(双线性、三线性、各向异性...)

也许我对如何实现纹理映射的理解是错误的。我最近完全用 Java 构建了一个 3D 引擎(我知道我手头有很多时间)并且我完成了纹理映射部分。我这样做的方式是,当我将像素绘制到屏幕上时,我会在该位置查找纹理的颜色。我知道纹理过滤有助于减少以更倾斜角度观看的远距离纹理的模糊度。但为什么这个问题首先会出现呢?它没有在我的实现中。为什么在缩小图像时会降低分辨率?

这是我的引擎的图像。 在此处输入图片说明

3d graphics textures texture-mapping

2
推荐指数
1
解决办法
427
查看次数

在python中实现多个构造函数的最佳实践

我很确定已多次询问过这个问题,但我仍然不确定如何在Python中实现多个构造函数.我知道在python中,我只能有一个不同于java或C#或C++的构造函数.我还是很新的.长话短说,我需要实现一个线对象.该线将由函数y = ax + b表示.因此,我需要在行中存储的唯一内容是a,b和布尔值,用于特殊情况,其中行是垂直的(a =无穷大).在这种情况下,a将存储该行的x位置.要创建一条线,我有三种方法.1是直接放入a,b和布尔值.2是以元组的形式输入2个点.3是放入点和矢量.我的代码到目前为止:

class line:
    def __init__(self, a, b, noSlope):
        self.a = a
        self.b = b
        self.noSlope = noSlope

    def lineFromPoints(point1, point2):
        deltaX = point2[0] - point1[0]
        deltaY = point2[1] - point1[1]
        if deltaX == 0:
            return line(point1[0], 0, True)
        else:
            a = deltaY / deltaX
            b = point1[1] - a * point1[0]
            return line(a, b, False)

    def lineFromVector(vector, point):
        if vector[0] == 0:
            return line(point1[0], 0, True)
        else:
            a = vector[1] / vector[0]
            b = point1[1] …
Run Code Online (Sandbox Code Playgroud)

python math line

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

标签 统计

3d ×1

graphics ×1

line ×1

math ×1

python ×1

texture-mapping ×1

textures ×1