topic: openGL, texture
I wanted a rotating sphere as planet instead of a cube for texturing. the parameter for "rendersphere" function may be wrong and the coordinates. any help is welcome. thanks in advance.
  includepath "$\inc\"
  $ FileName "t.exe"
  'include "RTL32.inc"
  'include "RTL64.inc"
  title="MarsPlanet in Fog"
  include "OpenglSceneFrame.inc"
  includepath ""
  include "shapes.inc"
  include "particles.inc"
  include "materials.inc"
  indexbase 1
  sys   texn[3]
  sys   GdiplusToken
  float ang1
  float li[16]
  float ma[13]
  sys cube pent
  sys sphere
    
  sub initialize(sys hWnd)
  ========================
  '
  'GDIPLUS
  '
  sys hr
  GdiplusStartupInput StartupInput
  StartupInput.GdiplusVersion = 1
  hr=GdiplusStartup GdiplusToken, StartupInput, null
  '
  if hr then
    print "Error initializing GDIplus: " hex hr
    exit function
  end if
  '
  'PREPARE TEXTURES
  '
  glGenTextures 2, texn
  '
  static sys res=256
  string imgs[1]=""
  string imgs[2]=""
  'GetTexImage "../images/crate.jpg",res,imgs[1]
  GetTexImage "hubble_mars.bmp",res,imgs[1]
  MakeTexture *imgs[1],res,res,texn[1]
  '
  cube=CompileList : CubeForm    : glEndList
  pent=CompileList : Sides 5,1,1 : glEndList
  sphere=CompileList : Spheric 1,1,6 : glEndList
  '
  'standard lighting
  ------------------
  li<=
  0.0, 8.0, 8.0, 1.0,  'position
  1.0, 1.0, 1.0, 1.0,  'ambient
  1.0, 1.0, 1.0, 1.0,  'diffuse 
  1.0, 1.0, 1.0, 1.0   'specular
  'standard material
  ------------------
  ma<=
  .15, .15, 0.2, 1.0, 'ambient
  0.7, 0.7, 0.6, 1.0, 'diffuse
  0.0, 0.0, 0.1, 1.0, 'specular  
  0                   'shininess
  Material ma
  Lighting li
  '
  '
  SetTimer hWnd,1,10,null
  end sub
  sub Release(sys hwnd)
  '====================
  glDeleteLists    cube,1 
  glDeleteLists    pent,1 
  glDeleteTextures 2, texn
  GdiplusShutdown GdiplusToken
  killTimer hwnd, 1
  end sub
  '
  '---------- test --------------------------------- //
  sub RenderSphere(float x,y,z,sc,sys tex) 'spheric
  glEnable GL_TEXTURE_2D
  glBindTexture GL_TEXTURE_2D,tex
  glPushMatrix
  gltranslatef x,y,z
  glrotatef    ang1,0,1,0
  glscalef sc,sc,sc
  glCallList sphere
  'glCallList Pent
  glPopMatrix
  glDisable GL_TEXTURE_2D
  end sub
  '---------- test --------------------------------- //
  sub RenderCrate(float x,y,z,sc,sys tex)
  =======================================
  'glColor4f .99,.99,.99,.99
  glEnable GL_TEXTURE_2D
  glBindTexture GL_TEXTURE_2D,tex
  glPushMatrix
  gltranslatef x,y,z
  glrotatef    ang1,0,1,0
  glscalef sc,sc,sc
  glCallList Cube
  'glCallList Pent
  glPopMatrix
  glDisable GL_TEXTURE_2D
  end sub
  sub scene(sys hWnd)
  '==================
  '
  'Ctrl-P take snapshot
  '
  static sys photo
  if key[80] and key[17] and photo=0
    TakeOpenglSnapShot hwnd,"tim50.jpg","image/jpeg",50
    photo=1
  elseif key[80]=0
    photo=0
  end if
  static single ra,ri,angi1=.5
  '
  glClear GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT
  glEnable GL_DEPTH_TEST
  glBlendFunc GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA
  glEnable GL_BLEND
  glLoadIdentity
  '
  glClearColor 0.5, 0.5, 0.7, 0
  '
  float fcolor[4]={.5, .5, .7, .99}
  glfogi GL_FOG_MODE,GL_EXP
  glfogf GL_FOG_DENSITY,0.1
  glfogfv GL_FOG_COLOR,  fcolor
  glfogf GL_FOG_INDEX,  0
  glfogf GL_FOG_START, -1.0
  glfogf GL_FOG_END,   -100.0
  glEnable GL_FOG
  '
  glEnable GL_LIGHTING
  glEnable GL_NORMALIZE
  glColor4f .99,.99,.99,.99
  'sys n=texn[1]
  'RenderCrate  11.5,-0.9,-24.0,0.5,n
  'RenderCrate   6.5,-0.9,-16.0,0.5,n
  'RenderCrate   2.5,-0.9,-8.0, 0.5,n
  'RenderCrate   0.5,-0.9,-4.0, 0.5,n
  'RenderCrate  -0.5,-0.9,-2.0, 0.5,n
  '
  sys n=texn[1]
  RenderSphere  11.5,-0.9,-24.0,0.5,n
  RenderSphere   6.5,-0.9,-16.0,0.5,n
  RenderSphere   2.5,-0.9,-8.0, 0.5,n
  RenderSphere   0.5,-0.9,-4.0, 0.5,n
  RenderSphere  -0.5,-0.9,-2.0, 0.5,n
  
  ang1+=angi1
  if ang1>360 then ang1-=360
  sleep 10
  end sub
frank
X