Ursina nie daje mi tekstury z folderu

0

Witam program którego używam to pycharm. Plik assets jest w folderze tego projektu. Mimo to nie daje mi textury Sans.png chociaż jest w assetsach. Czy wie ktoś jak to naprawić?

from ursina import *
def update():
    if held_keys['a']:
        ok.x -= 1 * 0.1
    if held_keys['d']:
        ok.x += 1 * 0.1
    if held_keys['s']:
        ok.y -= 1 * 0.1
    if held_keys['w']:
        ok.y += 1 * 0.1
sans_texture = load_texture('Users\robwi\PycharmProjects\pythonProject5\venv\Lib\site-packages\assets\Sans.png')
sans = Entity(model='quad', texture=sans_texture)
app = Ursina()
ok = Entity(model='quad', color=color.red, scale=(1, 4), position=(5, 4))
app.run()
0

Co mówi debugger?

0

Ta ścieżka przekazywana do load_texture() wygląda podejrzanie - ani ona absolutna, ani szczególnie relatywna; nie powinna być ona relatywnie do projektu / relatywnie do tego pliku pythonowego?

1

Powinno być:

from ursina import *

def update():
    if held_keys['a']:
        ok.x -= 1 * 0.1
    if held_keys['d']:
        ok.x += 1 * 0.1
    if held_keys['s']:
        ok.y -= 1 * 0.1
    if held_keys['w']:
        ok.y += 1 * 0.1

# Musi to być na początku modułu
app = Ursina()   

# trzeba zacząć ciąg od r"   bo występują znaki specjalne
sans_texture = load_texture(r'Users\robwi\PycharmProjects\pythonProject5\venv\Lib\site-packages\assets\Sans.png')

sans = Entity(model='quad', texture=sans_texture)
ok = Entity(model='quad', color=color.red, scale=(1, 4), position=(5, 4))

app.run()
0

@Robert Karpiński Przekładałem je żeby zobaczyć czy coś się poprawi

0

@ledi12 Nie ma błędów program się uruchamia ale się tekstura nie wczytuje

0

@Robert Karpiński Dalej zamiast tekstury jest biały kwadrat a gdyby to było potrzebne konsola wyświetla coś takiego:```

C:\Users\robwi\PycharmProjects\pythonProject5\venv\Scripts\python.exe C:/Users/robwi/PycharmProjects/pythonProject5/main.py
package_folder: C:\Users\robwi\PycharmProjects\pythonProject5\venv\lib\site-packages\ursina
asset_folder: C:\Users\robwi\PycharmProjects\pythonProject5
screen resolution: (1920, 1080)
Known pipe types:
  wglGraphicsPipe
(3 aux display modules not yet loaded.)
:pnmimage:png(warning): iCCP: known incorrect sRGB profile
info: development mode: True
application successfully started
info: changed aspect ratio: 1.778 -> 1.778

Process finished with exit code 0
0

Spróbuj:

load_texture('venv\Lib\site-packages\assets\Sans.png')
0

@Patryk27 Niestety nadal dzieje się to samo

0

Wygląda na to, że png się wczytuje, ale sam plik ma jakieś wady. Użyj jakiegoś innego obrazka.
Nie wiem, czy to dobre stwierdzenie ale "u mnie działa" :)
Czyli skopiowałem Twój kod i po poprawkach działa bardzo dobrze. Jedyne zmiany to: inne miejsce obrazka i inny obrazek.

0

@Robert Karpiński Program za nic nie chce mi wczytać tekstury a zmieniłem plik i lokalizację

0

Wyśli/wklej jakoś ten obrazek i wstaw aktualny kod źródłowy. Jaka jest struktura projektu ? Jaka wersja biblioteki? Linux/Windows/Mac ? No jakaś dziwota, że to nie działa.

0

@Robert Karpiński Wersja Windows 10

Obrazek zmieniłem na taki screenshot-20211223115348.jpg
Folder pythonproject5 ma;
.idea
dodałem folder assets
venv
main.py
RPS.py
SI.py
ursina_game
Kod to:

from ursina import *

app = Ursina()

sans_texture = load_texture(r'C:\Users\robwi\PycharmProjects\pythonProject5\assets\Gladiator.jpg')

sans = Entity(model='cube', texture=sans_texture)
0

No i u mnie nadal działa. Załączyłem plik projektu.
Pliki projektu - ursina.7z

ekran.png

0

@Robert Karpiński: Bardzo dziwne, ja mam biały kwadrat

0

@Robert Karpiński: Na jaką ścieżkę może mi zadziała

0

from ursina import *

def update():
    if held_keys['a']:
        ok.x -= 1 * 0.1
    if held_keys['d']:
        ok.x += 1 * 0.1
    if held_keys['s']:
        ok.y -= 1 * 0.1
    if held_keys['w']:
        ok.y += 1 * 0.1


app = Ursina()

sans_texture = load_texture(r'assets\Gladiator.jpg')
sans = Entity(model='quad', texture=sans_texture)

ok = Entity(model='quad', color=color.red, scale=(1, 4), position=(5, 4))
app.run()
0

@Robert Karpiński Zadziałał! Bardzo dziękuje za pomoc :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1