diff --git a/dlls/d3drm/d3drm.spec b/dlls/d3drm/d3drm.spec
index 69da8b6..141f933 100644
--- a/dlls/d3drm/d3drm.spec
+++ b/dlls/d3drm/d3drm.spec
@@ -2,7 +2,7 @@
 @ stdcall D3DRMColorGetBlue(long)
 @ stdcall D3DRMColorGetGreen(long)
 @ stdcall D3DRMColorGetRed(long)
-@ stub D3DRMCreateColorRGB
+@ stdcall D3DRMCreateColorRGB(long long long)
 @ stdcall D3DRMCreateColorRGBA(long long long long)
 @ stdcall D3DRMMatrixFromQuaternion(ptr ptr)
 @ stdcall D3DRMQuaternionFromRotation(ptr ptr long)
diff --git a/dlls/d3drm/math.c b/dlls/d3drm/math.c
index a06c024..76b73c0 100644
--- a/dlls/d3drm/math.c
+++ b/dlls/d3drm/math.c
@@ -34,6 +34,11 @@
 
 WINE_DEFAULT_DEBUG_CHANNEL(d3drm);
 
+/* Create a RGB color from its components */
+D3DCOLOR WINAPI D3DRMCreateColorRGB(D3DVALUE red, D3DVALUE green, D3DVALUE blue)
+{
+    return (D3DRMCreateColorRGBA(red, green, blue, 255.0));
+}
 /* Create a RGBA color from its components */
 D3DCOLOR WINAPI D3DRMCreateColorRGBA(D3DVALUE red, D3DVALUE green, D3DVALUE blue, D3DVALUE alpha)
 {
diff --git a/dlls/d3drm/tests/vector.c b/dlls/d3drm/tests/vector.c
index 8448879..7e2690c 100644
--- a/dlls/d3drm/tests/vector.c
+++ b/dlls/d3drm/tests/vector.c
@@ -79,6 +79,7 @@
 static LPD3DVECTOR (WINAPI * pD3DRMVectorSubtract)(LPD3DVECTOR, LPD3DVECTOR, LPD3DVECTOR);
 static LPD3DRMQUATERNION (WINAPI * pD3DRMQuaternionFromRotation)(LPD3DRMQUATERNION, LPD3DVECTOR, D3DVALUE);
 static LPD3DRMQUATERNION (WINAPI * pD3DRMQuaternionSlerp)(LPD3DRMQUATERNION, LPD3DRMQUATERNION, LPD3DRMQUATERNION, D3DVALUE);
+static D3DCOLOR (WINAPI * pD3DRMCreateColorRGB)(D3DVALUE, D3DVALUE, D3DVALUE);
 static D3DCOLOR (WINAPI * pD3DRMCreateColorRGBA)(D3DVALUE, D3DVALUE, D3DVALUE, D3DVALUE);
 static D3DVALUE (WINAPI * pD3DRMColorGetAlpha)(D3DCOLOR);
 static D3DVALUE (WINAPI * pD3DRMColorGetBlue)(D3DCOLOR);
@@ -115,6 +116,7 @@
     D3DRM_GET_PROC(D3DRMVectorSubtract)
     D3DRM_GET_PROC(D3DRMQuaternionFromRotation)
     D3DRM_GET_PROC(D3DRMQuaternionSlerp)
+    D3DRM_GET_PROC(D3DRMCreateColorRGB)
     D3DRM_GET_PROC(D3DRMCreateColorRGBA)
     D3DRM_GET_PROC(D3DRMColorGetAlpha)
     D3DRM_GET_PROC(D3DRMColorGetBlue)
@@ -261,6 +263,14 @@
     D3DCOLOR color, expected_color, got_color;
     D3DVALUE expected, got, red, green, blue, alpha;
 
+/*___________D3DRMCreateColorRGB_________________________*/
+    red=0.8;
+    green=0.3;
+    blue=0.55;
+    expected_color=0xffcc4c8c;
+    got_color=pD3DRMCreateColorRGB(red,green,blue);
+    ok((expected_color==got_color),"Expected color=%x, Got color=%x\n",expected_color,got_color);
+
 /*___________D3DRMCreateColorRGBA________________________*/
     red=0.1;
     green=0.4;
diff --git a/include/d3drmdef.h b/include/d3drmdef.h
index bd94924..6f769f4 100644
--- a/include/d3drmdef.h
+++ b/include/d3drmdef.h
@@ -54,6 +54,7 @@
 LPD3DVECTOR WINAPI D3DRMVectorScale(LPD3DVECTOR, LPD3DVECTOR, D3DVALUE);
 LPD3DVECTOR WINAPI D3DRMVectorSubtract(LPD3DVECTOR, LPD3DVECTOR, LPD3DVECTOR);
 
+D3DCOLOR WINAPI D3DRMCreateColorRGB(D3DVALUE, D3DVALUE, D3DVALUE);
 D3DCOLOR WINAPI D3DRMCreateColorRGBA(D3DVALUE, D3DVALUE, D3DVALUE, D3DVALUE);
 D3DVALUE WINAPI D3DRMColorGetAlpha(D3DCOLOR);
 D3DVALUE WINAPI D3DRMColorGetBlue(D3DCOLOR);
