BGE: Add setMistType and setMistIntensity API.
This patch adds the missing setMistType() and setMistIntensity() to the API Reviewers: campbellbarton, brecht, moguri Reviewed By: campbellbarton, brecht, moguri Subscribers: campbellbarton, dingto Differential Revision: https://developer.blender.org/D149
This commit is contained in:
@@ -1091,6 +1091,29 @@ static PyObject *gPySetUseMist(PyObject *, PyObject *args)
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *gPySetMistType(PyObject *, PyObject *args)
|
||||
{
|
||||
short type;
|
||||
|
||||
if (!PyArg_ParseTuple(args,"i:setMistType",&type))
|
||||
return NULL;
|
||||
|
||||
if (type < 0 || type > 2) {
|
||||
PyErr_SetString(PyExc_ValueError, "Rasterizer.setMistType(int): Mist type is not known");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
KX_WorldInfo *wi = gp_KetsjiScene->GetWorldInfo();
|
||||
if (!wi->hasWorld()) {
|
||||
PyErr_SetString(PyExc_RuntimeError, "bge.render.setMistType(int), World not available");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
wi->setMistType(type);
|
||||
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *gPySetMistStart(PyObject *, PyObject *args)
|
||||
{
|
||||
float miststart;
|
||||
@@ -1125,6 +1148,24 @@ static PyObject *gPySetMistEnd(PyObject *, PyObject *args)
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *gPySetMistIntensity(PyObject *, PyObject *args)
|
||||
{
|
||||
|
||||
float intensity;
|
||||
if (!PyArg_ParseTuple(args,"f:setMistIntensity",&intensity))
|
||||
return NULL;
|
||||
|
||||
KX_WorldInfo *wi = gp_KetsjiScene->GetWorldInfo();
|
||||
if (!wi->hasWorld()) {
|
||||
PyErr_SetString(PyExc_RuntimeError, "bge.render.setMistIntensity(float), World not available");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
wi->setMistIntensity(intensity);
|
||||
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
|
||||
static PyObject *gPySetAmbientColor(PyObject *, PyObject *value)
|
||||
{
|
||||
MT_Vector3 vec;
|
||||
@@ -1522,8 +1563,10 @@ static struct PyMethodDef rasterizer_methods[] = {
|
||||
{"disableMist",(PyCFunction)gPyDisableMist,METH_NOARGS,"turn off mist"},
|
||||
{"setUseMist",(PyCFunction)gPySetUseMist,METH_VARARGS,"enable or disable mist"},
|
||||
{"setMistColor",(PyCFunction)gPySetMistColor,METH_O,"set Mist Color (rgb)"},
|
||||
{"setMistType",(PyCFunction)gPySetMistType,METH_VARARGS,"set mist type (short type)"},
|
||||
{"setMistStart",(PyCFunction)gPySetMistStart,METH_VARARGS,"set Mist Start"},
|
||||
{"setMistEnd",(PyCFunction)gPySetMistEnd,METH_VARARGS,"set Mist End"},
|
||||
{"setMistIntensity",(PyCFunction)gPySetMistIntensity,METH_VARARGS,"set mist intensity (float intensity)"},
|
||||
{"enableMotionBlur",(PyCFunction)gPyEnableMotionBlur,METH_VARARGS,"enable motion blur"},
|
||||
{"disableMotionBlur",(PyCFunction)gPyDisableMotionBlur,METH_NOARGS,"disable motion blur"},
|
||||
|
||||
@@ -2370,6 +2413,11 @@ PyMODINIT_FUNC initRasterizerPythonBinding()
|
||||
KX_MACRO_addTypesToDict(d, LEFT_EYE, RAS_IRasterizer::RAS_STEREO_LEFTEYE);
|
||||
KX_MACRO_addTypesToDict(d, RIGHT_EYE, RAS_IRasterizer::RAS_STEREO_RIGHTEYE);
|
||||
|
||||
/* KX_WorldInfo mist types */
|
||||
KX_MACRO_addTypesToDict(d, KX_MIST_QUADRATIC, KX_WorldInfo::KX_MIST_QUADRATIC);
|
||||
KX_MACRO_addTypesToDict(d, KX_MIST_LINEAR, KX_WorldInfo::KX_MIST_LINEAR);
|
||||
KX_MACRO_addTypesToDict(d, KX_MIST_INV_QUADRATIC, KX_WorldInfo::KX_MIST_INV_QUADRATIC);
|
||||
|
||||
// XXXX Add constants here
|
||||
|
||||
// Check for errors
|
||||
|
||||
Reference in New Issue
Block a user